{"_id":"@material/floating-label","_rev":"1686-852dfc683c963cd9b06d8cfdfd437e92","name":"@material/floating-label","description":"The Material Components for the web floating-label component","dist-tags":{"next":"4.0.0-alpha.0","nightly":"12.0.0-nightly.778a0e8a.0","latest":"14.0.0","canary":"15.0.0-canary.423edc3dc.0"},"versions":{"0.32.0":{"name":"@material/floating-label","version":"0.32.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"Apache-2.0","_id":"@material/floating-label@0.32.0","maintainers":[{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"amsheehan","email":"alex.m.sheehan@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"lynnjepsen+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"983cc24ffdb77285450a0b563ed9731bbe6da2d0","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-0.32.0.tgz","fileCount":14,"integrity":"sha512-YrcRSK04EnvmVJw2bH0if9zOaag6zUbk41vW2FQZJkkaKd3kQt02d0RqlAJ9qSKciGNb0J0h/EDMcdGpNDAp6Q==","signatures":[{"sig":"MEUCIQDhloudFF1HwIAx2L7eW4zxkT1RbFOhLEwzKQ1k9cRcEgIgMohyI99yGtO1UBChcbCcImhF1cLuw7pYVtfZS0lhPdc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":64915},"main":"index.js","_npmUser":{"name":"patrickrodee","email":"prodee@google.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git"},"_npmVersion":"5.5.1","description":"The Material Components for the web floating-label component","directories":{},"_nodeVersion":"8.7.0","dependencies":{"@material/rtl":"^0.30.0","@material/base":"^0.29.0","@material/theme":"^0.30.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/floating-label_0.32.0_1520287724680_0.6991244560711549","host":"s3://npm-registry-packages"}},"0.33.0":{"name":"@material/floating-label","version":"0.33.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"Apache-2.0","_id":"@material/floating-label@0.33.0","maintainers":[{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"amsheehan","email":"alex.m.sheehan@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"lynnjepsen+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4a4b5fd5a15c9bbd7e2e4142d7630b48bd8012d0","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-0.33.0.tgz","fileCount":14,"integrity":"sha512-gogkZDAEhct/7i3w/xCKaysMcIh2s/ER005+lsVhSfxnTmhUnsdupLcJj54dtEzUnujEqRRzGyF3J/Eh+/35HA==","signatures":[{"sig":"MEUCIQDZVsuSGeOkANQDyqOdHPFvJMZNW+nTnvezmIbkMZKmOQIgDihMsty5V9HA1Y4WwuVupjaAhmcE5B4R6/43Jc0BjeY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":64741},"main":"index.js","_npmUser":{"name":"williamernest","email":"williamernest@google.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git"},"_npmVersion":"5.6.0","description":"The Material Components for the web floating-label component","directories":{},"_nodeVersion":"9.4.0","dependencies":{"@material/rtl":"^0.33.0","@material/base":"^0.29.0","@material/theme":"^0.33.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/floating-label_0.33.0_1521477601364_0.05808680529485555","host":"s3://npm-registry-packages"}},"0.34.0":{"name":"@material/floating-label","version":"0.34.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"Apache-2.0","_id":"@material/floating-label@0.34.0","maintainers":[{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"amsheehan","email":"alex.m.sheehan@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"lynnjepsen+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9755a18c26df0f29463df5406037e5218973b7e6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-0.34.0.tgz","fileCount":14,"integrity":"sha512-hsv/qhlajxMgAMlyogd41hidcL3oQgurKYQMEi5GG2I3NTwN5dBCgtGtEtKLWIiAQkKDsUiMs1cBZee06S0wIw==","signatures":[{"sig":"MEQCIF3blq8kMmwhfOx3pDPqskU8Uv4quTIVBiB+VA0r0KDoAiBRibdj3bbnFE7CZfFPvRIFd3xNzS4WxbqWbOkzR6mL3Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":64741},"main":"index.js","_npmUser":{"name":"acdvorak","email":"acdvorak@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git"},"_npmVersion":"5.6.0","description":"The Material Components for the web floating-label component","directories":{},"_nodeVersion":"8.11.0","dependencies":{"@material/rtl":"^0.34.0","@material/base":"^0.34.0","@material/theme":"^0.34.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/floating-label_0.34.0_1522705914874_0.029038432465085195","host":"s3://npm-registry-packages"}},"0.35.0":{"name":"@material/floating-label","version":"0.35.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"Apache-2.0","_id":"@material/floating-label@0.35.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"lynnjepsen+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"46ce1ce7df29ba03ebdc234e07bd800f293009b9","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-0.35.0.tgz","fileCount":13,"integrity":"sha512-lnxBbziq5vvzS78XW99JI4Z10938CvZciiCtx2lFzeRODW3anZugcdwpAH8G2C60+BraAsdxXSzilcgE2ImHig==","signatures":[{"sig":"MEQCIDdXjFbRX0GPvKcOIygvoC6LaRmMKU5+OHlOG28Kb0qxAiBTFPZaw/SSWyVtUSPl3aW/rjS6XE4OLkBU3ROQW3SHJA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":61682,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa3mDRCRA9TVsSAnZWagAA1jEP/2DxmPFaC3HOBVTlIQgT\nS0Pav9URSggympynOBbwej01VuFycdk3+/URKyPpxFDRfZ55G0KNkRPCmdAY\npXP7j68QDGiS714OMqQ9lRA8w2im1RJtGLz1pJOYxrVmz2p4y5FzFsaISWBU\nXsHT5yFW8AJ5Cga4AuFS8/dUMeYc1jH+uP2/qPXaEFYr/IsEiULon+/VLR8p\n8ZAMVb/g4ZXNL9BM+ItVpLKTcaWCYm/F9ruu/IiSZk7w2XxcNoGTpnsVf/Pj\nXghRxdaZ/3chlBt5ONfIJgRA1iqOqqDzP/ET0ECMh7Fl/VZzlnq4aSVVLXq7\njiAJfWtzPLmY9HIwj65ZRr6EECxGZUGMIYA2ppWaGB43oC3v46GlTHw082XM\nTZHINTR8PNanoXsGlgEjNijbTBV1T9W2g1fyepW7nN4UYCZTYAb4deUWhs94\neOw+Frkt3lA7mJCjTO8X4+R3mZbf1hn5GZ9PkXefuxZcPmRazH5YJGUrNb5e\nAMJaLJrG7Qp3rhCBZFaQRyGqBgqpQ1Mgqfenj8iQ/uCwGBjDaH3Bpxif3Ws1\nUcpe6nW5/bMg3zmgVloqMfRF/KykT7WyEshDheb/MqI7LKLzVNo+nEKm5Pg2\na26lwVEKet04bHzJ5IdhzOhfjheAgxPaavuVA24CbaquJGHciTYaE+qzGFOB\nOnK3\r\n=PDip\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a text field or select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every text field and select should have a label. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the text field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/guidelines/components/text-fields.html#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n</ul>\n\n## Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Usage within `mdc-text-field`\n\n```html\n<div class=\"mdc-text-field\">\n  <input type=\"text\" id=\"my-text-field-id\" class=\"mdc-text-field__input\">\n  <label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</div>\n```\n\n<!-- TODO(mattgoo): add ### Usage within `mdc-select` once select uses mdc-floating-label -->\n\n#### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating above the text field.\n`mdc-floating-label--shake` | Shakes the label.\n\n### SCSS Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n\n### `MDCFloatingLabel`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Shakes or stops shaking the label, depending on the value of `shouldShake`. Proxies to the foundation method of the same name.\n`float(shouldFloat: boolean) => void` | Floats or docks the label, depending on the value of `shouldFloat`. Proxies to the foundation method of the same name.\n`getWidth() => number` | Returns the width of the label element.\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","_npmUser":{"name":"bonniez","email":"bonniez@google.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git"},"_npmVersion":"5.6.0","description":"The Material Components for the web floating-label component","directories":{},"_nodeVersion":"8.7.0","dependencies":{"@material/rtl":"^0.35.0","@material/base":"^0.35.0","@material/theme":"^0.35.0","@material/typography":"^0.35.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_0.35.0_1524523216120_0.8308305112904824","host":"s3://npm-registry-packages"}},"0.35.2":{"name":"@material/floating-label","version":"0.35.2","keywords":["material components","material design","floatinglabel","floating label"],"license":"Apache-2.0","_id":"@material/floating-label@0.35.2","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"lynnjepsen+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e2809c4201aaed1fbe8e0c2799d2785625a3fed3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-0.35.2.tgz","fileCount":13,"integrity":"sha512-Xo47tdp9Eli66D3kVcLcAwnPsYAqQgb94uVMU8y7KUWI0owBsRHejsMla7dvU0rBJSf/wWiGzNbETl0lo3x2Og==","signatures":[{"sig":"MEQCIHuhBeEcZVNP6wsiFKnB028zZ+O/6K0PttM8jk7nkjQRAiB4VP9z7srkBuJ4+j2bQKQOGFLyF67JecFofyDG95F5Bg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":62345,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbA0ASCRA9TVsSAnZWagAAsIgP/3B96tRyOv2gTmc11xnP\nLk++6qST0g0duEl7gqH0fQ+CkU7rqhxkiarLwYKCGMS/YabW94Br8VHmMp2D\n6XP+DIpHNg0ya0P2jZID9UAUrl+6aCmMjYKZEYMjXRwm+YE+GCsvFqvpGNIi\nTQ8dz6fOPzzyPauqFto+7l8HgqLDUnpDM5PzkdPcNHTiwKFtCnUCMbfxdnW6\nQ7GyqngqxTCL+6qcRIqacT3BG8tJ1ZyOJA3S75o64IjAuSPz6kVFl3VuDeeq\nBt6P3flNh4rBCfA8Mh5Q0MR6eIjXxIJ8i0r5pQ+tt/6XR0xXzzBc+E0tVxbX\ng2kdxT7w228IWbQdnFIpUychTz+khD9icGzxaApfCOxerMM0JAFBlqDCzwbw\nzy/4f1C2FoOuRHms0RTao1l9pHDu59P4+nN5xuixt/1LNe8OEUQNhwViTQOD\ng+PMUM6+g0zw0lqpuLSDfMFWoFiB4QCkKxYglAsRyZuArIdi5l3Tm8QLlvrk\nblvW6iMsMpZ3spC/h/sci5A5Co83VsbhhmZPay3q7p5v972RW+rs+tjRJ3Wb\nD+/RYysNcP+WxKrA6c9KZLed9RqdVj/0fTr1Ju8HRU75M+nh8qzrodiXMeBZ\nSa2hJt6uW3jzHs+PImpbzUY5e5GDYNRaIvI+rt5Gmcuw4R4cqxZOJFJR1j2a\nrU+G\r\n=CrYF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","_npmUser":{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git"},"_npmVersion":"6.0.1","description":"The Material Components for the web floating-label component","directories":{},"_nodeVersion":"8.11.1","dependencies":{"@material/rtl":"^0.35.0","@material/base":"^0.35.0","@material/theme":"^0.35.0","@material/typography":"^0.35.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/floating-label_0.35.2_1526939664392_0.32664424602388653","host":"s3://npm-registry-packages"}},"0.36.0":{"name":"@material/floating-label","version":"0.36.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"Apache-2.0","_id":"@material/floating-label@0.36.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"lynnjepsen+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"309f50234f42da0151ad6c0a3d1af7dee9172cd2","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-0.36.0.tgz","fileCount":13,"integrity":"sha512-hou0x0zm4FMbO0Uy9qxN/iyQznWghput+/QXSfyBE9fHE91EDFlZKirUwzmszm4B+Z3guxo04KZu4N4h6byCsg==","signatures":[{"sig":"MEQCIGPDDNT7T91+WYvSu5xU7A+sLh+htxEjt4ZSLBfeAAFoAiAOpFZChZYZ563bvI16ALm9floTesmn5JjDeWllpR7MBQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":62345,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbFVzUCRA9TVsSAnZWagAAFGMP/i5s07Sl8RX9kunB5wPc\nnHDHK/xUhtz4HWlyS+gQNzeVCeiEIGdltD55eQ8noH5jgATWcTUL7mkYEef6\ngWMrEWOCHlw/024DWpAFACFNilrAkmvUnQjjkEF6u5PG9Zm4Yl3WImmxnqmv\nz1Zx54UfLaz8s8tEejlO82SDxkIhrozuQ+/03Is0dUZrCimjj4M5dR4dgyN4\nyZai+6/rq6rPjs8lKa348n5uHtLgfpJJ8LImUjInidC+FK2tlcqeT8UYKFVO\nmxYaxaHY34re3MrQ2TsnIrpLVONtGHqVYhu6NUBIndnHUz2rlqaTbDAt5Q9Q\nijiNasopnXXd1BGcJeSowuhBb5V2WO0FOsAXuAuPUs7oO/9mK0qblRmtK0H7\nrvLCLJJClTUbpqWUk2+yYxhRO6kNb+dwjqPAAJzDILlHDkaBtQJKlIiRvC2Q\nmLo1YzHjDp2WfN9ooMX5WPRBbK9LyZHxQcXafQloHjf0KW+muE98T1/2NTjG\nrvJLaQWDN3vPbNIbPc0AAOx1XuTaJyoUrlnOOX83gNb2GWU7XqP728vXsU38\n5d6hWYHe7b/J/29JEPCpUZFd3s1TgmnpuYDjuAbNrLz+wTKBNW1qT+3x3zUp\ndgTrFGxZ7f8LgXwaaajdgO+4Lsc0haOweShxAJ0iPXv9+fblp5V8VZGgT5sL\n7t+9\r\n=65hi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","_npmUser":{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git"},"_npmVersion":"6.0.1","description":"The Material Components for the web floating-label component","directories":{},"_nodeVersion":"8.11.1","dependencies":{"@material/rtl":"^0.36.0","@material/base":"^0.35.0","@material/theme":"^0.35.0","@material/typography":"^0.35.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/floating-label_0.36.0_1528126675203_0.49859632213077454","host":"s3://npm-registry-packages"}},"0.37.1":{"name":"@material/floating-label","version":"0.37.1","keywords":["material components","material design","floatinglabel","floating label"],"license":"Apache-2.0","_id":"@material/floating-label@0.37.1","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"lynnjepsen+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7251e1a9b2b305b1c8acdb9bf19320825ce1a88d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-0.37.1.tgz","fileCount":13,"integrity":"sha512-y/nH5zh56HvL5do9vZ84/ky70Cdd6/ws+IXXDPouUp9MFSP2jhXuuWDDns2vYFIZI/I58ldCtfPsn9bJTqmpTw==","signatures":[{"sig":"MEQCIHXq1t4CE8cMqMlOEXxECTuliYWELKc72aEdACHnwB8wAiAGDeEoomwdS0uzFZnqSpbBc8+06ZiaTTsg53CszMM7nw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":62367,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbTQvZCRA9TVsSAnZWagAADCcQAIMyjO8cxCBJEqEaj4t2\nN8iHMR4r81pnN/oUyA2w567M65Uj0/6Uok2N88OkYxcDAj39g164ic4Zda/5\nwghJC6GY4Z818OYJzUuas3Rv/4Z5SwqjzJZWZ91BkCsXou5dhwaLDe0X9E63\nI9OjHV1AiA+DBZRNQLdUDGdlUZtyhXOkgn07fFJYKXdnd65sGL+3qykj4YEj\nglRbPfkEHEdAdA+F9D1QZabnqERTdWMRKYgTrx3NrfIsj9D3ysCqef6wznox\nXngVkM2tVQriYHpmNsKnL6I7ylXu+NrLzLZLe9o1tEdDI+uUFYcpVoZTn07j\nYAGBXbtUO/nPhFpdOPJFcI/7tpPA9DeTj/2p7e6PADcMYtru+7qFd+y9Kf1g\n/8qhAwG6SrKUEv1BU0F1QV1fs9m95C6xA+3dk/FHVSvkQaS3wm3tA/5Sb1w2\nFBqa1AM9thLx/rKf1cIpa6l4iHESOO3nMwrqFND6OeA+N1DWm3qVONQQGpoq\nDvbAwFjAw/OcJ1J9SIV9X9jF4IJsE//uKKUwskvm7oF+P74joHayZNC3/1dD\nTmVE45Z+gmwOOmoUEr1BExHXAeUv7lNkitC9u5JmPj1YpqCw3OMSNPRSkKuF\nHQ6tnWm/0Iej+KhEj+no5uAmr6f0cMRAs9mmyGDNxDtRWlPDKz+hy1z1Cal6\nLtKE\r\n=9KR3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git"},"_npmVersion":"6.2.0","description":"The Material Components for the web floating-label component","directories":{},"_nodeVersion":"10.3.0","dependencies":{"@material/rtl":"^0.36.0","@material/base":"^0.35.0","@material/theme":"^0.35.0","@material/typography":"^0.37.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/floating-label_0.37.1_1531775961220_0.6326747133313266","host":"s3://npm-registry-packages"}},"0.38.0":{"name":"@material/floating-label","version":"0.38.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"Apache-2.0","_id":"@material/floating-label@0.38.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"lynnjepsen+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"557771f8b9d05d0cd7ec6b3bb13ebb0d24d65ab5","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-0.38.0.tgz","fileCount":13,"integrity":"sha512-ga+7ELYrkiRYMHqkLOnCKaQUvGowMYXqML3I7hBhs3eEchTjx42U7bfTSqbfdiNG1F9+cOcSOWTKug2VOkYlkg==","signatures":[{"sig":"MEQCIG5eSTNH7bB6jVNi8TmeOS7fnZyAEAxZHrAgHH0ItFKBAiBULkZVbN7BbxObABdkd4WgSJ86ByR5WfhgpCKJ1ueGGQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":63161,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbX0WFCRA9TVsSAnZWagAAnUUP/jr0wUQSpL0lplyQUfX7\nCz48WW/xOIv6SVGfC51F8ojYGAFSPQ0Wm48H/ewIdxmLrg3G125OJKyGPV8Z\nQ9AMRCt9722cSxZz8R7Nrw/gU73yekuEvjJkAKxB/40V8Abcge0eQlTHJ1+R\nd8RnbsM81SX8t7bDG4+RcGstJFlicXJjukjSZfquPWSWtIFtVTO8KoOfhjmf\nStXSel1YyRJ+WYZ0lmaCszhT2cKl7aK02zlTFwGSriWe9iyOiLXMZEKSy7la\niq+j3ekhlf0SrdSqrpNr3wmfmUV6x8ZyWIT93kRj3HS0g0EMB8I3gLt49uFK\nQzUs4YzpXh/XuvMG0S7gNMRSls1dA/FCCuUW58g5TtdLI8UieK7WzjxjqceE\n4VUluvM38TBpYAnySORhNuibEfGWz0w6NLfNQVvGHTNE3LylYRH2A1ey74zQ\n1/Plnb8VttjMDYIhNJ+u03pclqpubCiJ3TB0ovnY6S4ShLfhd660QfX1JOso\nQM9q29VqSFQMUMt79Ku+2szIFi5GMOYPY4KiHmHXc2QYnRUvMG7EC1Md4tDA\nQ7ItDtHTXQFbV6pVrZxaQxLyd7IOq6h2peaBycmcAfnTFYAr4fDeA0RaR1iU\nRU/BamAH/ktWqzHcw7hXL+wBIOQWnBKt/ld5qwuqxP1DmfX9NRHz1NRRq0D9\noHY+\r\n=MGNe\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","_npmUser":{"name":"acdvorak","email":"acdvorak@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git"},"_npmVersion":"6.2.0","description":"The Material Components for the web floating-label component","directories":{},"_nodeVersion":"9.11.1","dependencies":{"@material/rtl":"^0.36.0","@material/base":"^0.35.0","@material/theme":"^0.38.0","@material/typography":"^0.38.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/floating-label_0.38.0_1532970373576_0.323537767498038","host":"s3://npm-registry-packages"}},"0.39.0-0":{"name":"@material/floating-label","version":"0.39.0-0","keywords":["material components","material design","floatinglabel","floating label"],"license":"Apache-2.0","_id":"@material/floating-label@0.39.0-0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"lynnjepsen+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"fa403d6fd9a5e24f30d147b77a9c1a2a07d0a7f2","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-0.39.0-0.tgz","fileCount":13,"integrity":"sha512-rACc91k/wS2Qa8Ju9D8Pjwy0NxfjgGLoq0Eyl93fEkGCgr2UhcS0BrRkNsYgZSpj9mTQ692Rmxy/Bub0cvqskA==","signatures":[{"sig":"MEUCIQCeLe8CIP5XTcyx6ASf4eYfltC8VP/oymqkd3WHZLJsXAIgDWienlteJBz9iyAKgtwMt5G+uKZSS+QXl8fepCh1GzA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":63165,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbdZU3CRA9TVsSAnZWagAAVKMP/R2Aj4fYwWJTxb6Q5Fzq\nMZ/US7Vo+8bU0ZSaD+ZH+2TXaT4YZohkA53DuWvtbKVklAHxoI/Nkd1YpLCD\n9lTUBsx8vZerGLEkjQe1UkJc1iH68EXtC9T9nXe1mFt7ae/Kw+mcrTP1LWe3\nDHUY+qlZjFexazihidpnANHe5BpLUi4Lg9FvPWGWqlgQitFyTleYboULWOcP\nNlOQKh9QQpQlwzGo41op4AMxmjrMkdwVug/F+O02fR5/Bx5hYTuAQa7TpJE6\n+3yrKNVx8a2rKvHXB8UiGy/W5bIVDAoMF6mRh3WkQ3iFubBhgA20oKGz0sbE\nasdSH2DSPt9TOoV74Xi34VrOy4Acz9nRAXDA9U7lcHbXDHe23VevA/xgMd4c\nam0OqdsCMCDzMVe09LWOk+pcae653o/j7dydjtTeWYdIYEAqlj1K27+s0CNY\nCiA98eS0WxBpa9oq3wDJy7shT0la/4hlpboHM+zwuzEw1UFMl7mJbbQayx2z\n9IK6z1cF0GhfQiAyk2Zr/uhAPHpO23n6Y8BniXwj/s03PzGm/LjBA02/WsC0\nZKvJZRNRsqenhkHziuhR7BKsCJr+dufnw9YaaRgsscjKAdToTOU0i5Kf2iIT\nf/n09nnmUcxa2M9twAVGhCtibP9x+d6dn2znBKPbya44CEdxlxKwZ9dctBmF\nwoC7\r\n=mf9n\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","_npmUser":{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git"},"_npmVersion":"6.4.0","description":"The Material Components for the web floating-label component","directories":{},"_nodeVersion":"8.11.1","dependencies":{"@material/rtl":"^0.36.0","@material/base":"^0.35.0","@material/theme":"^0.38.0","@material/typography":"^0.39.0-0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_0.39.0-0_1534432566846_0.7511534597464633","host":"s3://npm-registry-packages"}},"0.39.0":{"name":"@material/floating-label","version":"0.39.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@0.39.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"lynnjepsen+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7dedf6cab6c629202904e2c2adcf098de4068b8a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-0.39.0.tgz","fileCount":13,"integrity":"sha512-jwWU2+PtyAqM2dhR6v1ABesOhGwK0pi8zJjdkrj6QAPcF53/4kiyg08ac7X2R/XYuMgXdy+sfZ51oirj6W/sEA==","signatures":[{"sig":"MEUCIBCKy8UHJ7Q8jcjFDOyEnQdW5bZZ5VVsWVsNP3DR0QLxAiEAwBY1jbxhCXDn9WLSuj81UVnhvT8KW/B1P7yh/WfG5Do=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":70179,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbhDd8CRA9TVsSAnZWagAA9s0QAJ201nbcz2QnQ2aRbW2w\nD5nvGPjnMrhw2uDLD1OXzQ4gX8g287i2lYaqdgTkRHOEWNrig59/RcsABHrU\nx7FKHp8OtZT+9QLMC/x4UZYqLb7AsJX7xDQlIi9NU7/3Rz2XxVjMA9sN5YuV\n5TWBdVIsHsdHudGnXdUbUK3303Js2n9BppLz511YvWLpl/hFQTg23PvhhPcQ\nAZb3cZsuS3h+GbhGuDC+2KMb4SlDe8UBhRCSnha5/xxQTdGU9w7b2mftCCnw\n2oeeKkoCr6Rw5xTccZdXlNHGHkCop77f5flSg1SiW/azO88zzwHmpOxqWvG9\nG1kvOeKF9HK6r26yOfoGzrgt+dEchPQTxnSQzD1d/n/zEeiJ4UDkCwY0UjUv\nhZ64RXc0MKnso8wWVWkvc+hplf0HihfvtlFvvvvgHpqdXw1CUuMYXiFXTyG8\nQRjZBt2oz8LlcGP7TQuZOs8zvPKILEyDm99g/qG2Ev7GdtVioXxvjIz/Azpk\niUPeCjL35cD6jpoZGM88mpFQ9kQR5nuBogKuKBFA+9V67TcGi2PcWFDsPLhy\nbgjaSQDdkHRwnZ8eYLm9n7GZLaO00ybe8R499ChhIW0HhJ+Q0T6SjIuiIMZ8\n00NykjvADqzxajeHPrsg5G6CIhVct+JGPNOS/NpUC5Omyw0E7Y5bf6yYQLvL\nw9gv\r\n=Bu3M\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","_npmUser":{"name":"williamernest","email":"williamernest@google.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git"},"_npmVersion":"6.3.0","description":"The Material Components for the web floating-label component","directories":{},"_nodeVersion":"9.4.0","dependencies":{"@material/rtl":"^0.39.0","@material/base":"^0.39.0","@material/theme":"^0.39.0","@material/typography":"^0.39.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/floating-label_0.39.0_1535391612074_0.9057877622724209","host":"s3://npm-registry-packages"}},"0.39.1":{"name":"@material/floating-label","version":"0.39.1","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@0.39.1","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"lynnjepsen+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"8e5f2144460086ee8d586d6715cf0ed1707d3406","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-0.39.1.tgz","fileCount":13,"integrity":"sha512-Ry833abXfBsjdNTRkjSfsSzhV4RQ0BilvpRnP+6uf10f5A8UVK3rTBMJv3TtF/7wwojJtbgf8wAJz0JhZW/7oQ==","signatures":[{"sig":"MEUCIQD/GqB6bh2/Eif4tXYZIv22ucGb3nNW+kH+J92yvm5AhgIgKXtAnHf+e5/VBowwjveO6/KMqV++uFYY8ztAixhIxsc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":70179,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbibTHCRA9TVsSAnZWagAAYDAP/iJojhbWwkF+I7pFDzHW\nqechYDJnDSl5UM21OH4OBkReO/4L+viKnf0LjppXQke8lrEz995oMsolWr7Y\npVakDV11uExL/cdvFuSfsbpF09OZxCxIewX6Lnw5Mc4ag5ZltuHgyT9OLqP2\n1SiKwuGevvhzwEyhYfRfNKvoaaPyxPYMjuIwTaZFmFH3SXe4OE6+vd06prXk\nPdhTWhD+a4LqbQS+45xjS1wYGydlvyAslxge+k3eZxZwIjssZsyb/CMEpJEy\nN3tAljKC7JRP7vEmJ+GLxWij6gQj2L3jyV6jsVhc2DvchGmCvSZrNwc/0nRw\nehzvfsdf38hpc4lFJCTTxVYA059HjZvU4QEc03ba/Id+iE7UqCE+8GOStyCo\nbeZpf3JChgAyxNBawHX85pwd60FMmjMvErpyidhdDHta1puvhf8qWIui/R16\nszBBERsDnh5zkGWjCIBoDCQxUUILrAplvB+C7ByotXxdmv/MhdlOMi5F9FtF\nQW0lAIyTTGzlnuTyAvhssRDV2bWRkPWPHZG8NKkB4v1CP8lWps2IVcatxSlz\nCZFtWubsebjBkE+Nc1pzivIfmDBAzh4K/HyCqS73DgDgjovMGCtOcYGN+xlf\nnh1zHiwLTQ+Ew99d60ZUqR04N7o/cpF0ehQ213dmIgF26gEF9X69iAnrGNAA\nNWLw\r\n=eNRb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","_npmUser":{"name":"williamernest","email":"williamernest@google.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git"},"_npmVersion":"6.3.0","description":"The Material Components for the web floating-label component","directories":{},"_nodeVersion":"9.4.0","dependencies":{"@material/rtl":"^0.39.1","@material/base":"^0.39.0","@material/theme":"^0.39.1","@material/typography":"^0.39.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/floating-label_0.39.1_1535751366887_0.6542226458425684","host":"s3://npm-registry-packages"}},"0.40.0":{"name":"@material/floating-label","version":"0.40.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@0.40.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"lynnjepsen+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5edfc0b391a58e2802031a6bcabed350c0130722","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-0.40.0.tgz","fileCount":13,"integrity":"sha512-p+jngOd3r5UOeKkYZrQfFzLvWkWRupRMYQgEoz7EWbhTHEWG5s2vcFVxPPC70HgInvS5O7g5DN7OvK/lZJcs3g==","signatures":[{"sig":"MEUCIBV3hqq1X/Y5YhcTsrgg+72PEjLWsjPdNd77rBi0gezPAiEAjbeaaC1oIneqLurFWEE9KGc9spu/enp+ys7941AZ+KU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":70217,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbqUJqCRA9TVsSAnZWagAAoyAQAIMwaTMZcmdVePI9W6rW\nHLoxC3uiGaEW8fE8YTZKtkQiHzDv+oi4dKKQjc5mN9M0RqKgS4UjhYcbUHB8\n0Bo4h205Cej7HUpyt2fpcTkePv8UGihz+9ECRBrT2sKi/bkh1Gd0hPn2wOqy\nT3uS4xwio9gqY1OCn8oOIysqGsh6SKL2obeFpawukf3fJN74kps+hpPaAu0g\nvXj6YUEGq9HbCY+jX1s/mGqF5soNVdEKioQJOrk6TGC0tT7QTorZlUOwuT/T\n0FK6Sk721TGPjrpF0fprzt2t/n87oQMuEFex8BNYrmV+wgQluYUB7WLSqo1D\nYU78LWf5UM5YgTgrInuxCJaCf+bIhje/CJvUoV8lGNUsoRWTscAtdgK2X8iF\nk1ZFzUbw9FwZcvu0KwI5F5eLiVbv4QDyHC/R0vfw5puSudF8CVfYk4XkZlih\njGeK3r/hxUD94nLklDIODGmoCLITUA5HfsTJBniQVh+TJ7pSJff80ErMInNp\nzCRYs1Q6SAiuWZq/FyeMFB282bovYGU3Wg5L5E1DgxaGjVqp/9JmydZ1mOSL\nFX1oRLgyDOy9U+75E6iqR0Q4EwdJIjrsgEwNVtQtwoJmaeYUvXIlrAAagZbL\nlvMXrlKvjFATg7fTHrf66BjW1vRlTblWiF3f3xcMUG7p65o7ShiN0I68h93z\nr1VW\r\n=YLQK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git"},"_npmVersion":"6.4.1","description":"The Material Components for the web floating-label component","directories":{},"_nodeVersion":"10.9.0","dependencies":{"@material/rtl":"^0.39.1","@material/base":"^0.39.0","@material/theme":"^0.40.0","@material/animation":"^0.39.0","@material/typography":"^0.39.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/floating-label_0.40.0_1537819241724_0.8137837838513775","host":"s3://npm-registry-packages"}},"0.40.1":{"name":"@material/floating-label","version":"0.40.1","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@0.40.1","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"lynnjepsen+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1f025e414fde754d6d1ac57757b4da207ed01fa0","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-0.40.1.tgz","fileCount":13,"integrity":"sha512-b8/Wj4qfqOSJRSoQ1X7EC2lQc2hF0IGPXIbGpanZYe0c3wnhRXdSYd4kUnDw6rHgKn2IfnOEZkzOetODkftWDw==","signatures":[{"sig":"MEUCIQCkZ9nF+Jj38nuhvGuaK/B6/wOzL7KODgPlBeFGYMXKUQIgaAhQUACkWPWNhpfLA65bTKgFvcU2U5IvsQOL8wt+cks=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":70367,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbu8PuCRA9TVsSAnZWagAA/7cQAKKH/JY8M9pPKGtYng7P\nalalWDtMg11dZoL8cZY7ssMQhV/djrQu4tVV4yrS+/lJRkOp0I65bI9JNdcC\ni/Kn/fnvTTRLurSB/8J9ulfaodx4TkAd2A0ZGOkPfkA+Mf7CDHEwKmbyAdkF\nOtuvAflBVgOSmEgzgh0j771IsQrXm18Kpau7ldLjd8zLMrlVvDRDPkvEG+4q\n1AFxuqHXeAmcz0v491+akFpheuLvShElt3lF7K7rH4egWfmPy6kRVHLPLZDB\ntyKqvn6+yAvPJcfXhW/SPUfhFXv6k3jAHaJovg/1fe6ExXHm7/bYliyBO8tW\nFe11y7ozrbYWBFgoxUNMqiYIf2qwaTd+OkB+GXRNZgdyh8oqa2qcA2mXE2w6\nTvnsQ0cGZnd/S9xnn7arxjuSJQUFjf2OPYRjyk0p72q5Xze+2/4cDOdKihYY\n3bTbw6Y7Dl9sR1NyXqu0V32mrfWBf3qLzivGtynsomDqo0NJS/JqAGglkVvP\nNKrbT3/DOykr6z8t27Y0+ZJ6RDBeOhloDDe2/il2H1DIc9OA6vwuMtslaWiC\n79EUzd7VKscyl3NWvyIEkjWaaJgecvpKzPSQsdMgCCioPSzbOVHSGwPV0AIT\n/gg+cTT/72R413zMkzpJ9Co3YScnTU38u4rY53ClRLtXFfcn0jS9PmLCITVB\naLwq\r\n=j6fb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","_npmUser":{"name":"acdvorak","email":"acdvorak@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git"},"_npmVersion":"6.4.1","description":"The Material Components for the web floating-label component","directories":{},"_nodeVersion":"9.11.1","dependencies":{"@material/rtl":"^0.40.1","@material/base":"^0.40.1","@material/theme":"^0.40.1","@material/animation":"^0.40.1","@material/typography":"^0.40.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/floating-label_0.40.1_1539032045107_0.6358383061742372","host":"s3://npm-registry-packages"}},"0.41.0":{"name":"@material/floating-label","version":"0.41.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@0.41.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"lynnjepsen+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"17a9af90199b3bcf0ba13b1b5d3616451c7c8c0b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-0.41.0.tgz","fileCount":13,"integrity":"sha512-qI6f1nZU3crXxWAI9fw3U5fHw2qOzEor49EvskbcaV5KSRW5qO+jtfUQ3ib/Vhki7lqhgwNHB/0n7KYhvhjRHQ==","signatures":[{"sig":"MEUCIE1r1TwXmD1VfbGYGmx6gNFl+MfVpEdw68LURCYN7hcHAiEA/SkoBxqqa13gUFKKf4M/u3ICleP/9yNfbiTWQJCM7yA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":70442,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb12vYCRA9TVsSAnZWagAA7XEP/R2Mw2v8MTsOJkAECfsw\nysOIUEHDTBTppObpGwXbyOWNSEFzYuSNRq4aVjRZbrGRCY3MUaCDFu9pbS1w\nNRuGHJHlayQeJCmMdPID7FNMTtrszzU5ZtmQTF0uT0TOoisp2ttWHNOsxh/P\n1v64lVa6kpgeBta7R0jQcCbqw9BXFHvnpqr+iBeURIsHrIoe8rWv9+8WcR5D\nDwEJSyQMjodrb342jpEsX+odaQjIa4wefX5MIsWzDzNXgU/5UR0IAccd9Xdg\n30YJ/feVaalASN9kaUrT/7bvU9Z3ZUIPCU0vd4rF6lWY9mXf6ZTB+c1pMRdw\n7Xu8Iwv8iVf75Pk0MpV9xMbhEMH1+KLXbYCK5XbtkPIHep8fgS6stt8MSPvm\nXGczy1pgqzItZPxKFvggFJDQCtaLino59s9Uh9qhXsmAeOTvXkq4poLALNhS\nGCjAhAo9Zqy6JAwOulTb7Gj/4MgeOUlrpPGICWLdkQiDuE8f45AtNI4Y3Cbd\n74eidXYad7xAY9Zvn4N+fliK+UFPLq9afCeJr6nhT4kBoGJvLRAI+sXQuByv\ndUqzKpDlKP+hJ5+XZHElCqdzoQy3cqU5aGCza2o53gtCGZXtg7vXH3L4o+vw\nQUMRpItcpPFWqLB6ifOcyHWQ8s19VcSDib7PtUmF4bma7ia8wH3O9pvwSRHh\nhESP\r\n=xtnj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","_npmUser":{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git"},"_npmVersion":"6.4.0","description":"The Material Components for the web floating-label component","directories":{},"_nodeVersion":"8.11.1","dependencies":{"@material/rtl":"^0.40.1","@material/base":"^0.41.0","@material/theme":"^0.41.0","@material/animation":"^0.41.0","@material/typography":"^0.41.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/floating-label_0.41.0_1540844504051_0.9389192108013602","host":"s3://npm-registry-packages"}},"0.42.0":{"name":"@material/floating-label","version":"0.42.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@0.42.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"lynnjepsen+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f460d90b30acc2de83e5b3c664545b89287d61c6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-0.42.0.tgz","fileCount":13,"integrity":"sha512-OrPRQgFztQnH6Fj1vzvLq4LJQVUqYB6Wqu8xBnWGuR7cILnnH/gt6AN6ZGeUBITVKiwGegmvzUdSaH/VWB5IrQ==","signatures":[{"sig":"MEUCIBa8vKR6y/xn2I6vkncovkCD/aCN1GEIZhuP1K0UEQZeAiEA2VpLdl9vrNSQ40RJ9GtBbdAHzifYCY1ExJyJFCG2ZAA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":70558,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcBwW7CRA9TVsSAnZWagAArwwP/juwh/W9Xmk9atSf7+9n\n2GuaJz2hiUcyCyL87I++lSxrx/fYQglG2Q9Y9NpgoS2YsnHAQg6yLyyc0Unw\ncReKd8+MAkcLifxugYsu20njS3cjGKddkrcy2zRQfqyGp65245qPS/QkO8BF\nhE5va4zHwK/ZAc+oiWVmPWlMqeHpsEZtoMi3lYm669Evpi3Cd79NFjFY+xlk\nFUuDM4TbvuVjTpkLgViLPAmbwYPXthHjfapefGsezEEHxWUedMalJWZztbVX\nrEbbb4Db6xMCYsM/MG8FEVz75jtZvHU+RCLkQEdRmOetxbe2Ez72O3j1vu8z\niCJ1elB7ySXqefAc297N/zbm0Q916A5pUMqwZCjunuJqUpPTS9PI4gqVjieN\nqeJMXTqWJNjBloHkfybiu3pOEWf7diBaZeh9UmOR1XlDvZJN68hykrr4GD+O\nJL5zhpS9pvzHoePPHm3pWB+EIi3t2XOdP49ihRSyFnyWZzdfhiimuKO5HK7K\nRZ4TWmvALnCJA58CfmBZyLWOsETel4DuMXCUrSilmOsNzLIHaOwlrD7ZjYsk\nvpMKhvYySPeaZmR9X1zfUcWrFYw8RdgeJ23gNF4UQ4qxw+M10O/+26hTrP2W\nookW+xZmXcEBa8sfjt05S9hjCik1L+bm0TkXKm86FvQd12ByShY+94ePKgGx\nxnS5\r\n=ZDSA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","_npmUser":{"name":"williamernest","email":"williamernest@google.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git"},"_npmVersion":"6.4.1","description":"The Material Components for the web floating-label component","directories":{},"_nodeVersion":"10.13.0","dependencies":{"@material/rtl":"^0.42.0","@material/base":"^0.41.0","@material/theme":"^0.41.0","@material/animation":"^0.41.0","@material/typography":"^0.42.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/floating-label_0.42.0_1543964091155_0.3136435742266188","host":"s3://npm-registry-packages"}},"0.43.0":{"name":"@material/floating-label","version":"0.43.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@0.43.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"lynnjepsen+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"28d4995f8eef125c8057016adca669b09c7be1f2","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-0.43.0.tgz","fileCount":17,"integrity":"sha512-Wb76MA3b6kkhgrIzDX8DOdFyzNwDrVEzH3fA6yOhQcOSLHnc358ofcAXgcr7/Db0zBuwhDi176QXBBET49uSgw==","signatures":[{"sig":"MEUCIQDGWwTOWNasXuOi9FTfHHgVVazKIUZjorqimCN7W+3HQQIgbo33HHQqMAvxFpv3l1fBjOHSGYDoKRSoi4R9MBua/lQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":196332,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcM60mCRA9TVsSAnZWagAAvgAQAIlJyf5CW1csEclW8ls3\nS+Q4bEwmNNb0GfBtBgrjQVrl0xL30ZBTk962gaVtObGkrz0s/UmFioRK49H+\nE3w/+Co0zEk3eGm8gd1yqgM0T41lMYgeOAKJiBc2ihFgCYfe5qMR7SgfNPPg\nRdmHLqlhPv5/xmLS1krM4Wg8UGGBlvzQNBcexCp5SKlU54kAS5Uwgcf88iWt\n/Ngw7YKfzM7gKWR+BXeRcFCMGz3xL5DCdggjJkTff7JjZ3BmDhesJIZLuD5I\ntjiW0KvhjBEpQLteTmdODI6WeszfB9YZ7/3pTSdj8OM/30imFBPm+OeH1ejw\n8rbgm3BYIFjUVM/AuOgxLe1cdsszIzQimRVN+Kw7i9rfvIchAi+LCyEzh2Ql\nbsWcJlH6BoU6N2B7PCQVEO5v6J+BWBZfb7fNt/AgbqfX60AYMEBhfnUaU/2k\nAMZb73v2VulgftTifRxItFqyrPkXDIEQGTOpbz6fBEvrkLnlkbnyPCr21pxr\n//1u7mgITZkMtaQ2hcW9ugF/h/pxEzu/nnUxW31Z4hyyyMlyZFrBVk+vP8l5\nGjajXDJ7uStbBcBSXCdWdw8uyMZKg69l9rhUUL0/PKeylc/99kIj8VHAqlZz\nPTlbADgNehKdIzZtNybzlNCOUP7d5nwdTqOouZZj6DD5c+dCuwCDBIDUwLWB\n14tX\r\n=ZguB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","_npmUser":{"name":"acdvorak","email":"acdvorak@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git"},"_npmVersion":"6.4.1","description":"The Material Components for the web floating-label component","directories":{},"_nodeVersion":"10.14.2","dependencies":{"@material/rtl":"^0.42.0","@material/base":"^0.41.0","@material/theme":"^0.43.0","@material/animation":"^0.41.0","@material/typography":"^0.43.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/floating-label_0.43.0_1546890533860_0.5899963496341927","host":"s3://npm-registry-packages"}},"0.44.0":{"name":"@material/floating-label","version":"0.44.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@0.44.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"lynnjepsen+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"8694cd49f6905641b67a9e7a112b820d028f09c7","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-0.44.0.tgz","fileCount":17,"integrity":"sha512-k4npGNxyMtnjgJZNjU5VvqqaUqlbzlbVAhepT8PxYTpj+4Skg6PjHwieTCDCgsbqHvFcQX+WfUrSZXY7wFV7cw==","signatures":[{"sig":"MEQCIGUoLrmO1DdvpK5fxCpQvfxZp0rZK7sx/gD70OUTFL7DAiAPCpvEv/Q0CD7w9pnBUqBSePOVcfQexXIjzRG6+fd/VQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":198364,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcWIMnCRA9TVsSAnZWagAAwnoQAJgTrRLY9oQKLSmW/TaR\ndLQT5VSDe4EEgttlXffPOfX+JaS0VK6R1MGcE6mw0Hyq+Wd3hAUkOq4zBAFE\nBH44uk1FXSSopvlr+O85jPzZI9VojoPFuHA6KhJOLtdiewjZp+6ud6n5flTx\nE8EHtCpBspBNPmmoZjfg/U9NmQ/hw3bbhnpFTB3hkTm6MxMbSldvnMcMZMgf\nX0mRCO4F80WrCowUowClJ1qdTvFSDS9F2swLArh/WDt7GC4RgxBii3UeFp19\n8AYLK+U0GWv6olFZ4cjfPkw2ZMNAjku+yKUFX63N3DgInF+E4MdXE20SJoKk\nj8R3hMxLTha8S8bgFi6KOhlG5bx2XO7Puhp0FjJLfnWEKuwMbmNBtY93qirK\nNoGUiEAqdyts7moe/P1SdZFxEyuxtoC7JFRDS/ajKKulgJNP4752Or1yISGX\n/EyvhzOpzq9T5VAEhCVQ2AM7pmWxcPoVQhfPLtkXFDbsgedYglRdeo3P9h11\nK5v538c8E13i8eUaA3WvaXYtb16OmImWHpBaCeDwsFrO22Lkz8I2HEOn5wdY\ncupwN8Dgj7jZyblOn7PtCg7o65Cd6Gif1d73xWVlZnMAh+dTN/APHnlvUfs5\nlRNSEc+JxKV7fJ00M8c8ztPlJbzwOz210HkE07k8NG0lGet7TphC2NsLuqeS\njbYh\r\n=Sdnu\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git"},"_npmVersion":"6.4.1","description":"The Material Components for the web floating-label component","directories":{},"_nodeVersion":"10.12.0","dependencies":{"@material/rtl":"^0.42.0","@material/base":"^0.41.0","@material/theme":"^0.43.0","@material/animation":"^0.41.0","@material/typography":"^0.44.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/floating-label_0.44.0_1549304614517_0.19625091250862137","host":"s3://npm-registry-packages"}},"0.44.1":{"name":"@material/floating-label","version":"0.44.1","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@0.44.1","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"lynnjepsen+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"39af84a3a0abbfa6d210911d5f4200a65c2ef59b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-0.44.1.tgz","fileCount":17,"integrity":"sha512-umj5q5feJcZuB8snRX5aVBrwQNnrt/HcvN7pENzgqaYZNcmBnxRl0OutTlHCn6l7OVU9VlWhFMf77DYwmMWKJQ==","signatures":[{"sig":"MEUCIFBgZGdYIo2FR+Y5gGrVYRljVTITY+RO+zOXTg7YBJgmAiEAphZGL08NuQZUFon4banQOcUB8kYJxRtgq8H3oL/qEGM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":198472,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcbIscCRA9TVsSAnZWagAAFO0QAIjWlesBN9WYi8278N37\ngeDuCSkwtM4fNDyrM+un+CaMi6LyqLOMYpE7MZHAky4qYfn+qwuYcgNosrDV\nja5EUjeHveYTnZwH2cwUHsRukIQCeOqx7c9Pw0SBY4yLjeXyfCulZkzhuXSX\nP+Ryvzicl6mpQP1mIQJ8yP+pclb02uiglSW9vU/u1TxfJCh24CcYKg2cAxWo\nvfajbL9PYQLB0lxlEX0OHNqQISj29lpTRJtV1FJg6KN5wHm+Hg8IG17IScUN\nQ1pfrMF2jtDeVj1V6tpC3APzTq0S2ugyvwsPTj9OQFhYI9RDffVjuluvZU5B\nXHaR29GLUAZAnF+f+tbmN0mUMAmKfDVsH2M55oJIJ9hzI1zxqknnl4FovWk5\n56kDgAtjbUsuhqqEss3t20Un0RNGOfCDhdgn/WxhcJBlQYmZblzsGtUrcsEx\nqHoYw7GDoapsA+2mC11u/VIwa0jZxvtxiLnktutz6kiNhzEPau1TozhKXY/R\n3pT8dFwu9yW4L0UheKa1RzLyqbkiErgVZS9S05flaIaObMUS4HH4SIk2+0UT\n4dMnq0yq0VXuMCLZ5hbsdBs5MTa/g+Tf+Oy4eUac3ezRoRrh7QigicYdVD61\nZuYSLHyrOFUKf0i+QPADqoh/r38bGPuQchI554nlGYn1W1ZZEiEqhdXfHZ0/\nCIBr\r\n=MQ88\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","_npmUser":{"name":"acdvorak","email":"acdvorak@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git"},"_npmVersion":"6.8.0","description":"The Material Components for the web floating-label component","directories":{},"_nodeVersion":"10.14.2","dependencies":{"@material/rtl":"^0.42.0","@material/base":"^0.41.0","@material/theme":"^0.43.0","@material/animation":"^0.41.0","@material/typography":"^0.44.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/floating-label_0.44.1_1550617371976_0.3267712730596877","host":"s3://npm-registry-packages"}},"1.0.0-0":{"name":"@material/floating-label","version":"1.0.0-0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@1.0.0-0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"lynnjepsen+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"8af06041b3807508f76dd2623d4e90ecb2ec4336","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-1.0.0-0.tgz","fileCount":29,"integrity":"sha512-DQ6ZNuQBFTAyMr8m1SOEm67PeQvPgUrepMDHnok1kYJHlReWJYZX3oouk/NGn6bqcWiX7u5ujBPwa7lAYJwvOw==","signatures":[{"sig":"MEYCIQDnRG2QLLwfb6X8vWSxH7EJjHQlnEswEvd95Py1eekHhgIhAJX8CsT5zWUst0A5Xwf+yaL6d6cfQaRmDpABc6o6Ypl1","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":317011,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcdyRTCRA9TVsSAnZWagAAvIcP+gJ0jQFao4Zby+V4UxmI\n+WF4tukvGklxpZ/gmnGRFQuD09rQXSI8pOi3q+yBLe00ImZ71jPR5Au0GGdt\nvsgcXymblRauS/qEXoJII8u2/nWLewW67G5fCHp1FjebnYWhrDAf8NZRMmgi\nnczdGB5C+Ezrw2KRWxZZHc9i5iqDSw+0mxDfQw450lTGYXHJQUTakCFkPZU1\nnJ9UqZUATlucLEjEd5yKdDJF8ikbQK03Wan+mii7eQ6fnRII8VoxFZI0e9Px\ntXAE/FIbA0LonvAcr1ZhZRm2MRrBQsoA9hmCP3e2c2OLyqmj8lydwtOp8Q2b\nNd6eekB/rp2tAzqrwXlhwDqPEuDw6ko/uirZp0rPj3z5Mr/g8bvhclhlzcM2\nHhvbEj1cePCLvjBga+gAVnS+1ENeOVNznyarAkJb7EhDQ4XqPlh0N+3s8HIb\nLael2jgvK7UZgO9SclDfYH86UIWeUk5FGZY+1nfmK0LuEwrfEF7pSJMtLNAe\nfDR7OKdLzNn4p2ClJF1gw0R89OcingolckbR31dV1SE+PtX7VnhiQPppp2w9\nlmhxqeMEd9Qqj13TS6u9MAq/bWUwxirZnOcGHavgLjXqMOBBv1ZhO6kUFIN+\nj85BYUyku/cHDnDwn7ifkbI8SFXVQWhfQ2uAyM7f3/EKTFQg7vwDSYYN8Bkr\ncr+G\r\n=cy6V\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","_npmUser":{"name":"acdvorak","email":"acdvorak@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git"},"_npmVersion":"6.8.0","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.14.2","dependencies":{"tslib":"^1.9.3","@material/rtl":"^0.42.0","@material/base":"^1.0.0-0","@material/theme":"^1.0.0-0","@material/animation":"^1.0.0-0","@material/typography":"^1.0.0-0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_1.0.0-0_1551311955031_0.3780947662219256","host":"s3://npm-registry-packages"}},"1.0.0-1":{"name":"@material/floating-label","version":"1.0.0-1","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@1.0.0-1","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"lynnjepsen+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c886d53e672c3d1ca6349d8cb1ceb4ecd5e96622","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-1.0.0-1.tgz","fileCount":29,"integrity":"sha512-VCaMiGJR4/pWw+du69lE0b6r43NPa1nLNoc2pLTUYaqMFpfwahhqFtLoNFWLttKFALPyB58hYd+WIB+pO+Fyww==","signatures":[{"sig":"MEQCIFoh7ThO+Q7m+02AD3eTd+eeLtK4P4iPPUjZry3rymMTAiBepJsTh4R6TUqL9lpxS2K8qSCIwqwAXKOnwV2izeTCJg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":317065,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcfbW1CRA9TVsSAnZWagAA41MP/2Fw2ps+u6g8qyqfjYgu\nOWUfMD0jpnAuHxo6Vx8Uad/rllGeRovahmQJ4CYWg70nwH7ZXRCepnp0bso8\nEe+CGCYAxZkVqKg4LrE8GUmOWNi9WT+D4GgidcL0VoRas1gjTiY2wjmYaWQe\nnkEDQxDW4DzFZ99WU+PI81d7/g3ZfEhXTxNSwBPCBLwfrGbsilkH9pkmSRAu\nP+BKOgjllxLX2mZqibxcTFBPUpCpu55/T1hxIs2cQO3FzD0CNZUxYrwqif2f\nkHY0Qv824swYE9CD1jSfo1+5OBnRs3CrI69eOgZzSpycLENzT1KKz6WZci+7\nPO57qopnVukkCDZQ/lf7F6l51xUIpjvs8Pj5Efj9EQYKa1mLaXddYq3KCQd5\nqh8USOOgQKY3pOPB2M/Zlch9cgLfstc12HXK7uQGZUKvKLMlHVtHT1xA2qlE\nsZcT/JR0bPxFwJX3LIpSDxgWIMhVoLw1PG5CPOPlTpZUeXy2d3no2RcCA8zn\nIT86OT2geFt+8vTjvDb0p0VV/mzavAwm9I2hKX4waGT0BWdXX72I5/wAJkl9\nNuhr+uPeWeFYqdZ8uT4y+n1uBjcVq5Rs69Lk8WwBfz8Wg9btQIOFKgETmMUl\nRdVqUM14fTBjbIu/fTH3W3He7NPMrZvZXMsVp7gMce9BdiYWB2WJLpjIMZpj\nym5A\r\n=rfUQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","_npmUser":{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git"},"_npmVersion":"6.7.0","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.9.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"^0.42.0","@material/base":"^1.0.0-1","@material/theme":"^1.0.0-1","@material/animation":"^1.0.0-1","@material/typography":"^1.0.0-1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_1.0.0-1_1551742388954_0.4679406538523503","host":"s3://npm-registry-packages"}},"1.0.0":{"name":"@material/floating-label","version":"1.0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@1.0.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"lynnjepsen+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9e30644abe2fe160af14f83f06dc8d15f395dc0e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-1.0.0.tgz","fileCount":29,"integrity":"sha512-yESFi8HEUO0PmPWvaU3VW4X8+xaoFHhj2xGxLPu2hGye4ZBjTpmjOX6y1vwYqZLD5KWXj91k695UAT6J2wtWFQ==","signatures":[{"sig":"MEUCIFcSCPU7mZw7YS+e/ImNfA1LycFQ21SGhjOaDgWpGWCXAiEArfKCiT3420vNe5N3Opah+qNmStCflTnAeXNhCi2nono=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":317055,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcgDaqCRA9TVsSAnZWagAA0SkP/1Wu20urRVqyU3Gml8tJ\nKaWwBp5u0e9VcfzYJbbo+cL0U7u1nJ6KrqAiak2UH4gG/q0K5ZlFtlEofPM3\nTOqwmL5GyZwPfustZP9ewVNO2I/Q6C/ne+RwK7z8bIh6PqD1ZGAYguc5yiYW\n93pvIe9KkdUVVYyRCaL41cVYYKBFpu6Z1J4D9WaLGij4AQIC/9duvRMKX4+C\nL53k/dWo+SW2IFouU5FNP2k7yTLprQIUKePIbZOuUqxBCnUhxueFUZ3JNFSD\n5vvZW24WhURlRpD1ZPQ1NL2RRFrrlRudO/AhmVYS856c5zc6iW2AiiwX9EBu\niwDtK/O8AqvrKdtyuNTUHTCfRO1OwnOyRfjEobwdOr0v4CtTPud9xkINW0/D\nPtcbl/H9JHRaBOj+LIL4RQG3nd0qDdK+V3jJrDHBk66TorX8opllHp3Nedzj\n6ap/CE2tzjCvC2VDR5xSBwz9u4J/x4NlJfcEfDc7zB1q0VSNKX1RKvxEjXqv\nRGYeLdGfwMkmlYbX1By3JvDBLkEzZbpagNuxEvOOYULaZejKgjL9FPcWQYO2\n3m6FQHNA92287m7FBGPT7kGzbmA0lOLRH65LgMqmgHuUh3iTpMKzy93tE5Qk\n3QO9y/SRn5SqVuI48/GAzJhdXMgFrhJrpsqZiD9i3cHUC6I02LtSKDxl7NW4\nQ70v\r\n=j391\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","_npmUser":{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git"},"_npmVersion":"6.7.0","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.9.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"^0.42.0","@material/base":"^1.0.0","@material/theme":"^1.0.0","@material/animation":"^1.0.0","@material/typography":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/floating-label_1.0.0_1551906474292_0.4974883761109661","host":"s3://npm-registry-packages"}},"1.1.0":{"name":"@material/floating-label","version":"1.1.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@1.1.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"lynnjepsen+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"505b9f8c7628d0498a18b165c387d4c34840ca60","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-1.1.0.tgz","fileCount":29,"integrity":"sha512-7q7V+9o9XesgMnK11up9z+BcRFwtLIAIqVTCL3liKRARNHuzw9FGrGMKhTJUKvLZ3z0bM1+FmmVlA3q9FJWehQ==","signatures":[{"sig":"MEUCIQC9VOANLJ6H4rK7kvtGnyK/YR4Ojas6+DFZCA/x43useAIgWhrXm3uVTZj4ccTxsLPIZF4fM/2TtOYjR53LuZwW9lc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212362,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcmny2CRA9TVsSAnZWagAAMLEQAKGoi5ZqyBSexTYyddUg\nTvEqEt+3or+ib4VZo8IJGx4mDRspFABzscwajdSoOHGVaVZrGB5xF8u5RrvS\npUKLGiBI8ngyGsG1wHi4Oc230B0RfIKRcgsKVk5IC8Fw60ooD9YZVnfcApGM\nJSoqVyqGMpAIPOnvlK7QPbDHzBBL3bhhDOYARsfeKmPWRQHtYtHfDQzdyDV2\neh8PyUlj2uGDorHNVPtrygFBrlJGezUFJ3dywkTrV/YXokpRqQDdtUfLmvia\nM+ZLXoi1s2Lv9FkGMfiYrkaed6yPUpdTGr+B1JpPfszOXVK3ckMbD1b/DRj8\ntOg8wyHT99IJY/LQaWL+tilieQrECPBKwMFoNoLwzIFDn65OdI8Zdhpw2tH5\nO+fwAXHPoEs6N7p9UO6bKZxQlRJ8L+PohQAdklGaW3RKQhpH/uylnjGuZNef\n2iC0tcu0WsukD92HzGpFwnR8iGYZQIc0E4mFu4RelWGHRk7GrVASSAk3lzWB\nQo2+zQuoQ9tbx4RF3/UulQ32S3ZcI8B9OwO6bKMXMg6xKoOkyf6HIW12qQAj\n6cdV+DlQ8GwPiwbuVrNbVw+pkb1Y9pxedRLC50Baatc0IGL82fuZ9XDnHFFD\nMzXWw5ebedVrbKQc8a9gBXb8WAgWiEDMORqF6uS1eECXEz1EEPlXr16G9hcq\nVjNC\r\n=NqFX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","_npmUser":{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git"},"_npmVersion":"6.9.0","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.15.3","dependencies":{"tslib":"^1.9.3","@material/rtl":"^0.42.0","@material/base":"^1.0.0","@material/theme":"^1.1.0","@material/animation":"^1.0.0","@material/typography":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/floating-label_1.1.0_1553628342186_0.32820166264605577","host":"s3://npm-registry-packages"}},"2.3.0":{"name":"@material/floating-label","version":"2.3.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@2.3.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"lynnjepsen+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"001aa73bc035b8bf913dabc2926361f8c1458f28","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-2.3.0.tgz","fileCount":29,"integrity":"sha512-OYcNmf+mVzW+rphDgVkyWES+SbivA6Y2+0amVDD9E9X6hLjO+L1dtIP3rC7lp0Y2Ey9rkuRORsUoriFvN7xQQw==","signatures":[{"sig":"MEUCIQCLzdOBv5fiT22ovZ2Tk5I/lDzp/ZK9KcblcMgpEdRxkQIgUP5xa1oSWMHzdNpe2qod/abw9piyPZKU6dFaycSKgsw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":231527,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc7abrCRA9TVsSAnZWagAAVqYP/2HCjTWF+3F/D8UOwaS0\nlZ9x37L1sgRYtwA9c5Nhji4O9cGs4ao165MvZWAEFpBgGHtcBUypgg3YKdpa\ntiETOR765VoOYI6Y+TASpjAKBu2a76NyhAiEpGuVFoE5dk9EkP1Wl7TGhW0B\nhciY1+voMqMqPm9FEmR1GPsz/42Lct/qYHdSIvFsFdt/cI5ZMHcqrDZg2H6f\nz7jDt90/r0oyOuXkWSJYNstUa7peGMA814YPn2byk1sxxE68wZe5FfOWx0v1\nlj9x3I+1TMoOWrI9pNJGfIVe3OKiHYVR6k/ICqJLf8EgqvY5HOR/G9Mv3jih\nmZJ1BHlcxccssMOgwpNeHvFyqZZIWWxbhLLK5OurYYTahULqH93Jm1Q2rhmt\n9QyJMsDN+40Da8mVei9xx3pIRkeWvEaAOOpScm1yyDmwZ9fHcFUplBrj88lx\nyhWmGPwtIiY5OKTzfl5268gXwxRuGuz34n8M/dJGb2qwr+9IEhX0Rt+bFq7/\nRjv4bQWy2/u82l7s8i+WsOJ8zJR5vPyfn+VLl18xp7iwRNnMtFSMcdhhe4HT\ny+gwRUDXlqah/EK7/UM7CHiIT4RPA97w1+Eq6Zh0M2YR7P7QQRltD2ZyZj1e\nHngSCnDqF4Kcdyot8p2354z+R/gKQ+a8muQA59/bn5mYdN1I5eNgqu4bgM/J\nWRAF\r\n=fgCD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","_npmUser":{"name":"moog16","email":"mattgoo@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git"},"_npmVersion":"6.8.0","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.13.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"^0.42.0","@material/base":"^1.0.0","@material/theme":"^1.1.0","@material/animation":"^1.0.0","@material/typography":"^2.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/floating-label_2.3.0_1559078633831_0.8838560292506932","host":"s3://npm-registry-packages"}},"3.0.0-alpha.0":{"name":"@material/floating-label","version":"3.0.0-alpha.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@3.0.0-alpha.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"lynnjepsen+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b1c9b3fc7d90c8a35b0c3e199e44a1fea0050a69","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-3.0.0-alpha.0.tgz","fileCount":30,"integrity":"sha512-lX4K8TanzR9ZlDIkSCieQWR3zFEs3Mi100cYnZvi8nEYI2+NGGRm473avDGe+7BmvAbvGcZ+351C7ZPEy681YA==","signatures":[{"sig":"MEQCIHvwwGerkf+84hdIQ5sY8tyMnk/n9h+O8BN+61LHt2bNAiAp10V2TEPQ+Vv1KOwowITIXGztiQnb9TgwHBrFSIbilw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232686,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdAHpSCRA9TVsSAnZWagAAnnkP/jyYZrms3W1udvycfGgl\nJRMdJeFVJmRjk/NNTdFPgBnMSl2tBtOuI7/GQ3IiaSLddnLSEIHIVziVfvM9\nHfSsDNG67WkPq5kjnBNaKPN7hlDIfgnn63SsyP/BVOnZIb6IaD4EJgplo/p3\nVN6kF/kIOW4aL4tttfj/lPMMDsNckerr0RgGsWfJxNWO222Js+miAO01xiGv\n0yLM/STrpZ3gzuXYZ1vr7KPgZ3OYMvObqvXtMjST+c3TjuehgeQRBRzPD07p\n1nbAlos9C/4ZNwpPa/BQXkcylT1DMQAfPC6bROathTmPaxMW5BMCtFM1Rca8\nXDraXFuFStuExaAeid5owDvXlYTGuWX71+daXVKH0buLTAn+Ybo4bGomPpZ4\nvpCWYInJQb8TagVkuUVkfSoEYjZyR6GMuSm8IKsV2iyBaoXiCDob/M2eQWBB\n6bFwvOynYfVgSKsxQ2gaimPuhJ5eJGiK1sA4XkMwPu52UtJky48FOb9bGAXu\n9lUaFujsTOokFfXBGDppLgQCb9tPaToEXBEG7JVUT96rPMx9hdUOmSraPX2g\n6enNGxdijTAPVcXcKTJPWjiZkkzDSC0taKDwBpu7UVVg8kdQvvToHqBwObIX\nThJmExYVPmiOyRpNLyCzugFWW5lDvTmlrLBTGz+QZIwuu7x2gxWOJH2SRv9A\nst72\r\n=oHdQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"094e507fcfb488303e5adec97f7f985b30e8567e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git"},"_npmVersion":"lerna/3.14.1/node@v11.9.0+x64 (darwin)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"11.9.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"^0.42.0","@material/base":"^1.0.0","@material/theme":"^3.0.0-alpha.0","@material/animation":"^1.0.0","@material/typography":"^3.0.0-alpha.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_3.0.0-alpha.0_1560312400869_0.3083169689324199","host":"s3://npm-registry-packages"}},"3.0.0-alpha.1":{"name":"@material/floating-label","version":"3.0.0-alpha.1","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@3.0.0-alpha.1","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"lynnjepsen+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"799bd54c1afd97a959fce3a4d08667ec1d142795","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-3.0.0-alpha.1.tgz","fileCount":30,"integrity":"sha512-p1FPi1S5K6U4HCisCUsO5mHnjdODXOQ2pf/s4TTqL48hpZ9KbybgmO64nSM9SZdo1GTVc3iFcYYdZ/NMK9MInA==","signatures":[{"sig":"MEUCIARCKGsKgO+VQBD338yBnCY5Dp7/uL/ioXjJ2iS1ARrLAiEA0V/ht1Vw2avyjR1fWrjMmLg7fe2K8D32IrX7fa6SoDU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232686,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdAUwuCRA9TVsSAnZWagAAeRQP+gMZKkXbp5v2GBdyF2Og\n8NqcNak0plpXkAUcF/ztlOavOqbgRx2PQtqUQYzVdoMYKUvpTGaK0yScfVr7\nB3XMI9ILlxJLXi8xMW5kTV6ulnvYusdwaj2+qygDDFmjtmuRHYQv7pjhKxWJ\nCD+rd6VmMj4OLhDnHqdgfKeTV5KpIxKKtVpbE/NrR0Dt1AG+4PA//9ljx/cR\nMZBooCBUDU3HHrkd3f9NRVBwyJJ46a+oa9q3LS7t+qZIRUyK8SWA5zX4U8mB\nMTVlYCmpJ/ng8G+5zUv49gtJq6DIqT+l2yp0T8HKPfasDKkIFAGWzvjIvZp/\nwk6bgmInEqZL4tcZ5GXh/KFftZqFAKBIWthZ3fs6JiYhFG4RjV1ihgzUIQO6\nMA+uO5k/X7gLqOFX+KREO+MRtj7b3UQ5u+c3MDYo7HC+iUTPsdOeLENxIC02\nXG/0oWlA6pT2wXSQAnf7Lnvjx+OlNBGWXZblLmMlHEu5CzyNPpEWAwpj+dx9\nV8M4KQOoXgVzC9Ov6q8luNReF3SpuP0MOg/NlTTgzmsNyErxOUbvNK6GgJla\n6KcGPogvKDLCtDsebnJloU4MugD4i4zH5+YoMQf0Mu+0I6f+gkZHYu8EnTlP\nGcqWOhRB9iok7dZE762b/ET7CSBS3vQ3PKIYmvV3DlOHIAPHz2BXyoSNGwmh\nXXxK\r\n=TjB2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"dae97b98c21bb93075a9688cf1f9076a4fe5a85d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git"},"_npmVersion":"lerna/3.14.1/node@v11.9.0+x64 (darwin)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"11.9.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"^0.42.0","@material/base":"^1.0.0","@material/theme":"^3.0.0-alpha.1","@material/animation":"^1.0.0","@material/typography":"^3.0.0-alpha.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_3.0.0-alpha.1_1560366126062_0.2567668989944929","host":"s3://npm-registry-packages"}},"3.0.0":{"name":"@material/floating-label","version":"3.0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@3.0.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"lynnjepsen+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"88bf8862e6eee603ba9f2db64851569130535d45","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-3.0.0.tgz","fileCount":31,"integrity":"sha512-k/JOjWLBR+xNGSTU5/W261PmtoCIlSZCs1QSfdg5bYbkEw5nsts+uSXGNQ0cmZ7XlmKja2VdUdEw7UaG9Sz66g==","signatures":[{"sig":"MEUCIQDM7AzWEUkFlEhUGynYxdgl5NSnK8G9wtk8tsz8yJxxHAIgHFrf6XaEz+gxYIInA7wk1mTHF6ALjUCqmF3Lq5Gz3Ec=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233820,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdEp/pCRA9TVsSAnZWagAAsD4QAIPPEoT59Di+PHZkAew6\neaUbH+Z3PtHjtEixVk2Lfju4GhhMkdzWWoE4dk+jx2GPWqWuQYzEX7YLiOQJ\n+2ASLOzU3gtkG/mSFm9p2+RhJkbfKMUixdkKLaBJA9BACeTYnW02b9zq5t/x\nO2RI4bhFYUTzLhlotPRFB/dR7sTprLmN0qYIGjuUS3CMC7wJ7XKH8UH7Lv3k\nReSWP9Sab8kbEddz2h5jj9h7Qyly9A9FHyKKR6ASNOaHKrYiVPkem8srIqur\nvRXzgkvaYEYKuoFXKJY6Lhe+xc7YS5U0n1uPeQzVj9HDEqdLD2juLc3E3Yzc\nhIKQFnn3nvMWXvnkb5lcF1R83BVEgNL1rNXdGlv0CamP9ciJPEgstMQ1ZbXw\nZTWhgzbtqp0+hOw5Ql5vQv81V/fk7s3o6Z+nT2JnAZMJIlvy6LlMqDkrokmc\niuBn4/1nLYt4SPua9KMIuPX0D5VzP59j/Mmw8lppue1sSet7E8n3QMJvX9gD\nPe0FtgkdG2CPrj9uLEhzRmFk5XT/xpyciQlFlo5CsQxN9gOIeys0PFyxwwTZ\nnHSc50saK2uwWr8XxqFMgtKXq68Gd+3IwW6SBU8f2uaG09PFhOqm5ABPU4w5\nGNd7TLnSzhQhz6QrPa+zcl7EJq3CarcA7oH/Al6qX0yO5+ZrukxD+WGmmXFW\nTqKY\r\n=x950\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","gitHead":"747f6ed544e3a3bb3fde71ceaa51359f2212bfb9","_npmUser":{"name":"moog16","email":"mattgoo@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git"},"_npmVersion":"lerna/3.14.1/node@v10.13.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.13.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"^3.0.0","@material/base":"^3.0.0","@material/theme":"^3.0.0","@material/animation":"^3.0.0","@material/typography":"^3.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/floating-label_3.0.0_1561501672820_0.7021865914784466","host":"s3://npm-registry-packages"}},"3.1.0-alpha.0":{"name":"@material/floating-label","version":"3.1.0-alpha.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@3.1.0-alpha.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"lynnjepsen+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e83a314aacfcada434a1ff83d7617e763ede324b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-3.1.0-alpha.0.tgz","fileCount":30,"integrity":"sha512-XPe2YQ18ZvuMxJ21yFtswjoS2s4TTFFX6MBG4r13lLzRWkjtokLUBUDyzx6VICJUw/KxPOC2Ylpg1UTICAhAhQ==","signatures":[{"sig":"MEUCIHd2qP/0lG7bnSNpuNoNu2VjO6uxUeDyHW6zc/6sI+PQAiEAkq6tV6pudldWi1y4/t1px75/OAGWy34Gd/20tfbR//g=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":156172,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdLdEcCRA9TVsSAnZWagAAmlEQAIn2ymgJBRwyZ3CUJNoP\nDN0MCQMJQlScyn02S2hK9JRmUkhMjftZux52gZD3jRZNuaEgiD2l35ZoX4cG\nYIJUtHLaD26RZ476omcZeHMfHoivUqhTAtcSO6dwV2uhKXHzpgvsOCoilc7P\nepBkbI1xZWjEE5F2HkLZQwfj+5kcAnV3rOwcwtoc4l69NfQiIF2lzusbURVv\nLg6CFY9hXVsQVPySHwYkUwkNsWD00dmyF4iKO7846yqx+9+NR81l8nMQmYWb\nuEQVzuhR03TqlOavQ2CsVsUiRadMqU4LizlEwXr8LbtZjkBVOz1vSWEhmqAK\n5vDh7Do5JPYTajqJD6kUgn3tB/G4Om6AkQgQOhIdHFrii+x0OPwia5lBy8Ur\njBbR8RMpJ8dPvPxGpGjoaiaQSSTpip94gsZ1gyC6fDjk1fIUuf60hKdEB0jL\nExrNpL8wwGC9wqMEcy7IS6oq64wmY45dJO1XOdbwIBC03j9lgFGUcwGFCuKZ\nDSYS2gVJCbawWgkbWmtwbaSYKfjD03lcHlMKwyy19fPaXpyWkjKfHwzQpkxg\nbkf6D9yUabLdGWP0EDJZvRPQl92RFKTwRsUZGlBX9Pk2MI20q3Z4AB9f/Bn+\n08lpKDs/3DoMZwCuceFvaa1T8u+WeIiGLV82ajzFiZnzAbtjXlEriKQ+E9N+\nF1Gm\r\n=F1Cq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"42b485550d87a4c3328a07847b4070d15f09af8f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git"},"_npmVersion":"lerna/3.14.1/node@v8.16.0+x64 (darwin)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"8.16.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"^3.0.0","@material/base":"^3.0.0","@material/theme":"^3.1.0-alpha.0","@material/animation":"^3.0.0","@material/typography":"^3.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_3.1.0-alpha.0_1563283739938_0.5728794713736127","host":"s3://npm-registry-packages"}},"3.1.0":{"name":"@material/floating-label","version":"3.1.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@3.1.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"lynnjepsen+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"8be3630b835d0368271b0e1bd02bd7cbf422e560","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-3.1.0.tgz","fileCount":30,"integrity":"sha512-dzV/h7EjEMQmiDOdL0h7kETRRrqFC+e8M5KDxnJZ3j/Gbp6JzvXrpvZwwf/DkBK6Sl6xcScmAyGKMjXRXS1O1Q==","signatures":[{"sig":"MEYCIQDyuu28WUqqOLq6S/NoAm5b/k8OEth70py35fLznChxRwIhALyV/46LO3CigFUI8RjKkNakJgeJjzCQohgTMSsyQJVR","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":156386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdNjJ9CRA9TVsSAnZWagAATLwP/iAPUT+8JhB5zgxIabgA\naCxCl9SbHeBnCl3Xnnjh9hLoD40SDJZK9T79CvmR91AQ75YQtOxPvj/HhQDJ\nn4QYlXG9jVF+Wq8t60QuckX655A4j23dx0MGkVALUNDkcD3o5Xmoi1Trryg/\n5zB8KsVje2dv32I66mgWb/gNPeLwSdDsy9ppAy0N7EmutOSXZASS70i/YLc+\nauJkO8DG+gXnQbdRH7Gwn6o4VTOxPAKdIvbnWMGQW2m7qvbPVyH7nUnVl3S4\nm7fkguxWjwZAMh6rBNjRzQRul+XfqzcNd3UnEVrQNel71TQllaHUHbQJfVwR\nYEmjxq1KJiU4QAE8S+5MTxIRKvTZ96hnOINPBXymzPVBFCO6sI0WDpzL8YcN\nKejj045AHrL3R5pqSRAJK3loPze2tOrokjILqF/qgAFCdqom3Llf2DSkfLmR\nrk2PyfS3f2RXWbVL0t5nMBSYoC2JYUjqeCJD3iRo1mXkW8zSSDKDT0UIrUY8\n2fG3s2SVlxVBaTEEntkfRJpMSgd5NmTThkl+eCUkqdPiHGDJZx1XWPfyjbxa\n1F3GCKalpe/7tOluKayUH9lsyyQLV2lKFnwhGeLawXiIp8f5CneuTsk3DNms\nI26hIKtY3cvU5o5rnwSehw4i5gJIq/hYFP+lwDhV15qeZD41EgsC6x1aWg+G\nB2H/\r\n=rzbm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","gitHead":"6b7e616da1a1ca53df2253f6207642739e13b5dc","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v8.16.0+x64 (darwin)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"8.16.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"^3.1.0","@material/base":"^3.1.0","@material/theme":"^3.1.0","@material/animation":"^3.1.0","@material/typography":"^3.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/floating-label_3.1.0_1563832956386_0.31072258020925836","host":"s3://npm-registry-packages"}},"4.0.0-alpha.0":{"name":"@material/floating-label","version":"4.0.0-alpha.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@4.0.0-alpha.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"lynnjepsen+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2f7a9967b45b5b235aa4a0c7db2d4ba54652b88d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-4.0.0-alpha.0.tgz","fileCount":30,"integrity":"sha512-xUo1PQcXwopfhrjDPzzHPvHcKVGqWOD+S6WwQ1FVFStCb+SClYM1gLPVQUF9pWiO7D2lV+zkULTGSWbe2SkQBQ==","signatures":[{"sig":"MEQCIE7jqTUy+uV22831VDgp5uYG1a/mISAr8zC4ls+V/w/kAiBsmM4S0qUzlDtMFIckfSevuDcWceDCoYd553CgkYIRcQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":156632,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdSz4GCRA9TVsSAnZWagAAacMP/08Zna22uPEna0+roiLD\ns/u2CnZLHYdosQ5b2EdUT7EXCVjeWG/EOvc3OqPQc1mZapUSF8RbrNtKKysf\ngLvg5xXJLwlM5aH3ukgnAOF6v48lQ5tA/e6xahx0TUBgr6nvkApcPZyy0Jti\nz8juoZIxvNUJJFXInHmLws07TFQ0DaIwHNkaPr2ljM52pdjG82D7NNus0UEJ\nnqnQ5LCvrU/o4rA4QG5eF2R4F1YE0STkyjHMwUP/LxkUtMvVqWo5FgHWrOLU\nNm+2wssOVspEW+IjBbklhqUQoOBPfjhO/fLT+Y9gRLH4rn09B6714uPt5CxY\n4SiF+vJlYNPgYQtobTdwsciVAIqBsKlE3nsK59KF2ZPNxHm5dsDMItQU5DSs\nkOTEYrXJHh4KmTBTe9DIa5SFEg0qzG0dpSQOEq1dw/D3hI5BZyrVjPQXdxB7\nqmsdQqUbfM7WMfZtZYs01cgU6ge0Y8AUKVb4Ac5Zg0twNvZoqV9i0utBUwkb\nPbAXF7JzeqJIHyf3ngGwsBZIhljPqgMH2E11UHKC/T2+5ZoE3BSFkxV7EPf9\ntbiabcKqpQBJjjciZtXiNFcO/nAfZ0h0sLW4h8RLi5w7aj32onrkCDOjUehi\nV1OQbPBrct9+QTVzS8gAkAHnJx4am0IQ5la5OO7pniTwtUO+A/rapnzTNxVu\nG/JI\r\n=9SRL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"184b37f65b79a260f2835bd44e422dab2402d937","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v8.16.0+x64 (darwin)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"8.16.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"^4.0.0-alpha.0","@material/base":"^4.0.0-alpha.0","@material/theme":"^4.0.0-alpha.0","@material/animation":"^4.0.0-alpha.0","@material/typography":"^4.0.0-alpha.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_4.0.0-alpha.0_1565212165697_0.4327325585413029","host":"s3://npm-registry-packages"}},"4.0.0-canary.0":{"name":"@material/floating-label","version":"4.0.0-canary.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@4.0.0-canary.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"45a25b34b63f742255494a6863d42323048334db","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-4.0.0-canary.0.tgz","fileCount":30,"integrity":"sha512-LZiU7bhyfFrs0jKSbwagI/ktkFjSLU8EkJAtTcaEzGyBPr9Od0v0NWnwdrclGzYAcdvvm0wWOYv1eUpV4FTA2A==","signatures":[{"sig":"MEQCIFKEqoI/4fpahIBo+zFvdHSbCaOM8zy0BkKIgow9DAeWAiAB4z44xxJennwiqbMtCZp+5LtZ0fd8SCIBSpt3vtivuA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159851,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdcJEcCRA9TVsSAnZWagAA+0UP/2miYHDee0JUFoGosYBU\nrcohzqXIUAnNtt/8J+LpVj4icAEnv6NpC2Z2pxYWTkNtvV8vftOkGnmnuXHi\nj60RcUZNTWYahN5bqpGrUieAL040Ar7TsL/yLZL20CrQlvUk96MTpcPAgP3L\nB44+CdgL7edviwMuzQJ4bcVLH08qa9OuDOMsNvdcRRG2XpZtum9TsMHkjf8O\no7FIXuc0nRWe1ERITkny/EFn2D5cbqbJ+LAMvmbVyPqf5FEwRgwQKZVBDSlK\n30Hp3gev6DKmeJzBGTME1ttLNtxjKl5qW60aTCxyzsRBLirF1fiOgOJaIKEr\nPBzI8Fn9d6jVV6/L2GUSqy0vTbcXLFsCwvd31yztUx59rPwnt31qLZiDJbwX\ntRJzTu/Yzq3vSMukoPRrybXEtwfyniti/jkyUOmAfO/esy9I+6ddXtjVYwCY\n8nr7r9sGPiMiDtJ9Aqm13LJe0cscZxkjeQZsHJDywalljUGeWOVydqnTZ7Di\nAnWuJOK2yxxyQBYfD+koOgcz5w3VAWsOmTSAIGt99VqGDaLa9pBAyf8ULV4S\nSA8wndMKyE5jGEDxE7TYWuRuwEOPu7W7kA9ylrNesoqQHL7DUVf87rYCA0Mc\nLPxKVJE5YuD+O0d6rjl3fWCzcoTfIq7vbNf0uYpZFX1azIy4TKeYdg9bD005\ngXmt\r\n=HKcZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a9e69493144f4246efe28a958126afc2fedebd60","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v8.16.0+x64 (darwin)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"8.16.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"^4.0.0-canary.0","@material/base":"^4.0.0-canary.0","@material/theme":"^4.0.0-canary.0","@material/animation":"^4.0.0-canary.0","@material/typography":"^4.0.0-canary.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_4.0.0-canary.0_1567658268292_0.08027228383101814","host":"s3://npm-registry-packages"}},"4.0.0-canary.1":{"name":"@material/floating-label","version":"4.0.0-canary.1","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@4.0.0-canary.1","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"085b181048c02c3c3855dc7103ac006aa1c7d7c9","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-4.0.0-canary.1.tgz","fileCount":30,"integrity":"sha512-U2NJBDpBUML+eE1rfZz/TfgQrkLZe9PBLwxUVGJb0AL8s98bSUNAfnhtAhxUSJlKa8foUA/GCCTpU+0/DnqOvg==","signatures":[{"sig":"MEQCIEefyGmPSfymNMgPLpWQZnp1C6+tzhJkgqsG3qfHinZyAiAqNB9N5IzRBKmnIyiu1Ri4R5w5NOgSSyMbteF8aeWtQQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":161425,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJddrQaCRA9TVsSAnZWagAAE2IP/R/xxQ6aQ09abi3Q8pyF\npqgmrDbzvvRPGyTKM8/hS4bGnuCSCuU6STIMXv0VEf2nTCTFsC4yaIDoECt7\nhgtdxtdeJ/U8wXX3x8el1uFhekK4szpKJzNvCBtRDoTmtQfOrXUvNamVBEU3\ncYcC3LG9jGdwP8nDV4TSjWFS/xidALXIM0O02Oho/hPx688PZtx2K4z34ObG\nFRh1xlON6oZTUcEKmmAFUWFzLBh65uL7gKq9uPWUTfOcGNJiLZice25vpaHu\nH0QkyEpKkvMV6c6GdfiXUdftG7NtJ1wnUx25qiunB6smfqmrf+UBGAFEfwZe\nQh/uOoQSjbenITDM3v3fgJsoHyc6dAj/68qImAIHhyXruBqh4E9a5dFgW7tH\nQTD56gFlFm2kg80yLSGZgvu+ahIsoUAzTvU/xAK44muX0UuG5MM3jg5uVKEH\nx5ilNjZ+VY0/25e92Ul0rxUadGOiZrckUOuj0wMw17wKzWd0CD6CQsPnZpWc\nyLJEMvf5MJGep7EUE25TswBnTemhRTxDD/tA70UKibsu5TaF4dhMqHxryp5w\nYNukGv0QZhtEIayGj+1W04tLxAa7tpMYQ0u1FIh+YwcDm1d6JCC3QZ7qPKPL\nouIAZ/M6Jl+LaBTAsDefbRJ9xsQn0DP0jBd+PKWRD+l6xn5bMU/Ler5/t2cI\nS2hX\r\n=0Vjm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"edc72a4d7d6a61d61620fd05a80e2491e518bccf","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v8.16.0+x64 (darwin)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"8.16.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"^4.0.0-canary.1","@material/base":"^4.0.0-canary.1","@material/theme":"^4.0.0-canary.1","@material/animation":"^4.0.0-canary.1","@material/typography":"^4.0.0-canary.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_4.0.0-canary.1_1568060442223_0.6061877136199458","host":"s3://npm-registry-packages"}},"3.2.0":{"name":"@material/floating-label","version":"3.2.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@3.2.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6de47528d1534b7d87f42286ed952fe63153c4d9","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-3.2.0.tgz","fileCount":30,"integrity":"sha512-szzsSou+xXj3E6InEuOCr8E28IE5EdcBfKRaHoR5EBkzgcRxLuZkFSqD19zsUgVErdTCcRSbeU9mYa6cP8+Nzw==","signatures":[{"sig":"MEUCIH/JdzxcOwVG9MPXQVwCYLbj9d5cS4xlrBtbKCMFXSQqAiEAtgHV4suF5N9wpmrUjchZjXSjGI9Oj5qjVuYHqffsMPo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":161762,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJder5jCRA9TVsSAnZWagAA58EP/1oj0wW8zwFLEGCqGHPn\nfeog8ljCt71gxxLzfN/sZJNZW6xoB6Y5Sa8A6lxMDpMJclEopxSy3yso9X3/\nQJ/VL2+9FNTS1UK5DebB+o+mQrj5Fbm/U8trxZ2MO42xB+TRzDM4e+YbNRbd\nEMlJnDldZXUeN2cRfH9Jr8pPGeqHrWbe1/H2oEF5gBzwwTso3CuGDH6n7nTw\nB8hCbFeBx1LsrN10jI+zAuE3yzbJw2cP0cu+WSA/wTKqtGljMu5U1/iCAdo+\nbAT0cdDMjAaK0inHs5i/izKhcKvJJJZKthmCqhU8VJRnZaRlRhssB2xGxLrI\nVOU+OX+YknR5ZvZn78+EhRvAgML65YLAYMr0W4xtfcUgQNm2YKn8wso2RStG\nGusBryoPVE9COXVpAZRcdQbQLGWo+6IVtSN4441/SsZihFK7FBRIkceDeM9e\nZyBGCswRe5a5V0c5kOXS3vKQWYBqclyIdH3Bpb/3Eaere6paYvSPXa33L+An\ncmO8/t1xnuzKtrabqfNRpeWbdncupajbS47MHIHGbLmy0d8gWUDP4VPheM5U\n8fVC0pWD1+kGmmK/1GUCiaBu1WOq1VdQBt35NmLr3BGUAJowVeo1Ur/DUx7H\nNUupg+NSvA0xy4rtDHirTGGAlt6188z7ghyEdnl+yiXQvI+IR4s8shINgYKx\nWZeb\r\n=/tDa\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","gitHead":"abf67305fa705591abea3972006a18ab5fac7f63","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v8.16.0+x64 (darwin)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"8.16.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"^3.2.0","@material/base":"^3.1.0","@material/theme":"^3.1.0","@material/animation":"^3.1.0","@material/typography":"^3.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/floating-label_3.2.0_1568325218521_0.6799918034829322","host":"s3://npm-registry-packages"}},"4.0.0-canary.79d881baf.0":{"name":"@material/floating-label","version":"4.0.0-canary.79d881baf.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@4.0.0-canary.79d881baf.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"45fa845dd2b3182d8867280be15ccfd30bd11508","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-4.0.0-canary.79d881baf.0.tgz","fileCount":30,"integrity":"sha512-5y2kG1UFQ/JnAL3xQusJG/WeOI1Kj9D37vYjsufQMrqytTYyVHRurwqZGGzkmqkB8ALtysN95ICrTLp/bDb8sg==","signatures":[{"sig":"MEUCIQCz0508sV4OWyStK2AB+RDMiLbJ1+EFKXN1G3xyTGqOKwIgQzn+EkZywX84CW4V01+IS6bDJEaqc96/IgR1HPVifg0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":164899,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdev0sCRA9TVsSAnZWagAAqzkQAKMS/nFX9P0BHktlraT3\neBfvHUkG5qgpKM/bgtMxTBo26WBZzqjuMQGnscTwQG/dDGmfzX7g0n2yrDku\nGvqXhvCVluUoXwDBeY38IDALScmWma+/PNpviZS0OkmxTE6OAWzh3bhJxoTY\nkG76zs+jH9Rn3G6sulDNveoWeIx42iKgABoJ8W6GY48bI1vJGV+MeDsl11TF\nEBo2It6IWQPIBYVBmjAGjx8pf8GtTAHiwRRbTRXGQz4UjxpnyBCTU04NS354\nrHq6D7z0ykv2D3yEaIy1pu9QrseUYjBY+D6S5HdWbJlDhlDJJ8IrKI//lZqO\n0kTNP4u7z+UfY4DbBwv3nuGlTaZk2ABKy2p6Q0JkkWGssqeUxRPjplT5lv3P\nyZf39JVzO4njfQVv8utzurX1Rms5aOs5L6BQ7nJjKb9ClZ6dKV3x+dKAA+8T\n0XSZi+57/p0sBcH9n9gmErDomdP3M/jMagrw4Oupr5UX3A0Sf3ehsY+XjL72\nGsMi5lUmBcrfd3f4yEKijzljIFWM/+nvZI0AfvqNj6yLKHhPRi4KAiUl2Bsn\n4TQ3Dh0PDzvll2VPrn6f6ApyUB9H29aVLYFzMytNAVTlfHZqAoXr5HAJXEDz\nEZO01sGf+PbO0E4epJU0NuQC3zFw+2WE2hE+aKs1xnq3BYUeOgUoO3/hY910\nIgbQ\r\n=j49x\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"756806a2389389441b5b3c130de02948130d96b9","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v12.10.0+x64 (darwin)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"12.10.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"^4.0.0-canary.79d881baf.0","@material/base":"^4.0.0-canary.79d881baf.0","@material/theme":"^4.0.0-canary.79d881baf.0","@material/animation":"^4.0.0-canary.79d881baf.0","@material/typography":"^4.0.0-canary.79d881baf.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_4.0.0-canary.79d881baf.0_1568341291604_0.3688285749386899","host":"s3://npm-registry-packages"}},"4.0.0-canary.e851d4f40.0":{"name":"@material/floating-label","version":"4.0.0-canary.e851d4f40.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@4.0.0-canary.e851d4f40.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d6cd180da5f32c250c907634b0e4851bdf2e69a4","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-4.0.0-canary.e851d4f40.0.tgz","fileCount":30,"integrity":"sha512-ZIarmGfmrLqW08Y9TbB9kM+OVv2drd9Ij5L5lCvYGDQbfBcHPT/HM0kWIGl+srX6OZOuBFO63PtAqvGewIM7XA==","signatures":[{"sig":"MEUCIQDM3w0lDB7Zl8SnpMSeUIkQfYv9GUVVQlpaRo/RwLFMrgIgDlZiIIg/R6yxSyTYxGy7cVo2VWdZAd9BMgH5bLJfn74=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":169227,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdexX3CRA9TVsSAnZWagAAG/8P/0A5sdG1otjq0Hl7eV/v\nuolh50QudwUz7Iw70p1KhnnDC3HQB+bTzYt9+xC5+9qI/OMKx1G5NW7g2uEe\nS5ta2Lwyhgcc/9kPREUEKnINsbcIiUZQeEW4Sc4QZ987YA6WON6uhdICNGxc\natAz4K1JMPbgCNmqItENihx4fapbScVpJx3RSnirdoWrkIBhvwPTxfRGGN3t\nKv8kmAQWY2b4OHY0TwG5aT5hb4EWXZrNr5Prhl2dQl5r+s7kUYD5yEFlUh/Q\nJlI6bMJsi6XuM7OLjwy/m+Z1DXGRcJPPOw781oCb7mwBm0x8GM6sfJ6TjwSC\nYXtW7YM9jiVdFAIMKas13H/BVowWo2MspIFTzqvwn69NqAYJdfW0o22mENSC\nb2KSM8GXeWmiVHpw8g3bFLfkJ1igWDfXfoq3GaY6CvW9foyCTIDnNCOYGFq/\nfwbqHDWV2iJpq2pdIyczpeFiJl1VDsP1n2JAUSlesAcNyhyqVG5QUMOJIN77\ntTRRMnP+HPZZjlM75YCQ1QBdwCNqAJP/aJ/juod91dUXh85a6O9jFcm9Dqps\nlm+cF62vfE3J90Q/DwfHwvho/463Ikw1i67Q0aKRp2ECUrR8g0uiOXEH6iz9\nEYxHcUIx3Xl0UxrwSKnQNP/4AwzaBf7gVUGughZnXGkXjror5Dks4WdRS1Lb\nASHt\r\n=PmL5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"353401bd143fdc2b4a85abf330176228e21dfe13","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v12.10.0+x64 (darwin)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"12.10.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"^4.0.0-canary.e851d4f40.0","@material/base":"^4.0.0-canary.e851d4f40.0","@material/theme":"^4.0.0-canary.e851d4f40.0","@material/animation":"^4.0.0-canary.e851d4f40.0","@material/typography":"^4.0.0-canary.e851d4f40.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_4.0.0-canary.e851d4f40.0_1568347638909_0.23378720457418822","host":"s3://npm-registry-packages"}},"4.0.0-canary.905884690.0":{"name":"@material/floating-label","version":"4.0.0-canary.905884690.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@4.0.0-canary.905884690.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7ee696dd280df7e58faa718df71e720c113a1004","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-4.0.0-canary.905884690.0.tgz","fileCount":30,"integrity":"sha512-LtNWtsXNBW22XeF/wxLJvaOpRLITMqYVk9DmDE7YABVsMRqoMW8M4J6ze11q8rxWa+Sk28xypTHeDtqTDXsOOw==","signatures":[{"sig":"MEUCIQD9y+48bO3rnRN02uFO1/OIy6XuIlC5TnypZ10ehWsxUAIgNWgyiy+42VTRcsGM2OCzhZxIMIOPnY4E/x46yU+eBa0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":169768,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdgB85CRA9TVsSAnZWagAAmDkP/j+4vUSTqOgxyTZ22d52\nCvRhaz85uzVsVujq2cllMBnGPytEEK0/HrZM/dsqzZT3VI9d2SthI6B61/tR\nNemjQA5qWnNBmxy29QglyXtXVT7a9bHkAgmMmDKfte1Vem9GeRxJrHRS5N51\nSlT215tYCTI69j1g/AouFJIeXrQn2xIuwWq++6U1ejbxZXarmRECtI1jAio2\nF/TwJhtTkePi/BR+SAd+jrexw1lqT1dtiT04YLmaMGaTC2fg6NQWNUi7q9FD\nI+7Gn0fg9t5o18hsotmu63AeqZ8BWWOYiloq2NwNoUCdmj92m0mZHxluba0q\nEoJjKAamER1oUAWfRvdlYAHOkrMt82KyxbQQrXKsXBBn21IbQxhQaiTfT939\n77+dwdYhDwNOuTtM0KJAccfGVR5loKSYsSv/IonWIeG637bZ9nWtUjWCdO3F\n0QWhAKzQvCsNqt/oMCN77wp6ce1M5d2tdy1tmSp3UGiEh2/Fc223trj1mOAI\nVbukqSWxOYabuOl/WoFwjpCqHX3tKz4a5++e7NY+AGwmAk/MAWc2d/v2wHBF\neuB1mQb87ZZxLr+HCBEIJyhKE713oo1Hhe3x2cvSVqteGkf8JSrhzEyNuuqP\nD6CsGkCZMkp96bB1XqQKujGb3klc7qxCVehwZP/5ZfVdcY+t/WnvEY7Ckjbz\n2ABw\r\n=KZO0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"df7fbf65943b1227b1bf145a2774abe7710b1e30","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.16.3+x64 (darwin)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.16.3","dependencies":{"tslib":"^1.9.3","@material/rtl":"^4.0.0-canary.905884690.0","@material/base":"^4.0.0-canary.905884690.0","@material/theme":"^4.0.0-canary.905884690.0","@material/animation":"^4.0.0-canary.905884690.0","@material/typography":"^4.0.0-canary.905884690.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_4.0.0-canary.905884690.0_1568677688528_0.4750642597372787","host":"s3://npm-registry-packages"}},"4.0.0-canary.199534d61.0":{"name":"@material/floating-label","version":"4.0.0-canary.199534d61.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@4.0.0-canary.199534d61.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a06817c6fa55ec53bc4da890986b9cb09f3bf850","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-4.0.0-canary.199534d61.0.tgz","fileCount":30,"integrity":"sha512-LzPLW3IJ62RrRg0LVaYC8BuNbHMORC/u4Yu33oLbI8b4/8LE5vuDbPsbvd78EwJA27qADI36B0NbiOMvla/WUQ==","signatures":[{"sig":"MEQCIFHqBsCN2eS7AyYdUhs6oA8LxE8ulbZ8M59yCykV9N1IAiBDSU34P2PSJqGamJ1z3N+5QSq+fJtWMaZWNsiMEYP7Zw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":170309,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdjlumCRA9TVsSAnZWagAA1TUQAImTEJ0zqt7N4xGBlHGe\n84PU0qsE0raIMd2yciP0IFdgaHr/LjKkkhTXGQgiu1v26dDkT+An3fR2q3S4\nJgSDbs84Ypj30u/CsEMiAFucQ2RFCPDZQ5iYk/QWxplFgokuky7VVOO0S6Pu\nEr80sd2HpN+SUj+qrHTPyVS8MCGln+4N9FD9exHXU/gzVci4L9goIAnFxTIl\n9WS79h3nk345vfcCe0O2hO/BlhLJTpfUIjz8ZEzSXskaYbDyME9apuaN6a9K\nhDT++OAlklOwba0/rvSL+wsqZ404F32uaLzpwN2lqmCCG2zu53BhJBrZ8kjK\n8hqoC33xClao+0cdT8uJPTMyQQ18DXIqEw+296MuSfaOBVYfX0nX4ZFJdnM7\nvUKs/dj+8zq4kwbg4OnRYxevZ9Sg6vM0rHezdb1v3zm0A5nmYBxgZNA3xfvr\niCr8iKig3P1hWt5tHjmrm1lIG5nl6NLy2a8bDalsK5R4GQQW38KbPjHCIqqC\nH2nkSNi7N7hIfLwmqEZ2nKHaMm9+agWIkIeB8p5otNIELTfbLBV+jng7FKBQ\n/ER1z6ZAstIGVJqO2Q7ESIRnz34qX4Uorwq9CxwEQft456IOqwTyBBXQiuDC\n0V8rnNfesOMnmu1ajKHL56/FLizxiR9CZdKT5K9Tik/kXwt6UKqijAyKYXI6\n7fOD\r\n=P3hN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c35810420b70c99e38a1438e1fd44e4bb84e21be","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.16.3+x64 (darwin)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.16.3","dependencies":{"tslib":"^1.9.3","@material/rtl":"^4.0.0-canary.199534d61.0","@material/base":"^4.0.0-canary.199534d61.0","@material/theme":"^4.0.0-canary.199534d61.0","@material/animation":"^4.0.0-canary.199534d61.0","@material/typography":"^4.0.0-canary.199534d61.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_4.0.0-canary.199534d61.0_1569610661711_0.3528337308355609","host":"s3://npm-registry-packages"}},"4.0.0-canary.22d7ad2fb.0":{"name":"@material/floating-label","version":"4.0.0-canary.22d7ad2fb.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@4.0.0-canary.22d7ad2fb.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"05d3c58465064d138396031b79f5ea9e7e769e57","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-4.0.0-canary.22d7ad2fb.0.tgz","fileCount":30,"integrity":"sha512-+I2GkmTGwbW234QMRrmxrTJqA3HU+JOTg3XiqBN1TcGd26dkyNhgl7o86q3fme6PfdQ1pI+rH2HkdkMA7s8Bvg==","signatures":[{"sig":"MEUCIAk81uDKCzvqjhPoDvcaQYBxHpHyTDdROyCgwbqOu7WuAiEA5P1lDpVXYnl/2XCEzQo1OUbtAEHGzWKHzIKZLr5aKrc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":170850,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdphaICRA9TVsSAnZWagAALgEP/0OS/yaWYS6BtsThkOKk\n7KGcYQtDCuaHysF95Gw5i56f7rWfru2UcTweByelTVQP/6YPNOND7O7okD6S\npWSl+eU4LAKTFpzpi74rfe8SIx9ilIv1gTlwcODEEBkn/QccY+Nfgyc4KKqm\nKJAgooplrY7eZGksZcw8/CGJ6iqqBlI2CZpTWgh973llO+aXo334qKWkN1jF\njflPF5Ay5BFLJYlBL11mkn3WtnztEbPSDpjKX1U594lG6EkDOCCHCfU/+wYs\n5lvs/D4wr9kQyf+XQauTaSPQHGbS0USI+2bTj7F+Crlnmy3UeIjmLfgWjmY4\nR46YpMe/8l6Kze5jYHCrfSHPk6YAn5B/85bzw0dqVz4KDMeNkYsFfEdnVPCd\nYVFRfkCN1K+QuSk4sltNBLdutRtKi2i80S02x8l4Z3ANWC5uSj0nZNWaEL33\nKVI1au25RyMvRDlgcHpV6mGNudjWCGNdCsvTHJiuz5vLtiV43KJoaALg49n9\nF20a4/MItk9yfLWNk/Jw6kl1OQI/RIs2hFFs7ZGfJoLPhonNILzOHmw5hl3q\noUj5b+pWJHmQuIdGqxXrlvYaefSBw9rSiwEmYZpg1WHh+anxmPa8m4AgEH6c\nG4pbD1yNQYJZQH5z/D+ZsAIKuVoRnNg/kNGVHdsDanz7SgW2WyEeoDRBhOb4\n4C/X\r\n=62iR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"bdc05bd56f8cbc11face1f0f2787fdb17f450fe3","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.16.3+x64 (darwin)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.16.3","dependencies":{"tslib":"^1.9.3","@material/rtl":"^4.0.0-canary.22d7ad2fb.0","@material/base":"^4.0.0-canary.22d7ad2fb.0","@material/theme":"^4.0.0-canary.22d7ad2fb.0","@material/animation":"^4.0.0-canary.22d7ad2fb.0","@material/typography":"^4.0.0-canary.22d7ad2fb.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_4.0.0-canary.22d7ad2fb.0_1571165831844_0.5778416437420233","host":"s3://npm-registry-packages"}},"4.0.0-canary.735147131.0":{"name":"@material/floating-label","version":"4.0.0-canary.735147131.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@4.0.0-canary.735147131.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e7e88a8e352311012ffce8d098109a84aead1dd2","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-4.0.0-canary.735147131.0.tgz","fileCount":30,"integrity":"sha512-JW7Wqd6tbgjh3bGkCYtOzDhMGjzsJVPtF2cOQBLigj/fR21h/ufFFcXKUd1MULIaVTSKOUocih3PCwBFNVh1kQ==","signatures":[{"sig":"MEUCIQD7VXXJHJYK+zdpc/HYbxIfKLA6dpyyrjBTr6KAR0jDbAIgbWtae0f6GFaPWtN7NOhSNvlc9GrWexSmXipYkMxpM8Y=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":171927,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdpnEWCRA9TVsSAnZWagAAugoP/2913oRJ9j065snWnigO\nAORjy1Ey9i7SvWCbFYAijona3ONhcMbsO5GCIBmbDXGyndwfItwdV9FzlQfi\nPg1FMr6kM255+tcNC6KkVlL1QqeyZXeyzYDAbth3j0KgLWf3mdgwxO8dLB0R\no8l+lioOStmYvCp0JBZHK4BMIBJbY7q19w/6VLtBuCURXiWHbsTMxpCe7ziN\nqecxJIcDyTUJfBuDx41XelO1TpqMcW6zwWtejt2kP2liIMEaSDrMZ2mB8hLe\noqAdbWVFM2cguI4s5YeYysR35xKZGTdajOOikyOfBrgJTGQ9rMs6Tr4yW+wk\nWmV9lISgr3KFxhrgJ0O83RAoEiMeFgI8fia2f9CcNr9WJsl1UHEpsQM5emjF\nwVg911bKdmbPnvMaO1ZQ6LukxXI+YOV6vWERgZfLZFbJr4JnNTYqPTT7gFIN\nQ1EgDbY0MP0ipQXtIjkkwe+2+ih98cxOxpCEjqDdSj/CLz1c/UeJVo5O1rgu\nBx2FELN2MlMcm4kHJLR/11Eg51YV+KN2YntYTB+JtizH7ILuqV4GTPnzH98N\nVOldqOCGlRVNG+/CgdCwNdGz4pV2wo4hjWewz5Vp2Z6EZNt6LBUzMiOKBQ4O\nZ0yvTQtcn4ZdGI4+KBUGe2CHZqHFnPRlBzrqwZspqA11jb6IsDYg681S67n1\n+Pda\r\n=KCjs\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d7bebbe119e39bd973d398066f5601862aface5d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.16.3+x64 (darwin)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.16.3","dependencies":{"tslib":"^1.9.3","@material/rtl":"4.0.0-canary.735147131.0","@material/base":"4.0.0-canary.735147131.0","@material/theme":"4.0.0-canary.735147131.0","@material/animation":"4.0.0-canary.735147131.0","@material/typography":"4.0.0-canary.735147131.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_4.0.0-canary.735147131.0_1571189013657_0.48023256723573926","host":"s3://npm-registry-packages"}},"4.0.0-canary.062ade5c0.0":{"name":"@material/floating-label","version":"4.0.0-canary.062ade5c0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@4.0.0-canary.062ade5c0.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7503541ce3c91d35f3b01c728c44b83bd124c498","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-4.0.0-canary.062ade5c0.0.tgz","fileCount":30,"integrity":"sha512-Uk2+KGBzZ0eK6IiTQCo02vf3dlaRbIhPgXY7A8+85Uv3x4orI0foy2PMwvgu5UXlgIBMTizjxNzQa8qpEWo/Kw==","signatures":[{"sig":"MEQCIA5rFLLyHEN/c0phMSzg/qT78fticSJclC0At9foOFnFAiB+rZvQIfM+7tmMCbH656QdYROMJoidH8rbe6Sv/gWaMw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":172468,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdp71tCRA9TVsSAnZWagAAy1EP/RGHxbC96Ht4m/Wn+vXl\nWeHQs5fKuFbtaCgf5cKo7U2xdB9OmMK+uWTsY7Fmp8HFUJ1U32IfMaQUmvjc\nWgQsr+j+mTg4+TKk1RL/lTitPRuVwBgnZxkCVkK/6+AVLp9l5W/DSUneWZUB\njprdT6My8EYWgczjiTqArhvjnhn1GJosjENuF/Ewr2SCgbRW+KxbnIR1+55+\nyf/DfFgVLDHE5UPfISRuOg+gUasR8CtiMAp6+JwqZqV3F+2zOko04XCydWjy\n1Py4scdp1K+18Ihv1LW/syg4ghxhBElScn+AWvozAv+u8VE1hcOJZofCeXbz\n296cg0eq5JrTGONl6XQ0xaVa4Uq4hvL+BojHlz+Tdh7wQv7XIzkpMQFD6z01\nZ6MGBRKGyCx1FD5Ai+Na/UzkL4+lhxOgWuaXf82PGLeAu7N8+YYz395v0BJH\nPODckDcU/zFMxaTtZsTWCd2rKtuZKpiE2L++xh+oieGQ00fH7ss/z3Z26YU/\n/xPjN9NB2CWLTDOpSgZlnoS/eoQNv6AJYtyI4XAbyoA3QNkhX4gcs+lrroMC\nbh7NxWTbIncFTCemY66HPlE481klaiTGk5dY1uC+R+0S7jMmvSKTWD6Nrzc5\nvFz3lvEiEEXl1vHYCV9d5wR/rRV6x+Ab/8nBPpa6WNb3kMfrL+J/vexA9TUq\nuWhc\r\n=Y0zK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e2025b4ba4d9837dcc1063934417df1eefaf29ec","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.16.3+x64 (darwin)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.16.3","dependencies":{"tslib":"^1.9.3","@material/rtl":"4.0.0-canary.062ade5c0.0","@material/base":"4.0.0-canary.062ade5c0.0","@material/theme":"4.0.0-canary.062ade5c0.0","@material/animation":"4.0.0-canary.062ade5c0.0","@material/typography":"4.0.0-canary.062ade5c0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_4.0.0-canary.062ade5c0.0_1571274092395_0.7375007775402993","host":"s3://npm-registry-packages"}},"4.0.0-canary.774ad4f8.0":{"name":"@material/floating-label","version":"4.0.0-canary.774ad4f8.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@4.0.0-canary.774ad4f8.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7cced82a0ff9803b7a1bcc249a6c786dd81d792c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-4.0.0-canary.774ad4f8.0.tgz","fileCount":30,"integrity":"sha512-ur18gW/NFS+bcU+804mwHNEcObtrDGOmHk3WWTe0Pf93/qOBmab5G9D0oiSRwegz4qjcfDAXzojyZq+GZsZ/cg==","signatures":[{"sig":"MEQCIBqlWVZ1WtPSb7bPlV4Ib2Q4Oo3tStv6Z5UpgN3u7ZyRAiBSbSuEO8lnsduyhz9wjxkGyrpwjXJJ1jDGnf8Zf42oPw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157167,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdp+hOCRA9TVsSAnZWagAAWSwP/1oqlVWXykZsAXj0nvM/\nSk3U/tu9dhOQzJpDIkMs2Zw2Gzq42/Izf5T38zirDULeuP6ohj0N7JBN9nF6\ndxUcKzAfTLK4mFNzpZq0NV4r/H8izL4r901bD/Hn3z5jblwE+htPphfyJvZ3\n2pUlEjSrGpYlK2MdOCK6eaRAXj3+xJi3Wy8L7qkQRPCPQosE8WgDaoAc4LJ4\nYGItQCtay38m9tkFlveHFXXlPTobYsB//R/RHxoayih5eShgQs1ANRnaEeUJ\ndJcFHCIUK5zTOBSaZoUbmxHzAJfDKdIAHXSEYyVKNxPUBOF1gNP53vDz1UBP\nwfD1uDSFCVLyUCVV8O1jOe8KQamX026Z7MmTAokH2t6GWuPRNa64fEK5loAJ\n769dllNqTS4HezcEOkHKgQhgFqG8hxRsy5oUXhitMFrmMhWAhuOmA1ZF6nHC\nxXlK57cWvh6cycOVvyaCfamSU3bCAEf46zCMYK0WzC06p7IMjErwtL9hvE+O\niuAYcZ0qghUamRgnMk7CPR9lrXt05XH3kpSOkjyE5uzOLhqdoTiEqI/geRTl\nBAQtRyRks5ZEry+VDuGTFxvQi2KgREisF4pVQhbfG75avepLDCR8rijRLkhn\n5mLEH+BERRcqRhnXEjoUEGkDFtEi6iGtZGLNUATV6TsZdQZv0v2gu2/z+gEP\nWgcF\r\n=XUK/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"66607256fd6f9e4fe92319b094d8476583109bac","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.16.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.16.3","dependencies":{"tslib":"^1.9.3","@material/rtl":"4.0.0-canary.774ad4f8.0","@material/base":"4.0.0-canary.774ad4f8.0","@material/theme":"4.0.0-canary.774ad4f8.0","@material/animation":"4.0.0-canary.774ad4f8.0","@material/typography":"4.0.0-canary.774ad4f8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_4.0.0-canary.774ad4f8.0_1571285070375_0.9663351393460242","host":"s3://npm-registry-packages"}},"4.0.0-canary.5916d18c.0":{"name":"@material/floating-label","version":"4.0.0-canary.5916d18c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@4.0.0-canary.5916d18c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"74b28e581459960d038ea8a76b71e1b6f11e839a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-4.0.0-canary.5916d18c.0.tgz","fileCount":30,"integrity":"sha512-qB9J7A/O7ceYbqZ/mM1VoWs9l0v2Nbuou/Rb5qUQ94e3eGjetnRqXfHSRl5WUI2s2WK1K2Xsqx0j7ItX+4EZcg==","signatures":[{"sig":"MEYCIQDIf0xhcpog5lWk/jEhOAurONv4HRZ4LKmHFj4bdxMTsgIhAI8Wv+iVdIZguT3hOSeX3jbU0jXBn0Ma8krMzr16D0k3","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157346,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdqhvFCRA9TVsSAnZWagAAqs0P/RFwNMo61MG1x0L+LRDI\n6sYHNLzhqB/3ijomvbU7HfpqUIECnm/DQHccvANuKrYHsflOSePqBxkZg4HD\ns6oqnsP8OKYokTtmR0FXCNvo2Bv/fREj166Jswj9xtHMfJfAifnVZg0zJfLB\ndlkn7KmV2S9Sh4oNAwI0ZRgzIApMoDIPZJYv5uFNrjgrBPIYiFN1+64k1wnT\n32XlKDbPdqh/Vh38vxBxuv3pTDrxNWT1xVyqDoxi1DX8zHiffvxT7R3y2fyt\nYDGy/LO3IWZlsn/ty0UlEA/66/ye2Y9Gho/ZyRPBut9twA5f7j5pR8Zcsl/0\nAmmCLNiTh1BYd+9d8VFkDZukejN0/UsIG2TFDXkRKackIAQ41M3Im/fy/MEc\n0d2bvnIpyAr4lAPXagxuf7hxyy58ewW6aZ7XXMG7nvOMIvQ/H0WTkXEnaLAO\njdrqPmQNaw53gQNyPF3ko+3TOCmFOO/rmbCxrR8fPRLlLqvCxotWA7sdE3gK\nhlWcFCgO47wssaXGTMQxjBBFgJN3Imp14kSLJxhiNL3zAMtkAcKZrPQTxQF9\niWWa2huUbsKQ3dYUiGOeN9cwS4BtxeuVh6ggemGINR2ou/Y+H0zDchIO6OZi\naZHtPFSV8I0huHCDhJwGJpHXbnSWlx2YsAuMr4mbjrVZntmmmocUdKj+DQ6m\n7Vks\r\n=+eU8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e3338b891c5ab3207ef8340a75490415e30e313a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.16.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.16.3","dependencies":{"tslib":"^1.9.3","@material/rtl":"4.0.0-canary.5916d18c.0","@material/base":"4.0.0-canary.5916d18c.0","@material/theme":"4.0.0-canary.5916d18c.0","@material/animation":"4.0.0-canary.5916d18c.0","@material/typography":"4.0.0-canary.5916d18c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_4.0.0-canary.5916d18c.0_1571429316808_0.2233875055732113","host":"s3://npm-registry-packages"}},"4.0.0-canary.d4141c95.0":{"name":"@material/floating-label","version":"4.0.0-canary.d4141c95.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@4.0.0-canary.d4141c95.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"44332900ee2ab348bd30f59aecc03b5db497dd32","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-4.0.0-canary.d4141c95.0.tgz","fileCount":30,"integrity":"sha512-aVlWOTitJFZrXZSbVqFum9/2iVrgPyCi/ow0mfecWwNTHKm0HIi9uskK4yzFQUYVMHeF0c2PJSPop3DsRKO8rQ==","signatures":[{"sig":"MEUCIANAkbVwa8GX6K+7IQHW0OTV12riAKNr20idlW0JLauaAiEAmRDHG8hQvfVhgtijgWup+tG3H9BivwO15SI+btzZzac=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157345,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdsQCGCRA9TVsSAnZWagAAdb4P/0i7I7eXfrK2v3eozIdV\n5Bc48M1by6csbUdtPDOx9qTms6o+MAUL5XwVVGapkFjMLJURA5Muuk3Kzpup\nzRy/Q+W/vV3pQW3Fb5hshq3flZDyHNgQvx2TFSauI+5r+PRlmDr0ayWCSXmQ\neum/gzJgs6Nlkedka52fZ0k+thtOuW4mORSQRSRESKYkDk12b1xqCUTVgb9O\n5ZJ0P7Gte+hvlo/RG5Rb3xM21rEC8+LEpu5Oa2NFj5IfFZgD1uW1Uv8HMRfG\nK96kqdk0t7sL+baD/i8u2uzwQoVywKy/Ed/WTDt8LdfL/ItRMQsPJjMVFdEP\nKotkhtepveWiDGF35WRkxhzhJyWkRRNL2Durydv08Db7Uzv4nVup0BLXpuzD\nVyyAxLIuEf876mvFNZYuR7ztClJgVHomdR9fMXk9bkrwi0VYaeeO68H6yPI9\nRZ6Dg9wR5hZ2beMHLl4p3j+62BtC/HgNkpoywpV96R8s008buC0sgYvoJHnd\nrG9Jq/qUKMVXRLq6XRHXRUVwZJlhkOBjoTjtV9fe21imAhI5al78rjoT8FGJ\nQpXx4ALwIFA2yeJp4bXQl2DT3kZoirbkEqV1GNX/V8bwTPVThvIosbvSvMdt\nJyVl0pjwv9ldqt/ZRzkXiN2jU3rzf6EM0QORxDd1uD8K6ajakdL/mCh6JIoD\nf3cH\r\n=CXim\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"10ba5eadec617b7fd2711c838dbbff788d6f209b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.17.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.17.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"4.0.0-canary.d4141c95.0","@material/base":"4.0.0-canary.d4141c95.0","@material/theme":"4.0.0-canary.d4141c95.0","@material/animation":"4.0.0-canary.d4141c95.0","@material/typography":"4.0.0-canary.d4141c95.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_4.0.0-canary.d4141c95.0_1571881093787_0.9657771179942034","host":"s3://npm-registry-packages"}},"4.0.0-canary.2b878b3e.0":{"name":"@material/floating-label","version":"4.0.0-canary.2b878b3e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@4.0.0-canary.2b878b3e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"fbe6c60ee714d6989f705c6d9107628161808eea","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-4.0.0-canary.2b878b3e.0.tgz","fileCount":30,"integrity":"sha512-5Pa/1WePvv+jdFSnAI67WM9LbhkUWQCZs/xEQqSwshByyA25/63tP4qzNJdaSPqIIT0bcVJr/eK+uevpkD3swQ==","signatures":[{"sig":"MEYCIQD7vQtnXH9daYYloXLx16zjvB3VkMc9LOl+yUetmzQZTAIhANNZRZFGMvVyHOPKKsABh6JVvcmyykRg9J0fuY9hnUQ5","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157455,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdslmgCRA9TVsSAnZWagAA5HkQAJmKvWiHs0pXjntuYVma\nsNd66Gb/E7fJOrUWNaUJkhTxtVSbgbO0mA3UvTibvU3UWGpn7chR1/LoirDY\nZSu6a/Pei5L5yOFZ7XnAVfUfWuVuGTVGtPL1CiY/8x5r12GuPI0etVlkotdC\nv7edNtZEmnecJPZub67eVsfOQH1CB0b85+rDOa+yp2i8oOyz0Pq09X3angXJ\nIqG8x1NH+QWckx1mAi23rQ131L9i9TbQO8LND3FCnoAe8fmh+x/WpJ7+yMaL\nxKAwlaPQt6YGSnsWxaH7xQ5u6p4ApWT8J3ObKtvEKgboSJ23wMSsf0dL7Yy8\ngmHJLWj+tokopwtee3s46GKmqvLC83vIKzGdcnEtRSAN72ph589YoZpXmO+c\ncar6uJHAeAwN16pX4jol4jPjaGlhpx13SFJYHxc/IuXZnqcwqaUpp4NQbLdK\nK6HQr1S/92nFz5Bj/l69MvIJJTkUXFyPhcwl+NyjQHRCd0Wz67bDbEmODaja\nf9K/4GDUK1dHjFqiIQn8irEaz77C1ORZDkGbFP6fbTbCyu95n+ixFWXa9fmo\noS+bqhpWWQUYfLuXNqtlyzhpqKQG2vi3QfCVX/GSekCvi+8GMxm4brEX1QHE\nt1Bp9LlE9CnIhHRdsCxHf7psFZsPDUlbEjIHLwQ9GLsF0RpwkxL9oKF2pi4p\n4rGM\r\n=hjuZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"29ace6a085b0e37c6546b4613abba6356aa82430","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.17.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.17.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"4.0.0-canary.2b878b3e.0","@material/base":"4.0.0-canary.2b878b3e.0","@material/theme":"4.0.0-canary.2b878b3e.0","@material/animation":"4.0.0-canary.2b878b3e.0","@material/typography":"4.0.0-canary.2b878b3e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_4.0.0-canary.2b878b3e.0_1571969440264_0.5681918229138676","host":"s3://npm-registry-packages"}},"4.0.0-canary.b06c0efe.0":{"name":"@material/floating-label","version":"4.0.0-canary.b06c0efe.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@4.0.0-canary.b06c0efe.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a47cea0d0a996ec7493077cd4a263e0be8723fa2","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-4.0.0-canary.b06c0efe.0.tgz","fileCount":30,"integrity":"sha512-Le1iUEEddNzyJabMPJtUoGs1XNq4sCQ0C+FWrOmeBhwOzDzHAIBl94dhdCxj+XFFsDxRrlMCkhCHdjguZVQOtQ==","signatures":[{"sig":"MEQCIFHZJs6idYnRs7ECZo14WI/1sKsUydObKdILKjSUsQaMAiA8NEdkE4pBXnEsPFuTTT4yumsFa77ieRIiNyK7F2GB1w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157167,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJds6LMCRA9TVsSAnZWagAAZbkP/RrPZGqBaaCT/RyHbgN6\noWrZ7ra7rpvC5CR/4fF+N4ESxKXOxEpL3n/p327xeu+CNuN8+kERfZq2CSjT\nkgifJVQ537ZySO1oaREJC9OoBTGzsQN5YWdmbTBbKEGF3v0XGoRVxT4RVh0O\nSS7U23byMAHxYL418gWv8XUfS7uWwpdB2C8xuh36uepd889G6gVpAdcBJbx4\nE99Vj38WKRxjMGV596NNvy0n0VP3xKjSIyDL8f8Vai/h6QvS9vaTANT2w4ui\n2Oses9YMzQBTKx6Mtwbs4Y615F3Z/h89ohCDm1XGiSK7JT8BaX9DwWVvNREl\n/iseO+G8vJ70bLh+dzHaOYjveWDMHynuazarJlKUnESfM1WAttDtKjAJZlsz\naUjARpu4lYsZoNkINkyUbayoeXvm1FTGvXXSfJPt9d4QMfPhMm0jGtt7wL4z\nLeYbn60kYpdG6crgiJmD98vsPE4P0loNT3jzv8vUwAKaC6+GaEw2ROno1fNo\nYiHcs+VcIXpKGNl0lcHJgdyaaoPQGMvn8di47Q/aq6pJMDSe7TyzL53DoZxa\n0irhkvdaSNvwZzBeHI3yZXLRbv2gnRtnt4x8bA3f3W3njoO+P+Cut2i3ULLz\ned1A26aqbCaWrHqhWfKRrknejxU5IfDrVznXnq+2pNMR6mH2/nt14kHl7jCc\nJoaO\r\n=Dr/V\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"023500a209a10669d135ecd0a8f00995f84b135b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.17.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.17.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"4.0.0-canary.b06c0efe.0","@material/base":"4.0.0-canary.b06c0efe.0","@material/theme":"4.0.0-canary.b06c0efe.0","@material/animation":"4.0.0-canary.b06c0efe.0","@material/typography":"4.0.0-canary.b06c0efe.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_4.0.0-canary.b06c0efe.0_1572053708105_0.5859651012791101","host":"s3://npm-registry-packages"}},"4.0.0-canary.01628efa.0":{"name":"@material/floating-label","version":"4.0.0-canary.01628efa.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@4.0.0-canary.01628efa.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e1f5f72b8d7fd0a614d99ba9fb092e0479532191","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-4.0.0-canary.01628efa.0.tgz","fileCount":30,"integrity":"sha512-RcAK+8bFQfHrwF1OSsBEDDj7U9h810sgMqYIUfdIXUvMGDPFg5MM0jPLtSAz/DxsAEexrGmFtb6Op9rMamVXfA==","signatures":[{"sig":"MEUCIA5/0xHAMaWN2ZZZ7qY5bmYfNdcvDjgedM29NVPCZy3eAiEApOqfwhBs+GWcrrTxPeXKOh38e8eSZ2SHUrWV1HcQruY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157452,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdt4G2CRA9TVsSAnZWagAAwusP/3VVg95s4pOTW/gcRMuU\n3xmKHfYPg4KDBMYgpTi7wMnb/QtrRGHAcEJ/T0tXhusywhW+vJQ3qvqbf4Aq\n+JdFVlzPA0dKEQQsjV4+cU3bZXkSm9qaCBlOcNIAylVhVxYHQVy99ogFiKGQ\n3AMc138/fqUtZ1E3v07MG3GmjVr6X4Z5me7seiH1chmEMw0GUivhdLvYNXPY\n/Xd6kv1IZyPvWbS5gCjZjSf882olLgrH6bjG7uCtzJKWnx704kRL3izRP2TU\n8H3RMdAAyDpkkbZumhc3HrpCNoL1qYI2joP+bEwUrwki0QztBFvDxcHnuHJt\nHKCQYIkNtUZ9Y1auPZNDYxJpfwjiWfmU1B9qzYf3CzW21Km/QAaK49KgXUqN\nowatM+FCiW+k1pBPUCwqwK9kvAt2o8sg6aLiFmqQjZIbdFWxkDojT2qfR8RK\nPbOQTridXAFCkkWGgi0x29ha7CQ36o+0pHTvywY/UNfKj914NRkppxmQlVU9\n+pLuKV0uo9EgGcpHbPNTACEtkuZqySjQr3skeyNXY0b9BNaURgKGWcMGpTpr\nPUt1RlTPD4TkxShGj167K7iCF0QDpGK2729GKrO1RLQG95VYnnsMmN9zyKkQ\nDWIoqdxqY3+wv7vjR+e8tfHf8KyjXQmgjma0awWMEvuuGG5Q7cnl3CZTl1Fr\nktxg\r\n=ByAo\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d736a6d7c49f31b52dc64101effcb7cb18ca6cc1","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.17.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.17.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"4.0.0-canary.01628efa.0","@material/base":"4.0.0-canary.01628efa.0","@material/theme":"4.0.0-canary.01628efa.0","@material/animation":"4.0.0-canary.01628efa.0","@material/typography":"4.0.0-canary.01628efa.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_4.0.0-canary.01628efa.0_1572307381856_0.6677922602545112","host":"s3://npm-registry-packages"}},"4.0.0-canary.b5c6d66b.0":{"name":"@material/floating-label","version":"4.0.0-canary.b5c6d66b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@4.0.0-canary.b5c6d66b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c89f414eea3179fe72c043c75c72ad8ebb3deeeb","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-4.0.0-canary.b5c6d66b.0.tgz","fileCount":30,"integrity":"sha512-wBMhU73AOfJ/nnOjMl1b48/pXMzSwNEkh8taI51zMFvRvpwpJvKAvMry7K6v9xi/xnxc2hhUIPbvdlMV6eS0Eg==","signatures":[{"sig":"MEQCIGVEkQsN/3ANzS1nfF8S0w57Sh12/khPtwsMQLURnQ9lAiBhe82vUokGQkgbe4iva9RfArhEZX5wrw6cukizpY8tqw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157339,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJduH1bCRA9TVsSAnZWagAAXYoP/3T2qnrz4E16G8ZWjREe\n+HumjgpnzHs7FeyvG+kJmAEcCeypzMCGgcT0UiXgxMXBoEs3tJisXC4nl+Yr\nfhLwnF4v/qcq/eP+IL833O015yWXQGxOqng8bYdgrdT2KknGbu1kyJsUXjKc\nkDBiJnA7EnIA5kDhmbiUmyobhSDPsDzrzEeUsftLUeNglBKLXcSifT9a2x9d\nHRH3WeEJDg0/JY3HIT0C+Bsyq7a6v+gfzSMekog88BLFRiiZxX2P7ZY1Rx3X\n8dEXa9XsOlhR6F4ttj0VPTtjJVVynAIBpeu0c7JXpQjo+3JblA1N0g32iamR\nwuTWUN3DOAD83YBTrBSVIJB0zHWJ52gzVesQROn8gf6slyV2hOmGHFLmrz/x\nEITIwIQLzBfxzvMDk3Hah+Nt/PKZk2dDPFZ4/4Hohoq384Wvd7S1k2DxoaUR\nBETYwiqO2hNGbw02NSI8xYBXpJ81kJe5woYc+02O3iPjtqFJR72sANlVPYRc\naEmeRC18E7aoXPLam6bSuBV7t3xSnRZLCKpUr/vIwgo3eVFkk3E9MwwC/XyN\n/hGpHE7igLJA9Cm0ssoavaVUHP6/l8peyvmnrIfr9MFPskt/EfPuFPXHuOCO\no4rylLoPw4gpD31Ci7Z7GdBorlmAzJyibn+lcApQJs6V9EtuLzMQ+qXMabq5\nBUV0\r\n=TAht\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a29efb24799035b1ee49295daebf1ae46a92b529","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.17.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.17.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"4.0.0-canary.b5c6d66b.0","@material/base":"4.0.0-canary.b5c6d66b.0","@material/theme":"4.0.0-canary.b5c6d66b.0","@material/animation":"4.0.0-canary.b5c6d66b.0","@material/typography":"4.0.0-canary.b5c6d66b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_4.0.0-canary.b5c6d66b.0_1572371802708_0.11592965837859603","host":"s3://npm-registry-packages"}},"4.0.0-canary.cdf858ea.0":{"name":"@material/floating-label","version":"4.0.0-canary.cdf858ea.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@4.0.0-canary.cdf858ea.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4244e524a0cbdcc95323beb8c458f8322d0a205c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-4.0.0-canary.cdf858ea.0.tgz","fileCount":30,"integrity":"sha512-pGzPO0s7ruKIIllsoq2yv+QYnYc5gyP3Pl10ffrNiRj33L6Jqm9YwXf5rew9/uEUBhvBdMZPRdLVv8XPOWuX4A==","signatures":[{"sig":"MEQCIHWBj4skxqdcAtKkUr9ulWnDpZ2GyAMoHm6IkXnpViXsAiB3OKQYx+0qA1Zc0mmw8B0vqgigVrnUNvXm/KlkWE9IKw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157167,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdvHJeCRA9TVsSAnZWagAAOhgP/ix8Xkic/Pl0r/MFxZyB\n0EFGo6i/RPcI9c7TZHon4SgfpY0tQQwsh48BbMe/57ECE/iSlYZrpJDwLsZg\nHVw66BDMjTnwdsssuOaoh6ZQpUNBgPl7QrymkskLCYeneNaBscs3GO3WnnOA\nK/F6D9hYN2P6Zj/um9L+vSmu/i9eW5PMMj4cqDB/6PbElBvLgbV0lwEGBaky\n5vhLv3nbAiKcd4XQhdS83Www0q83D/F4z0YJTa+GuLNyuY6PCiazOTfz1md3\nhPKoDVQt6sgKAR1EpSntSJ2rNN9AdXXcIMZdARmGSz7iCmX4hjcRHohR+q1J\n75g04/Wu82s7K1QO0vvceGOmUIObPbXQ/SN95vSRu5k9yK6GhTN5lhhLL00b\nIcJY13OcYTpI6OWLPjdwvmLNyYu6iiIU7sthwr1sHjbw0x2sd8TRX5JS2rGj\n3SjS7rFAPRjUbrsFOlX/d7vhQ2POz6OIEwXsKjbG3HIpKYz/rVprRV30J9Y+\npMA3fAjZcJ8b2JjXr7lktEkR8J739At7As9d3pNgWNDvqrUU1CIvrOWnxi53\nD8jxZHJP/VnUiboZ3/6j2pRi3Xt8LhyHuQam793UDUAktMFHem0w69fq6vDx\nNd/MlIpE0FuWDU21Ym8cMNWZf7U/GS+Jr/TaQtjWWMQgwftRArWZuNowDeUz\noCRj\r\n=e5X9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"436b9be1155a7b7c0fd4aefe795809bcebe8dfda","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.17.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.17.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"4.0.0-canary.cdf858ea.0","@material/base":"4.0.0-canary.cdf858ea.0","@material/theme":"4.0.0-canary.cdf858ea.0","@material/animation":"4.0.0-canary.cdf858ea.0","@material/typography":"4.0.0-canary.cdf858ea.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_4.0.0-canary.cdf858ea.0_1572631134324_0.42955930533352804","host":"s3://npm-registry-packages"}},"4.0.0-canary.719b57e1.0":{"name":"@material/floating-label","version":"4.0.0-canary.719b57e1.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@4.0.0-canary.719b57e1.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7e8b4914a88cd45e17cce4da0a5663549e6bccef","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-4.0.0-canary.719b57e1.0.tgz","fileCount":30,"integrity":"sha512-IXAq+aUIfN4dvSF9xRcug9XCajMU/uigPRaqxMxLQ+Nb9saT3pGnYW6bkzDLjAHLDu6vCxj5hbct5l0sKizKhg==","signatures":[{"sig":"MEUCIFnnBUH8i9D+4WwUsNEC8mxa/CXNCxGfS0GagJLfCIF/AiEAqv6p0xEQfsHldDovXhKK7JmDXNDtOLy6OWcWXuDnP/c=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157355,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdvI8eCRA9TVsSAnZWagAAnTIP/R/Me1TTxvW47Cwwsbx+\nitIDIsGQ86aSeGTsRpLhqcuWAG3VHjuiLkdXCesdXtsdRWKIm//O4ihGC8L1\nA4plGxz5zqajXPeuiza5gEt4wAj8tYXD3XzIFMz9oUPphww1NsoxhDPKf6FU\nrn9PJjFCgT5Bh4Wz8tvllHfVQpPGTV5yfw4/B608Sizf9HeYE5ebSgPNoiYb\nAh5NUGQLTNGgz9ZXowMAbBt+wKKdUceC0cchCLtqZQqlNhHN5HPB8HPxA2YR\nuRfpqUz7K5uqf0+KCJc4rQnP3g4qX9ju/7I/EbPJKAy4xcxlZbrf6gUXH4O3\n9luQ52WoAkcG0s+zhqyPqXQNo1Si/2JbsXWk3Ajjn7SIwU1yhJC7PoEDPXno\n3pcd2lrqnga88SmRpIk2EUUNZTTKZ0Ea0ABA3n/M6WaUc0+TfrX0dpTeb6DQ\noe25aFS5t6wlnwqYEb4kDE8K2u4dHGSaVX4CpUN5mDpxUaTAKpUQ74EKZVIE\nBUIRyksVRXEnMK8JGnsyA+P3UeSWL4TCBWU4YOMhyu2FVOQbnd6ybcqNqhkm\n4t/LPpEoLEb6eqTrg4lto7eoISAfduZ3Bh7p50kO9S71txv7zWk94zvEfj81\n/nZfPs09AaR9T1ZAsN0708V6bPBTBG7Wtn81mHzLAP52Jc8SRfQalV6bzoCV\n0EoP\r\n=I9gp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"4184aa06e4862418697a150eaf45a13500e1c4ff","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.17.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.17.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"4.0.0-canary.719b57e1.0","@material/base":"4.0.0-canary.719b57e1.0","@material/theme":"4.0.0-canary.719b57e1.0","@material/animation":"4.0.0-canary.719b57e1.0","@material/typography":"4.0.0-canary.719b57e1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_4.0.0-canary.719b57e1.0_1572638493683_0.1451636099750635","host":"s3://npm-registry-packages"}},"4.0.0-canary.97cbbdc2.0":{"name":"@material/floating-label","version":"4.0.0-canary.97cbbdc2.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@4.0.0-canary.97cbbdc2.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a5afbef86986ebaf2914d3108fa71ca22a44a87b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-4.0.0-canary.97cbbdc2.0.tgz","fileCount":30,"integrity":"sha512-F08w46YjdrYqrQ7OQefY/k8tkMzulBMgbbPg4YWs/vWP1cL0LaKmKLGTeFo2DoxcqmmxaPxcPW0VaUtO8o3sOw==","signatures":[{"sig":"MEUCIQDjHiCqzcvFh6o9PXS9UtD97kWrM1/AioXmnRO/k2TiuwIgLLEiwWMB59OQW7BVVGjqRULHGiWPa73fpY0gWWDcGro=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157368,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdvJWXCRA9TVsSAnZWagAAkZQP/iIpotqT3cpeTcXXOwo4\n3e8awUw4t7S0taBvf1Jbg5L5RAQl7ewAkCcTETgnrldnzBIjR2gd+qJ6xFLG\noefbF7GLW55+V9tjshBLFL4oWwnVk2A7P9Ly2q2oLpi8pewBcyxMj72BTNys\nKnjg/cVA8V46tYqyb/owKAz4It1KcnY2+8JVhNBYzdFzYXdVYAcV+T0wXnDj\nsCa9Q4y200CehDxvz2kCSWS7nLWCFrpzgMqyjyKTGNlcX1ypduvEVIPnjfgq\nJ75HYbHSz2zYNADInnZS046lDEFvI4TKdCRec2GyQfaQ32sdIkxbj8mp2p1u\n9HiLO0cfAD3uYaa6DkxRqm9d9vvnAABPenb3Cn8FXU3LNczjBKTe2yvumFIf\nxIbWRWKZsBMBXKLVVUBh3IFT2I7GsxkgD9UjXbyCQYQkVOEIuhtqw6SW99/g\n9WrWcxTJbciwlmavfBj/yJHfbk5lYYxAfKUWnkD2sdZzrD5pGw7dVejebANU\nO4rQKuTEbcb8iXKndWF+RUi1Uz6JnQO5QscRucJSk4cWcCcfCBKm+K3nmsml\nbbzfxDqLP+oBrBj3LAfLs3cKJtbR22GTV0TJ68g8gqLe8NON73y7PQqqcG2J\n6SXuaBIcMIUUWVc44WmPtoIXUBUQ8He3FSboalDWXPd8AVXKWtQoR0KHXyzc\n0rIJ\r\n=b/oj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"49d37bbcdfa0f5872581945f58c03e62abb97090","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.17.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.17.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"4.0.0-canary.97cbbdc2.0","@material/base":"4.0.0-canary.97cbbdc2.0","@material/theme":"4.0.0-canary.97cbbdc2.0","@material/animation":"4.0.0-canary.97cbbdc2.0","@material/typography":"4.0.0-canary.97cbbdc2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_4.0.0-canary.97cbbdc2.0_1572640150917_0.4718680603505583","host":"s3://npm-registry-packages"}},"4.0.0-canary.8e36b3b7.0":{"name":"@material/floating-label","version":"4.0.0-canary.8e36b3b7.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@4.0.0-canary.8e36b3b7.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a1e6113e86d43f10eef56e239ece1cf108beb24f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-4.0.0-canary.8e36b3b7.0.tgz","fileCount":30,"integrity":"sha512-rCiRZiDWdVgx3sgFSBq80zN7iB+Xn0c90Y1gsbiLcBzqQOkAtxepH8/dExJuFxUGKJ5c9USvOXMeNlN8l8UMWQ==","signatures":[{"sig":"MEQCIE4v3Y+4VvRtayiIXQqO0AavmBqN7hU5hVgtDD4vSo4CAiBMS0O6Gxzx3PsrVp+zTkj3OCbkDASDSuFUH2tN81iGnQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157167,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdvJ0aCRA9TVsSAnZWagAAWg4P/0VgsXJq2bGQB5qbe7bv\nXdnWWurKO3GPtFj+u/0MRwlfuZ83Xc2Hz07+hjZCcpeoAhqT5Ijz4UXZwJGY\n8ILvWsgmRhR//6WQ9pcGaQQJHJlJgBTlR8EvKkcdE0ap1xDh808CxVz38Vmh\nmH4byshop2Lg3+d6jMVZktIslp2WKcrEadNnlutiMX1K5fg+NoVZyeJXvyvN\nhQ+ZXaS/paHGN3ZMDScueDkI4Li3PWnqpnU1CpyH8czrXpvHfU+ofoh+ghyy\nevykg9R39PnaCoSfAEENf5gZj2GQ8IbZYlDHCWSOCI/DQKuGWqF5UQnE3H/n\nrmEflJDqs/lxOe4StmX/I281580O2qPbCYHBwUi5EPvh2ly2+iwBlf/uYBAH\nA3Ws6LdQYPTlBVwQzT3Z97wp3CDC/qG2cFi3OHE0T8Cf7LE2JmVybFeI8bSS\ntFw5Wj61PrhF9E0EC68cif7/A8I311oe9VmCIRKY9RKwKVevyKBov2G6kAlA\noN5rnWG0mdYzg3rHFuQZ77MOaYC6ku5Z/tfTK0GZw2Etyv8ZMcn9dpiQ5ECV\nxFWGgcf8s/QjMYG3fzPPAQOoZwi+Upv3UqMaDA39cBRj43F22hi0j34iWUf1\nTk713BDLQTay9dcpttao9hC/J/n9GLqqVFwcH5mX0YzJE39KfJIHXYB7I6A2\nZAli\r\n=r5Va\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"62f51968b94685823af7942f779c63658f2b0350","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.17.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.17.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"4.0.0-canary.8e36b3b7.0","@material/base":"4.0.0-canary.8e36b3b7.0","@material/theme":"4.0.0-canary.8e36b3b7.0","@material/animation":"4.0.0-canary.8e36b3b7.0","@material/typography":"4.0.0-canary.8e36b3b7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_4.0.0-canary.8e36b3b7.0_1572642074574_0.059708104243055615","host":"s3://npm-registry-packages"}},"4.0.0-canary.62d3a09b.0":{"name":"@material/floating-label","version":"4.0.0-canary.62d3a09b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@4.0.0-canary.62d3a09b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3d7723e5b1d867ea657ac540a00743d5cb9aa988","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-4.0.0-canary.62d3a09b.0.tgz","fileCount":30,"integrity":"sha512-slTJb8iciQG9yxL1avFC2XjdaLDTN3n4wYkUbs01s2uHQ8YyQ1jI4cu6dUpCmK7t4y4uqSxkSNdZk9c/70ALAA==","signatures":[{"sig":"MEUCIAdC5QkvBeXdK9DM87SlcThiUMiS5Xfs2Z8wk+xwpJBVAiEAlpvaq8ueImdZCzpx26LqDFylPXP3Lam4LR+Il//3GCk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157167,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdvJ9YCRA9TVsSAnZWagAAlkgP/1aad2ye+8t/b8QXDj7Z\nLODIiVLreITcYTtTDpb8iLAsY62nlk9MdmEtqFRriOPjDlTSSgawE3Dr/lY8\nHKHbKRA0EMSWR2lcXOS8HyCEz2p6G41E0ft+dAYciHyKneMkBaprFWc0aAbz\nLtm6PJ9Rgwd8I3a4GvynrUstGXYfDiGb097YMEWnN8RyZdjj/TAstJ/OMY2X\ncFWOlDTDqH+A9jG6Zc67enMlV7jLNV1WPNdaiSj1TJnD1PpApQBlqG4q+cNU\nAeme5lb9q9aQKcXh+GlrYlrHWbToVMwTe5gc9Yt/i6tNn2U4/Ukl//ZMuGby\nE6yRxJPsllp8byHugWEO5e7gaRh5tsurfd4JYIdjwlMmeS+IMM3HKnq+DNMC\nv4JarHv4HHXyaeh+iSqfhq6+wNvbcR5+OtraaGN0gpvnL0OCusTb0aHBtxsO\nYOH/G0gFx6MF8J0+6qyCaGhxbpsJ/X0jx7lXTR+4wsKfQ3jNN2QUFEEmgSIv\nlYpWgXliZhil9XGgGYMWckUETDvN7VqrsrQunzDr0y+d8CerNdzQ/nTa8zFL\n8iDLqu1mBT0kuYtYdfQF4RKAX2+jirb0ZzYfsTEqsnAeeesuv1Y2DAPKKra1\nnZPbqNI37P07v/6Pbb0CI5/TaGs8hKG4jWQ4OedH6hCqmLQ/1tcLYZyPfGmB\nBejt\r\n=2CEP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e00a9686a58b0fd5ec957d4008b6674dafd4dad2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.17.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.17.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"4.0.0-canary.62d3a09b.0","@material/base":"4.0.0-canary.62d3a09b.0","@material/theme":"4.0.0-canary.62d3a09b.0","@material/animation":"4.0.0-canary.62d3a09b.0","@material/typography":"4.0.0-canary.62d3a09b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_4.0.0-canary.62d3a09b.0_1572642647884_0.9325937237998321","host":"s3://npm-registry-packages"}},"4.0.0":{"name":"@material/floating-label","version":"4.0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@4.0.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"288eac6b82ff472472f678032fc94024155a42c8","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-4.0.0.tgz","fileCount":30,"integrity":"sha512-ovuZKhH7U+YmZk8kXftYCdEaU9InJdkBsPe4TP+dg4HiO1lWmd7ZxVsMo6iTl4yaFofkBPj3VDkbE1fLnHxKPA==","signatures":[{"sig":"MEUCIERjcA4EQo0PG2iWU7ytYHyCG8n1m4A5G1dyWxPsShebAiEAw6pOkddYQdjOTt79+Kv0b5yrFR7J9vm755g9Ravi4CM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":172862,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdvcbeCRA9TVsSAnZWagAAubkP/jUaaf3aq9ZFHxjrem8b\nG6bT7kA6E45yJOBZW+I8Dm5Az/P93riLnG5eFfV3MQrUpbcCj9cDSPdvnGDT\nstJpeMTiTOFYwlWvXx64knB1k+VKVxqCu62+jtnxUjsp0yZK0gbAXYsCcmSA\n6yt54xgi/Y4uPq1YewE3h5U6yeZKgEO2xHxi78XIM6B3kN6xss0nblXiderw\nReEc0kZCxgGgnNqelF45jtFn9TPVQAeB4a6kPIZIgH0Z54f+9rylJYAHhXsX\nCB1tIjO7p7c40li/GyPL934yZmdjEIK/TYwdVJOPLI2mwekQitlSxTzHbKbr\n0mAaEC0ByWqxrJ/WsjfJt5+Vtrr81HPWeuwmBp54L7krttj5b1eFG+4SWtaM\nqaQ5ViWOz3BZg8UkxFwgKkXOrQthy2jjx2eYW1Y28jYRVLMm8FpSOaRtOjfv\nI/SIgQoOZONzgNZABYXyvTbncD1rf7WghxAl8QzyP013kAfz9q8BVecVvbqD\nisjvx6Aaf4m/vOqWRB4Dh3J1kZ6o32IPoa8xMb3Yvc+n2QJQpoxf3HW63EOX\nNFKjXC5KBAkT6Y3LGhSLe/ae7IP/4mlRDT5my8ZHnLzK2GYhpVovoJIrROeb\nMM9re7N5WEp+m560HrOgyB5Y7cU8mXNjfbAwy/qLIOYCXTJnWF1YAaCtAcjb\nRcWh\r\n=qVn2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","gitHead":"8fcbb009cd3b5cc004b302613dd55ab4b5d6ef72","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.16.3+x64 (darwin)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.16.3","dependencies":{"tslib":"^1.9.3","@material/rtl":"^4.0.0","@material/base":"^4.0.0","@material/theme":"^4.0.0","@material/animation":"^4.0.0","@material/typography":"^4.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/floating-label_4.0.0_1572718302453_0.3910656214710153","host":"s3://npm-registry-packages"}},"5.0.0-canary.b5eb51e94.0":{"name":"@material/floating-label","version":"5.0.0-canary.b5eb51e94.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.b5eb51e94.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"02244b4cc862ec42cf395d8d90d0d17d545ae63a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.b5eb51e94.0.tgz","fileCount":30,"integrity":"sha512-EbbcXx+Pbu7HExs09mT+r5A0ZJ7A6w7rWD4tidot+xeyPDryQ2gJ9HWLkRDJrwThQuMkRa6v5FNVCmlEdREL9A==","signatures":[{"sig":"MEYCIQD4opxFU7/53z6x0/jXbSI4DYkNr7R1hA/Z0moVHbuQUAIhAMaG04N6iE7FPdfFmBIEwROfhA3AGqNiP8EU4pWsEV0r","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157283,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdxGOGCRA9TVsSAnZWagAALmEP/1LP8okbZaHH2aKQDphV\nO2berBxJvedkSSdKTbicOfZ3ywFyK27zPGYvO6+DOlHSWREqRsUlIlujboz3\njTSPtPX3GUeEX0vSTRXaYdLD9LmFZcSex4egO2ckjNGQlbtwGXgOiRreFeSK\nqTcHhGDbU0m1b6S2jFYu70Si6EbqGwHpRziT6iy1n5zpoUphG8g3KXdGPgO2\ndKjhGVOSGoeo8ObgPTPkhSqkIMyHg6mZdmHt+hDol3SVUIyAfRENDENr2+A6\nG0TzyuEQL9ARCOVRqjsBtguUu+9QIZtiSo5IfNKQp0JkKsLVr1dqYv65bCQX\ndgP+OcnTq1zIyIsR2/EKYxYMDZjE7G0zcNYqXAD5i2hhKcDrRArFj9MoimH8\n0LtUBRPAO+wOLqh7tYwK3csnpWFAZ2tuUVT3GRPH8f2te4Jv6ZjZs7JTaLgJ\nXzt0EyHDg4PEhfQsFGJ0UP3ekh+9KjbkyiRSnvKE2woMyKDw6RmA2zK+qzRq\nglP/GPmw5ih9hhLFTAl88g+bbIePerAxGVRuYdzVfakXCbsNtIyXj9qpY++d\nbo8tQD47XFtWKCJzJw4rDyuRbV4iHu8vKIa+XyOP/zuLlOUcuHd2pOcdtxnT\ngoAUKQBGxqsiFNY3j/dgGSs/Kks4oGRVz0hfPTA5aBcnc/OCi0L1l6IDC4Gz\n93pP\r\n=DI9W\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7e8d43f563cf6b162c2aed47d2a006564994e4d2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.17.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.17.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.b5eb51e94.0","@material/base":"5.0.0-canary.b5eb51e94.0","@material/theme":"5.0.0-canary.b5eb51e94.0","@material/animation":"5.0.0-canary.b5eb51e94.0","@material/typography":"5.0.0-canary.b5eb51e94.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.b5eb51e94.0_1573151621703_0.630852872143264","host":"s3://npm-registry-packages"}},"5.0.0-canary.58500806e.0":{"name":"@material/floating-label","version":"5.0.0-canary.58500806e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.58500806e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c520e490cf1fd427e767895ece1b2ecf0da40a2d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.58500806e.0.tgz","fileCount":30,"integrity":"sha512-gkx44SXwRRIvuB1AtyztfRgnK4OUc9BjGbyhjUdS0IlzETI8D0MuvHFRKbk/of57AS16YGdzdKGTo6brH5cCDQ==","signatures":[{"sig":"MEUCIQDKv2OUqeKKv0075/KOcEMf4IgUVCwY9Tk3c95lfpxNUQIgIIRQmWQIUvR80DJxUw5dGKVvF4xRZvRLgauOggPXp+M=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157283,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdxYtTCRA9TVsSAnZWagAAa+wP/RTIm3YFfBQiewivFJSp\ngR46d5sv6pQM/+7eOQkQPaWO9kAFlkPnvYq14+rG31KgRCqsdGBAW+/uDS6n\nSxNM+9fxli1LOQiVq0e8pqWzS5fzXUdt4y1iQl8WeH1OzzrcQ8hM1c5Lz+n1\nQ5CxMwY4Moc6YHUhG1asLWgOWrbZ/2aWV6tNoc7u4Ktx6M4ocDAKMW//Ksw3\ncQbNrGhBGI6zukU4m0by3QoCegk7Yk4C3Y3zghoRDeW8pjkXwI7+0b2yJym2\nKEVh3MWD51fklHFeTwwwo08pgKDWezRHBm7Ssd62QubvY/iBj2rdvkAqVA8Z\nXfJ/SeOOij88AOo5B89R6jmcr7M/f3xxlB+GSQc/MUb4n9zxOjQih/X6nzi1\nzLmDunVtssCT6Qy/G4Gy6QntTAsZrQfUwBAyRA0vMMa8s0xLWrj1mf+QLuzS\nBZK7bUJmHPFnPwLfwA9SDZzWVMEQffw6DhxNrWlAOJYipnoWJPZLOhTJgQGX\n35hffLb+YpqQhdJq1m4Oqn6635VNpv3sP5v6o25eIuUvHrzM7nbSdnPw7Lih\nXeEr+JLd2d9IbfsHN1cllPSP+900aEYRIaHxP0njwOFFlStUCyWXBM7HRYjV\nOsTlJmDT20elRurskVak4xD+a2UrpHWJkgH9Ox12K+LQdD05LpaDaKo3fQoS\nRI40\r\n=tIlR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b155f26dba1f11e3c9d7d0fe036cca6da8b37a3c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.17.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.17.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.58500806e.0","@material/base":"5.0.0-canary.58500806e.0","@material/theme":"5.0.0-canary.58500806e.0","@material/animation":"5.0.0-canary.58500806e.0","@material/typography":"5.0.0-canary.58500806e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.58500806e.0_1573227346904_0.8106284644134141","host":"s3://npm-registry-packages"}},"5.0.0-canary.66299b646.0":{"name":"@material/floating-label","version":"5.0.0-canary.66299b646.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.66299b646.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7d7985d7f600388cd5aafe051fa18534a593ebb4","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.66299b646.0.tgz","fileCount":30,"integrity":"sha512-ffQ/hUHkTXbZaqD/dndHJOrnN1JBZAopgUL8/xqfWO4CdqvRK2N8v7Qu1bn2pvvIUjd7ZeQCUtphyrtFS71OYg==","signatures":[{"sig":"MEYCIQDpbpQ2xXhYTebtl5w7DrhCUDhbGVYTLfc7pmDDcZy86gIhAOtLMwmQIHmZJk4nfytcyv5lZQArfAqAOx6yQjo375Ke","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157283,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdxdEnCRA9TVsSAnZWagAAg1cP/i8MlL3T5+ZI7JX2EHX8\nR2a6FbkaCLOmEif8Tb5gfMFzTSFTe4J4FqjAQ3cGa+OApuLUodBNTqEtgzal\nDDd+but/4Rt3e8WmhQXeyiTMJ5v2bqhCKioDhTM9AsOug+QexdA7knAtIXmJ\nfb0OwyOsDia/1b2zZFHNSwEoZCBCV5eYPAGv8ghR3ikB4Hbn2Hy1XOgc8XXU\nKhJiGz5mVbKyMRsmwaarD5FCTOinJig5QSSv5GXxc+KgentqBDgWnDMGbYDX\nDno4WYYkfdcvK/DP8y4x51ugWy0/Y7Ka46bQrndON6yMjvyoFaOQCTJZZVUi\nNVUpV6c1ZSuErcO0fwtfI7QwA2oYAQh7xm2ATUq8Ha4NlByRTEXSgDF6vWJP\nB9NOaepIVkKnz6rhfW/gVNFDaSPOofcjS7o+RxXAgcI0oe4fCDaTcvFCnrvf\n9p0nJfbWBKMItFwSuA5pjgzliq1I23Ejuyq75TSzUpWPQf/d7KQYpdMbqWwQ\nWaPezJn/W6gBACgRQVEqdqEOhuHNlHOKc2yIwlhxBpj6kpOB0Z+O3j97jn2M\nq6drs8DbzNw44+Dql3sG9EQj2Sdo+Gg8dcwCtazdAUs0s+lWnu1QTSB2ClqW\nh/CRmYAGzjqUs0LHsSfpZOTRYcwT7VsZf9kYh2W0C0ZWKVwd0fu/StZRhGbc\nsA48\r\n=jPhK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"4bcc7c183ed18cfdcbaf564e317231824ea91b6b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.17.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.17.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.66299b646.0","@material/base":"5.0.0-canary.66299b646.0","@material/theme":"5.0.0-canary.66299b646.0","@material/animation":"5.0.0-canary.66299b646.0","@material/typography":"5.0.0-canary.66299b646.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.66299b646.0_1573245223216_0.5431939581068901","host":"s3://npm-registry-packages"}},"5.0.0-canary.821871e04.0":{"name":"@material/floating-label","version":"5.0.0-canary.821871e04.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.821871e04.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f014d0ed459a523c9fa967521d7ee52341a741f7","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.821871e04.0.tgz","fileCount":30,"integrity":"sha512-SwwRAwXQ4wG93cbnV/MaCWYFvQVJca00NDTJbQeHJ1bggPsYG2j8Oj6UpKeF/2ToJmS5S4a8cRAV+/HYfojfFw==","signatures":[{"sig":"MEUCIQCa8L2tYmVCeTPc6Z85lYceAKXJb+2SA8pKA6aoTGaVUAIgWfXYBfIN9PDtmzoo7pl7nmAh2LCkeqJIYYsVKKPjZsg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157283,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdxd3sCRA9TVsSAnZWagAAhDQP/iTLvPjHCJ04XV5xRa0J\ncAxgHi6u1+BwRFXmR6np5BJa467C1k6xiHot4F/qwHrg0FKx2VvGlzKn7OPs\n8B/jEEjNXORnI3AV0uAeMumx0rYjlc22YMqSBRF86MusuS8ZWadyMTVkzXDA\nXpWbZ3z9CI3sac2RQmg69lWTABwFdGgjOiM4PzdufTuN1FjvkagPfMum9a7B\nptReLE+qflanP6QhLRERqh6KlWQ/vxSca3v08EOKTeim5FlSkOq8fBQKJco2\n0aBBsQMKBCF/xW2C5vfIDk79XZ8V9/X3XUJfSK66z9Tdr/zWr9KlNScm840X\n0aX86k+DqoMnyhh63I8Z6W+7cI8UvBeGmVxw8z7IsOoGXwWCPmGLBxd9GfPY\n1xhVH8ue7EIUEliwG6xg5WWnacrP+Tca5ivwk587JQrfzyzjOs7XoyDynWI9\ng5tVIh//Cpoyml1bmioT1Ixori5aSp0DEdeXC9sWn6BF29GSJEgiRft9X2ik\nruf5C1blRrZRTsB0y6b8eWmXgeksGH6TZl2oToaXh7rDA8m3lE8fig3wULeK\ny6dmKefjj3MgUgyTm1T3SrS27VInLtZEQkhGZdSzrTDsPc5oT05+PmFhisNp\nK6+XCjzla6/tDwDaRedxUdKP9BmNb+ExlJNdW9a2hTcDvJqneluy6O706+P7\nYPOm\r\n=X+sX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"20a91d4645dd0fd2db7a61459d752f390e050899","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.17.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.17.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.821871e04.0","@material/base":"5.0.0-canary.821871e04.0","@material/theme":"5.0.0-canary.821871e04.0","@material/animation":"5.0.0-canary.821871e04.0","@material/typography":"5.0.0-canary.821871e04.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.821871e04.0_1573248491652_0.052273161378831645","host":"s3://npm-registry-packages"}},"5.0.0-canary.491fddc31.0":{"name":"@material/floating-label","version":"5.0.0-canary.491fddc31.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.491fddc31.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d0761ea91761f443aa24409a41d6d9acdd533dc4","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.491fddc31.0.tgz","fileCount":30,"integrity":"sha512-7MTWGXhoN0MHfINvP5i9qaVj3zykG9Bstbpr5arbvXYrf1Rjd7d9Pm479pq2GKYparVbPkstajzwlbHgAxZ9SA==","signatures":[{"sig":"MEUCIDrNSHsmtWT0IA1jpd1XSbhwj/iTlP+/Cs7iuB6izok9AiEAya1ELvCa38jLtVU3TwxfOWZli4i/spiV7vBdE2gBnOo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157283,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdxecSCRA9TVsSAnZWagAA+ysP/RG4Bid31H6mrh9OtPy8\nKoc7tObuw4+yHxclC1fNKOgW7gJa1wEuEaezFMef0RhXptSqCPKnd4WDUCqb\n4gNgxSQWxqbP+5vgiBTjBIvpH5JK8r3sbJ95mafIFd3dVbBeIaj+fqIiYrfg\nQ5t2LbSPDEyvcivhaMVAHoAXuTG7Bxp7SB7SlpVwDgTrvxO2Iq5GBWoPeeDB\nfuos81xwWdGwfxDTGsqYlxvoMwqHkxOG6PqUWf56zbHNuzrdzfJcUC1WSUEG\nBrSjfoj+sNo9n1/gwFC2mzix5Pv+6qNdHFVqwBPC9ljW+WkiiBE2AKgBkK9/\nZT/OZebRxqKY0xd5LchSN92AXZ5mu7F7IzFFfSrMZ040Mf2TrAoxsQv3F93v\njVQG28+rHY72R7BqiEXlwxcsdxMHJt0etPE0dSQ3QVAp16EW1EEFPeTMiJjU\ntpqk+9vD85SuHdt4IR+zfYqv0FyUJyVY1Dz8nHS9UoBPLgO0tvNtIJZ3TTWJ\nejKI5v5xu/U2+D8nXqnOvtyOsEha/82vXw6LGQIuxDRRuofkZrjmnFEjV0bJ\nybDi8rf0kSFXEl4Z78hV4f1G6At/fHTnlaSRM/nvRaOgmJO/BV74U0ZTCFid\n1zEYLIqeXUg38U8S9ViWivldQb/M5w/htn/b3WiXCbdReyNbwzXWuYXKNTnG\nHQVm\r\n=phFJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"36ec62985e32e24263ca2d444e04a01d98ba02eb","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.17.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.17.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.491fddc31.0","@material/base":"5.0.0-canary.491fddc31.0","@material/theme":"5.0.0-canary.491fddc31.0","@material/animation":"5.0.0-canary.491fddc31.0","@material/typography":"5.0.0-canary.491fddc31.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.491fddc31.0_1573250833884_0.6982988605859615","host":"s3://npm-registry-packages"}},"5.0.0-canary.b0cecf145.0":{"name":"@material/floating-label","version":"5.0.0-canary.b0cecf145.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.b0cecf145.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4c5bc78d3e8aba65e07064a8542e5abd106ee3ef","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.b0cecf145.0.tgz","fileCount":30,"integrity":"sha512-5xDzlEFBlnBZzhqgOa+zrJ1A5OTWN9Tjp9zzFE05uVTtE4CVJErL/Jk2Wxx/WnMPnF7thPoM1nX+HoPBLwtcWQ==","signatures":[{"sig":"MEUCIChhZXandE3O/gAteFakcMqxbfObgZ3omwev75T/3p10AiEAk5p/RnEAPyaK8DEPastBrbV37Xjb3DCye/HS+SXInL0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157283,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdxwiQCRA9TVsSAnZWagAAsMsQAKJCjHZr5KzjAbazbDMx\nXwAfdvwFDi6cplx9yzmQql8aZME+JQeIPmUPwfA1mAk6ELQ4O64B+hg+tPYV\nSNB+MVxlg9xkPb07g0RsmeUXJVqJ+vVNIkaQ533D7Vwz5J6SgWbF5IrtEzgM\nEcBIVKcA0TcNLlMZOHkqenBHX2XFfSgF/l7ihVyc9trvHE5FJqiK+G1424p6\nHp7YbC+dtOqZqfKJvbqz4WHB2w7pDtR7300iZw8x6WJG6cuveoMcxFxL4Vm/\nSMFr5ugTDs4XBNPoLW1osHStqB7qQK79wgnPtN43SFGaTLYlXKNmu/Diq+st\n4pvaD5WGqbs8YfPWWouit7EZ8YL2euJIN/H02rydevQyaigWNDH5JfjNI9s/\nJsWdZQopEHjX6rcM0DRs2l3DdCRRVtGoD0lzzn0sdpm63EaHwgNEOOgKJGld\npMF7NcbaSsjmoVgyUDxvvTn4dFYIGIw4vc76ltR2G72kUD5p5zMOWfsjwWx+\nfsKXAfVWxoYf7TX7zvJjViSYWfPZ10zSOQkQNUtUXWCUAyG8LbfxRdGLtST9\n2XzPmNHMOcBRGxtXcksfosdlEI+BIKaaujdDP2F4F4eY6oLi3GmmVsihOgpZ\nMnETBuuO6Sz+x2uWJGaFTk3mJIbNUM4SOQCXqli4RC4gPnETB95GX7ETjVuh\nD56b\r\n=W8Hc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c20143ddd0d46da106e793fe5b768b628d433923","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.17.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.17.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.b0cecf145.0","@material/base":"5.0.0-canary.b0cecf145.0","@material/theme":"5.0.0-canary.b0cecf145.0","@material/animation":"5.0.0-canary.b0cecf145.0","@material/typography":"5.0.0-canary.b0cecf145.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.b0cecf145.0_1573324944600_0.4704965441278377","host":"s3://npm-registry-packages"}},"5.0.0-canary.afe0dd1bc.0":{"name":"@material/floating-label","version":"5.0.0-canary.afe0dd1bc.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.afe0dd1bc.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d67fa7211a0c6a0c938123c29dcd79bc62bdc0bd","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.afe0dd1bc.0.tgz","fileCount":30,"integrity":"sha512-w9uDQxAGFQr8j8G0ZBJWMVvW7wSpBmCVM/y2ina5/IIVJMhucDpmHfccmjzekKUDDcrvJcrPSNBqZp9PNi+jqA==","signatures":[{"sig":"MEQCIANOW8mCtojvP0LYNprFuLKbxC8xF0ER9Qf0fcWr0CARAiBiT6kkjOQrlkBRcha1tz0CKCadsHjmCpMDbsypQVL8kQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157283,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdyYBHCRA9TVsSAnZWagAAbLYP/0TQkXQI9YLTjEIpbpeC\nvobQAzv501h+Moj3/xpnzMOrVtuqiFY0JpfRQu+rdPrMi1b2T7sSAiPZkEH6\nKps/zgrlf1clA5DmKCVYInX5v7J6UeG4a/y0oOCkF1vJKObi7HEB4kzgkngr\nrvnELJ/ghslBeR6g20r4U4lfesFtbqgPy5DCVr1O0S8m/O9coUcp2Leq1yfi\nwSo6Ojm+7yaeftnLIvt59umAh/lq4AffqDN372CYCRnHkZ5P+6v9ouRmcZz/\nVZ+P6qiANQRMLubYLwSBO329M6kw9ik4uZR+VlA6kMqrjBoj8ZtDLb8YHWYx\nGkWu3WCYi1QAQUcDcGFdXgmrDQ7rGpjyLmA5o0q4GjadzEGjNjkdLrC8oAbw\nqaSOY8nfqXN/eMFDXsanLMu6ztW8muefwrk/hmbISA3ohTnsQXOI5Pp7WJq+\nx3JH6kTCl+IDXDO2mMKdTlK0crZ+V+4YrwxDL1VWUNLS495W5yi6Fxc5zcqk\nrkTwVeDd/qf0n29wC+hKwG2Apt2VXwsWC7A1MSCE2URHHn1asW02DyS+nNfG\n/Ggd0ehIpRxQTZCQUdqx73SDEhHJnxruhs7ycszlJBp1mPbM+qmLwwK69YEP\nGbaUjmVwFCKpOhLUIt1XetfGKtQUrFG6Bd2MzNFzyZlIZ/80ipknMrEoODvG\nFQZy\r\n=BrJK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3bacd69fa765f810b8bf40608eaa3aa2df12bdce","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.17.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.17.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.afe0dd1bc.0","@material/base":"5.0.0-canary.afe0dd1bc.0","@material/theme":"5.0.0-canary.afe0dd1bc.0","@material/animation":"5.0.0-canary.afe0dd1bc.0","@material/typography":"5.0.0-canary.afe0dd1bc.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.afe0dd1bc.0_1573486662765_0.6323327078324781","host":"s3://npm-registry-packages"}},"5.0.0-canary.b4cfdc40b.0":{"name":"@material/floating-label","version":"5.0.0-canary.b4cfdc40b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.b4cfdc40b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2807b4cf8cbb86fe908a4172639a0c6dfa919e65","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.b4cfdc40b.0.tgz","fileCount":30,"integrity":"sha512-pVyCDHcL4TMxeFo8pTDMEPrmHoN8mupPA5yujg52N6IstjO5VvRtQJeG5Mg0lDUIQRJbdtvl32L5E98qkMQxPg==","signatures":[{"sig":"MEYCIQC0yr9bAsvXJkEExP37aYSYfyEYUgE0WDcbl/E2lgtA7QIhAKC7X8x8X/Ax7oTH2Z2mqVE6jSFqeWHbLbchEWQnvXDd","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157283,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdzXmvCRA9TVsSAnZWagAA2PEP/1XkkkzM7HXZX5fSGbhr\nUFT53d6mBK6bxTi4gLIXCImkjj/DDl4QSR/1D8DW85KeGScBgDSrTKrd/5pw\nJ09ZFXYVb2uztYQx1VXFfq34K50x1IRMTRhQvbw+7kKsIQ7T+yatuFZwfZwg\nEknsleQw2U0ogv/Wnjciu48YAbKLiEFfBesTizJi2YDuuEeSgnTyA2JpirTg\nC1XcxFQStkIfma4PW4ZyDIREFEIkdMQ8MgGJ3hLH6eDOViWQzTBzsLYqIwsL\njPpPTSDZrB+SoSAiRaFeu1l+CrVBp/UejU+/og8iqgASmvZbL03Tn8rz6lEA\nFDVqaIhZFM87Qr7llDuxfS35NLXSEZUutLsZUKvCRe/2JaVay4zDAhjEV0DF\nKmw5wj1JJaDQxLXrCgfsnGJd4PEcOu3T/zvbcefihiLW9EbJvFtPtlKmK6Xq\n7iRzZghTq9LjBo68wQ7PdIlzRUU4X+11P04EE6Itapg2b/n+DE4pdpiAeqG8\nQGKKffEjftur1NE542zeoAEwl/a/xElziDwcPI9A1gPRJMZ8E0J+Ok4eqvzt\nZzEx6nZgq6P0RxwcdqAG2XGt+gSyGgD+DqZK63wBlggsBTkzZCbDGn32fnfg\nDsaaNPXc2cW3+KPSvv85IvAzvcPxhEm/jM7SFCoRWs91dZN8Ave7x3DyLBrU\nDxJg\r\n=YgtD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2a81ebd1a573a096ffb378bd1ce7bc223a3cb54d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.17.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.17.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.b4cfdc40b.0","@material/base":"5.0.0-canary.b4cfdc40b.0","@material/theme":"5.0.0-canary.b4cfdc40b.0","@material/animation":"5.0.0-canary.b4cfdc40b.0","@material/typography":"5.0.0-canary.b4cfdc40b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.b4cfdc40b.0_1573747119211_0.03509119046629272","host":"s3://npm-registry-packages"}},"5.0.0-canary.525989b5d.0":{"name":"@material/floating-label","version":"5.0.0-canary.525989b5d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.525989b5d.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"16d1f4419941f808c45bd95b6605125f65165e78","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.525989b5d.0.tgz","fileCount":30,"integrity":"sha512-9MTfgP4E/CK5V+LpyCCLXhni8jWZFYE97HIshyhNVPPZT0FCCxuukNBb21b4z7iu1cSGeet5bIAE00j6p/TySg==","signatures":[{"sig":"MEUCIQDGUv10v2Md4uUMEHgMbjih4EBkXpefYTBsdEQFDLDGeAIgMr3kdOCA04zKyt5ENw2J70wVJ/jKmv89PuFyYyzVbzI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157283,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdzeOqCRA9TVsSAnZWagAAprsP/36OlSIPsMWWK8I9SW1A\nJfNvc51uDVxpiM/CD8VRbnN9dM3tHs0dB5Khv2eXmAaFWDrIJ0sIhd5YUpDo\n4ZSSziKS1qTdg/OWtEMrsT/ToETdK3siwarGMb/9hRKZ0iqeGgW7GGXL+unY\nt2/kid1iwRkef7QAJzOi7AiouRAXj7EbptVaYpiCcdaObuWDPH4DXd9598fi\n6HGywD+OSO7M6obLu7ba1HMzqxw0SQotIBQh2Uw6GER/xQrEwAYuZ5+LHX6P\n5zA5nnekp1OdhGHKcF6GKmLON3+oCah8ueytaxvTXgVmrdSqFu/GeeKW0pme\n/2OgenA9mRzt7DSVoJt6as47a2XUYLO6dx8WWLYBBsXF975LTBo6XlTJ0CqI\nGaFlZ0Q+ZYc4pO2ca9j2ifuik1uWWG3lV7kgiT2Kf5zCzYOHO+7FDWL5XMD0\nPfHwsot1ymUbo74JZ7za3pdwVnhyVTqwPyaA9PYAWk90ePpLBQJFxJVoFgxF\nEqECP3FjOfhi8ma63xLc65ogDeBmCv4y9Gso1fnEl1YMIuqdgO0p371HhPdM\n7wWPM7NTuBOU11jHIzj4wwQIVfFOBzVQCtZiw4/leEI15LfzUcNm7RRr7HPn\n/30r5QtAsoSr5MdO8I0szXiorgMcxEWBOhsNo3NELD3q03AavJyu7PJ8gr9B\n0xjm\r\n=oAV2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2fcf375cfb22882468cdbfe126d349a996b450ad","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.17.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.17.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.525989b5d.0","@material/base":"5.0.0-canary.525989b5d.0","@material/theme":"5.0.0-canary.525989b5d.0","@material/animation":"5.0.0-canary.525989b5d.0","@material/typography":"5.0.0-canary.525989b5d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.525989b5d.0_1573774250591_0.7559275190349306","host":"s3://npm-registry-packages"}},"5.0.0-canary.7084b403a.0":{"name":"@material/floating-label","version":"5.0.0-canary.7084b403a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.7084b403a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4a398b603fbfc1fc29da35c0ace92b0ea9be3fa6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.7084b403a.0.tgz","fileCount":30,"integrity":"sha512-oCYWwVrTWwCu34h4vds1fVEdgtI8G9yKzzC/MeAWZ303lgEI4AO+1KhO+QXrHIPat6IbRgL7zi4XhhsnEKPjdg==","signatures":[{"sig":"MEUCIQCVccztzCl6C16RWl9e8t9uhuoI6xQ/zCJei0T5658UNQIgM8SHctNs5JIZAL8eUQ0REPVBedOJ/nsg6cCLwzd1dWA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157283,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdzfn0CRA9TVsSAnZWagAAcskP+QG2T8J7irmpoJGrmPxz\njgxvtY/qEYLfVBBPLbQg/EuRoBPm6a0ynRNpdtf613FdOJcAUyNznzOulOz2\nMSMAlT6YydbcrQCS9rcybMhB7ujuHnrebXBPZ6RNndvDS/+W9fUGJ6MSnaot\nP9AF6T4Mvy9HN80RM4yeFspZ0NnxDVPdioRvI/yOST5NrqTIGVawVdgRNCSr\n/tfWTECPCQWniX75kR4zF0rqDdA0nVHnxbi24Tnue4Zy0xc4NshmBkokKhOs\nJjF/XNJt4AeRhibyAZWBhfFCDV9kmcrLoENnxyRxhV1xmr0XIlCSU+Icdvzb\nqqjOqGFwN44CcLYuSadEdJmciUfGz3zmob4x9S6M+cNgh0KQyZDYCH+E/SHm\nPdJrJsLT9yq4ZgraoWJRnHddNu77JtAfvB9wW1+99OPeipCHhzFxjYCI37FS\npx7N+hMbF1M5SWjZAcS5DwLesmn4b/AUd/6s6mXNtj/xKvacl7KnuRTl8i4w\nz5amkGXsLuE8VfaUfEF0nXXsoMUv8ie5O1Htn8nhQ0Spc9frNqwd5sIkKzpg\njxYEouXzzUDSFBHd4ohu6/f6fiRAZmlH8D5lx1pAco0QZIsyoi7vX595UvG2\nMEP1VNTvDsnTitOGbnqRwJdZULb+ubAT6wOiWRWkKdagZn4aX0ywwfxVvQic\nFW9G\r\n=+38W\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"6a82bd7664073498cf25876314019948f3295c87","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.17.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.17.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.7084b403a.0","@material/base":"5.0.0-canary.7084b403a.0","@material/theme":"5.0.0-canary.7084b403a.0","@material/animation":"5.0.0-canary.7084b403a.0","@material/typography":"5.0.0-canary.7084b403a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.7084b403a.0_1573779956286_0.7815864193137168","host":"s3://npm-registry-packages"}},"5.0.0-canary.3cbee6dac.0":{"name":"@material/floating-label","version":"5.0.0-canary.3cbee6dac.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.3cbee6dac.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"90ffe146543a01506c85531706357d658d9a1fe6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.3cbee6dac.0.tgz","fileCount":30,"integrity":"sha512-0aC1DsAMF1Y3lLGfBs4LZylPsL9uqfk0z0FTETmOunQrmhL4ElR0t2acFxtcis+8gKW4bEKRaYFDIjE1MXDEwQ==","signatures":[{"sig":"MEQCIFMdjX3f8W/oLZ0TQPIjcLMEruXq6SUtaOxwnMIvaB7pAiARefBDOOxQRI1lj0HDst+9DuJ57PH3agcmqeoaCXE18Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157283,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdzyeSCRA9TVsSAnZWagAA8/YP+QBIALZ5KZGEwlIedBYS\nA7TU0KIY0QtiS6GoBFrppSJ0ZppceQhI0fs/SuNbBGwWui8rW6hNV4Zx7hls\nZaj5GrhOCgH3VInp+bVuXXJHQ/zRZ3RFaPd6MZ1qqXjnnzNxbG2NO0XCsaSi\neTJ8/or474ac7V7poNDnOzw8IfrccNYN4Htlox5mUCsS9PQZ+DVWHe36398i\ndUwS6OWDB62afrhsgMbdSGTBq7Xljh6EjB42e3LHSMxwZ/2lMHxK309viuue\nQkHR2t9t0oLNi9Twub6ZBfHKcvc5dDFRYFjqEokwWaka2vCfi0wSfeFzrYV9\nl/+Sgd8R/l4zvL8xyuLhcRVXGYFlZE2As6UbuLKDvY33/Pal3Sy6wXalsy95\ng6UOk5ZovsFH4GQQcyV1hHkh0uYb4w2aCUu/vk5nsUBuGSo4y23nMK0rMKsa\nDP1rJggiFpzcFKBQ3h48RufE13cbNtNLYleizeY6TvS3WP3cnU4NRHprF3oE\ne13J74D1zTbobBc9mij2Yvb5OyRRIRdVSC8bUsHEBG4iQVr32JQpD/rcrXEz\neggZct1NuClBWcppNpdigy1kgTmFqgKP62nVyx6x0GLDFgSu1EMYRfskf1NC\nbC4Yucep4fG6Iu9VbOp9xxrY1wiBX2CYealn7by/6qM7PhPdqFp6agSNrE2Y\ntHPn\r\n=or4f\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5ae37026c572ffe6707702e535533859ddc81a48","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.17.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.17.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.3cbee6dac.0","@material/base":"5.0.0-canary.3cbee6dac.0","@material/theme":"5.0.0-canary.3cbee6dac.0","@material/animation":"5.0.0-canary.3cbee6dac.0","@material/typography":"5.0.0-canary.3cbee6dac.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.3cbee6dac.0_1573857169888_0.9378799319916669","host":"s3://npm-registry-packages"}},"5.0.0-canary.591a6ad44.0":{"name":"@material/floating-label","version":"5.0.0-canary.591a6ad44.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.591a6ad44.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3b75fbfd2172bce3e19b3df9bb81b03c332b369b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.591a6ad44.0.tgz","fileCount":30,"integrity":"sha512-r4prkrsq7+G9hdzLfRIFgnOSeJMYl2Oo0id8NwEoMz/aUNQ3ZgyYge98FuK3/SuveiAezlF7k7IEpSmL5LccPQ==","signatures":[{"sig":"MEYCIQDuQ5lhiieC6tiswgnJ8m8DHKovmBG2sPjZJbovhKpq9QIhAK+rSCu7eWKfmA5LBYWOx3+c5sa7UEeowaNEQH12ZdS9","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157283,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd0y3PCRA9TVsSAnZWagAApOoP/048BCqU8evz8tJeQxS0\n6UPXHA0ay8qNuDh/Bq5MLqaRDjaBq9o0YH/2JYxRR0V/2HGP3qpNuOpN7uFZ\nAk4B2aJTOXzEBCdHcQATwPyBmwpigXLoc37k1h9zSAa/BBA8es5W2iZGLQrb\nUF24idCIW1GveWI7i0EAYkTNt9oqQzzC15Z1N2GVbxTqD/XLHzvv6EWN8aqv\npB+rFOXp0CcHe1Qy431/futvGGvvb2s+aoAY6ZdI61Pny/RwUUl3VvoPASlC\nLajObNpiScHAycC9cHXe60MOHMSXg/9DwReJuQTkUMYE5PQ5HS3QlF0i8Jzs\nbYR37TmGFtu1xgn+qFe0JxAieC/rdGKcCW//qjAzsX3Gj/HmXNc/yv98UepV\nWrT/pgLBv/BPHXJY/uLq92eqUCVn48MFOWeNgHofIgLW1tE/ad0YjVAPtbBE\nPV/wGblpur+AMJ65Qvt/n8dZCHGfSOPPhNEzHUO92EfiilclCyS17QxSdklb\nJiTCt0TjIsuutfdUlwGLb8A1/27Bo3zbvwTDJ3mwWhUALRu+/2cS107IY1Tw\nmJIhZ7XMh8e9Eics95Nn5pkE+bS24IZwCRli3diGlkyCARgWjM+DWodrEDbg\nvP4JWKhGuoXutsnT7NrbBoDW0uSFXS1vuVpFI/DtulVSfU9h2vtgvjZbR1NE\nzNO/\r\n=Fb1i\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b5469bc1cbdcbb7c9926006be2d2a65c3211c220","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.17.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.17.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.591a6ad44.0","@material/base":"5.0.0-canary.591a6ad44.0","@material/theme":"5.0.0-canary.591a6ad44.0","@material/animation":"5.0.0-canary.591a6ad44.0","@material/typography":"5.0.0-canary.591a6ad44.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.591a6ad44.0_1574120911378_0.5926341849331915","host":"s3://npm-registry-packages"}},"5.0.0-canary.5729943ba.0":{"name":"@material/floating-label","version":"5.0.0-canary.5729943ba.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.5729943ba.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"88375032b4878ae4db715a65c2d439e2934dd7e1","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.5729943ba.0.tgz","fileCount":30,"integrity":"sha512-uYRa3Zwdb3XKBbCwZfq9H0ZH2WFMNMw9rsAhuQNsQfRVxUPp9Jwz96BHtOJEHq0/XIX52DM8FvNfQmZaCY+1qw==","signatures":[{"sig":"MEYCIQCuORUu1J6T99Uzzxs3qnEDIN+ih5BgtxDILizduxqUowIhAN81AF6gT4+Ujs0DAdrrq5tWTVIAgflxKX8shKYA68sc","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157283,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd1MzdCRA9TVsSAnZWagAAcz8P/R+TgTkdJsEdDv+WlM5o\nNgtypkwY0l9gcjtSC9c94LTaf0L5CYdqRNhRhNcfXQXz+DCeS9uUmDkyDeFU\n/WZvHdEl6JhSsYRO6kxYzUzMNlFBwKMT/PHC8Djoc8e5098HEUJsLDd5/I/I\nMRKqzoyg4l0GBkwVU1gClgeb50X2Hcw+GQP2uP2ky6+/S0m50KAv8wKkouE5\nR2Y/4depsOvdD+eh5nNqJ70r7ALIJnJZ97+8KB3+V3d+1JDbYk6plgvOgkkJ\nbdb/KgfmbbJZ7XYdTKGco/spflSG07pOD2lUpHJ3AUz/cSwG1BR+WcLqrhJt\nRuMV3jppDgDMMYU1tgkG4mcQDqPym8Fah1Jm1ZUFehILAN2XGppAffmFS88+\nPOU9dAQ1dhpJVGzHr14l/3F3l78XcNKFdq+5wKnkokEwBjtDJA3DnZOG2LIL\nyXhHoEV1X/mmaaaBrW/p6lcWiE7wTDRJwI11zbNcrUDLiwOzabvrzCd0tspZ\nQw/33nqTDU+dgtbUIq+5NP2ndpvPINMJ6W2p8DvCQmsRPEx4rIXlgPZTVAdv\nWxmdB5jNn1V0f+flqwH5JTcO26BPR8LRNqJnfqwBg6XcCFCkY/q4fB8o365W\nd7JuZ0eGzwuIauV+5KdOahYXD67SfyjpB1DX8QabMblOFjO9wmn+Jg7N7rGa\nJuQa\r\n=F2cO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d49cf0658a3964963bb2b39b2e3a010615c815fe","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.17.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.17.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.5729943ba.0","@material/base":"5.0.0-canary.5729943ba.0","@material/theme":"5.0.0-canary.5729943ba.0","@material/animation":"5.0.0-canary.5729943ba.0","@material/typography":"5.0.0-canary.5729943ba.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.5729943ba.0_1574227165288_0.6739014385138318","host":"s3://npm-registry-packages"}},"5.0.0-canary.e89750dc7.0":{"name":"@material/floating-label","version":"5.0.0-canary.e89750dc7.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.e89750dc7.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7fabd486850b7388e775c9f5a3113c258abbdc52","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.e89750dc7.0.tgz","fileCount":30,"integrity":"sha512-cJD8ZDPnAm17PIvbsyZv3GGNH49alH4HoeSLH7SN2LUW9mRqQq+84J8bzW2KYVWP26stKE2EB1CbdZnmwTs2hg==","signatures":[{"sig":"MEYCIQCYSKmUm1FkKT/wfRNYhO9GpXBzChaKb476mpzQBbNBOgIhANdEFOKrTUq7MEeVtypz6G9JRegjwSm0MmL1dTiupNyv","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157283,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd3drvCRA9TVsSAnZWagAAeK0P/2pMGY8fP+gQp7pcFiin\n98bjw6ASl/bujEmptgypXBK2Iex40MMzS2v/h+kmBM7lQOP4/WWneiYx04nh\nWZkWITTRt4L+u7jOzQY2TsnkexSt1fisV7xavnSQLMldwjP4tNXDCTQ6aW33\nSa+JfD3r7/r7e/KLUsMuva92HEw+j+M5Nlsdth58QofXabwzchgTNo3mgOY4\ntMozX0iKh9cjjhRoEq1e02mgc+han1CBHlVWUvTwuHe3WKcMCjukLhGWtq0/\nWoMoXp6kJctH/YUPkw44pBWGOB1WseQzXFcFMrMQ3IKRUTGNYmS/I9pPZsfK\nfPkRUnb6RuJQ0eDSLlJro5PtyBYmx3EmVKQdfDb2sWHjOJPUW7jS3x820ksC\nkJmev6kV5saLQQ088BHETM91w3ouY2y7QSyAAwJwACqyMo4ZYGw3M4bW5mHh\nJ8C++DUUBeR/0tbRkh440KUnrVwVsfmab0qikTXWhtnrpfJ0V/8dy+DVRWlS\nwWI4fVqUzP3UQLA90qFfioRvZLXf6h/wWfmo1E7tg+usI66eZeTb11hOoLW2\nbzzLv7/AqFe2ABnSEwTAz0ATG+MeJ0oSZERLoI/3Mm/Yp6tYL94Bvw2Zyhp/\n70a/WomWKsYXFfPXf/RELCLT6JXDYlGMkbWn78cr2P9Inskm+fHeKHy0Ggm0\nO3MY\r\n=cz3P\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2a166b3e817207f685f4b112635eeb21f5ef0789","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.17.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.17.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.e89750dc7.0","@material/base":"5.0.0-canary.e89750dc7.0","@material/theme":"5.0.0-canary.e89750dc7.0","@material/animation":"5.0.0-canary.e89750dc7.0","@material/typography":"5.0.0-canary.e89750dc7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.e89750dc7.0_1574820590755_0.85230278699182","host":"s3://npm-registry-packages"}},"5.0.0-canary.3e560b33a.0":{"name":"@material/floating-label","version":"5.0.0-canary.3e560b33a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.3e560b33a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"0cde103be640b338773fb01038ce05dc88f734fc","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.3e560b33a.0.tgz","fileCount":30,"integrity":"sha512-B6F4JO2ReoqfNVTK3FBwkdbdJG4otLcHWj5UsEDuThgRDJaZ+vbWODBCd4Vw5EZ3SxvZmjIarhIK5GW+owz5cA==","signatures":[{"sig":"MEUCIQDfZu1w2LTFVqDWxgpN5UaHjTFPqkZXy8IbN/EFzifoEAIgfr45hO59pgVDVnSF4KM/4dDtFj/AVGTpAeob9UoDSyM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157283,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd3dsbCRA9TVsSAnZWagAAp4kP/2vYVh3nOlRGCNu2E9Gy\ngEGaSbqu3RbTtVAnxmHT4zme1bueTjtN+wiyb3GGCvQEtg0wQAiWXS5LuegO\nJ/jzMax2D3exsqTIi62iSWUTVYBKfaC/JfXNcuYyED4/O4k/tnZXJgyR/omn\nswRmC19UFMJiYuw3UJ6x3K3GJ7t6pntIgU7BA+6/TLHr2XOBszWgd69tBICD\nH4Bqe/Mp3/Xj5/jyi+gekU09y6E0j9M17f5WFiOzrBRNFPfFsfxHmr1SGNP3\nFInTPv71EJAAGW1viaIl8JQFvHUzBm3OUB8szkalbPgWIKyJ2rskQ6+nCYAq\nRKcLFSxN0YLWlLtlR7VbZDAYlHN/8ZrRYgZgzB9Ic0dU0oAtfok76M3BumJc\npPkn8Bs4o3rHgbQ1Lc9KHsZdBmZAcEg5HAInVsIYdtpfCGTlw8c+SqdMr/7R\nT4nOLbKxnXhqt8AKjqY+hbWIVPv5Ur2AITeW+Yn22AYY4v4fQoSFaev3v6N8\nU49TWdS4GDzV78ruO8MffXv1OYWZCzq9+RnXi1XFLdCrPvZyz14kLjnXYW3x\nvADbMPyg1NdpdofMyl1ikrxdGpG/dG8l9uslSnAh8tsHvvi0bUAcF4sUOrJf\n6jwxR6QfvxFNKYx9XPqf8d39eEf5WQJDcs5A7IUqRr5Dk1+UBJHPs5puxKOi\nPciZ\r\n=sx/6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a86efd68e1e91c0cae784ad70b0e36c13c923dba","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.17.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.17.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.3e560b33a.0","@material/base":"5.0.0-canary.3e560b33a.0","@material/theme":"5.0.0-canary.3e560b33a.0","@material/animation":"5.0.0-canary.3e560b33a.0","@material/typography":"5.0.0-canary.3e560b33a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.3e560b33a.0_1574820634728_0.3274888285970825","host":"s3://npm-registry-packages"}},"5.0.0-canary.7fd17ce5e.0":{"name":"@material/floating-label","version":"5.0.0-canary.7fd17ce5e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.7fd17ce5e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"43dda75fceef0ad4d0b04bf57e1595b71d5a6a24","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.7fd17ce5e.0.tgz","fileCount":30,"integrity":"sha512-3rd34B12SAIW+eIRGYAcoRdT2/ozvsiTUhMcmiLOf4kptFottxiTxJ5R5i+iQQ1T3vebTOzFs3NH5RiWwd7xGw==","signatures":[{"sig":"MEQCID1dMkBykSQiIsdfs1De7XDPEe6kpDG9AcdQmTlh0aJRAiBRCUfS/UD+gZWJ+6wwwiVmbnpb6qW6NEx/8m7GY2Qrag==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157283,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd3dsvCRA9TVsSAnZWagAAviEP/1k0dDYRlN//p/f287fI\nm4ycxbSIwzXy2T1EzyxmUwgeaGVlM2ICPulRoJ5JzdOWLY6LFCY1oR2jDbgL\nh548/crG+IkCm7tthi56CQhQ77dMb4NityBEwL7EJ6bM8COBxihiLmY4ynzU\nZnOyn7D/Qfg10aBJp2f7EIakYatwYkcZBjZvQ4lPu8/5nl9LS/YT4WJ9RtYt\nn/a63jQaFX8sMZrs855RRfbWet2zireN0VD8tz1TD466T5xGu6ZFaEh/lHkG\n4PQSCPcPGx3rtKwo52Lpyy+I35LUaJnRLA2Jx+5iHT2daSZUdumvk+F4Qxem\nv8H6LHNg2qVC+ASSvXNxoWvXFq5bA8QLdAAJvfkOluIuRGuOwOD5Spd1UnSI\nP23+8Lbk9NII0clA7jcgGJDryahhApQ92+lFbpaisLJSF07ZMwauuLtQbDn4\n1GMLfC8Ff7ZgAAlIz8hStYNcNcj+CuWqUmzrbJxs1xOcMvl31REduy6W/vB4\nlrZGsreEBUv6n7fS4qw2lkCMZvRUf2jdbmLthCfiy2mHHXJOD3Vp0LFs12uW\nrPFhaUWfEQbNoK8BPJO7HEV7jhanKClX5ONXCtMSMzArCy9Sv+kpmHzjQN0p\nktIPQfaoTynO524nady4AZk71qkV/3J3anwaBFI+rIXaIQEJ5B/Vfcb74kNJ\na5rq\r\n=RleD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e798e5bcdab4c998c88b2bde71412b2d38dfb262","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.17.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.17.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.7fd17ce5e.0","@material/base":"5.0.0-canary.7fd17ce5e.0","@material/theme":"5.0.0-canary.7fd17ce5e.0","@material/animation":"5.0.0-canary.7fd17ce5e.0","@material/typography":"5.0.0-canary.7fd17ce5e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.7fd17ce5e.0_1574820655384_0.23608018398648478","host":"s3://npm-registry-packages"}},"5.0.0-canary.ec729683b.0":{"name":"@material/floating-label","version":"5.0.0-canary.ec729683b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.ec729683b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b653d635eee19110e7f0e514182b5a040a08ac60","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.ec729683b.0.tgz","fileCount":30,"integrity":"sha512-SDULenGSZcOs17fRYQMMUUuOifkUlO0UePNhbuJvRNQu3DB7nfJHDpOzzBeS9c++aGWnowA5Qxr514agsKm8gg==","signatures":[{"sig":"MEYCIQDzDtWnr3nS4xP5Wm4cZSGDr8QMsHLfmVy2WgyeNenPWQIhAOei4nI3PUg8c20+wCd0eI1CH8rI+nRRO9YmxXR2ZJMl","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157283,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd3pxTCRA9TVsSAnZWagAAhqwQAJfNv3N7/7nLhwMkoOsY\nFO88z4vUGg3M3vGyNkWTBxi5CSOqxsa8wHe2DPkuFwV70j0oJc5LlwN2mjgM\nsx2Kn/AKxTCxHt8FV8lsg7BuxSXetAs31+7gbEJPDAE2D6OhGS3yqQDzAYUz\nFdAbLtXuYipthPH7ILskhcKIBQ8JEwMTm2UJf/jmUXvMu8kjuvlGpWiVTDYR\nGqCYgSdnKMweNo0wqyNoxOpN1FoXOops/QeY3OexsJN7FIOjYWieLXapM/bw\nJZAMsakGAbD/8GLsrwnMbYOJz/P6cR954WddFdPXwGuvGM2E1eVwHw5cO/sW\nvuH4DU/nRifjktjVbgLCbHTMXStwO7Wwvx+dAogQwTJEdg2l81BFLn+0w3zk\n23X2A8jCRWdR0IA9pBQMecUg5LhqR1mIdT3utC4hmHSMIhKB+qiBYD/3f38A\nKGGYbWm7B9KIXvbXxAYaAoYlj0AVXr6iZ96kR0plsDIF2C4ilGnnhkRYaozj\nJU/IKrx77AhZYQNeaAVsCK7MExlert0BABn6zEz9d7lnfS19V975bi1w2KQ+\ntg8Fx1KWz8EXsC50kX5xNU2ndTT0tTpeZ595T9nOvCFjnvmHUj+id3q3nVW3\nRLj4PGUWfEF4Fje+qng2gECG94j9sMu6w2JWxPMK5hGBkwBf/1Sp8HlmNy5C\nZ9QO\r\n=feQ7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"919526f37cd7606c0de4cc409ed4c1ead34b60eb","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.17.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.17.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.ec729683b.0","@material/base":"5.0.0-canary.ec729683b.0","@material/theme":"5.0.0-canary.ec729683b.0","@material/animation":"5.0.0-canary.ec729683b.0","@material/typography":"5.0.0-canary.ec729683b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.ec729683b.0_1574870098653_0.9323253961809592","host":"s3://npm-registry-packages"}},"5.0.0-canary.b8bc4a26e.0":{"name":"@material/floating-label","version":"5.0.0-canary.b8bc4a26e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.b8bc4a26e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"edf92d8701e15800a78b5b14e2ced2d4f964107c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.b8bc4a26e.0.tgz","fileCount":30,"integrity":"sha512-4fKY2LzZ6sE0NoeCTVX0jZk9aSAS3VJUDgP/m08MbO8qK2dPLKnhm3Bc89jUZhzbuGm2PcGdrpxgPZ1vfCzTPQ==","signatures":[{"sig":"MEUCIQCNZumwGaHfJKD6YwSV+0YqIwxyGnpKEdyeyHg6Ce8H6AIgaZnGx+yjl3WvzhUvuc4MA+GzULQ5ElvV2gJZ1s4VJZg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157283,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd3sufCRA9TVsSAnZWagAAb9oQAKJCDSev/FIRjk1W1Sub\nlH5bii4qZaoSaJ++MEfBYYrVL4zSqsZ278c1zC/S6AaiQa6f+iL51ga64z3R\nWKJ+4l3BT82PsCcY9IUptp+jM5JDDvdOb0MQaTwelScLgu1yx394wcHp2303\n46SKuLI9fvWL5YMHQMnjjQ0BqpXErB7BldfvyyCvoBzx7j1l+RhcTJjS9PfP\nHgm5SJAO06bj9nkbb3yTd90ianq6Yor3BY/4lVarMR2IXuNXMTLgDCfEAV74\nfuY8NEUY2f9nbQdcBVzcNpKVcsFqB/efM9I4T4Ezdl+WbnUghK7Gq/93hRLh\nfFkT2YcQrzTP37NMmh1M+OXB4iq24p6BWDKoN8zts/CU+aUzPasPUOIxsP8w\nCYHBzFZR0t9sNOL8pfcr/RKUQG07c/QGF2/xOAS2W5AhMcelYGhGPGIqAZ5+\n+qNWMN6xBEIrGAv0bfro6N9U5jU8kbLgWSPslMoq6dkHQvlgtI2zpRwomXzM\nKRPdfOFhSEjh+OO4t2b1WjfuDfumVqMZmf8VdlgI4RhtL9IrHHOiT+qIdh9D\ntrGz5r1/r5WorzhPnMQMG2mRfvnJCm7vA6g9gCRw9oZGn5BIDoiDkkTtbCT3\naSVwjcoiTxG5rPCaQwDwpcZe6M0j+NoqGoMPAOtpTvg5kQLUm1s5Kaa+rvPY\nLl6z\r\n=hDnB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d04615df572bbbf2ab2eeb76ea45696d0a40563c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.17.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.17.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.b8bc4a26e.0","@material/base":"5.0.0-canary.b8bc4a26e.0","@material/theme":"5.0.0-canary.b8bc4a26e.0","@material/animation":"5.0.0-canary.b8bc4a26e.0","@material/typography":"5.0.0-canary.b8bc4a26e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.b8bc4a26e.0_1574882206747_0.0503839498328047","host":"s3://npm-registry-packages"}},"5.0.0-canary.f978109c3.0":{"name":"@material/floating-label","version":"5.0.0-canary.f978109c3.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.f978109c3.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"53c0becb035ed61ee2ba575abb07033cf41a9179","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.f978109c3.0.tgz","fileCount":30,"integrity":"sha512-16kWPujN3ungy4Ju+aOF9oi7ryNT2cnf1KRsIqzAlEwt88oStMXyuJ31HlSUL/PBttfoMEfAMO6ZCANSlH/kUw==","signatures":[{"sig":"MEQCIEfgMZxGwXxz/1W7UViqme3XWpoeTc4QFFyz/KL98gSeAiAEHisCLm0cgt8GeExMuJAXfiYRaqlBBFwcSbdp16ap7g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157283,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd5UTLCRA9TVsSAnZWagAABG8P/jB3acAko3WOWTcOHU/s\neChdtRUFdaMPjrEq+NTX5Mbgri9taGc5FlC6SgjIcoYvR3pBuqDuMHd3FCh3\nhxgz3eiJ1Br7ZWlO0H9BOAcgX6tNonLKvnuXGY9tbCO/xB0HePKJzssrK1vO\nTUypK3oNpgHNsIW40mP5ulS3mfGEIDOw7fJPIxGsULL6ek6SD8ZBrdBFxI0i\nw4FEM1/Q9J+iq6fSjOqldH+tNkvTVJVdir1rYWogQdY8mC+X7hADrG0flWxF\nAeRqSUDBYOYrQ1rvDIpTd8oQasJkwWHCRT09bRMgDpxWsOfqglXjljEV4lVf\nLMgi9mAMVkmfLu27S0g4/YumbiKR6thN8MOR5KMOPfUjj454Bkm8O23ZRBIL\nLsULOjlcFz9NJ+pbw394eliMAvJcevaOVL0jS+Bpc1wsBdiL9VXG/DdtUNeQ\nRT9AVaDyGOxj0EcikRk3+aOPOWKkk2TAzrp9ToY08LE5oUE60jW+5gnwOejg\nujkLXaVvZNZYd26ox5c8T5oRrIBTqB0eoS4AATD/biqVm5sF6c4UH3rujEfW\n/d2RRAvpK7U6g02kLCD2JEncQ3IUeGFvJYvEEZzQJHbQ5rXFMrF5s7JTIzEv\nXD3RlDCqr2hMQMBMnXdCHm/9KO8ss8JEe22qe55IQ5eVN35JHpmJyb+OjtKK\nB08+\r\n=gJl9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"27bb2072dd0bc0aec40da3282431f7513467bbd8","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.17.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.17.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.f978109c3.0","@material/base":"5.0.0-canary.f978109c3.0","@material/theme":"5.0.0-canary.f978109c3.0","@material/animation":"5.0.0-canary.f978109c3.0","@material/typography":"5.0.0-canary.f978109c3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.f978109c3.0_1575306443594_0.5663604537926497","host":"s3://npm-registry-packages"}},"5.0.0-canary.ad9dfe706.0":{"name":"@material/floating-label","version":"5.0.0-canary.ad9dfe706.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.ad9dfe706.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d91b8c0fa15da27e3f9267c5555c8964f3238bb0","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.ad9dfe706.0.tgz","fileCount":30,"integrity":"sha512-SmICyJq2XdCLJ8fAzMZEEr0Sb3FnGp8ejobrRUN+diGs+HeAnJe8TWSOYQBzQeEIYeEWl3f7ot59PMelYtZ+4A==","signatures":[{"sig":"MEUCIQCjMPtlkmsXD0OxVNM4/IPy2Diuf4FbWc8QLHQz2MBjmAIgAgoxk0JsKvBZNGwpKpnKqjzEpYmuFw5tYSjp39yZEOI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157283,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd5u0tCRA9TVsSAnZWagAA7HcP/1U7BCIA+56ZnHNdgtr6\nNOSVCI7gNmdW60GS/GD18GkhQtVvg+6dK3aHvVdzMRe3MwqjEctUn3//exdm\nppF8XzYpxPEGXE/q3Zd+qyS/B3wz//67+6NAOes7M3lhyzkNRfkKTyzpeZUV\nEAzyZ62s/trmNMyG9IpoNrJsfYzCcZGD3EJIH0iE8YWuyNtqJQsB8YtTW6jE\nNGuFGL+MJeqefp+Hm3S2J4VFcumDbaPwIveTqgD8lNb5K7NFAtrarf8+S17Q\nyNLf6qbsU0G2QZWoTUNpujuUzEbi+W7o83oH9EXCWJu7bwJQFGyC+1osIFeq\nEzx/rsCjkmvRbBB/NYFThmbjLuLxHJpYwFz8qEN+FYChku7qHhDRjn88KvC8\n3XiflQ1DLZ4LETPcLt+bA5DvBc43/cUJbWnLZ1mmwBv7FIcbcgFaPG05gcEg\nk8RndW/FYcer4gr8hUlhgPxi/8QSncud9lN5WQESXt2IlTF1S3+mh6GSnYXZ\nAibA0bJ/9anhgLaZFYHDHMWhOlAMIuQFexKo8eJhv/5j50vxv6jAbg8WkmaT\nccVuecjQyMre4QktLOyvUEkR55EIY/711h4ysiuCbOo++OS1Z/NMlz3W+z1v\n2XljfqGodg93goWTwpUGguHb3D3j1hsBrRq1k5J9WwlEeyeI6jZiyZBLQnIT\n0I46\r\n=xw02\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ded1665c7a532bca8466d5bc100026f56ea99715","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.17.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.17.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.ad9dfe706.0","@material/base":"5.0.0-canary.ad9dfe706.0","@material/theme":"5.0.0-canary.ad9dfe706.0","@material/animation":"5.0.0-canary.ad9dfe706.0","@material/typography":"5.0.0-canary.ad9dfe706.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.ad9dfe706.0_1575415085197_0.13818521322686772","host":"s3://npm-registry-packages"}},"5.0.0-canary.5e45d77f3.0":{"name":"@material/floating-label","version":"5.0.0-canary.5e45d77f3.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.5e45d77f3.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"098acae24960f4ebea247ca1b8a7903ed819c75e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.5e45d77f3.0.tgz","fileCount":30,"integrity":"sha512-zEveRzxe+tjhw5SWdWM+iBhOgnsIogTT5wrDsy38Tv4wcZUUDUIjT2HCdj3TfYElLeffr7uFpZw2RZ5HqU2LsQ==","signatures":[{"sig":"MEQCIHyPKNYi37sShUavgmAgCcTC/KG/a9pHHfg3x7Tip06aAiAL204gu5iS0Y3JgAAjEk1fbU9BF7DcDI35f8ST5vuCMg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157283,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd5u1zCRA9TVsSAnZWagAAPSoP/RV8DG9aoUZT8xowBv0a\nLyQD4b39tnkjUZwMzfVjE0U1QYeIPG6zDyYHmOQdS5YC6RZK9MrgFuE2OF4z\nrPSH857tjIakdNcR2Xfy68bc57GMsMqJJMLAQcsJomZ7cf5cTXBdjpVG4FT3\nrJsJwVkYZjPJX0TDQYEzct0h4aN9vhrDmVLpPbc1t5ZprY1VY8XqKHWkZh6Y\n7ncDWjx/BRRjKaATeez6eUvY8ONObbxQtq+PZYYNmTEpmsqfsvngx8LYJbK+\n0X20xr3wR5zstTgAwWKPGaWhLsAhmFvb4maMKZ/NGwuxjQmfbfpBAwCFi5Y3\nzMdfrEw0XgmGIC30cDcX3gO3vNNno2f45gRSTNHOPu+hxkelcbzEOTPnswPk\nXSPw8au9jQLy3Ludq2vr86zdAnZXZmdqdO9duCu8TaaAMc47vNS+8viDqNyZ\nm/8SFRanueEne2IPkAcli7mFZmSIBMOcmehDkO2zleuIEh3Il7ZKzX36a2n7\nxvFrVXh965uvOMQXUO1Eoz7OjrQfknIWpgfv6S0thFhRP7FZtkLAeivywuR/\n/FXfaLwQ3XYs91VQ7Uk3+JpLLqWVSzncH5EG5R2V/9P2hwQFk5IuNcpk8H9z\nrgzyfUik5RVnxU9y0fLpZpwYpcw6vNOuN938dm0Hd2buZZP8y9BN0+mXc5XW\nSupf\r\n=z14t\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d7a20a5fb792fe297fffc09187b6dd3859babcd2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.17.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.17.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.5e45d77f3.0","@material/base":"5.0.0-canary.5e45d77f3.0","@material/theme":"5.0.0-canary.5e45d77f3.0","@material/animation":"5.0.0-canary.5e45d77f3.0","@material/typography":"5.0.0-canary.5e45d77f3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.5e45d77f3.0_1575415155440_0.22905946367728736","host":"s3://npm-registry-packages"}},"5.0.0-canary.d10e8cdf3.0":{"name":"@material/floating-label","version":"5.0.0-canary.d10e8cdf3.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.d10e8cdf3.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"38db7dbcc4f417b703c577130e40d3c3a4c8faa3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.d10e8cdf3.0.tgz","fileCount":30,"integrity":"sha512-Zo/+5AhA9lLHFAYeQqDj/6QmZ5bC0N2QdNTb05POguD69D0HBaNJGRLdPJIRn5IubvageLTlCFUDT9Lo58OZcw==","signatures":[{"sig":"MEYCIQDmCFaQM4XHy1Lk8Algq6mVGqOoEYYh4q+9opxDCs4EfgIhAJSkZBPzXgFNeOSKnLCLKVgnnsfMtk9Cw33K0MKfTQsy","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157283,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd5u2zCRA9TVsSAnZWagAAwWYP/iQoB8VRZS1prjoR9P9J\nA5vQuxVkFXpy2oVkbsKMbn6+Yw5gz8qRuHUkmD+2GPJWWUSyywszk8hmKe/a\nJMQOj62UrUDHY+yTjNXaMb81ypn2YIkGNmx+oiVopha1ohBvQcuLDifcHFio\nwVl/QOnKsRnHto3cQIf419PGe2FKjt3gJY3PYqKCgcQrCt0oR3GEAD57w25M\n/6M8Cs2ri252WYRxxFSelka6MJKrexD3LUzK0vtbwbfoSIecxg9yERbpzOEP\nvmuFjJPcdhzTv5P7kJZVMCoRNa4PvHxi7uQZvI76h26qKvLo+j2uAkDiE82B\nf62cNcL06rUpu/Jv5WHDGef+nOpDVaTXWWxU4XK7Tp7cjXknkP+NoDGSljRZ\n8wSLS39Mp6UfvINTp/L2OhvmMaoKYeKeaCfeEADyg3wMWX4AdowTptajbyxa\nQQk7apG097cRaoCXTakaEY1CpNjSRG/9sdBNHObhiqfCVOVGUvERXI8V2Dsj\na006MRghmICAJhR5Rv59CgQvoYqES/8K/QVqyr09kY3+wd+BYku7gLZrbkiY\nbfLN10goHK4RMvPmGKgTDwEtaOkpzTxDEPzcJ4oJyaWqqjCxWHFOduJGvggp\nBNEAcjY4P9gUB5KynsE2hZxmX2d/eQytdx/R2DYQyabStk5FBc8wFeJBv80+\nu2Fv\r\n=6VEa\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"855cf0e11682e4f0f44f50292556ce39ae2824a3","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.17.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.17.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.d10e8cdf3.0","@material/base":"5.0.0-canary.d10e8cdf3.0","@material/theme":"5.0.0-canary.d10e8cdf3.0","@material/animation":"5.0.0-canary.d10e8cdf3.0","@material/typography":"5.0.0-canary.d10e8cdf3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.d10e8cdf3.0_1575415219175_0.9847998058073202","host":"s3://npm-registry-packages"}},"5.0.0-canary.a5dbd8a2a.0":{"name":"@material/floating-label","version":"5.0.0-canary.a5dbd8a2a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.a5dbd8a2a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5339cecc2b3d0b0027c733694125cfb4106ac604","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.a5dbd8a2a.0.tgz","fileCount":30,"integrity":"sha512-09b3pq8WunPjv817fq3uBLVeMBDHo5piFIcb8gxpKW7mwcnrhjq1B4EHU58f7UhSVM9ycMWjUJyFhvq7IKOMHA==","signatures":[{"sig":"MEUCIQCv1UDYqFmLszs5u1SoeNgEJUpQjoHC48jBVXJ9O6ep5AIgd/G9IftNWW9VHZoIxrao1ui/WSPBKV8QD6hAVfr8RsI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157283,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd5vXZCRA9TVsSAnZWagAAgYIQAI5aUbEIgrtw/J/a301J\nwFQ5emdcbrNyIwhOP3lSX6fZB0bcU3Lk9VeXQRacdapccA23ae/xaqRxioI0\n5StZFDGeOFOb4akXe03anODhdiuPLZeNNdV8NnlNHNGvkRbkxyYPh/TB1Jjf\n7o4Ziy4q/v6H11NDBybsiqTDaN3RHlz4Z3g0fZzIX0ZaGfUIxBPZMpIAMR3S\npdnq22s8C+KXySEWvKYDO/qdrpwFsmP6GMEqIRwuY0PA+hR7UcpWsf0w4gwJ\n4PJV3C8DenqyT4M+DaxbJ109MXudkKBaMGljWvIMhw249VbeYOOYx4mJ0HUD\n6BEhFCkh9hQphFNMoDuhVpRGdSPUIJDqs/n716b5bGx7/YRe0SN9hz+dLgQl\nYCOUBGWhTbXnd/MigChA0vQU3evekj+/oSCN7nQmsMr5GN1g80Oca4KBe9Wu\n7GPG09c3TuXcqYgs8gz9HBlJrNisqNDG8BupWxYk7VoYSW16/nMYq4uTNrji\ngUK9Wsocjf+3ZtoYjRlhnupnWkMaLD6a6Ban6ZoR8I+S7pnOd3JL38X5i2gu\nl5p1EKf3LYH5BLnaJ/tOcmRb3QuUmDNHf/lV3xrMTNjWneKXUfuiC2fz+rhN\nvoa+wrYh/dUCQSmVJDbCTjH6L1NwcW6nPL6M3/fwORfo6bEhlf+SgdBNCo1v\nRsDW\r\n=fsWC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8a67c95c393a733414be4fc008baf7637a9509b2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.17.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.17.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.a5dbd8a2a.0","@material/base":"5.0.0-canary.a5dbd8a2a.0","@material/theme":"5.0.0-canary.a5dbd8a2a.0","@material/animation":"5.0.0-canary.a5dbd8a2a.0","@material/typography":"5.0.0-canary.a5dbd8a2a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.a5dbd8a2a.0_1575417304909_0.6458246687618288","host":"s3://npm-registry-packages"}},"5.0.0-canary.ba879b68b.0":{"name":"@material/floating-label","version":"5.0.0-canary.ba879b68b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.ba879b68b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"540681a66c1853284699b56f05619de5aaa18714","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.ba879b68b.0.tgz","fileCount":30,"integrity":"sha512-fCJA6fR8FLj9449GCidtjwVV39EqyWmOT43CmhXsYxwiXDM0N8wM4pVXwU1VE7hpabqnqUp/n1S7gwtCTMNJ1A==","signatures":[{"sig":"MEUCIQCY4gns6mEwVLYzcSbz+hD9VSA02chwp6iROWTXLgqASAIgNQ93/wj7dpEwfpW1cP+EKfHotYNhwHPkuqrl8C7i4ts=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157283,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd6BWVCRA9TVsSAnZWagAA57MQAIhL+lF8Y0vSOe/1jv4O\ncZ4J/FR+WpmJFMYit1xh9hjecC4tNESRkfPsoiAgy81gnPtUBNFBNwmLanac\na8eDWCc8DSXwNGHuWtmKGH7q4SIVfSwYf8MLmWAEOyWtmMegRXbZveTNdHQb\nXZsd1AW1fvfGRX1Cu7+e0oDh1VVgaugVkB2+YFm4wpWqTlsCkr+juFIHjTIr\nOcvKCytfwc5Fdho8U+YoakDyep7QDqEdgHXHKu0xDFi7jTBDP0baAIfrZSjc\nwsh9SK95GQXTnbnWJmBBWF04mlKgpMX+Opmi0o1NugdWfE1NlKzhDMPdq2K2\ni5873flhHWpPAkGfabz8vF71j9cvYDksuvnrPjh91IqOF+w59rpEDiKgjX9z\n9xSYhpz0gaFchTYwWsRuNtYmJk4/V3qhjJrKh4gkcnXFPvhdVG+gSStnnGvU\npkX0BwrbuNUNDlGKDqJy2EAwVsXMd6XaGKOxV0XbnReH1dewOaV9Inglqm4M\nZzwAa/GepfJ97gHjgVwUz32ziotSXktQ8hHy8Au3Ee9VA75Fjfpw0vUYWFSh\n78noRrLBAKVDN+VmX5WUDnc3ACKU1P5+28jqLLucI7Ip85R8lHmXwJgO9U9R\nD1JHOQjfvO4O9Bte7leOZoqYtlq85o4J4RH3pqegLU3TOqN6+MlT7yIcI7Tq\nszEL\r\n=5zVk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"83bad042ea5d5cc8b93df88a1d4730099550bc6d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.17.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.17.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.ba879b68b.0","@material/base":"5.0.0-canary.ba879b68b.0","@material/theme":"5.0.0-canary.ba879b68b.0","@material/animation":"5.0.0-canary.ba879b68b.0","@material/typography":"5.0.0-canary.ba879b68b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.ba879b68b.0_1575490964684_0.7630343653210225","host":"s3://npm-registry-packages"}},"5.0.0-canary.aa0eba489.0":{"name":"@material/floating-label","version":"5.0.0-canary.aa0eba489.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.aa0eba489.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"fd6a0c7f9c6b144de0cfb37b67f24e03ab7e794a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.aa0eba489.0.tgz","fileCount":30,"integrity":"sha512-jy4muySHCOAVPhi2RPJmMuenIUCPeZnGWqgRVKKu61M45XgNxUiNwhX10h1aPjvnxHjUeTpHkA5EsDwXkJ7yew==","signatures":[{"sig":"MEUCIGR1cv5yTug0imfN9JqYaXFDhNA39H0mcu7HCIBUqZUyAiEAxeF5DTX6APnGtHm0YoOAu0scEZGxmrD2z9cKWXD4Guw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157283,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd6bXsCRA9TVsSAnZWagAAPgYQAJsIEW50bgg6bZOCAGn9\nRUMazTHxvFFEiKNzJfbJXo7pZKF+rjFulGc1+3koGlfsxrDt2UqZrld8lOht\nJg83wzDZO1Fk9M+K9fD74iXTdH3HxCNA5ZrG5cjchrU7SyRZMpv6RG8eenWi\nwXsNNdn8lKjvpJZUwtTKZ2GssGvqOAZ+togJ8S9ZTFKJh0XICc1Szqr8Gb9B\nectHGihsODcaVWTAqze/W7CLGMdJ4D3drTNrWtXDAYwVACPlHuENkToGnI4Y\nmz1dY4g9OoSFDFXHhbawTB+5U+5QNtI/QUW8e/ATv/0Z3W6FaTEOd4orQYiF\nfqdZNExF//j82c2Bve6kC4ml+ytFqY/0u79GVmQaVFkqXE3WgOxrpD6Fvxq3\n31JGL50gDtAfXq0iISWGPX70oDdK02pUSUkEIUpH6Gp2LqNlDnYxCS7ic3BN\nZ12/kEDOdsLu7SKvJF3AF/EllTRQtXR1PxmF30vXMFrwM9dmsuPX1CTAKfum\nRQHzu2Kw/fYBE91/Pn4+h8TzqiA6GdA1YpNLnt/IUvxPUQ/7pogy3VA3nE4O\nvKy/+H6dNP9o+2VOdivCzHZqQig4U+trvB0NFvYMr3ssenlcgQETkUZcG4Uw\nMh932lDK6otjSacLnrOqguAPxRK1su9mwjH11CgJ7iRgc0V+FJ5wqL/8SugA\nCf6e\r\n=h4aV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"50ef06854f8319df2975cafcb0b8c94fc399f155","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.17.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.17.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.aa0eba489.0","@material/base":"5.0.0-canary.aa0eba489.0","@material/theme":"5.0.0-canary.aa0eba489.0","@material/animation":"5.0.0-canary.aa0eba489.0","@material/typography":"5.0.0-canary.aa0eba489.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.aa0eba489.0_1575597548077_0.7966625427774032","host":"s3://npm-registry-packages"}},"5.0.0-canary.cb7b71a86.0":{"name":"@material/floating-label","version":"5.0.0-canary.cb7b71a86.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.cb7b71a86.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b2d080a71f80229dd55f47c61a3d1a7856c9b561","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.cb7b71a86.0.tgz","fileCount":30,"integrity":"sha512-bQ2zMNnN1EMevTYUjtvQ7NN8/wsiObUrbo2kaVT8L2Tt0uNwn7bkfahZR8E6oyMwWYnP6zd65k5OzWxISZCQ5w==","signatures":[{"sig":"MEYCIQDGE7hS/2CySM6vILCdEcnADEqbqnCeBxu84hTYemN+CQIhAK3UH7HO6gu5vnwX20J4UdWC//qW6qjMGI8C6o8F8ZCD","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157283,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd6uqKCRA9TVsSAnZWagAAkvcP/28khs1QMvfVaiZojI7T\nhikuMoaCn16htr3YAkYyDwxENH7yEHqEV06KzPMU5Y8OYBVhuNZ9Hc+bZsH6\n2LWDe0v88nkpY56VVcQ2rWqKvTmlZ1MhcNx9GOP7TQqdEko9738saNXdgqZc\nHMaFMqP02MDvKF42+b9LAXgYQRfQabtMciVOe+CJvTNzqAjFiPRi2+Dxjpyc\nRWASsPH4hjNQ16M0k9Az8lDwfAglQYnNnh9A8tSO6POBGbvnwzte0sYwkO7g\nF9vg8h6sHT07wX5aDBbmAu1WfWz2mwtWvhcz7jH1k/sXUy/j2y8+h5xO/oZT\nAmUJcX0iV0l+h0hUVcfWkLSY7pqDXhUGSR0DFG3RdrgKoMi6WGt3aqK8xt6M\nQl9tJK49riCdSZ8oD+orHUOQyaPIv33ezZfboYyGmMWJ6hs8KS4DT/GOauUt\nzRniOB5jYsBMgfPD0TLglZqJLr1XbZQI8TSOWB0G9B0Fib7QyRH7ZoHp2h8T\nTjBfo7M5lrpp0wjMTNEJRTzc8HV8eMzdr+07D8V6gzzBatuIoCrG25hCV4lb\nnR/8Mudg1pQXOwBziq/WHGqblFFAsc/fxR7VZ8FN4PiMUaZBKuWHLz8Ws3cZ\nmyIfxCWrC4aL3TyWYhvDM3GQQdpsvpuw0GXsCH79EN07id8nqgGdWvdh1USj\nkGHR\r\n=aaxQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2866cdc43c0ae69bc09927b490f0805ca21adfcb","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.17.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.17.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.cb7b71a86.0","@material/base":"5.0.0-canary.cb7b71a86.0","@material/theme":"5.0.0-canary.cb7b71a86.0","@material/animation":"5.0.0-canary.cb7b71a86.0","@material/typography":"5.0.0-canary.cb7b71a86.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.cb7b71a86.0_1575676553781_0.24994961331342425","host":"s3://npm-registry-packages"}},"5.0.0-canary.50f110a6c.0":{"name":"@material/floating-label","version":"5.0.0-canary.50f110a6c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.50f110a6c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"80ae48c19080739988efc61a7dcb0a168cfc1c1d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.50f110a6c.0.tgz","fileCount":30,"integrity":"sha512-7qDSPepiamBYCF2tFmvZd0yDbsIrT59iB/LOR6gAFBBhZqa91KMw+MhgnFv/6W3OZLyX1PPh65n5CvvjW/4WfA==","signatures":[{"sig":"MEUCIGL+WKS1B2phQB0odB7TjBnTFguFO0LsBfHF6Sw7lBb/AiEAo3E8C3bjs3ZgpZVDDHnPvuYBBCgOGI6rgIeXy7mAkhQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157283,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd7874CRA9TVsSAnZWagAAPGAP/0ngEN3c94YFSoR0etxQ\nns7XFAnH0c1jwP/Jk97BU8b85wLjIr/lblgd30exG1FirAjiHfWoFoHXcWZv\nejQqG9DVuwvC9zwNBr9dvrz6gh1mezd1hvNRcFsfSeVQc5FmusoQjXqNHI9g\nUX8aiBaH9t86BSRIBe6WloR5fTtGE7SxJcXfchVKnHqoA9BVt0z5YmGevkrU\nF5XtbSUO5EMWntJ/h+bcCIaYD9WY81r8LdbuGxCNfydXxBGd+dg4DDgxuDjZ\nB7017JmcAg/cC5vYNvEeTuDsvTNaVpXe4lQcVm4bFouCPTWgkb84ITWoMul3\nkCVEtW2MrY895m0oTBx7oqS4DRNCoylMWIQDyZu1LBcH/DJ4ePLA9djisW32\nbrijrCtEicQx4viNv82ZyBfUaIAJ0BUA6T/t/oAPgbcyfFBuNk/xAFWeA4ro\nfv3KkZkIvnWU4HC1dYeDmXAjdtIbC/DVPh2xGVdcI5SfAMbXUA33ws7TIW2I\nvrUqhcwgAUabP9z1YwtsOKDDjRBuA512Huo3EX1SWpTUrQNQEF521a2sbUsw\ndA3xZcUqbZk3Tb8GP3H2KA+T0P/yoYRWQmFU/5UzbZOh+L4681451VqWwvzV\nLOo14I/rA7VAUBG+V9nNQASVstmszT06K+7gkzvVO+F4AC6wDEhxuhNjavLY\n8cZq\r\n=KxoO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"84e9b8113e75730b3079c429f751cf857a866b51","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.17.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.17.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.50f110a6c.0","@material/base":"5.0.0-canary.50f110a6c.0","@material/theme":"5.0.0-canary.50f110a6c.0","@material/animation":"5.0.0-canary.50f110a6c.0","@material/typography":"5.0.0-canary.50f110a6c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.50f110a6c.0_1575997176398_0.7098805100134729","host":"s3://npm-registry-packages"}},"5.0.0-canary.878a08b7c.0":{"name":"@material/floating-label","version":"5.0.0-canary.878a08b7c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.878a08b7c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1ceb8a292c5c232623013ff9b62d38e80b56bc30","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.878a08b7c.0.tgz","fileCount":30,"integrity":"sha512-Qhz6M7eWBkRRPGK71T60v5kyxMbTa+4CtLePapOcPhuKoUHfkrszxDB53HL1UjgqrTAYXfyrx2jxn1fjyUnT/g==","signatures":[{"sig":"MEQCIA/tA9QmSmIyBglwjbGM3Fb9gqeftthTOUHxTO2z3xpsAiBd3FLQ1J+zeVUuuscf1R34hwJyoG6i8LsI+gOqG04Zfw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157283,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd8U6VCRA9TVsSAnZWagAAQ08P/RDsL3fD58Nxxdla7T3U\nshOHWZBRVovfvjgWjpAjFMsiGnmExtJKq/tSQ0xO2mGHzwBQJhoCDYAg7Vkr\n5ctHKOWimuvtRzaEf/VB+QyjViFT57FJORrNUijhdu/UmIPUaYDfIY4SKbDy\nc5mMLDA+BNfHIYG9uKMsy2SuyO30bS16p7Z0PaN6MlKOm499HJcbteMw7MPU\nJexTrnEsynEOervP4jVpWqVLmSIPeC80r23ICCZrbzw7+C2OCAtv6PelrWF7\nNGAY84KGJ+uHnQDr/h6K9WJYi/AHs5mft6m2ERaRfTgyEdVgUWcoJJXlUvyO\nkk+qctOCJI8QBQW/0gBBXxFQfqah9QrjhdfBziENlE61C8kte1zWWkAn1M0d\nAqpcAiZUd0Cqq7yMKKta+2rI6T3yynToe93zt/xHBeEmK+iOc0Xrfz9Ori0h\nu26oFff42Ikla/W1Pit9Sb/FUflUHVMXKqvbTUHG9P27s5oxb9B3jUcfvbWo\nOl6hI2Y6Rh4fJhtxWRYnj01GJIoO5hjZbo20n6c93CFiW0YO11U2OMv6te+2\nfj0hxYNsmk8zCpfUGxUIhh1rx8rnuAVKnztrhu0ZyZlp06pXlolyHLsVcgEr\nppkcDetSWtcMa5EwTnsm3ZnTWEbPpc0fha7MxZy7YOrDsAszs54gcoSRfbYk\nWedv\r\n=SYFu\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"13bdf58f09c0e231663da8e8e9856d7a442efad5","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.17.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.17.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.878a08b7c.0","@material/base":"5.0.0-canary.878a08b7c.0","@material/theme":"5.0.0-canary.878a08b7c.0","@material/animation":"5.0.0-canary.878a08b7c.0","@material/typography":"5.0.0-canary.878a08b7c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.878a08b7c.0_1576095380855_0.9209787368631084","host":"s3://npm-registry-packages"}},"5.0.0-canary.397905b4e.0":{"name":"@material/floating-label","version":"5.0.0-canary.397905b4e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.397905b4e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1642f4eda5538f50da6180738b5c742230ff11bb","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.397905b4e.0.tgz","fileCount":30,"integrity":"sha512-IeDvJKPW0D4Be7RZZ0yFVC0mdysZZxO2Cp3aNtMWAjCHwofrJDU2G/3kqgjrNA7HRSojsxo0ECR71soW5OV0bw==","signatures":[{"sig":"MEUCID7zxM7gXPac178ehYELLa3eksUY+ITCF2dDqv4UKdXcAiEAuOBbxFNXrxlzvUjkc2NmPBiQX8xYUGDiHU9G4TPqrmY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157283,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd8ao1CRA9TVsSAnZWagAA5BMP+gM7UXeJswkzOQsflQMq\nWGzB9ItSpulVUbTsIjLc2YEtpahFriK+1o40ZKWblJqNQ9ZZEDFVEgGukt3D\nmwOOic09fe10c1VS9RXa8Wkzi69AwTxLS/r4jD5rBDrGBAzZ/aD/hZmBnpVd\n8TIckfzM9+SdNN+rHjz5l7mw2hWr2UlNBdD1nRRTKOSpDarxdEJpAspe4gkz\nQzvddA5JEIs8Wg6COfcJ1a5XkxRFrQkPvM2ZcXgV2PbkZYwnvw3dXAcOxEmW\nLP4wNgANTi0AnMXXM02GHr9I6OspaNkwq2DkbazPgGMDk7V/nOCbzhvgD4Br\nBkg8Kemq3Dl0zsIxfnX6/5t8iPPiUn/vKFwbhj5YjmCox5Q9DKC2DAIYLt6l\nG9pwZcCCCalndAJXnzZPVKXYuRkHKLa+ADrA9jAnfrzLF4QaMFThQryD3IUh\nGbO0EbeHKcz0zM4gEH8Ejf0gJPCQVROgXOTp1HHFelT1WWZCaafPCv7DPsJP\nArTjKQD2SxV2BIYS8a2RHkv34Eth16VY0vugDPrsVevY+wbddmIGQaN54bEk\nedkt9V3wR4kYCGynTWC4AiJ3dzZiPnj9IaSblgIQz5pj/4kmy8USvNhlNhxW\nadZXszlSjBNgUw/PD0l1GV4wprCYqbQ4+87NRMK+BdiYK6n7kAN7v/4fUMDh\ntMOO\r\n=n3DY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"43ff8b8aaa48d3a31fc6835290f1ea1822301146","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.17.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.17.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.397905b4e.0","@material/base":"5.0.0-canary.397905b4e.0","@material/theme":"5.0.0-canary.397905b4e.0","@material/animation":"5.0.0-canary.397905b4e.0","@material/typography":"5.0.0-canary.397905b4e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.397905b4e.0_1576118837438_0.9837217321796103","host":"s3://npm-registry-packages"}},"5.0.0-canary.1fbf5bd1d.0":{"name":"@material/floating-label","version":"5.0.0-canary.1fbf5bd1d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.1fbf5bd1d.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5394b330a70543d2e83e492b37dad87ac6ab3dbc","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.1fbf5bd1d.0.tgz","fileCount":30,"integrity":"sha512-+hGIZYGvCAwqEGoBZDSWG3qWCT5lkOuVChp3gwnuk+b+AVRa29pWQ9FRC8T67kq1cC2XnMui9WyJeg6n0E2+ww==","signatures":[{"sig":"MEYCIQDbP+CxEfTYFFGw5eIS+4SkJ6xc5mcPxDBwUSYgsio99AIhAMuIW996qBBMzJTuq4J9q1CJffqsE3uMa0gtgxxmI/zA","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157283,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd8o4HCRA9TVsSAnZWagAAIaAP/RHIQDiWKxufMIGRXtEZ\nJhCX0e/XlcX5KzPvi8Sc3aIlqT6IGvIA/ct10TvPEsRufzjt8hk7bhLgwM46\nVeZqb1JDJNFrT0h9a+/p3QVJI49XvuCRy7z1jm1fBji3x9+A787O2UTv8xUH\ndiYTMX4fhB0hHIXYzqty78PjtSY2x+pBwBPopSa0OMbGBu2IgYEcIgdowY16\ncn8zX5GzBTpX1MXLtxI6FLeqPs3uwUkoQUGtxZW1jIMD2R5MFaA+KvPdjw0a\n6bizHovczGQJNLpenhE0eAedVXMgr21ayji73UoXy6o4Qy4pc+QXm0vuLGCf\neAJPbJU5oOfiZLtEg5tEmYocFzv0oD6sv0IQE8NV1jYAkUohVepyTAudicyC\nXoVhIoSxbbOjIkOs4/7r8i2HvIS+2ppYHOeWqQqN719CPsfJNy5JJYFJJmIb\nZT0H76YmsvpnQyehWA8pQO6sqteNZJoE7HgjDOGPttomdlkinkjqq558EQZt\n9RQLWHzX/ZHQtgpDneRuUCkEjzGegFVDyxr1JGKzL7/q4aExTAnt2nh4vr30\nDct+7sr39jzBqO881hRYEljJFMGCcfyOCfGNpnz/fF0NvU/isCv2Hzk07mKJ\n5cJpRutPQ1nognsCMhX0Ee65bIhwUJEPAu8DG0rZ3fDqsS4jb4A0DxrLEGi9\nsbMj\r\n=hwcd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d1aaf5edd2a8bfd34d05df3e3c52dec6affd6812","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.17.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.17.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.1fbf5bd1d.0","@material/base":"5.0.0-canary.1fbf5bd1d.0","@material/theme":"5.0.0-canary.1fbf5bd1d.0","@material/animation":"5.0.0-canary.1fbf5bd1d.0","@material/typography":"5.0.0-canary.1fbf5bd1d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.1fbf5bd1d.0_1576177158933_0.5905234979310885","host":"s3://npm-registry-packages"}},"5.0.0-canary.b723dfa78.0":{"name":"@material/floating-label","version":"5.0.0-canary.b723dfa78.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.b723dfa78.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b55f467e0117eae9d24813d8c2b5337f66e53d8f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.b723dfa78.0.tgz","fileCount":30,"integrity":"sha512-6lvEWwQlKcMUhQjCCfMEv7+0az3xvICvexLwvAo1d4riStR+Visf+6lLxl9qmR8bErQKvjBHEBHVU/l3MenZTw==","signatures":[{"sig":"MEQCIGaV2Qn9hmuarSJfX1LusqECt3nsXnuNPpRDmUk+lDtOAiAML9rkvlal+SuUgz0HwOFsBPAbSp41HeDT4bqjxQ7UUw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157283,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd8p6MCRA9TVsSAnZWagAAG4YQAKCfVxHeYZVKdyELScI0\nGVhpM5p4h+O7FiarSC4Bd47tkWDigB7jW27IHWaOWzjVxI060lCJbHiE8f7N\nvuc1B79x7M+kzmTS+P/Yq39jzd4cjXttz+fjNqu3KrI3lAOj1rEYkbr9uhgW\nI7dOMQojpEmAlWSr2h5XdCf7nVJ6bRLYcY63zg65a0+YghEheGs7Pqh4k1c9\nE1lzir8HiWTzvK9k9upG2o9bWcFZc9ZJcFlRd8FHsuD49X0lXuNO4XcRIjzO\nFfijyP4FR5ZZwWrOqa5vaxMPlXvGfTQDTYOVjgrvOvDihip3dp6umP+BIwOK\nttxQ/aiAZgMPc0Te6Z8qTcaCwKy+y7FqMmVdvjgALiZb9JMkuRvVGVbYOyFC\nQW+Eo/lyIyGG9Qho5sjz+k4+GOwvmxc6KpI/cy05Pwi8Kx7+tuFY5e2rSRot\nz0VH9mDwnBFWGG7XqEEUQTGKW/QI+vxyQnVqsRGOf4mjQDgbzsImahGEXaqs\n76UsqFe5S2blCbywI5oe3ehg/yW6/vRGtHG7gbwg4021L0UhM74HTHYSqWG4\nMEBu/3CaIz1i5FaOuEsEuZy5Mpe5xylxIKtQSFSA5wzhLbH6sgLbYH6u+A08\nQF3qH62xyl7gGUUjVbkzb1GuDGFM2je8RVdKNGnGbxbn+f9B/SUxUYgSXDzs\nJEq2\r\n=YLha\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"643046d4c1ac458ec8eb1623c5951b3c9a17d2d0","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.17.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.17.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.b723dfa78.0","@material/base":"5.0.0-canary.b723dfa78.0","@material/theme":"5.0.0-canary.b723dfa78.0","@material/animation":"5.0.0-canary.b723dfa78.0","@material/typography":"5.0.0-canary.b723dfa78.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.b723dfa78.0_1576181388558_0.2136689255691424","host":"s3://npm-registry-packages"}},"5.0.0-canary.1c494e567.0":{"name":"@material/floating-label","version":"5.0.0-canary.1c494e567.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.1c494e567.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e3d62bdbc5759fd2fee88e9d086719567c02e0f4","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.1c494e567.0.tgz","fileCount":30,"integrity":"sha512-/L3qjAcwMJ5OUj3dACnQ44QlYVOTrrCE23YxbOuPgVQs+rD7KcE/CezDYYO32V8PkP+ZwIZ1ZeWcguURUPdJdw==","signatures":[{"sig":"MEQCIHj3rrZL0ODaknINAeOBNX5uphTqg3w+PxZC8xfMbjRKAiBAV2+upEMX8xyPqGqkpHJnnsC3Ir/Vk1/vQnskUyz6ow==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157283,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd8s8OCRA9TVsSAnZWagAAov0P+gJchRiJEYOK7kZbQpCL\nhDjV6t07jJAchz9vCQGtA9gTBhJYEUljae92f6X0H+NTXkPocZZdDctl0MN3\nPjYIV99GgAEMjQ6os7As3ctQk0aurvRXZppTg73DJfY66+BirISTIKAhDPby\nG7Y5uZge77JOJqTC00g8Rgk4nFRb8dfNgqiNBnsolK8ZRBpl2uWhfggL2I2D\nz+NZ+2z9TwAYsOTKF3Tzovho9F92BL67RMhLIGY5D234c/YpIrvFG/V4S4xW\nFT/Mcq05J9iZDr9KKcq67SHw+1j92pyQVWIgJsVh76vsruO7YhIqkBRdLEdN\ntCFtmYAt3M6g/SUJw8g2AJVFsDd9Nl17Eb7TsPZghUs24KvMbBzsSpgzd72k\n65oPKyGgQne04D4IXDvwImkldvlbioUgNWlBFT4U70xFPOmUrHxysLZ60kno\n0+PzwgDVp7IT3bOEuK3UR0ETXRp6KkGzW5BWfpPbZqvUw2hoWGQ4c5xNtCOb\nBvsyksUvAulqan7RuD0+RmTeXp/XEf0JFYoR8naZEKKeuTZ0amSaCNZM0hvZ\nOwLcWAGAyb+9B5Kc5f4qIzydZNamqjv6ptIJK7kgxhLsux/Svo+R/6vEUet2\nXmEt5tGSODMci93r58Eu/uUygt83Moo84HHdn7ebCZY5ZgFhttO6HLWHV2WM\nKvfD\r\n=E+WV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d7e01eeb35d8a54be431b39b46b389f3b26262e7","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.17.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.17.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.1c494e567.0","@material/base":"5.0.0-canary.1c494e567.0","@material/theme":"5.0.0-canary.1c494e567.0","@material/animation":"5.0.0-canary.1c494e567.0","@material/typography":"5.0.0-canary.1c494e567.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.1c494e567.0_1576193806166_0.659322327572653","host":"s3://npm-registry-packages"}},"5.0.0-canary.c9e98a125.0":{"name":"@material/floating-label","version":"5.0.0-canary.c9e98a125.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.c9e98a125.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"46548d32758234dec0346ca1f1454f9d112f6a29","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.c9e98a125.0.tgz","fileCount":30,"integrity":"sha512-t2JGIWUxl/VW3fTeJag81kQ7wpngu8D8SqYWindcWc7Wau91iKlgoqdV3BPZjoasX2XZsCSI4m7oUk8QJlup1w==","signatures":[{"sig":"MEQCIGKkawmf2EHVJbKFeF+Lzh20OeIPDn79teDHUhAe5SKkAiAzympttoO4jRfVT9CfNM/Lz4rGK01GqiWT+r8fPwIkbA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157283,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd+RnzCRA9TVsSAnZWagAAeQwP+wcpxouOoehx5lFQHC7c\nLHn+nr0QByYqPY+W5xPIjzUollLNfhaWfhc8AXEKbHe7DL+bctjVZ1y6Fn+3\nmxMNbUZSrwTeR5GDNtvo5tEisPuPMlLpOUysu6p7mZR3yPcjFD1JmWeYQk/y\nENDjbVB+DV8XITgRLa+y/TUYQf0Exe+b7WXS7pWlaIDRv+mPoE9PXZzoK9a8\nAiNcx1sVVE12uyadM2AfUkOdBGxycZPQHv1LXD75/8G+ivEhbhpg+xbCuQJv\nlSmlAFvqF/VFx2WBqVEBFSRxDWK6S4+RMnbckQi9RCbZZhQWLsvmcPUWKc0G\nH/ghn9RMOc8Ovj0v6EJ4IECf9Xt800cGmNoVyVP3jxOyGFjqloz/cj8nK9Vh\nDzqmVcYCkzXfvyxhiNFkC+Gn62pmRhlo8D1C5nl2WRzvXB8h0PSqghQObsEJ\n6JlUFIX9g8z1pSC8ZugX9VeCfFEhRdL424eMT3bDzenygkeGpGVXhfoXrO3U\n4IA+qBx9X1XA39939oiKi0/0LIeMzKjT7Ucg+6fyc5MC10f8sqDH754liJg8\nEeZqw6IGKGvKxJlBk0K45dqVH8PX40aS9f2b4akjBaDjpL/UhRQaTDb6oh0I\n7rGochBCnGMnjidPbGW9rL/oV9bsGoEAbVXRPPzsYGOSL7jl7zSxVG3MBKAs\nqYS3\r\n=xrny\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"34b4d9d0fdd6b65308344880ca9abcb67a41ec58","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.17.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.17.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.c9e98a125.0","@material/base":"5.0.0-canary.c9e98a125.0","@material/theme":"5.0.0-canary.c9e98a125.0","@material/animation":"5.0.0-canary.c9e98a125.0","@material/typography":"5.0.0-canary.c9e98a125.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.c9e98a125.0_1576606194817_0.7767545076776481","host":"s3://npm-registry-packages"}},"5.0.0-canary.5ffe8f7e3.0":{"name":"@material/floating-label","version":"5.0.0-canary.5ffe8f7e3.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.5ffe8f7e3.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"91e2139a181ee5fe925dcca9373f30b098aeb9a7","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.5ffe8f7e3.0.tgz","fileCount":30,"integrity":"sha512-NufaeRACSFReeIjwoEQf/5vYBdpuGpbKoGeMJM1hWB2/o/6qEh484JgybMQdcNVlcRYV3LfT6GEAa9fHMTOsXQ==","signatures":[{"sig":"MEUCIHHM5MHrYlGS8OcI2a7I/3oZrpWIxN1ZZgEa8Fws8UPRAiEAjBXwC9JQXIuQw1Zs+/VN//4+ySNaD5NNzOlzbqMVFnc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157283,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd+VevCRA9TVsSAnZWagAA9K4P/2cZKVUwRPN653mogF+G\n/blN2ZRASKRM8kOVNsLyKJrPOfW0jyR/UcqfeVxOzftRdaAguS4tFzKQ1BXa\n1tC3PbLL/7Qc8IOoJy3UMWE3bPDKnzDcQ9sjjKVJvnPSUoaqILeG78nFFi8b\nfp2/ikVFH2np8qzQ+yIrrvaW9t7wVArdEXYXsZsFbQxi2EcfNWd7XzHi6ZlR\nOfQ2Zlf+ia1L0urrkH4IZql4hqRvmQM4LJI3ODQI3Y+VjjTscofknPr2OZE9\nQO7qE614JtahHh9jgV0wCOAdB/hwmjLh4vQhbWpXH2w3bVejZPU0G6AxszcZ\nABsMD80riUOeFfJbeqFn3gdIrR1DEXYq2M26qA76ZdT28QdkeQfTVhr/ux3o\nZX2VLBtdnvRbtGHJidxYwCOAIDd2XyfU8nj3cdTZa9wjKu6BIStjorx7rGrN\ncLndP8ZL37zo90/8dIJ1ZHVtAQ3KNiAzKdoHl+o0Hk2027Ci66uZVav6W0ia\naOn6izgGpDUbKrPSyslyl37EJAJxIRURhyDlqFMRXLETv9LZrY/3QA7x2CjK\nr/LAz1kfBGgpz++vvgIQ02058qLxvBwsWNRgKvvToxKXd7LUbCLD7yb9zxrZ\nl8NLswPRlrE3GDMQcMwdtzXW8bykYMLwnsKl7x5WJqXEEs7u2Bw/Xers2Vb4\nDwHy\r\n=/Z9w\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"21e7c11057bb3bfef94ff10e24676b9da6f427b4","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.5ffe8f7e3.0","@material/base":"5.0.0-canary.5ffe8f7e3.0","@material/theme":"5.0.0-canary.5ffe8f7e3.0","@material/animation":"5.0.0-canary.5ffe8f7e3.0","@material/typography":"5.0.0-canary.5ffe8f7e3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.5ffe8f7e3.0_1576621998679_0.32258848301956444","host":"s3://npm-registry-packages"}},"5.0.0-canary.47949b08e.0":{"name":"@material/floating-label","version":"5.0.0-canary.47949b08e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.47949b08e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c3ba5d20e379fcdfa00defb7f1c1fafe8488ffa3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.47949b08e.0.tgz","fileCount":30,"integrity":"sha512-9EjWg5QaWgnP9Jzyr6bqbbxlobhUF9juw4PLPHPXimp3cUKB3+ag/h4c1cGmPhkaNe8lrq5wFnMD6I2nk4dI4A==","signatures":[{"sig":"MEQCIF8uN22NSqgA2EwHsot4dz2ZCZKWUlh57baO3R6WUL4mAiB8mzdnNcwqNkguDQyCm5YZX/CsaN+X/DtBfbNFDeQNsg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157283,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd+mSWCRA9TVsSAnZWagAA2q4P/2e6V5dlepvyhsclkjTb\nxYwZ1Jhd3jqUtluu96zMqwpXBoTN7khmkvN+9XJ2yaK7J+2kK7BtTfcD9BE6\nEdrH800KWItoCzVl95cen/X5UXkYookccdYzplBtbqXrt3kSgXXP/sN5zQhw\n0xZK8CG07z7Ilq3ZsGwJV4amB7HJ0+n24rdmR8ZDWuLCDZGKVwHInjMRtOhy\nk3oYnVW3hnrA4H9mwY3b8cpd80Jn3icZLm9J+XQvCGTohR/IKFOzMh0+Sy2Y\nJqMUbhwdaLjvhTk3OB6LwgruOch98TsV0rhQRPm7yTvAjUMP0qcRAVAurCiT\n5TM7xd4fLMMWjO2kp1l14AISDVql4K92Otw9SOn58i3FG+04NV7+cbHPLio8\nh5LYW6q07GphGbr9vAT3HfHbY9cXLibcjHwBOosZ20tBlrQ/MJlUiiQAcIXp\nFgVIgHg0Zpm6TdIXRqu2YbxfXq5359G1XPbbXi2AnBg0Z2Cjmg+4EmMDyq7X\nswaXHBDQL3PQ8dNBDZxhXxj4IeF/y8gpoy8smEji1+qBsVQqJZpI3VjQzw+r\nsHWzymzbR8p+HYjwsEmiN+JfFLmpm2yRlTyD9N0n6WBUhI6fAreKaKux2/k8\nFg2WXrgkTPpHAcFSANaiefgCIiQx6ybmKlx4AEbW7lgrt70HMToFxzTKzmD2\nHW9F\r\n=wrx3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"dc8ea470b79b9134800af9e8866b99949c575024","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.47949b08e.0","@material/base":"5.0.0-canary.47949b08e.0","@material/theme":"5.0.0-canary.47949b08e.0","@material/animation":"5.0.0-canary.47949b08e.0","@material/typography":"5.0.0-canary.47949b08e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.47949b08e.0_1576690838392_0.6401954585882506","host":"s3://npm-registry-packages"}},"5.0.0-canary.b240bcc1b.0":{"name":"@material/floating-label","version":"5.0.0-canary.b240bcc1b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.b240bcc1b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7e497e51262ddf1fa2a58d61671a64e49e7779d2","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.b240bcc1b.0.tgz","fileCount":30,"integrity":"sha512-zanwItR05hizke6yeh3J0ZnW1ufdHFCk6k/bqJ3ZgeVkI3miIbij1SBdoo873dFWljsgaXxuKgVf27tK9GMVDw==","signatures":[{"sig":"MEYCIQCM+HN82EZXaU44XdHWknDTKTyQdBIECaEYHLYgs3HqSwIhAOnBcFvIJTLWI1GMkKY+Q79pD2P4Sjcvr3l8QOwcsUHI","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd+nsjCRA9TVsSAnZWagAAnTEP/RR1UoSXrR7Chm1uPfPU\n8L4WynAgYl56a5eIwj44UhmOrv4Xa869KTIN2gltUUnViaoAmw8QwotqhYw1\nxHs8zVW7x+SkDFEUohI2cmxl4r2C5sApfJA5QCsxqNbZ2bgoHgkIDi8QQL5a\nuka0Hk+cuzFyYH/AeTieDzr105dHRBQEW17uSCSQda15uqTgcmti7cGyf92i\nU/hrBpFwTHyeP9zl2f2M0N4GVmF1v2rQaxSXpGFpVv9DdFoCV1h8TY3DhhOX\nMz8dl6XhHkNU9hV6ZoYd9rUaqe7Ko5+FzsTJ431DJAUW73dRUy6SV0gdvC7S\nyTMQjS+pSxZzp2k//KIy28BKwyjHfcGe4nDzhpT2jCQsnRAQ1qXfM/if5nkC\npIf9acX9vH+dLpdKIw/sLLm/Vs89gU4oEXCpOL7BGO0iZQnD8Y/g5XMWNoAy\nSRycldRdE5io2BGXVpWcT4AjElodzH+pwAu4Fy2I4EX3ThMB2/aCsRmfEs9+\nky7aaTkX1tqAI9GSmfLFS5PJ1ge+uADvDZWY0qawpitHiRjwQ/jndW9V4ufu\nEKt197Y5qAl7bycdAEAGfg4ahKWkUbG2dHRBPx6IPaZUiaEdDojPJTFctVw1\nixJOgNHak2qXobEnc24DDp/r+2gooYZRn9K/R95TbBt9RcK5alXWlT/xipiC\nEmBN\r\n=99hg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"9915c413ced383747e1ca7f2069e170e38517b46","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.b240bcc1b.0","@material/base":"5.0.0-canary.b240bcc1b.0","@material/theme":"5.0.0-canary.b240bcc1b.0","@material/animation":"5.0.0-canary.b240bcc1b.0","@material/typography":"5.0.0-canary.b240bcc1b.0","@material/feature-targeting":"5.0.0-canary.b240bcc1b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.b240bcc1b.0_1576696610711_0.6519650137883175","host":"s3://npm-registry-packages"}},"5.0.0-canary.391674a26.0":{"name":"@material/floating-label","version":"5.0.0-canary.391674a26.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.391674a26.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"23f060bb226f732cf13de76651c8568255f1df47","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.391674a26.0.tgz","fileCount":30,"integrity":"sha512-e8tYwrQP25BvOB1a0rmb5FhGWqahSNZqHyFWb8zb9304Fm/EUJf4V/nt3ubqMwK0+y3I/GnMALA0/ZWVbQVq0Q==","signatures":[{"sig":"MEUCIQCA1ptEJPYGUCWS68iKMll8fNVjxbHKDvM76rV/MbP1sQIgXczYNgYXMZ6To/Oxf5f0pLIEH8IiuG2MbxyLY93WEaY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157283,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd+nsuCRA9TVsSAnZWagAAshQP/1KVKQlhWKyTxR1YTceA\naUFjlf8zwYDcBNv/H4AKzeU0KkSc/baw9pcrQUmSqW3VoAGM1XgfYimIwIc7\nLr3GaQH9TQV2c0CJpm/DvX36oC5AlYS5qiZCUYwswONC1VMmf9arlG4b95rp\n9gR1BR28+7JQcZYYZZznW8QqwPywgEK4JE9M4QNOUzLhdkC6lU8OWgI0l9ue\nyAqoC4F3AhmVf8S1+M5f/NGx/nEJ7MRjtgxd99HNtc0xnaVAnPXVRtPA8Gtg\nImFE/Dsi2gwaiClOJlHDCgjJZ8k8w0PO5icrY9G2vPJKTEQm5h+vr9lWwJiu\niUtsQRMsBK7jFNUxdcUCY7RvI4AGbiGX2oJbMNIL0PQGbApTzRmkYka7C0RO\nKHsP2sBKsg/Savrh69hEgBH3F0a+KNEzq+tMTOwFmdE/YwFggV3oEeDaKzCP\niQBfnQ1KtoJU+CBBuzgYWS2n1jlKpCZwNBkmpTuk7OackME89AYupOh0MtUW\nwsVa34kcd6Jk/bSrWpZMc5HUsvy4PF5xMu5+NAvdzUu4vI+Lzd7G6JIuW4u9\n0QWg32K9IymcnDOgAOP8aCelmE5xXCQWh615a9lRQDfipyXO93rW5rfDplff\n79uitLlYItL7WdjLxcLIVSjPucA/n/TfXFCNVEBCzn+lJ8evcWmW1o6VKVVj\nZQ8Y\r\n=wYUu\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"aa67ddaa5956be1096b1d442788cd4a5565d7598","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.391674a26.0","@material/base":"5.0.0-canary.391674a26.0","@material/theme":"5.0.0-canary.391674a26.0","@material/animation":"5.0.0-canary.391674a26.0","@material/typography":"5.0.0-canary.391674a26.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.391674a26.0_1576696621567_0.26636844240524504","host":"s3://npm-registry-packages"}},"5.0.0-canary.c4837746c.0":{"name":"@material/floating-label","version":"5.0.0-canary.c4837746c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.c4837746c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d4a70a08b0d05c32b3ee4f0bea783ca6dee7ff70","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.c4837746c.0.tgz","fileCount":30,"integrity":"sha512-qqXAbaw2RGmc1lfXDVC7/9mcBALaFcFJLmn4zgZN6aQ84waMJz62/P6HxFY8xztxIeFR1ZlFtMMLCz680xYSMw==","signatures":[{"sig":"MEQCIFeiYOOyCCQfeOARisR9VbDauNjPLqwTU7wGLp4yClT2AiAnSfE+ldQBxc7xxroiQCGL3Eh3mpyT1U3lHFr3FDsKRQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd+n9hCRA9TVsSAnZWagAAn6YP/3YQacE7hxKkFZrandLR\n1eNq9fixoe+ypG1tyu4q1jWH4i2OiZLbgOhwbrP26UIyzHxCY4p8yD9yKOhi\n25SrkQK95MvRYkzg+h8/7vGEVp62L0B0QmTVL2XY2ZZEPj98S+HZEKEEa3Jh\nPYLJgdk66zmr6GFrQ1IXoSNnC2GaBN15YXVSpyAGMPNxMp4oLcGVOVY3vbgL\nuBChevfE29d/C4JcNGaNCuUv3zP6qh11e1g70dpbTt92AXH3sp0moALadav7\nCStR0d/LHLzXNeOnTU+RVNAwmx6+4Yo/Bpnf3epVeqoQje/Vt5zwbqkJsYpH\nZQXXPUEQto/VSmxG6GrD0ZrVpe4L9wnN0RyRAPTtqeoWSLegA7gO2DnNHdwS\nb0ejX6ZkixprXTj0jB6jtIItEmLXUThXj+63CS+Y1TUvG0u4SQ/OxZP5+Z71\nOE9jRPNcYQyoEtnxM7bgclw4eUrZJAiROc/rggh6ki0qW5aLvEgc+0MceZ61\n6WpSjKjnHMqr2lV98tvzaUWe8qVs0O5NrtmFJMKXCBukLksg+Z/hZYhK1udY\nX4PuaiIw/esEHXiCop/7/7eTloYhqhVQmR0sGnKF/94tzr581RdwwW4T7yvC\nd8Uc1CV9AsyMqICQbkit/dSdf14j5akoIiEycy+Df4anRjY5I7llr2/wiLHX\nN2aP\r\n=xyAd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"44ccab29aa0b806ec249d5f5117ac9f5d82fc7ba","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.c4837746c.0","@material/base":"5.0.0-canary.c4837746c.0","@material/theme":"5.0.0-canary.c4837746c.0","@material/animation":"5.0.0-canary.c4837746c.0","@material/typography":"5.0.0-canary.c4837746c.0","@material/feature-targeting":"5.0.0-canary.c4837746c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.c4837746c.0_1576697697037_0.5833149409841323","host":"s3://npm-registry-packages"}},"5.0.0-canary.e41a70425.0":{"name":"@material/floating-label","version":"5.0.0-canary.e41a70425.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.e41a70425.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"02deaaec7a3e7f607ff84b110b052a5472dd9f67","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.e41a70425.0.tgz","fileCount":30,"integrity":"sha512-HwJbQnDN/ra7fWBAu4Gwp86ku7DeSnDzJooP44Qh5PxMWo5rl5Zl9/hay4hXGaOTwfIxF/C4QiSUdE1zKcDldA==","signatures":[{"sig":"MEYCIQCk2gYI24v/y+5uk5orTa8F/gJNbI/SGaEu1xbA3TOmpQIhAKwrBao2ZMTgQsYzTP9kUUXaOGS2eRotamCZV7PkgejQ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd+rQtCRA9TVsSAnZWagAA/jEQAKDb9qhagW45BMkBwrBG\nfQn7nQaS9Jk8x3uff/G96Lvwe2sYAhwLs0OigeIqiG7LaMLC7NGiweKsi8LX\ng/h4un+8p03IxT9e7YLDfqXrkDTDtb3EOQbx74wYJ7n5CAN6kHfckYNkqXW5\nEUfmChleVgAvlcADb8prsPuR563yPBfFDSVJ9ZM8YZiApemlXoq2IPE0U0bK\nBSSsB0pAohIwEe2hqJ5kerUXR9NTN7Qb3mI32ZsbqRIuBVWRbfBU55OXQO13\np/Am+rcuZvjXKr6yFMmu4hUqI2BliIVzd/6qIkY0Ehd5QhWpb8TJvo9yxA2x\nE75USaTNT8SWUYuXGKudSZITYPPGJk7rgxPctiuF0jaSwvh5ipZO2jpzrWyS\nBqbUm6IE5xVBCGg9nx+3IRH/v1rg5AUebyn/3G5pnYjm7VWMTMfiGYk+cyH/\nP/ityCXgGuf1DrdqYhh2iW8nAxeecEBeRD9aZt0VszttEFFq7w1W2SS5CkAw\nUPVraEocL9DmVCN4QbzNrKmzmW/5UxV02C/HqusVRI/GTNj+8gUEQky9JrUX\neo/tEC1VewABU60/2Ck3WCGDiF/PCj0Ks8Rhnn5DJrDkuUM/PoUlhHJ3EFAT\n0phEHBVRVDHmfqUO9NPMkXQpWAXENq9Uj/OLaE49H33VQtbR4BpaILYSE5MR\nFKn+\r\n=guNM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2e938a63bb3297bc73cdf8f1f206885e2ec84a6c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.e41a70425.0","@material/base":"5.0.0-canary.e41a70425.0","@material/theme":"5.0.0-canary.e41a70425.0","@material/animation":"5.0.0-canary.e41a70425.0","@material/typography":"5.0.0-canary.e41a70425.0","@material/feature-targeting":"5.0.0-canary.e41a70425.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.e41a70425.0_1576711212765_0.8073634224250781","host":"s3://npm-registry-packages"}},"5.0.0-canary.bac43eb43.0":{"name":"@material/floating-label","version":"5.0.0-canary.bac43eb43.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.bac43eb43.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"829e804519a0e64687f4930c34c77ec4a938f866","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.bac43eb43.0.tgz","fileCount":30,"integrity":"sha512-KqMNnM6IssMHpTpMuxDFSJMhvKJC9+C+xrawOLD2r7JKUzQxN1dnuW2HTByzyB1ijEBHh/8hvGZH/bQAZL4sdA==","signatures":[{"sig":"MEYCIQCdGlSDp1i8SuEDNKnZ5XG98ggqNBv0R7yWIE9mbpBCWAIhALFOCC/C9JM7Kj8S3P5HunVXEqdzLUYJsI767NYHWNF6","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd+rUVCRA9TVsSAnZWagAAxKcP/1P3q3aWn1kzUFwoH7cM\nCIa6m1UjkCi6L0+q9ptIpZvZxf+19Ym6DhoZfrRcJIKM0gC/AL5olWvuoA+I\nIWJtrxWMXWkRQkxC8mYl6Y8rx4738r3b0nkeHsVbVVoHEAqDnJnKOM7r+eHx\nNTcn+lVwikZyn6FFdVQ2ZNdo6L0chNkZAgruzXt/q+FnlSdDiX0oxUxor7I/\ndz44wrHTN3wpxL/YXKMAGFWpMngqTk5Y2EgUKlhtKxQxtVjUBoTYAZ7y29BE\n2OmHgFpL3gMbhegb5SOk5kpwu7eoqWC71Ad9SNlSDyz65qiqLc6r/OjbN/It\n7vUi/STGUazjE3bgGe1Cxrl/XLqA5RyQgM9cB3WGqnDE/6TAM0+Lyfj3pbbT\nn9MKEwM4gZcFRvTfWh9/k59uMevHf9KrE/Qeqh43mHrWMmJMXDbhOxZIQCtH\nJEbf5Pjeruy+ztVk1i8IBiOFx+cytcXn8YHZnzHhD3vMr7mjS+2CMtQrkLBV\n1O8rmjDopdvUsQF4cOkDPtt9LCmaOYLrK2/vsnaMqVerSdnA7GPYGYgOriHp\nloronADy3ZZg00aJVrvxWni0lsiiijFZsAB6qMb1YWUMRcp9B9VVd5AaRWgZ\nvtVQ0Z5EYRJzN4Q2g0oRJ8ASnFxmmAiY9QYlU6NfftCLyfG3G/Wu1tLd/v0Q\nrXp1\r\n=3n67\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7035dfa39edc06f1b58f72c5e285bd2998747232","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.bac43eb43.0","@material/base":"5.0.0-canary.bac43eb43.0","@material/theme":"5.0.0-canary.bac43eb43.0","@material/animation":"5.0.0-canary.bac43eb43.0","@material/typography":"5.0.0-canary.bac43eb43.0","@material/feature-targeting":"5.0.0-canary.bac43eb43.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.bac43eb43.0_1576711444741_0.7736026064650043","host":"s3://npm-registry-packages"}},"5.0.0-canary.2e491de55.0":{"name":"@material/floating-label","version":"5.0.0-canary.2e491de55.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.2e491de55.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f4a6204a66e1455553ec491b5a7d5da1476cb2dd","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.2e491de55.0.tgz","fileCount":30,"integrity":"sha512-fg/nDMCHqcPh5fZzKjq+muDB1P3iB57j3wSU0ThDqLJB4thDj84YGM2A0UzggFllb8bjDjzdSSGY7QeVkynNOQ==","signatures":[{"sig":"MEUCIBcdpdyUxmiCAuJ0iWWAdUXQ4HPW30gA0rkvDzlF+kMuAiEA8GA1XYpISO6113Vpi1M/moB7GtMsR6fci0VlROXtib8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd+1XMCRA9TVsSAnZWagAAixcP/189p7P4p5M7zgVzSNlU\nBXVYNXgkvOzdydHeLKtcnaA0KwCKGdfO1rIOo6tkX1o+KFEaQjxR3W7C8sv2\nCC4WaxdWll7Gy4ajS4X8rTOiwDPJPNQTklVgLB/59pajHVRNQGi2arwfEX3S\nvUUN3n8yJlgbv7L7OIFUu/rjTnAbjwEHy0eQcLxE6sCd2KdW5wV5y4Q30R0U\nvSbdMR1AknWrtCQ6BC2CFAtbOKAaA+vCg3EIJn6Dcr7sGY023CUrrEcGNuhm\n16I+/6jX6qk+qoedrR/lgdJJJAdeQUw+Jph7oAmLrDtF0iICg13/IBmWrkpx\nOCQZ7LS2bch5+98lIrb8YnDO7SE5RB/Co/TAbT3J7g7ay4EYBsDI9A6/l9K6\nNtFRQFU07vcAYjVc7NA0hTDohEmGL7XsePJ3Gr2/fvwdNSaDdqCI1D/kuN2r\nRLMZBKOTBLWSMRoBQaJXeQYzFkWT/AeAvktAwg0Yua5V5VDzT3UBJDCLoKgh\nuxrDi16hnLlFuPi4e6DQfkGMp+UQQ+BWluHpe+RktLKK1BiJqNTChBxulZxe\nx6PCiu5zgtOmMRqbUhjGcGBUWMAhnR3sf46G9hgqkfCDAq8YD37TjISWN8dH\n29dNv46ofkSPY1AKIwb1+9VLhzJB6FLGRak8UxUFYZqVtcmxLvMljLZmems8\nfuFz\r\n=EZ57\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"731b98f2f9caf1251d3a82a3abe09828a92eb434","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.2e491de55.0","@material/base":"5.0.0-canary.2e491de55.0","@material/theme":"5.0.0-canary.2e491de55.0","@material/animation":"5.0.0-canary.2e491de55.0","@material/typography":"5.0.0-canary.2e491de55.0","@material/feature-targeting":"5.0.0-canary.2e491de55.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.2e491de55.0_1576752587633_0.5394121215623615","host":"s3://npm-registry-packages"}},"5.0.0-canary.ae101c144.0":{"name":"@material/floating-label","version":"5.0.0-canary.ae101c144.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.ae101c144.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ad2821e5de18560428aa003954eac71657df0756","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.ae101c144.0.tgz","fileCount":30,"integrity":"sha512-XOMvuxq4HYsVeFIaCAL+cWW9Ld16bgjwySLbmYbFtpz4V47F1wPHKuDUDX9duTgSdcErugRJwci5KGU88tiZpA==","signatures":[{"sig":"MEUCIFFOPBe5VMLOmv0ILRyfc2UxUG7VtpkL6R4mTgh2qccpAiEA6prHj9A+F/HjKiZSpm81qPlfZdkpvB2H9UcxYGGAPaE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd+6RUCRA9TVsSAnZWagAAN3YP/R8Ttvb8/thcFdd9z/GM\nePY6UlyLX5nanLvUe4jnYuWZrwnYV/y+99eAB7HDUkHX58ABIbqcvI6xoTte\nMJklaJA2C+xkrvFsSRuPRFsNYPAHE9IxSrYMQWKXZVbJDR+E0hLF2YuLgmho\nXk38zVSQfdaAhE2RPxszh2iKpJ7QBnnTTnIzxM0BNs5Qw185uEEt0tZ4H+Xt\nb4CSx4MWGV4Ka4p6QCaRc+DwDo5oNksvyzGCTwIEYO6UdhbwNBpBVDwALm6b\nyzxteoIZ6t006jubpxllH2H5h4LywijKfhG6GSh1gv/gdstLSdIvlzLLATvN\nqVGqf+8/5gT2Ai95TpmbQ/fVkGcYzeQmnWk1WjN2w0VBbpQ/45jpItz2G9pV\n4pUkGdU9jvnHU+qZLP9j0VNjrchZllSTu16tMGVGQBWI0dTFBwzuYCC3fr/b\n9ELyhc0mab1Uag7eRPiYjZDuUPxVs1LKTsnnnsdHAeQ1MuwZhTzyqxt0n2lU\nPQklp3qXg38chA9Z8+Oc8jsxBLjc3pHQ4gJ2YTyMhNHif8hVEHnpu6hsg5eE\n9Y/s+LPMMlx+2J9WwYIr1zRbId4msLCc+zs/4IPHBu6Hk+MZaE2zrsznMZUv\nnAP1LqmNbdKlSspnVNtCk8mOv4v+bm+VVRoRo1Gx3FU4FT4OIVm5urmdozfp\no2Tm\r\n=cNYj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d11f348d85fc15df510c3e33822ce23f44ee661c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.ae101c144.0","@material/base":"5.0.0-canary.ae101c144.0","@material/theme":"5.0.0-canary.ae101c144.0","@material/animation":"5.0.0-canary.ae101c144.0","@material/typography":"5.0.0-canary.ae101c144.0","@material/feature-targeting":"5.0.0-canary.ae101c144.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.ae101c144.0_1576772691384_0.2707311281830518","host":"s3://npm-registry-packages"}},"5.0.0-canary.a51c31f26.0":{"name":"@material/floating-label","version":"5.0.0-canary.a51c31f26.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.a51c31f26.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"8a5bcc9af2b4458a897ff58b19ffb9a70b6eaff9","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.a51c31f26.0.tgz","fileCount":30,"integrity":"sha512-4W4fSx6kvNkRmylUUJMKFUkqfE2+B6GnkcWtTB6bRGuYsizKvRlMpsMkUVgpuWhKSEKO81QTpMN1kWptdP6AMA==","signatures":[{"sig":"MEUCIQCmHn3al0oaa9FYTkDDM5QNNw1UOkiGferJDxgUMpBaygIgJf8q2k7dTRZlMlbZchRfZkCtQQY6EOHtvmTHDz7V8/E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd+6/oCRA9TVsSAnZWagAAh/MP/1se6boMASQsQxMT9znX\nAOcENkvWanMtEX7szsSlcDBTHAcpt/IzCmX3gAksBVMBy27pHlykhd7/oXwc\ncy1AkgRQh19A2fujfJ2NvF08bRRP378p11YDo9pOAM2mT/MStUQYAqvZzqqJ\nuVi+IkZmpAaApcJRrqQJCxCswfok3ah4DHZrdWu7KgOclROcsqtEPmuRl5dO\nzN6Qm4kjVSeoOKWEhOWsAU9OgFBFvusThDfRL5SB22JkCnrz50Up+sFhdAEN\nsa+h2jj7tWhNsEcFzlYLeUfc8X4XgmhDYCmzEC7ixRcgacqnd8W1Q4saU8CU\ndJoYatsAI7IG1xRkkTfadX95klfjhezZDzWVwbMew2jS55pN7zPKKIYIOH4Q\nreB2BSeGq77RJaW/yq40oP/Bmis2Vk49gqw82uTuVvCmUpZ6UDeXaz0fag1m\nBuWtsxN302vMAW2Anflriw6mgHwo/fgzwV97ftFuRAJ/upqc0cn2Yp87Ta5C\nnDkMhBX5mpnpFXZk78CeKK07KKz/IrBADri06jHxrAXIcjnxTFB/Na92P+33\n8Vo+/DDxq7FKoPnpFVyDCxbFgU14K0V1v4Plht6yCGIS9TK8xCYMAiZKGLZj\nXO0nXZMtKdcFdmWwcEzaMQTvQUImIa+8wJN/U2Lk+DZErujvSVeKMojhL7Tx\nmXgX\r\n=8u1O\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e2dd52b70a7e3cd011647222c15955dd4535cd6d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.a51c31f26.0","@material/base":"5.0.0-canary.a51c31f26.0","@material/theme":"5.0.0-canary.a51c31f26.0","@material/animation":"5.0.0-canary.a51c31f26.0","@material/typography":"5.0.0-canary.a51c31f26.0","@material/feature-targeting":"5.0.0-canary.a51c31f26.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.a51c31f26.0_1576775655665_0.180769768706317","host":"s3://npm-registry-packages"}},"5.0.0-canary.21fc4e13b.0":{"name":"@material/floating-label","version":"5.0.0-canary.21fc4e13b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.21fc4e13b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"414943c8b9d9bc9cc545f034defcf38d8071d0a6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.21fc4e13b.0.tgz","fileCount":30,"integrity":"sha512-iImZmBxhXe3WvzE1uE16T0dkgwhzCd4lCNUBJVoYz6LZjMTmWgo7U+IFv0b3qgWJw2ngbS8faLX+tMw+jfX+gg==","signatures":[{"sig":"MEYCIQDtwZYqrQqSohukkq8+ttnPT/5gdeg3VqmV+XhstnPeIwIhANodZ4mtkBdnSsxbq8539o0GukbE+QeDbvgPgd+vF31g","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd++ssCRA9TVsSAnZWagAAELcP/iHSRWvyrdG1h7dKcebE\nvrYTwzsV4CXUhVOOi9zoPE5BMMWObLyGGmpiLjGV6QOXbvonBdHVSeZUkhek\nRM6FLzwSPJa4E7CUcAkPZckf8cSgj0p+BVRl4ClhHmlaaAZREwJyYyIEDj1Z\noWVk/6h9YSMy+9tN7uB3aHBWarC798HDh9i1TH5qeQuVSm/LkWxPFQrtguGn\nYI/Uz93Q6B2laIa5vHl4M+WA40EmyjlQDTMO/k7jQCWAXWY+suP/B6IUF8ps\nfHb1ToGniuy1GgWDBkcFgWl4j2zwA9UdcHSbr92anl4VgpUOZozrdSrjX6lx\ntgHbshm2HT9tWGmjS565Z2vXuWTPPAdRC0cM2m+aUbjGwwjRA89mc3EEJ7tn\n1M5xnora1q1axkiaLfnsTI+5/O96S46svgdaLf7wZ+2EaUnDp5zmR5cUjA3h\nD2SCiwq5TxKVvxkbIpDnBHYB+FuPbnIvQd6n2EIw50x+K6cZgrFqt1ZqGzZq\n/WAUDwxo4K40oq3p2Avd4rZBGnCmvjsGddjGJQaB5+H3YVcdO9/GD0Qsq+nk\nZHTALV7tVtJjcYTPPhya2lj0zy0m+I2MPXdiFiO/M6Y0PXSwciuY+l1xR/2Z\nDjApwNMB2ME8je1C7CTfDlZr3nSHYCureWXNBe8vuvm7dXtS9fh1MF2aD1Bi\naQ92\r\n=ygj+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ca71d599c2aed234cb9376ced1aadb512b071fb8","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.21fc4e13b.0","@material/base":"5.0.0-canary.21fc4e13b.0","@material/theme":"5.0.0-canary.21fc4e13b.0","@material/animation":"5.0.0-canary.21fc4e13b.0","@material/typography":"5.0.0-canary.21fc4e13b.0","@material/feature-targeting":"5.0.0-canary.21fc4e13b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.21fc4e13b.0_1576790828011_0.26092350755729177","host":"s3://npm-registry-packages"}},"5.0.0-canary.d2ae6e17d.0":{"name":"@material/floating-label","version":"5.0.0-canary.d2ae6e17d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.d2ae6e17d.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"dfac89470af0a2edfe90e85bea577fbe81a7b538","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.d2ae6e17d.0.tgz","fileCount":30,"integrity":"sha512-6YVMk52YyktzyT6X4+MWlE3pXd49xa5unYTONBqHCJBJY9tx8xrO1qrK4yUdNvske/FygoDHW1qJrux822Dl2Q==","signatures":[{"sig":"MEQCIBw4N16shySKqd2H18PZnYiQFwEfLtCX0nuJw7S1nTu1AiBQD8uboKRM60XU6AUemhmJWDTJf8E420hkuv0wlPC+ug==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd+/iJCRA9TVsSAnZWagAAtiwP/jqqEBT4LLCzDaQJN1tU\n9a69HZg6TthfC9ABgPvLSaMHqiVMPudmCUIoCmF+sK9HijlIuWVvQsuhgKfH\nv0IiJ7GnFIddHtloSoaSSeUqWE60npQN5mkEh/atjf5JC4nNiYt3bWnXWLTx\nUWUagaAYRJDChKR39YIgfCU3W7h5NaK5ATCBNuVN/70oDfCY+eUn6rjL4dHZ\nHpVx81bIpPbfTKXVR8uMlLDqRtOzrsXNBv3d4ZBii2oYhGXD4eBBrFCtORCj\nXpGu6uxreyTwCMDJkRai0MNbOG5P09+6OonbAFp22VtDIDYvn9FiDtGDC4du\nOsATBpjfFeZ6jYcgPH2qepHNl3DdIJ+tzOCxcoRlA8RiMhjGEAjREb/KjuRF\nXJljxrk+UwutfsBtyIC9g4prDM4twQddKYAcyNuCDm4Qeqq56k8XDz6dsUsp\n6X1BIg+IQhADuLbelQjkJs5Gkz1+m6FDZ9lZkMTjgyGltV7FyPDTjLUQkmwd\n8vd+pJ4YK2zq2rcHnTrSZMIiHqOKOSHh6ssKRY0ed0VOOkGUF1/UpWRE7rO0\nG/buOqlpj6g2bnteQvv5EK1SpolFmS3FWFyPKbj7OgwRt/2nDJiXrIH/6yX2\nMMGGY+PanZb+S7uLPUouVARj9q65n742ExWtJQylYGCEA+B6niHJeenCkONO\n3Qxr\r\n=pP+R\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"aeb622d14d533f70c26396fb7db6c8bc48eaf8e5","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.d2ae6e17d.0","@material/base":"5.0.0-canary.d2ae6e17d.0","@material/theme":"5.0.0-canary.d2ae6e17d.0","@material/animation":"5.0.0-canary.d2ae6e17d.0","@material/typography":"5.0.0-canary.d2ae6e17d.0","@material/feature-targeting":"5.0.0-canary.d2ae6e17d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.d2ae6e17d.0_1576794249349_0.4975051005527109","host":"s3://npm-registry-packages"}},"5.0.0-canary.ba30399ad.0":{"name":"@material/floating-label","version":"5.0.0-canary.ba30399ad.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.ba30399ad.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5a773098bb2b9e4e87d688a1628f83f5078ee9b5","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.ba30399ad.0.tgz","fileCount":30,"integrity":"sha512-K/Jyi0JkZ3KodCYj6ASxWyuScVDrCT6l78NqgDS6vsMYbUZj+IwQviajpWVOYipLUl5oCaqClVfOsha4cJXNsw==","signatures":[{"sig":"MEUCIQD1zIIrVJ26jCMe5LxlgDB0vWRyYTm5sPKDqSvJ5+DlyAIgIqHPxOQtRUw4c/VKuRJm8dYjTVxs1qY/AwAkRKud2RQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd/B9VCRA9TVsSAnZWagAA6ZMP/0Z56H6iGSLn5M1o1OLs\ngDoMjftxMuQn24TuEaDOzI5PvxuxTylFsp7zk3gCPr8u00fsA7CGm/dQ/Ys0\n3Ud8lqBHPs8ZjgTWu7RuHz17K/oTS2pMnuZ+ZkJY4xc25+4AROKjFCAOTNxA\n/nm2i+XT8fw5bUo5KX65l3vjTTH1iqYi1hYHhW4a6csdD/uJqgKPV/+/Zu8Z\nk7HkQCOjFLRmIVUiksL3ZLozIzKnhToiUjv6/L721oKWPeupfS9wJ+Vn/5UX\n5yWeyjI4HsDxltOGRybfRDsvhl/WVp+Vp1T7PyBlpo10SPEJHC/iwrhJt9EQ\nUAUP5uNQsNeslWaQ28LOuI7NZ6rzW7F36wPIcXUkjNXuHZ1t3dBc0VAJcXOG\n9wJ45qQFnvuqRi7KX73tsR4pdt456Ai21ntycuclj3SDfLQDFrK1uI0Mbl1s\ndJyfRGZOK+9axH2awBCimJZdWUyy+xnuaHbhLioiOHMAE2n8NrZD2yPaKrcS\nvcPMcSpuMdu713V7osIQ5prAeTpIN5RwiZoxO4dpQOdyIdQTbHJyH63ThD+n\nG9ZM31tnkRj4wTsj35zi9n3KSzyHiH1lVlGSK//TbhgJri0bj20nrVjOA64I\nNWD1666V+5f3tabjeMyZBEI1cq5I9AlmNmxIUSKr0SggdehWO/gctyi/1VjM\nxLaF\r\n=MBNo\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"75ab7f122d8d469963211d9f9591a84602711f72","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.ba30399ad.0","@material/base":"5.0.0-canary.ba30399ad.0","@material/theme":"5.0.0-canary.ba30399ad.0","@material/animation":"5.0.0-canary.ba30399ad.0","@material/typography":"5.0.0-canary.ba30399ad.0","@material/feature-targeting":"5.0.0-canary.ba30399ad.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.ba30399ad.0_1576804181399_0.021208667589843744","host":"s3://npm-registry-packages"}},"5.0.0-canary.a08ccec35.0":{"name":"@material/floating-label","version":"5.0.0-canary.a08ccec35.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.a08ccec35.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"31941a4047cce16b04bca00d548e9a8ed41f06b4","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.a08ccec35.0.tgz","fileCount":30,"integrity":"sha512-HneikGXYw7neN3aJR5ZiepCq12CVz7+seeXQEe3tfbjMN7GoU9gihWbDJQT2NvmJNWFGGK4nnaZpbfoCmO5jwg==","signatures":[{"sig":"MEYCIQCLbraU37nmJH30Wakp6eU8VIyTFmTq7gfn/JqGw5EmtwIhAN1VOP5Argl/89Kebb0Oa6BWfRGDgOaK+VSI+nZI9LaH","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd/Vi3CRA9TVsSAnZWagAAzCoP/0epYVXrUdvaoLN6h8U2\nDs8eypqvZa/jJIdfpYPx4QtT+TMQAm/IlbNN/ZrthoGdk0W8pVBPkUqlj5X2\nSRP77AS2d73jpAypmNNuXIgOckR6pkscIfnqrWiJWqyNtr5Msbb0M2t+Rbu2\nlYfkx6h0MYOHKUT2o9I5LZNRKweQuI91OgJjXYCvIhAONEy1tlSobzKoCE9h\n7K+SCI0yF2YDx5tJrGSyN+BT46exJv44sqcirkSJdFOHyRYMfGsdk99lM082\n8E77XWuRWbavKmi2e5jBkpl0YYsXk7cJaJgBn/oOYaWYscKAnervHVThdMWN\naasKGxvK4fe2UzhVD1oIGOH0DZRu0NczS3NtHMKZs/wB298tecs9dMJ+WfY5\nS92bCdmn3LkLCMc3319K4UBDok3U1nb2Pavi67efC6HGGjFm4TYrYOdWMmo7\nHwz2YslMYDoXcYAKR5xeKX232SzpY2PSFdOF9V67yxS0UwIcQAsTuawpZ22u\nv/5f0i7w9/1Ah1WUPT4kKqqdZ0cvrWk2tjpB7eczdLMMM9aYF6P6S/EFlPUP\n7Y9BGQSzgiwvH3jQgnQ3kiwkinjUiYf1PETUfL6buy0javgweWGFlG9ZSZ09\nzmJLyh2kOC+0ylqYJlUbNs8p6RrC37KP8By6a3DBKfvlLMu2cBGjL2ObAKCK\nK1pR\r\n=psGe\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"121f2cfbbcf425b2c92760a0fcf0301dafb14636","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.a08ccec35.0","@material/base":"5.0.0-canary.a08ccec35.0","@material/theme":"5.0.0-canary.a08ccec35.0","@material/animation":"5.0.0-canary.a08ccec35.0","@material/typography":"5.0.0-canary.a08ccec35.0","@material/feature-targeting":"5.0.0-canary.a08ccec35.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.a08ccec35.0_1576884407161_0.5544051629569582","host":"s3://npm-registry-packages"}},"5.0.0-canary.a2f75105e.0":{"name":"@material/floating-label","version":"5.0.0-canary.a2f75105e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.a2f75105e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"052da35715d62254474284695afb5ea1e27a64ad","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.a2f75105e.0.tgz","fileCount":30,"integrity":"sha512-wjyjHA5WGX8xvMrd2z7cXDONugOE0vAio9EHqCN0wpEYWL+VQCQ/FxyY72xGOsKjoIiGPGX1wccEJg5v1EtM8g==","signatures":[{"sig":"MEUCIQCzV/do9xiC1OfKb0aLD8+TpScbdCXtsPCGutBSNFhoPwIgDrBDt2D/74fKlM62ie7bsIAJlQBLxBE5XToRgB1tAxY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeARnaCRA9TVsSAnZWagAA/9wP/1Qr+zO+C5pj8oq5qgXa\nOjaRtQUVOGanFNdDHTq7iscnLrxfJOBaUiUBmIrYXN9knQfT/9f8+Lma0V0/\nTKzyyVpIhKdUr9DAa2RnJ+PMe75H4R8uVpKJ5+vtuHCyaczFxaOzqzBiRuEi\n7RlwMLjXpXGwSjs4Dx+yj/+MpUg1LxX6dT8t2jPlJKMEQ+NWph5busIHDSES\nrQqcg+WeUmYYbQcs/pcyLvN5NJh1Gxy2VOhTzDXMH/nx4daO04dNRZYP74WK\noYQJZeU7a+Yi2Itu91ZgD5aPbW3qceZ065H6v+I65tV0y9Ax4i58SXnTMv+D\nPS2+IJsWTA8n6VarhwXFqU3vSX406OVJWYy6pG/G1OrA0LwaVxp7VVSmBqCq\nJwmloy+tVzEbt7TGrrZgwPnH33wVAlcGoy/k/CQmC2M2rs6jQTMm3O0Pn5cY\nXRVopwIlQV+31raSDv5Frbf6Om5fXoZeJ8Hj/6icHcobWTLYT17DnHjXPckU\n8fn5cZ9oJJ1do+/RUe2cEdaCFr5NEEzQPF3gjBrWCeSLizDN+RRd+TFdiGVC\nPWLdE7I3FMB3IfGKlSKBePXA3vIWPG7s0Bmo4l3Y6st8tODgsGZMxYhAQCOs\n+Z0Fuc2i0lLKlczW6IDqxyU6VnqqoPNQloWlv9QaQw+Op6LuJI8qC2PYpMHY\nU2y/\r\n=/sJe\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7b2f4b595ae59e3e680ef1151ab400a3855144d5","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.a2f75105e.0","@material/base":"5.0.0-canary.a2f75105e.0","@material/theme":"5.0.0-canary.a2f75105e.0","@material/animation":"5.0.0-canary.a2f75105e.0","@material/typography":"5.0.0-canary.a2f75105e.0","@material/feature-targeting":"5.0.0-canary.a2f75105e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.a2f75105e.0_1577130458133_0.6502373053402033","host":"s3://npm-registry-packages"}},"5.0.0-canary.c054a24c7.0":{"name":"@material/floating-label","version":"5.0.0-canary.c054a24c7.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.c054a24c7.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f81b6484e5de706002d083d2b6e4541e5d2ae6af","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.c054a24c7.0.tgz","fileCount":30,"integrity":"sha512-QdQfLHmN1GJfqCLXO84GVBismiVJkeHm6EKn5/meE5Ub5L6zmBJDI63zg8WwVGbPrpH5281dJaplOVfFnQ2UJA==","signatures":[{"sig":"MEYCIQC+lb5iRxohWHU/CHMpl5Um1Ly9F99KPhl89aP+fdJgVAIhALtNe5pn3mt/qs3CGE2TUTsAtDVIAfQMuLybArb5jH6L","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeATaKCRA9TVsSAnZWagAAnBYP/32gW8FDM+52QRrFRSrW\nGdibNF6ataj4JCOigzT93uszWa1XHhitg1vOZS2lMGTfFFq4lP7N5ki+Mb+b\nDvfGfsD7rSXDi/pSddPyI2ucSCKk0FpAJVhfk7/dqwwXcEDIXyiZIMOf6d2w\n+/Z/MUszekDKxEz55kDTSEL9LH5C78GlUw2h67jaW8nr0AQ+8lRntRPp1TFg\ntfwcrvJxDrO3vNzI+JrOImELv+M3/Py/YpFU2SNQZ5i3OmJGVe81lz2PdMUC\nU1/bC2dvnSIouW6LgIFFTVMVqjHtsOXYaZviwYGcUB9KjqN41ZQEolaKFanG\nb+qBP+yQm6VlImTKPyRdimnqRy6YmPsN7vxVAcC8CBN06aMhzyI5UxhAXRzZ\n7tjmMtnsCL18FjSLY1Wgt1fNfuUmbr5+JX3r9WYB1XDXkWngIWfkL+wtoq+4\nOr6X5rVhg2mHZmdnIyj29quFcv1aZrJE0Bjxu6UoRWg50b3Hm1BSK2UAUcI8\nzdJ32/BaZF8UQBToC7I3zv/Zo4C/EwDJwLRHoA2OBZqMoIwc3DKaLilGpDHl\n2JZk13iJCU2kP8jadyARClGn9fHOu5ZKdUZ6AENyFO76rliAoNJ2sY/tRcyB\ni2xl6W3A0PJGIdtPHdUhf9+iLsvCvEWT/tT2QTJERlHHOjeK4Z9tzntKpKe/\nu02n\r\n=0dK4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"4e2a3c12859a131938df8918a9f43b9146056488","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.c054a24c7.0","@material/base":"5.0.0-canary.c054a24c7.0","@material/theme":"5.0.0-canary.c054a24c7.0","@material/animation":"5.0.0-canary.c054a24c7.0","@material/typography":"5.0.0-canary.c054a24c7.0","@material/feature-targeting":"5.0.0-canary.c054a24c7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.c054a24c7.0_1577137802111_0.9728177682772539","host":"s3://npm-registry-packages"}},"5.0.0-canary.c6808c51c.0":{"name":"@material/floating-label","version":"5.0.0-canary.c6808c51c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.c6808c51c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3467f9562c94ad1e54df382836d85613c6b52f98","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.c6808c51c.0.tgz","fileCount":30,"integrity":"sha512-Yz9rUvm2JDQfiLitEwBBkLu9/Xkt85v9fRzXDaCkGFFRkQbg2MPl7OmJvDzlwjEmij6Qqpw/VfblX8APTx/i/w==","signatures":[{"sig":"MEUCIGk0eBSqubzPDSjaCZAZ/kS9AD5dt3LqxZ+t4lub/E2JAiEApGaURFL9H00LITuB4xQ+81sls7wFk+aKXegs7lOohsM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeATefCRA9TVsSAnZWagAAlP8P/jl7toOBDtwY3OplgzQ3\nPRyxJkVUqU2htQDLRhXQNfcio+gMLvybLnGt7gTLZAfm7bDSChiatg+ZbJnQ\nEJfKAQOvt0q971BQ9FsArz1JRNmBq57jwJcglw2tICoEJ4aeJc9Ji7wwNN/v\nqGXo+v+HHbvbZzEt6E0c4aJPZ71oVLB0LIvRSYcR8kYsCFJDa93BQEJAtoOu\nbctaIg8TFxyY14pPewLv4mMLjQHjDdJHoZzQQjfkyCl5u1OdLuTArIEciXZT\n1PjQRzV30gpI4uFpjLes7VbfKNIEA3c1dFH25d0fk99s9AdY3OmHvqEyAa7C\n3VYteJYeFaXiyWkaO772sabvCgcZoYE3ycObsvZGq4BVa4ACag0F7H8nw7l1\n9gRFPohAQRK/6SvGr9exSM3whYhwYlhDe4P95Vw4XiHICn8jvggmPNHbzPH6\nv9YzwUk7cedvolbZznJ6PSgWaq+KFknlgvGUEql0xZrC10nJaUXQZyILtSss\n54z3khYouw8LVGhFDrsWyPhcekHd5r0a5yDJOUDxlMNiGKDJecbO1oCdI0pD\nu3bv4Voxi+QNb8+ZlqTsoB1QMDRIcOyj6Vie1+5i0K8Vj/xS79WEuGnZa17H\n3YBPC84IZeQ+plOpN2wYSodVoqza3LphbGYC4w1hxgFWBZ5o/xJSbgxm1Vcn\nSvoE\r\n=gr+U\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"02ee460be616b30da3c6d5daa7eddbc5f29d2500","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.c6808c51c.0","@material/base":"5.0.0-canary.c6808c51c.0","@material/theme":"5.0.0-canary.c6808c51c.0","@material/animation":"5.0.0-canary.c6808c51c.0","@material/typography":"5.0.0-canary.c6808c51c.0","@material/feature-targeting":"5.0.0-canary.c6808c51c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.c6808c51c.0_1577138078539_0.7640660131553352","host":"s3://npm-registry-packages"}},"5.0.0-canary.7bce9cf77.0":{"name":"@material/floating-label","version":"5.0.0-canary.7bce9cf77.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.7bce9cf77.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f220aa4ed692e35e6b7634b34de4776a46fb1ed4","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.7bce9cf77.0.tgz","fileCount":30,"integrity":"sha512-m/HjbeqaTuTmkNvl+gOxqvsSPfbjKhjcUqBNedYsVETosPMeQybCdbuzHglI73BNWgn7dfqZjRZnKdJqVFMZpQ==","signatures":[{"sig":"MEUCIENrSaeTlaAFGbuslCqbsRWpwrnmP5qTZ8i4w8HKyHrtAiEAhdHAQNDK0GYjHcXsbzYFK6Yrg9AgQRxbT9Zc4IzFFXo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeBP/QCRA9TVsSAnZWagAAoBcQAJMNtvLdQ8rvuJFYGS+N\nlUfp5lxKRgBAQAR7TVSFIFsTzJSQoVZn+i+BC3cu3CqC9rKxoLhmgptn0veQ\ntCIsBPaxkY78NY1ZyZxqzwrN73kA+u0P/QEy50uS9ntG2UUfnjjXVToG7TA2\nsk1d9GCu5mX8zzrauwkOZbwShZMRUjVCeTL1e3XBw1Bk488EYlIdFT75quWW\nsmBSum0lIlU4ciRbtkvwRtXFqQ2mCyDQaay7KOcyo8DtNA89D2rHwj36YrXB\nPcBQgJa53y3xfHnHTVE38VeO7VPbOEXqmmpXpi6ysLcr8LFwQ9RjG4On+5aI\nckJY++ChPJ4joo136EgLrCbk8k85f+1YwoZd35pQB2xDTgULB4lcc5xItaCs\ntjJa04aiVvOGexwSi3chkAV1v57r+ztzKe0FyDx03AXjzRUYxgaWgRExOegY\nDFhLThzvNCjmN0dlHuotHf9mZFRMmkyU1Yd3bPuVa3fkepIH/vhP56+JmmXI\nPgwQbpp1XVJG5Unqy5hYOKPMjbTvCqheVuqIteXk1cozDmpTDDJevDjaCRvU\n2SGcj3c9+BrDa0FrCcxJSdIuzY8s/L2CvFcb7TWp4WPgXGH+xlgPSr7nXmnm\nb+bPnaCujBww2OWGi+YlKt/XwnPaza9gLnW6UOY95OkoT9HuOQtmkiveITtF\nWUCt\r\n=XxQa\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1f5c1996d2328a53d1fc5cffe847b04aad48432d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.7bce9cf77.0","@material/base":"5.0.0-canary.7bce9cf77.0","@material/theme":"5.0.0-canary.7bce9cf77.0","@material/animation":"5.0.0-canary.7bce9cf77.0","@material/typography":"5.0.0-canary.7bce9cf77.0","@material/feature-targeting":"5.0.0-canary.7bce9cf77.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.7bce9cf77.0_1577385935780_0.3171907886370231","host":"s3://npm-registry-packages"}},"5.0.0-canary.c92f038c3.0":{"name":"@material/floating-label","version":"5.0.0-canary.c92f038c3.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.c92f038c3.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d85708b67d53372e15cc99db8c2a0ef831cb02d5","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.c92f038c3.0.tgz","fileCount":30,"integrity":"sha512-lST9cnojvJahSnQl9KnDcnGMmtP5r1B2+m15FRFM020mNT7xxObYH87ArEHAARpGXzQIKZ1c5XJigswnVqxDMQ==","signatures":[{"sig":"MEUCIHNJVm+qv3CHH1zPyzNS6CJAoizMxmx/PnqF7yO12BrzAiEAzHFiP3CJdfswhp5stFWR2h3HOJoaIiNdCuap7/EbiPQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeCnQWCRA9TVsSAnZWagAAgPUP/1cknndTLtghSdff02DF\na3yMkalrJ/9yOKWty8Etq5AHx5pq3oPMAgLzcEa5KcLPewmI4V7lJG39jL5h\nBedE+zdRAbHpwimVLzuvY6i5/n5ZwL8+ti/DzxmwxCXf4HxvR3tHWJprrRmZ\nvTFMqu09eI+uf7MyhzToQmQkIVYiokwx3wLDVRoI2HCpudBPrmBJjMITfxt3\nKU5uYsiEEBaMTb+kIOu35FjNKRZs/P773SnR+JBRIFCmc9j09t12qUdUdb/V\nW7/gOF5+He3hi3kbw8moure40MZ10hMA6EY4fjDUFZ+5lCQF1MRNGLp/YaTA\nJJiur3n72xwCjyKV9g3JSJn6ZIELdXMhjYPGga4H5ha0A40kz4ikeylBbpA5\nwy0ly056AFW6OWd3HGKjyNgJKCks7+KA8xRGY0vfFCoRAk821A0S1gFp6uwo\ngh+iiwtjkOWOzCgr+Aq89Fi+F1Yp4yuiz3wcjhRhF+0/FX/jlHBJvKVoyt2x\nY69d7x2BcY7ceRspu8qIQHeIiA55vz92MALOz7pJ/ypYfzqRFsJUNAVYtMrL\nIj3/uS3sQe6KTU2mU6LoQ0tJhtFQy5MlGLq8JDVt3ebAj7Nk+TLbgQVTQuJT\neJQD6J96VK/hJiSSSTb3WYN6EOPprrrpwEVtjRi6o+zw9nqv6mjwXsAuZOTA\nNiW7\r\n=MICF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"823f4f89b39f86d10ed69fa8a943c050c2d83a6f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.c92f038c3.0","@material/base":"5.0.0-canary.c92f038c3.0","@material/theme":"5.0.0-canary.c92f038c3.0","@material/animation":"5.0.0-canary.c92f038c3.0","@material/typography":"5.0.0-canary.c92f038c3.0","@material/feature-targeting":"5.0.0-canary.c92f038c3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.c92f038c3.0_1577743382163_0.40266830962657885","host":"s3://npm-registry-packages"}},"5.0.0-canary.1f1ac7558.0":{"name":"@material/floating-label","version":"5.0.0-canary.1f1ac7558.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.1f1ac7558.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"979a5baccd0d240340b6929b67d9e1698a7250cc","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.1f1ac7558.0.tgz","fileCount":30,"integrity":"sha512-Pzs8R1L2I5++GtNVJRH+fjFzQFculgbtrDnx32KGCWAb5/AhKppOcQ/khhqwkhJ0SxVnTWoU3utyqDk7FN9Few==","signatures":[{"sig":"MEUCIQCUYNhxpz5Wvgq+sYiDaEIWMqtabHMGWugNynJ/D8gkWQIgGHBQLe0bhSBg0IQNzs25bZ9oj3esv539Y7IQdGagv6s=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeDlhwCRA9TVsSAnZWagAAWpEP/Rdy67rQ9lwBS7XyhAYN\nBuOwG6R/5OIHGOzXkHB/T3Q3sLiUa9fmMvbZPNTFrDp4ZU6+M0o/ywHEF3e2\n1U85uuIwflGn4AW+cCzrXfh3n6PFJrjZvcIEl86S1CrnJQummXSmCpQ9msrw\n2Wdf/T31MYkoz7k7EP+kglQXCQNLNuuegBqHCqJvLEAp2f3YFRGAoN8lVwVC\nPNTzz9Pcn0SL36MQead1HoeY7Yr4aJ/jjf5w5EABlNwU58C5kozs5O/59YJK\nqJhPcDDqy3RETJynfaUNwQKupa98KE5YL4FHO9rf5+s4HMh8i0jBq4bL7ii3\n51WsFDVQkVZjpJ1oVb/7PlE7EKdYdgI0xGLa8AzU7stkRLbhqxeKOu63Mvab\nNDrOxN936dPHT7azFgJQFp1JXUQhqOTiZmL6JQiC4sPW9bxaezzN/HBdkjLs\nPhGr6dfajDrqZgYG8qwhKxEyJu+9+0mlcsFHO9fvFR5FqZsk60MDHKqk6UMs\nQE6QjENEv7bq4kOqV7aIHUKv29429l9EnEiO9aBXBlk3WfZgC1ADxXj6cIkl\ncU8EOIRZeG+bX5DCNuPXfFjwcqGViM3B981lxDDYhzAR4522Ab9z2wosFPeg\nmxVjjtiVuuQwYbvrque0BjtuyMYoGC2HdPFxKzs20caBRNHB5ndOmxmL+sdY\n6WU1\r\n=oupo\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"698a9278145ef0b4e06e9c33d51051b9650c5b11","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.1f1ac7558.0","@material/base":"5.0.0-canary.1f1ac7558.0","@material/theme":"5.0.0-canary.1f1ac7558.0","@material/animation":"5.0.0-canary.1f1ac7558.0","@material/typography":"5.0.0-canary.1f1ac7558.0","@material/feature-targeting":"5.0.0-canary.1f1ac7558.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.1f1ac7558.0_1577998448425_0.9218499463101242","host":"s3://npm-registry-packages"}},"5.0.0-canary.ec26e799c.0":{"name":"@material/floating-label","version":"5.0.0-canary.ec26e799c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.ec26e799c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"903f3ec1ce3ccb00c7408fd1eff64b53f429e114","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.ec26e799c.0.tgz","fileCount":30,"integrity":"sha512-Q9vYKXwn0LPWijCuE6WoXvQbzmlYvMSbjSE0HKM57uQ6CR14YpcbOsrhHkwAf5vBWeXXuVLb2uKYvbnox7xXdg==","signatures":[{"sig":"MEYCIQD+JRpgQcYf6Qlx301T533JfK6nynUA4aIo5c3liRpyYgIhAKSH1o4Kfaktdj+TpCFmY6u/V4+Bi1lrDKlaqnqFsuo+","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeDmO+CRA9TVsSAnZWagAAQe4P/ArIAwDH8dct5YdxTEQm\n0nRPugwgbJXpzvF20KQKIuF8MZMaUEjZ/AEcVsN/hi15Vsi74YZxAHLZvNFS\nTS7DTfrPBW5ovsXHaPCJuJxlE1PWLo5xeG+EBa8cJTYXIjSaR8H7hMLQFXxr\nnLKCRdBf+EiKZyd+2NoYpq+7e1w0clY8wx0QKAYXnL7pVv3xyk3tEYsPZhyY\nMJ/tOJrcyCV9nkEywuxIbpRQ4KLOz4kx4UzNPvOSwBkYToTl0r9fnHoSgDMQ\nqygYGVYKHkBH+lxFw2FlJZ9szSDifTtJG7UqpqIDk21MSdwaIzyaZGkCFCh3\n3UCp8VFJljRH5rafP+iDjfFZUMARcjBouOYDcQyvBJoy851YUy7PjabmZ4Hx\n8oXVSGe4DNeIFkEcZQfhfVxQdaVasv0FY5oYvfsHXa/xFCAwSNp97zBUffuZ\nlqbCU9u4qmOnn42mzZDRV5I5REZL6nKod4CZCIu1faW6vu+qaFX7/ky6Xjwc\nc5kBD2ykuHp2WShdH7Okp6pBDG9Rw3Vc3OCQlfdyfzHkGCBugBtcYEYJgQ3x\nhXM3EcDd/207CSz8DlIDmwe0RltAIgHYnIEbWhBkUZFe4YwsF79MpW+sImTB\ng0CA+Ylgv0NofzJY/unFIbfrvSj+G9wYUWQ1JmV9wRj2BIW+nIeTfHC410uQ\nWl8J\r\n=rzEl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"813829c13087aa9fccac08bcbdda0ffddacaebeb","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.ec26e799c.0","@material/base":"5.0.0-canary.ec26e799c.0","@material/theme":"5.0.0-canary.ec26e799c.0","@material/animation":"5.0.0-canary.ec26e799c.0","@material/typography":"5.0.0-canary.ec26e799c.0","@material/feature-targeting":"5.0.0-canary.ec26e799c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.ec26e799c.0_1578001342550_0.0064144712882865385","host":"s3://npm-registry-packages"}},"5.0.0-canary.0a40ced40.0":{"name":"@material/floating-label","version":"5.0.0-canary.0a40ced40.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.0a40ced40.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"58e9193b6d6ca8705910800cc31fadca56cb4a58","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.0a40ced40.0.tgz","fileCount":30,"integrity":"sha512-uQVjZQbDx64D9+9mjO2+9eIF0Q9TBe2qQAS4X/yaQWifJOMBEjgIatC4CxYTPHQVr7+TSs5az86qdiy9IXSEvw==","signatures":[{"sig":"MEYCIQCQUAd0wc/AEivO3BcXP4AzLL3TOV4s81AK/7P1iECZhwIhAMR3zX0NCxfS7gh+nooJtPHWb54Nmltjev0vDieQjkUH","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeD3VGCRA9TVsSAnZWagAAHYsP/1qBT60TPwGmUCQPi4IE\ns0K//t2pJhun+dCuFSUsN4PHjO3X+Lh7pszr794RJhVlFmoO3IRzCcKTI36j\nqY37Bs65WIteBOLhenO74mwIzNBVW/mqdbTGIOlMPWP3KlqcHcoCsKme4g+H\n5w6SJZCSM6NbiL1GkDbhGDBhHOZO5kFHupz34rAmLfWBERiCA0oyBkfsGnpd\ntmNEgwG0heW1fP0d4vqpUAFRa5acT3uhPE+bdI1kRGt48gh1wU4jzD6D+sEI\ncKnE/OOBbZQpZ1wMSFmxViypKmB1lYrI1gIs5FFD86vZtJXWc9dzc6p7ObNC\nFcjkSiHGep3EBZeqtGYJvN3nWq3wB74f6QUhBzkVk7+THioq80Bs0akq2YqH\nhFdyDgISUtT2NKPKI4XK7ka0STINHpbJy8vbWlNadzIFWVKmAIeX1H9eH58T\nhOgLHuU2dYfJWk8UnGQuQouGeCpxYCxkBdRxali3Iqt9ZPcUgQAbqcplvyG8\nwt8MIT3RAjgVkUtWKxH87YDgzzw5KftYRoyQxcWWr+/nCg/GGTLOKLfk0Vsz\n7M0T/ip3TuaEf8nK7r3G+bJWGv2xK9p/ag8mTdzDwz5o2f5jWnDxhYHswn2Q\nPCJPVN/sYBfmmIF6AakW9RqlrpDTC0F/kYwjtQeNwqV0tGrLZlcD/7aLloYc\nPcn2\r\n=DOlx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"dcddd5ac583b29d0fffe1a54b6f634f6b90fa44c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.0a40ced40.0","@material/base":"5.0.0-canary.0a40ced40.0","@material/theme":"5.0.0-canary.0a40ced40.0","@material/animation":"5.0.0-canary.0a40ced40.0","@material/typography":"5.0.0-canary.0a40ced40.0","@material/feature-targeting":"5.0.0-canary.0a40ced40.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.0a40ced40.0_1578071365735_0.4820727831639904","host":"s3://npm-registry-packages"}},"5.0.0-canary.3adf84899.0":{"name":"@material/floating-label","version":"5.0.0-canary.3adf84899.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.3adf84899.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9492c95f8cc05cd9e48886303903eba96bfe5100","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.3adf84899.0.tgz","fileCount":30,"integrity":"sha512-V8C3ZEIRWvbxGSAyI1AMhioHw8u0XaJi748M3h5qP5dmrqjxOMcgXgqSyrRZd6Tg8QbMKwywRi+hahTrfDn/cw==","signatures":[{"sig":"MEUCIAw+TM1QzvXZyGSOtYi58jjh/48bCd6zHsimIW/+440SAiEA+G+vaBIwFiW2LNGbfZge1ZiMrP9suKmtPH+K0aY/bms=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeD4ZiCRA9TVsSAnZWagAAovsP/3ro45BMzqGCD8MZM5kt\nOYWREx5618uB42ugr5NuKpdAfVZf06pVyYozS8RWrKyJKaFnRwQD6E7ds53i\nWE+qFB2NSM2BO9JNV0ZMs7eJI0YtuonpfbyI4kbBLzU3SnL+l/fYTjlPkyhR\nabe/I++M2jTfhxKziRFId+klYyYcNzhdU4Ey0awFxEb1U5rLQJJQ1NpqhsZC\nqFnL+V2dDEVHab2gufydIliYdV5EyZQpSzCj8o7Y+YwxlW6En0FASTaKjcqp\nPx6yUxT8zudcle4ZHJOwNQl12gYtjRKU3ykeQsmrpSH/nXVlzF4qIXPHmwnc\nqHWBxRjpXQAqfuGP9fdiFp/LIds6OF5P+nIrrLDuenNv34T5lZwPq8LQItAS\ndvQ6hYDTrzNG1YC/n4zq1rfX1NkI10qq81/oNskKCL7KmdGDKq6GFxxEguC3\nCkda7+xuSA8LJ4En5mtn48hjnCh4bsKS+8ebwa3BXpERfHA9o2pUaizuXWpd\nmN9r8fux3/5KYVY8I/HVim6wgpngWLl8fBw9jgHJGG73hHVBHD5wNKmj4DBt\nxYgMmpMN8QCv5blC5+MBjrumf7xAGekkfsDqE1mU93Ci1IRW4JVmBGKsfXM0\nkYJDcozJnsEI2EsHuHUXIw/IySETk2v3aWUQGu176HL3EmkU/53Nk4ASmRnZ\nsrCO\r\n=ATwQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"9f20ea5e081bb781aeb0d66d6db6a0ea7a0f5619","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.3adf84899.0","@material/base":"5.0.0-canary.3adf84899.0","@material/theme":"5.0.0-canary.3adf84899.0","@material/animation":"5.0.0-canary.3adf84899.0","@material/typography":"5.0.0-canary.3adf84899.0","@material/feature-targeting":"5.0.0-canary.3adf84899.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.3adf84899.0_1578075746047_0.894084813076333","host":"s3://npm-registry-packages"}},"5.0.0-canary.0d42ee650.0":{"name":"@material/floating-label","version":"5.0.0-canary.0d42ee650.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.0d42ee650.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9318a60322040b52a5fa06301ec1a7e031713422","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.0d42ee650.0.tgz","fileCount":30,"integrity":"sha512-Ir7xu/7+dMpVNh2NbgOEWmMnsnHVTdr06EJNHzDSNyJ+3XzT5A9abaHhQMpSv2fOKwAhlQqsMXZx4KloGL0LhA==","signatures":[{"sig":"MEQCIEmNj20dwxnQJBfuPsHOpQ5YmLX3MFihWkR6ssNiTNyJAiAygwxMGYMxTnYHEYTnk2r4rvVNio1uaaDX9W/36Xqulw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeD7P8CRA9TVsSAnZWagAACvUP/2oFJQjkmYEivnxzeilv\n7L8Bpp0ys/8y2FCFKSoMBbChxTSUEf9V6dCPEDi9NtEnKiFTVw7m7urT69Rc\nK0QLyVF5o41TZDFqR2AsDS+uiQN7kpO3eusYeA5/F56NcQ6hmowKA3+sgHgB\np197ILNrlfbE/jCsLcv6d1dOTv5Ib7WlCHlEf0dCuxCGHB6uQjCdSrrop4oC\nHXUp8WyY0fv08OLCink4vPYrPypu5QOlGTdw1z+cbYPrTOgIgEYMwZ0uwOlT\ndKko2U7L/URos0ZGushKGiQgXUo7x1ZQbQZbvPMJ3E6xAgIKnODLtdO4DQpX\nZ8gJyG0WyERYqyrQswMXUhzLtWVrRMPqPl5AOroRRobu3fk+K1Mt4iNGAUNc\nPu/xiiK92j33oR2g12Bs9rdWloSwhk2FN/6Wg8yWVjMVtqM9fdvAbSUpgCl6\nMj+p3TNNjHn5gEFIA1ahuGFHmFLBbRSBLGxf40xX84iEXjMlyyk/D7TxlKPg\nieMmDYesTtTncwUjc2A7FOf8mnOIWv/jrJJiIrJ281f7r2yzLynLz4UTEvt1\nrjCdLfoXszS8SV0iBVG4UrNjAjfB4bD6qW3+EMxphTPBS6Noz1F/oYiwMFIC\nbnozy1FliKNUGtC74Zqg1y7C4SJ5ab9/6cAPGy/nc1CscXC3tRqD3K23QHBm\nsvUm\r\n=QAOz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"184f253632333982c2b642e450e6e98c9703fe85","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.0d42ee650.0","@material/base":"5.0.0-canary.0d42ee650.0","@material/theme":"5.0.0-canary.0d42ee650.0","@material/animation":"5.0.0-canary.0d42ee650.0","@material/typography":"5.0.0-canary.0d42ee650.0","@material/feature-targeting":"5.0.0-canary.0d42ee650.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.0d42ee650.0_1578087420491_0.5804168990257783","host":"s3://npm-registry-packages"}},"5.0.0-canary.847dd1ada.0":{"name":"@material/floating-label","version":"5.0.0-canary.847dd1ada.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.847dd1ada.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f755dc5d63328820a96b8abd4dde57c7b445019b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.847dd1ada.0.tgz","fileCount":30,"integrity":"sha512-tJZ5kRmQFVDmBTfKWqkmizh48KaBL4ZRYV2xDW8Bxv10fknlYR2i0Df3gXZioSp1m2Kib8piOv3RLZiGjIPhiw==","signatures":[{"sig":"MEUCIHmQgw/ECvCTkrcUyI4p+kHqNDuSZcyluxiEqrZyWcDTAiEAoIO3dO++IwokM+gsF3bu/DkOWgl/4+IlKVyoTjaJ5YY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeE4nZCRA9TVsSAnZWagAAog8P/3pFOINk08aZtSLMvxFV\non8LezrJTr23SHPh5KErPC6A+lt+u8s0IQow6yfFegSey5olqp97FiMKRiHV\n+wk3E1RFx0Qf9CoivTn0xsi+kvSJTSZADlwPCMLAEhO2x421WNcvcWd/0VkD\ncfKMQc3oXgOlwt2eJZklK+Ku1RhkiDI0RCIJZTS1OAJhqUFaUiailcQHvtyZ\nkuHjCgUhVgutdGMzmPky1dgNl4k+P9ZwoZxEPTIUNMbYXgNVnxNx5q7ydaZv\ntMft0mFLBEsE1NYx+TH2d629dmMaIoZw/KpYhTnpfcUB7IrllUvaDg8SO8rL\nAI9zoFGO3VNZzcV05akNLLPkxeixo55v+IlQO8XFx4gCR/c2aYpRQnbWW+3X\nc++fWwUtI3RaqO2/fj9Kulpr8VNy+WkhRWfzEyXkYGpcETmuAW5aV73dRq3A\n8YS02SwWe2fpjcpU97MQHG9B4Iq07fUtue1vdgxD84PqquMGEKxt6ulwjEJH\nGd8JGchQ4PBLfUuyOQwBrIOd3qBNeK7h5tXeSltXHAe7C/pEm4OmSWIP3g+x\noSFs06wSRbrKV/KHcx12MzJIUfJ/Muqg8gjwupykIvmxiy4ReTBGa9BEERHR\nFtWdfB+M9oaOA1LYO6zxwcIYl3xV1uJg+6/8ck5VidksmxLhPYR8aw7rZUIR\naRrA\r\n=Ru5i\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"cccb6b13f05f64e22210548991ad471df3de97f4","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.847dd1ada.0","@material/base":"5.0.0-canary.847dd1ada.0","@material/theme":"5.0.0-canary.847dd1ada.0","@material/animation":"5.0.0-canary.847dd1ada.0","@material/typography":"5.0.0-canary.847dd1ada.0","@material/feature-targeting":"5.0.0-canary.847dd1ada.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.847dd1ada.0_1578338777040_0.1028650102819626","host":"s3://npm-registry-packages"}},"5.0.0-canary.39df7e5df.0":{"name":"@material/floating-label","version":"5.0.0-canary.39df7e5df.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.39df7e5df.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"522543f4ad384698403ef47640167e06ceefab5f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.39df7e5df.0.tgz","fileCount":30,"integrity":"sha512-H57cOmt8aaDsCjTYZtMMrjVXjtAZErIF9M/xfb+6sQx+iCtEK8/lzNVYNkj2aill+biMsYJzr/MJKq/9WztV9A==","signatures":[{"sig":"MEQCIE26KS3ItkQHzXF7DA40aq0gBZ/CpKK4CKMp/KDYuSLxAiB8X9xSilfhYpA0dHsgQh2EqT/CUE6eLVxow5YpCdpiYw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeE9b9CRA9TVsSAnZWagAA+DEP/3RK8bmkNJ5lzf4qNX/B\nPFeLHgLwWStR8bzLnB3IfLLc4DX4zRe2mWob6C7X+bJdzuPJC468rJt6YgPk\nGl0z3EojEsuNj1F84pcHxkAUqbJetl7PG5VoF2dIDHzpu9PmCPYCmBUGkm2V\noySbqK4zcFexezvm/i6eMc9nsVnHlGmITiFHHf85GDJ11r7xcXI8DspMAduK\nWuIFU0yT7AusBt/7EnEZMcpBmjz2CjY4s9nCqUXyUy3/Hvkfh3F9+pzLH8VD\nJ8fn2LBUoPPzV330UH9ZzJiOwXy44aYSuHiNhFkjHc2yP6eiwB+Nc/XdpnOF\n1Po1tgRmlGUHLeDDaiaWGwaWBK7eUODcRJQsJinwlUyDmMvtlQ1ax6LTPuYN\nXC7R5jvQfhRmi/gEjm7R0IjFJWznetHXuadqaSLI5GabGBA7U3b/0sjlkgZ/\nM32YEf86K1os3R2sT0WOD3YkYTVlW3NriNM+h3qYIXBs7hmcS9kuX0O+Iuk8\nTepWLgDTXPjZ6sIxjIvuPSLg5CR5p3ptb6jzFTkgifPGuvjp9OlIsCYH2/fO\nA/PRhaiFAxONfcJI3i5/gchTTYcrrVLAD5hhjTG9G0mt4eBanynPqHhBOq/t\n2GFppAj6ljPmnwfX2mcpj2/ljBihbte+YLoFXQiRM7Bo9dtS6f9Cf9TRoRjm\necPB\r\n=AD+z\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a6995715f8fc80d9a20e6b8ea90e80f4906ca595","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.39df7e5df.0","@material/base":"5.0.0-canary.39df7e5df.0","@material/theme":"5.0.0-canary.39df7e5df.0","@material/animation":"5.0.0-canary.39df7e5df.0","@material/typography":"5.0.0-canary.39df7e5df.0","@material/feature-targeting":"5.0.0-canary.39df7e5df.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.39df7e5df.0_1578358525581_0.03806694158534474","host":"s3://npm-registry-packages"}},"5.0.0-canary.f1a2581ab.0":{"name":"@material/floating-label","version":"5.0.0-canary.f1a2581ab.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.f1a2581ab.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"57b7fa35ab3bbab11a9885f9e04c59e21dae217d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.f1a2581ab.0.tgz","fileCount":30,"integrity":"sha512-qg4MHbAvCWMn2HcVPqgdLKEBTkilN799piAv9oA7qjImbmdjgmcbY3D1hfm4tceI7bN3msIiBVPQ7KYV+2QUfQ==","signatures":[{"sig":"MEYCIQDirN7Ay0nX9emtvZxKcC5p2phwosvwFlMdgfXW5nqnagIhAN8DAdfe9BumGWzIP9tx2dg/GP2W5lsIuMxteDC8pPwZ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeFJzTCRA9TVsSAnZWagAAFtAQAJxQlc1EM1OPO1EnN97t\nd1brwVc4ZhJvmXUVjaxF/AtIuGqB/v/AgOY5MY8gZ0YHIwGf6edlQOvdiuMX\nIGOvuoQpVhNx5Ai2Rl5HZXYIO4KIXW8WGiLacPXxLzNUMUKfVZ3TvBTsUb+f\njEvVDNojGjo90iYMQvGQleQgHBLRMPbuYtfbZu1h9QEQDtCP1yt3S7GZ95Gp\nj74uWOTEHxk+P2DobkMwm8kSxBTm/M63wUWWdqTe0Nd+izKP5yqx9rzKP7VH\n5p7TKXSPckoPN+h6TYb3K9BDEfFsvvpyn+NOGIWws0Ej2hMJpZL6UaUyLf4W\nak0R0OppB8Ji9Tz0AaOixT33BPPUyDrPu7phIOudy4nMK/c2QTcnezsLk2+S\n7TRuYfN/i0txyDbzAkJVEwSffDsdOtxV3Y03fc9pCmo93+JdSXtQYipFvFdu\nXaW0qWFXkKtM4nJZSwnRv0TkzwWEbLjkdCLRUUIaBZgNNyHtPwBpufV5LXMf\nf9lmfE7F6Zi1Xgv4ZzY9VVkJ89UepoufTMa/kbPdBi0WkBIGxQaMcXWRe9Lo\nSh4Itd0c6tgKawtspQG55Cn9yWls5TEyU1HokVn/q0cySqUopT2+Z44v8270\nDbV5lzwugQAa5FYuQ84s//j+P8UNgDIYw9VcpTqEeUZzQ9MXHJLmyBvfuLPw\nK/HZ\r\n=suwH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ae69ee79a4a22a7695be055fc67e5b974c2b989f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.f1a2581ab.0","@material/base":"5.0.0-canary.f1a2581ab.0","@material/theme":"5.0.0-canary.f1a2581ab.0","@material/animation":"5.0.0-canary.f1a2581ab.0","@material/typography":"5.0.0-canary.f1a2581ab.0","@material/feature-targeting":"5.0.0-canary.f1a2581ab.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.f1a2581ab.0_1578409171061_0.8928117684039969","host":"s3://npm-registry-packages"}},"5.0.0-canary.7c7ddf347.0":{"name":"@material/floating-label","version":"5.0.0-canary.7c7ddf347.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.7c7ddf347.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"362b926cc7b554caa222175c0b36dbae5db49572","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.7c7ddf347.0.tgz","fileCount":30,"integrity":"sha512-ESS5O5ssFFhtGOISoAeODmHHEhuFxYin9FzBXwJY5WGbqJjrY1Tie701H5oH10pP+Iq+Ivd0P6HSUqzbRDVHBw==","signatures":[{"sig":"MEUCIQDXmYzF/jEPBTeViXC5IAwFTs3z7rRSW9uMYws3tKJEIQIgdiVK5go2r3tuOLHj4h1qrWTD3BkbZ9k3bgBi98WAyL4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeFKCrCRA9TVsSAnZWagAAhUgP/1gr0rFtt6NLiKWbboOr\nNDTJlYc6rxeZnA8q9N5TKhvZuSZCafbrNP0WmJXZJPmZC0j7fwr2Cp15n+LH\ndsPfz8RKZsM6hpqEscjZvXOJJvqQUJzVcrXhqJjJ/N0wuSIfv1XWloaIXG71\nMcDC0eNOweXeJpHChOZSj1Gj054ADE9t0+GYFvDd0RjPk1Hvxph+2vB7iKif\nZYrpdZ0sWeitzq8r+YBWQQqe+SC+9w0oDEtgsFZyd3sySEfJ6C8gZs9N3IAb\nUl9QARbJ6ynEkey7HWRwDW/jfc/FtMFuG1jo3qkmhWdOTW2odGXwtYYJtYDH\nxBJN+E7HUaYOhge5S2e6mIjJbLtIcmazTgGaV1PVgMg4EZBu4LVR6ySCbN+Q\nUhkY4xXMGluZJjMBRSYIPRS0ZNV0D6xR3E8izHk/+ip9+OCL+gAWF3Dh4snt\npeHlSYn47EcIF9kt81LY3WJXfJa1IngNrrdf2M6UNPQS//3CKGxJVvIp0uyR\n4SKT/9Fn+RMPNDdc3QdoxL7B6ZDQV/ogdPBY0EdJCsXABkRC/ZFjyOGomJRC\nCYrXd17ETw9rSbpuhLktdvOOFBAqHqcfxN6YcDsQ2yf/5e1Ntehckwo+1cmL\nIjO4sq0E9MQgoNhh7yLgagkc3fVt2UJW1wXa6VYzWIEhQZAEPhrezkS0mXL3\ngGeB\r\n=cgFv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"940ae7448647ebd59a16a94b84c479f3f7bba9b6","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.7c7ddf347.0","@material/base":"5.0.0-canary.7c7ddf347.0","@material/theme":"5.0.0-canary.7c7ddf347.0","@material/animation":"5.0.0-canary.7c7ddf347.0","@material/typography":"5.0.0-canary.7c7ddf347.0","@material/feature-targeting":"5.0.0-canary.7c7ddf347.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.7c7ddf347.0_1578410155308_0.8532218512069398","host":"s3://npm-registry-packages"}},"5.0.0-canary.a1c84d4b5.0":{"name":"@material/floating-label","version":"5.0.0-canary.a1c84d4b5.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.a1c84d4b5.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"02b6f93153026ef20a4d536a6507c590643d013b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.a1c84d4b5.0.tgz","fileCount":30,"integrity":"sha512-LwBm9GBbMauStv2uQnRTAFtxS1Sy2Tnxupg4IaYRSYrSO029FoVmZmuGXyX5zV1hkvJ1xHjSMaKi+l5YbNBn4g==","signatures":[{"sig":"MEUCIQDzsccuhiid6m7s5fH6IY8W42rCcvJ0//bwCFWm77PIegIgSgh29A6xpzDC6sIfgriFARQhOEuYEUxVvV41VO/B2EM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeFMl/CRA9TVsSAnZWagAAuCwP/iJD6j5g2Vrk/xiQ7d+N\nvXeR6x0VTlcDFUZQ/542iSouUuv5VVJM6htW1GkbV+tOaJUVDYNxlyFp5v65\nJhLPl9PWyUEOat11WBp0VkIXPWAA77ElzAMn1FapKoEq/mtIYIeNs1YWk97Y\nSx+lV1xN9fZdjRi1wk4GBcBZPBWexIZJANQmYk7BcJ0TEoiwOMrdvY1R8g+M\nZwMeCoP9uaAJzq38koaQI8UlBXTifeiOi7qEAO2rKdSL7R4WtduwD4gD7m3f\n1vuhWE2fNXoRVdMK+B1ezrnD1/AcmMDNT1DoqT58tV7/+zO2P7tyTu2ryKgm\nNIvc4K6ZjiV/GipqMIN7HqOW0IucaVdvE2QlwzB3Uz8arX/bxHbG2wU1mqxR\nUb3pL8y+ZBF7Vn7nynK0gx4Cq7mG9nvYhwAzYwV4Mu3Md7HLyaMJrYMgimir\nm36H2oaOc6JFQQxl7Oz/m3nmiwNyIjk3hU4dACR14NHX8KfOShSBX9F90xZ3\nJf+V3MDU3ZoFwsIprTKaQ0UzHIWLE/Q2H44M0GYkH2auRpt8/CXZgiTNVubq\n2m1Srtw+h2p2ONaRn1oSkeKXFSsjsGycm1VF3joFZyC8GulghFnFeKXojwS7\nlGMU/b+09NzuCkVNFnlKyxSCZpFEIMOxmxsWHYmuoXff2rv8FHkw9i4/K8E+\nwuLg\r\n=jHDC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5ec624a1b571d87d94d5187056a0b6db214d229f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.a1c84d4b5.0","@material/base":"5.0.0-canary.a1c84d4b5.0","@material/theme":"5.0.0-canary.a1c84d4b5.0","@material/animation":"5.0.0-canary.a1c84d4b5.0","@material/typography":"5.0.0-canary.a1c84d4b5.0","@material/feature-targeting":"5.0.0-canary.a1c84d4b5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.a1c84d4b5.0_1578420607570_0.12047068078745582","host":"s3://npm-registry-packages"}},"5.0.0-canary.ec9f16578.0":{"name":"@material/floating-label","version":"5.0.0-canary.ec9f16578.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.ec9f16578.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2c0f3411b69fc611681f7ce56b9f0b16467a51dc","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.ec9f16578.0.tgz","fileCount":30,"integrity":"sha512-BR8wbp6gAqSQdycGHrkOqk+q9EiMteWsKSzlevpt7xL30rV1sI2j3fIAHuJUXiiozK+hEjI13ccD2l1sZebhuQ==","signatures":[{"sig":"MEQCIHrcKxv6uF16ZUdV1vzWv3Kc5tcIYPnO4cHm5PB2wPkJAiAejbRrm4ZStX4BbbGRyNbg+qpeE9rUAzeUWL+TmdNZPg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeFN5xCRA9TVsSAnZWagAALG8P/1zlOtJjCM18UJPZ0GEe\nsF+IHXMNashtxlh/Z/UA8J42qlkjxd9L+sKfsRCgoK8hmO4j8FSKyy5V4Fme\n8jPL5+aKPWmSSLDYuw69t+mqCSctnTJDiiYJm9iMWwa9pFuugw4pxUDyrcq5\ndX0/PeiCuIrwumUXe5G3YhUn3WJ8aKJQqCvlmJwXeiEL/8XObgsznMM0FTjL\n5YwtUx3e5OTBxIfNALizFJnE+DfQCxn56zZayqyiJa3XRDakiU6jSyIkcLxs\ndQaSFAtT3atA7/7YqIQj4ihTAQ7e2abz/LrTOmamv970EfrxmJUD5IwpA67w\nhebnMzQMcBVY2NW7mWOxMoiRfcBII5vl3CJeh+eFzK8VG0igHnE9M65VMfK8\n0WL1ZC6vC1cRlQ0NMiFjB7ojLt8NvDRl4lB8fCHsqSsz7Xzi3NsISeSsakOs\n5GGAgpjlnx9DfQGzFY+rju4uPDL0NrbAt0VHBkRaqFwiVNu5Vio49/xBvuRM\nQ9mYHZi9VrTPf7GMDLSfUbuX546Buv41AMwrL/n2qiT15V5ihkgJSggpLFrN\n0Ui+pZ+LpWeCxj99YPyk92+BQ19vlA3hTY6UwHsMimi/bHSjmCWOu4lL/EDN\nOV9jyVaF8cG4eujS77W4y5iwWoyjSewEmQjxA2/hp+S0s27533EBpdXzkImD\ngB3F\r\n=SFJ5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"23103621e66342865b8700c5948ef9134fa8d1fb","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.ec9f16578.0","@material/base":"5.0.0-canary.ec9f16578.0","@material/theme":"5.0.0-canary.ec9f16578.0","@material/animation":"5.0.0-canary.ec9f16578.0","@material/typography":"5.0.0-canary.ec9f16578.0","@material/feature-targeting":"5.0.0-canary.ec9f16578.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.ec9f16578.0_1578425969319_0.5150726692148966","host":"s3://npm-registry-packages"}},"5.0.0-canary.b602226ce.0":{"name":"@material/floating-label","version":"5.0.0-canary.b602226ce.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.b602226ce.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"39c6fb097ec5c825d9bae2c944156a3ad32e1c1f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.b602226ce.0.tgz","fileCount":30,"integrity":"sha512-uhkFY3iBH1itzgIUq7DJ/BA1IrxM9huYgHTlnQEa6u55407CpCv9erlnwvJMTWncUNqA5P0ktZ+QU2sWN9jOvA==","signatures":[{"sig":"MEQCIClbT0Jfc5i5z15SR2AG6OLYO9tXdSl3k4m5taQZC9nnAiAbMLNOg4i/ca7vcCnqPQGeh20zZkvtnjXRKWdTni3zLA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeFObRCRA9TVsSAnZWagAA4wQP/Rv3mWZ6VlUgUKl/sUKG\nGg4EbNwFa1bnOo3fv0CGQW65Vx06cEfwvMIYW4y6Z/achEwnvpkfn2i530rA\nrg9D+JjHT/+3Qy40Q0zIIup70HOIGJMtzSuVfZLbfev7duqNEWMwdIKufHqN\nDKVrbh4WN2gxOJ5OavTEE4GsF6AX1q4KMyRzsC5mfCR46P8VLZIBYSeAiIDf\nqj4aUQXVs2bbfHbAwyvgZFbsyujxDfgkXYfuT3Ekk0OEZTCROtevrEXEoDY2\nXterE3q9J3uORgXAmZB92vR0tx4HnC4u0BKzV+OvYK1C+zZQycWrBbb+KBHi\nhjVuoWySvp+sQ0L2srt6augRoBvdsoGHOAv/iAIGRy0tc4kyMJIvH1liZF5s\n4VuFK6zQnIIThpmVzsbL1kDfTnED1esjVbedXY+lXSOWMq7WHCJl7UC2+gQQ\nUsbOyj8u2rBpSrllEG9iWNcbjL2S6Os74MLKAKru6KHk7gIWpdDwtlBu2T2s\nC0O4/ABd+jiPmjZRmiVfVuR/3VH3YUjTFDWF9Fk5qgu7AfaEnxDTW6mjwt4G\n6Ulg8LC5FU6wbX2aEcBGep3cUttSHuMFNKjY8HyN7zxsJeuCbucClp7CWhAF\nm3dcRZf3umo8okrPZ8H1IurlZo75LyT324xFM57/xquI11kJJgebqotIZlFm\n2jnC\r\n=3A9v\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"de0d35ec6a5285ea0c12a54a6e35051ccd0aac1e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.b602226ce.0","@material/base":"5.0.0-canary.b602226ce.0","@material/theme":"5.0.0-canary.b602226ce.0","@material/animation":"5.0.0-canary.b602226ce.0","@material/typography":"5.0.0-canary.b602226ce.0","@material/feature-targeting":"5.0.0-canary.b602226ce.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.b602226ce.0_1578428112716_0.333773341654388","host":"s3://npm-registry-packages"}},"5.0.0-canary.b2d2dc08c.0":{"name":"@material/floating-label","version":"5.0.0-canary.b2d2dc08c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.b2d2dc08c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7eacc796a345199ce959ddba4c9b46b11d0d6958","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.b2d2dc08c.0.tgz","fileCount":30,"integrity":"sha512-n1zj1Ca94ALIJgxpqQ/gRxszz+N6pB5Je2WifM9fylCIZT4INFmeQ6NcQyLGP1rWB0lMR/NsiB5/MG6MlSbujg==","signatures":[{"sig":"MEYCIQCcfSVk83BQ9vbpMIclG9WEe+iDnt4Jqe9joQtYwo0esAIhAOjPHQUCJThEqMkphTcYlRWFTaKo9Nvm5Zqi+ALWUm9u","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeFPdkCRA9TVsSAnZWagAAU2kP/3Jqk8CkRW9VJ/9kicnd\nhuI/p2rhj5p9VlJKK8F5Jtb3ADrNiO2cNrulGOsIwbdfLJNKg5P19iVmbCfK\nYJ80eMrxlg9zhFudTaoZa2WMZTf+Bed3Qm/PoFI4CF6/pdGgHqE1DVJL50tc\nwjs81XCiLAldT7yaUfzxJTfBbnH+OHCc6ek/X83NGZ83jS4QyD7SQAqtZ8kx\nVq3Hx56b/+VaxoVQ3O85l/SXjy+MV6J0lMLBf/tKyEOxKcaRR2BKkS+6MMbd\niR63mcZT0FrxNIJOH8o+GPBUJB0cA+BoRpRyRWTmjfdvQwgvCTmUDVXq3qpK\nIBFHpbRhIr1s5eTLC+eL6Nk5ctIEfaeQeiY/+SB+u5C/NgGeE2lVWCGK8Mw1\nLt0es1An41qrhRcxb+yPfnvc3ZWDhC5hMwiYsEPnrTG+QesGst+Os03q8b0P\nHKoKH6x3iPCUaYUlAyRuC4qKCbjTjP346nNNVR5O2mwFT+TkWRbn2M9gLhkY\nYZ/KyYogLWOiLcG2vWeSwoZQOErFabdrhoqL0IT2728f8IViNft8e0WBffDP\na0X06mkNczAM406zkkmQF/aIjvjJRZjslgII1+O9k9DQKyFdqFTyroDkGsF0\nq9ijMlCrIAvq+8rq37zFRMazSMn3CCO62TWoHZ39lbMt2XNoaDJGJb+krCrM\nwVnI\r\n=ZTJU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ec9aa1966e1f2e307207d815ccbe3f16750af94c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.b2d2dc08c.0","@material/base":"5.0.0-canary.b2d2dc08c.0","@material/theme":"5.0.0-canary.b2d2dc08c.0","@material/animation":"5.0.0-canary.b2d2dc08c.0","@material/typography":"5.0.0-canary.b2d2dc08c.0","@material/feature-targeting":"5.0.0-canary.b2d2dc08c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.b2d2dc08c.0_1578432356175_0.018633541938099407","host":"s3://npm-registry-packages"}},"5.0.0-canary.61f2d7580.0":{"name":"@material/floating-label","version":"5.0.0-canary.61f2d7580.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.61f2d7580.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1cde5819258d1cb3bb6c6c79e5c2790f38ecbefe","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.61f2d7580.0.tgz","fileCount":30,"integrity":"sha512-2h3TtkEgMgHD7G31Suq7hWfpnGNSdJXIifxcXvGkRqg0Y0kC8DS6Z6wJeM0JmkqTwCK3RMOPk/aG6V5qZohG/A==","signatures":[{"sig":"MEUCIDOEV4elY4/pEV7SJwyvy2BLNMPFb6rn9totBvK1mMfBAiEAnE2fwzR2vvGDaupIZV+7N+5GZSMlDqnb7pCmKWFTi5Y=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeFPqcCRA9TVsSAnZWagAAGd0P/jhDLQdP8SVoWOYMLVbY\nnlHyusuaqW28ndAtndIB1fFyN88HntaBXLBl/pZna9mz14dpc3B0+AZhUwXh\nRkDe0MG6KH0u+a116371ELpYwrU5+1G+b/+2Kiz3uMAs3C3VV771J8N1zIj/\nHuD3D14fy89fJqkDsCQ4fl0Iu+3Fg2+S3FUAyVLx+TLEo/DnzPglbM/WPUdp\nqPNsjht0U1jvdDEKDd3ltDLlVYHNfSFCe4vv4ZdUBJUEnvaHihwEYpEVRlIv\nwpAn08+mbYjDizWo7F1FHGal8N/jdMqEnw8MmzWuw+npyG9W83Z3K6TDy3nS\nSb3n80FopEXtY+JAQ0ckeN4eIFDKdrJCLn6pK2gaLE10T0XK9ZUweqloK0XT\nwMTslPrRVNLnDTxdf1kmEPWzSsNXa89DhQJXHQKmQSMEP/ouI13gFd9bMtr7\n0GSWpNkk9gTlyFk5W9TncXAG9sfBdTwgFAomUOwUz0hbPMSUIeOvJLTPQdho\nABZ49J+wCJs6Hf+K1zzm8GeYPZMhVKq/SpLrmRnTTtS8RtB+2yRIJds2xeK7\nEXNxxnGlNKhY1iZiOmhWq82iA+PeHpbZ/pPclwqbqA/VFBPn7Etmh7e5JG4f\nXYgEr+WhWPITOnuE46lVs2ys9SuEJSd4RCsrTHuRwH4Sv1lYF8UCcQ03TCKj\nMYtH\r\n=3lLB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a826fac64c34ef89005bede280cad29c76346e55","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.61f2d7580.0","@material/base":"5.0.0-canary.61f2d7580.0","@material/theme":"5.0.0-canary.61f2d7580.0","@material/animation":"5.0.0-canary.61f2d7580.0","@material/typography":"5.0.0-canary.61f2d7580.0","@material/feature-targeting":"5.0.0-canary.61f2d7580.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.61f2d7580.0_1578433179882_0.6685733474049627","host":"s3://npm-registry-packages"}},"5.0.0-canary.d1be53a2e.0":{"name":"@material/floating-label","version":"5.0.0-canary.d1be53a2e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.d1be53a2e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"0ac579afe9edd236d0401402dd1a89afd3bb802a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.d1be53a2e.0.tgz","fileCount":30,"integrity":"sha512-Lu+2+P4zn9TlAM5ifJ8c1Fe45auEXhAwdqN9JRUQr83Rr2hJgeLkA/viwWkA4WzDFLC0UiVOA9Sq3Ghm/38TCw==","signatures":[{"sig":"MEQCIDkmVkLMKEe5ogqXWi93UA7b39O2OIBlmSGsSRiWCkMQAiAQEwK0F2ZNOabtJAHlGkihqQC2j+DofFQtMArUAAJRiQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeFQNSCRA9TVsSAnZWagAAluAP/jcKX2tyl9BgZq65TASD\nkDg7fpIfuPVLQmcqT9ewtrdnRJs24s8fMZvWhFVh+uyL+pIQiO0wUSK6u6di\nTwxzpPzVsGyjhv6llcUtID3LpFSlbiO6fFQJj2k422kYxxf6oaUrPV8E0MfI\nWrqUhHiZYPYcEkba5CtCSRJVJotV2NKXuqSV4DnokLzviW7kU9yIC9gXEiLh\nPY/mgtP8mw5Dlze/UGDp9ge+AGyBQG4aVY5wbVcvJ+0/awWN4eXrgZb6PRo5\nhgINVp1VXR8GqPTvDjwv0nca2fFJjh2kNU7Dj/BJvVQf556Jb9ysIbDD2Zfd\nsFJlmUgjlOrPwIus3d4hBjJQ4uHDJVVrMbWlRzBHz0ew/LSLM97hnH8DT9oU\nWyJNRIzomRh1c7RHbhudEk10z3DQuzNnDyiGjqIaZAU8RGJheWiZHGF+cG6f\nzTBFESR9gS0PtuqentfN9+Wc+hIKrbTDbv4On1creLwUOTULNilVSEcmHp4U\nQXtlaC5dOWg+4FfXTmnEiVWpAL1MXtARP+AumaVIkIUqTd+E50oZ5RIagfcT\nKeUwGiBoMNIdNPk+Mwu3uEXW7OLKE8//I6sQAWyM/qkrC3D7hJjvfuECPBgU\ntV/+1PF1FowPjWm6lG8/Sw12p82nWyoWc7NIOuvuuDoD0c/TUEz7SC03xhgw\n/uuV\r\n=+fh1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5053f71f9a35d62630821c2c4084794f7bedf258","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.d1be53a2e.0","@material/base":"5.0.0-canary.d1be53a2e.0","@material/theme":"5.0.0-canary.d1be53a2e.0","@material/animation":"5.0.0-canary.d1be53a2e.0","@material/typography":"5.0.0-canary.d1be53a2e.0","@material/feature-targeting":"5.0.0-canary.d1be53a2e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.d1be53a2e.0_1578435410017_0.8035381059641313","host":"s3://npm-registry-packages"}},"5.0.0-canary.9b0d06e32.0":{"name":"@material/floating-label","version":"5.0.0-canary.9b0d06e32.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.9b0d06e32.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"89d3ce885c1c199c70e27200b3fb10433ee0e568","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.9b0d06e32.0.tgz","fileCount":30,"integrity":"sha512-BQNkD+HuZvYrZPn2zg4Xie1vYNmkz3VyYDSWgh/sOiHilWM2c2rTIJg85Sdqw2CFqCKBIvEIgE+Lh70+jj82yQ==","signatures":[{"sig":"MEYCIQCXBAbTtqpWpggXk4HPD4PAJxiPBwoLfEkUVkf3vl1KIAIhAIz/AVB20QVXd/UwNQ3a7EPFFwOz0q+NDX6d8oUijr9+","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeFQPkCRA9TVsSAnZWagAAOvEP/3Qx7llJD1CJMiwj1oXB\nlpN7HXKdyzoy8YTcDfY9mUgXPCd51dlz33kmSrTAcWhAVy0rBnpEGlvOLupO\nSdGSLFpjODhzli4yXCGEbOe5r7R7wFPVGXWgYRKYYQZM1fJtorcRlf+qi7b1\nY5o8m68Q62Us5q08ugLRE0knM3+QJXUQc6a+ZeFfACUuRVj11o869zu/RWnw\nrLnDxdOAt0VtL12kKZffTEBbA72zdox9i/yCcbQtfX4B9bpdKx08rqKxPRdO\nBX/fO6JMLa4rm4bRdWqqaSFCvudVx7Gn0+4Zx0Dfk8KmOsDy9cRBFt56Srrz\nPCW4HNFQaMl9ob0uQKTHKZIMxyi4AsHH6JcCRpmd7l2ehAsR4ddu7mtKik1a\nGuMVmTiVsYZsSH0aQMGk9VcjxFleLA0l74/fmr2P77bpouCovftDEAjGntw9\n2HsZ9Ng4+thDDZkc978LB4r/wpW+r7Np/VPAGcTcSwIBi7FR8pdJqV0XtedD\nlaw+sD8VwkzOrLC++rbBTaWIx5Kvd3F83VsqIV4FfEdYZXKNQSbJrOMqLfgw\n5K2Vg7eXyTCMjzzg0WFZ2DJtAHZEv7AhHF/zgyrB3V7kywiVMTZ7uxg2O4Xg\nbxzyobHUhro5jV1LbT+qDjzGolDWIOWFsI7ub9d/vajXsCsF/MVyCfVJ5wfT\nxEtg\r\n=mVgR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"485fa4920288a2a37995f4c736a1d429de15e53e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.9b0d06e32.0","@material/base":"5.0.0-canary.9b0d06e32.0","@material/theme":"5.0.0-canary.9b0d06e32.0","@material/animation":"5.0.0-canary.9b0d06e32.0","@material/typography":"5.0.0-canary.9b0d06e32.0","@material/feature-targeting":"5.0.0-canary.9b0d06e32.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.9b0d06e32.0_1578435555922_0.055735618097946915","host":"s3://npm-registry-packages"}},"5.0.0-canary.730c807a0.0":{"name":"@material/floating-label","version":"5.0.0-canary.730c807a0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.730c807a0.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"dfbcc868c56fb868a2e86da29ac4a888d0517afd","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.730c807a0.0.tgz","fileCount":30,"integrity":"sha512-4Y3nfSsABK/d390okGfOFWfjpP+wIEU+GkS6ugmzCGXyAVn1PtzUt5fEqaSuC5H687awSuQUbXc81wE9ilUXOQ==","signatures":[{"sig":"MEUCIFowVJEMQcgbiOwVUahzap74AE+6znxmsUwlvHRRKQMVAiEAxrELYbABUfn09eqMPeosWSSu2NCVaFAMqW48nypVy/I=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeFQRECRA9TVsSAnZWagAAaQYP/j3zkIn+hlrKpBuuA/IL\nNGYRFlvIHHMOhWXEKoqj6usQ/K5+flyecOvvuVgwobp9BvsGh4Q7Q6Rc1YMh\n5u1O5JpRXuUbKjOuZquLStf3k2gjrKgn1p32A0uCFXoUIZK9UeNiBky6+Fu/\n5UPYKiYQ700wp6Rp3ry58QjmYCxiT8QTA+eVEE9MDI6NkE53PGq4Pv6ZO/eR\nMyuiww1XxusrrLlXGqQdD7nBBrIUyBUROTWx1QKGwL3hQUFRIDOQrgWSF1ga\ng41E8lO47vMj+jpBBJeZK0cW/3xEUdTPyp2pkMtf01ihaSOLvS0wG9TtMrcP\nHks2rWH7ix0p0MBt95IN7AlfmQCmDo5u52E6yUs+PS8Hjrl+W5RROLu8+NX6\nkG8mUg0rHb/roF92jqCZREbDA8JbwylU4FakOa71lvtvI7nKJx0KIPQT8LjZ\nA2kf6UDM7Px6TQr6NrZRz5iZ6Joj5jGgpvB4qubPhF4PSQkQqaV4DpNQGTv6\n7nnAjJUX4UBAs0Fq/P1SAYEdVJr+ukOe6CQpycI363k6QCfCLA7Aq6ZZ8JGN\nlsp1Uw1BMUFB/0z9Cws33k5hEFvP5KKfk5eEYn1Ax47KSdfixIBFxpv+3sio\n4qzN334oefLULkBsIbhrSdQ4Rx2kSU6vM507mzL4V4q0Be6RdeweoDtFakOV\noj25\r\n=XOOU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8860f1c513146b0f8c59a8c70750d1353e61feaf","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.730c807a0.0","@material/base":"5.0.0-canary.730c807a0.0","@material/theme":"5.0.0-canary.730c807a0.0","@material/animation":"5.0.0-canary.730c807a0.0","@material/typography":"5.0.0-canary.730c807a0.0","@material/feature-targeting":"5.0.0-canary.730c807a0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.730c807a0.0_1578435652104_0.4342663036240666","host":"s3://npm-registry-packages"}},"5.0.0-canary.2213152cd.0":{"name":"@material/floating-label","version":"5.0.0-canary.2213152cd.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.2213152cd.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"08daceba7f1d3155a4c3240b01f9b70836597919","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.2213152cd.0.tgz","fileCount":30,"integrity":"sha512-PYA8CezN26OXmIvTsU8gbsoo5DGq94ipOOJStfBNwK4/34+pAGMCAaZexEVHtEKpM807s2nRRigO6kB7S1wABQ==","signatures":[{"sig":"MEUCIDi2prQWcfiCc/Xg1LuwVuJsW/sdRDntz2pqSdF6brnuAiEAgduYjgTEM66nE9I02bBbqwUaeWPB6Ot/Bsz+3EKauxM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeFg/DCRA9TVsSAnZWagAApYIP/3ptWPc1C1LnUqSDNeo7\nmNFCG1Hp82W2Sg3f5fKNh9nbjDf313XujRjgWaXIvNbx/+nI5owo4gMtlpVK\nWLx6gHZHJhuK1Zic0CLub5sGdweWDbpQ/lqaXGkzJJ72+71ul8vNWrY7eIl5\nbjQj/CgguwwMwVsXmlNyLSdhy6FZMxGb5Jp35BdwsMEo4Q0SX2ZOEZqQ211x\neEMxIYYcUOHcS7j4JEqq/0fM8EL+f2OdLxq4Mg6QwkeELK9OxgwwEtCwjYKg\n3ZRcmt8kUy0E8DTvLVgb4ZedAGNLYQEOxQKqxq6OuK2apJkalJxVSnzbcv3a\nv93oRZCeScxmP6HcZI7gT2dSiLHPBMvN7V8PIXQrp/UXCofsXzuhK4DsBCHz\nNqy4A46j5wI9mJ/apQZih68OG6BYnApJq3+595VnwZ6gzluOhVbkq0mZBXNZ\nA6Vjz4/0xU9a5KS1Iliw15FgVya3pceOkA5R2QQqam8Nc+ppJFo1yu/kxPDT\ne4VCMnx87PX7K7zpLCvbPZy4e7iq9ZVTjStDcU92UWnG5/ssJjEHT9lhzNqq\nXLTF9wVPpgMtxkGFzRfrfFU+uuFWw4Gyb8RRlzNbD8UlXaQmvCsRnDsDiG5R\nM3+xix+17ut3vtctTDUOKsvyL8EZowXtOSrI611yW1pf00Tp+TqncK4OrC4J\nA57Q\r\n=Ue+4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"0a3677a82eb2000c085d0cab420c907dca8cf13a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.2213152cd.0","@material/base":"5.0.0-canary.2213152cd.0","@material/theme":"5.0.0-canary.2213152cd.0","@material/animation":"5.0.0-canary.2213152cd.0","@material/typography":"5.0.0-canary.2213152cd.0","@material/feature-targeting":"5.0.0-canary.2213152cd.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.2213152cd.0_1578504131271_0.8289192948204753","host":"s3://npm-registry-packages"}},"5.0.0-canary.5750f7169.0":{"name":"@material/floating-label","version":"5.0.0-canary.5750f7169.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.5750f7169.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"90f076bec7178006def48b59c0aa691efaed5721","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.5750f7169.0.tgz","fileCount":30,"integrity":"sha512-oEVD4L7Zv3g0TMpUggGDlEu8KBsjMYPzbKHyJa+SLL1i+jyJdB57dbbmkWQ2CVekErP2YsrP3ccHROH5e3NVFQ==","signatures":[{"sig":"MEQCIAn7v/zBNG05uWbPHL7+vTbkGgRbXhUPK5MmQ/Bp1rsRAiAsXj0wVWAg/2qQpxplV4o3RZz5xq0BaQ63ZtHbrvyalA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeFhfhCRA9TVsSAnZWagAAANkP/1NgHYNMu7EYoDiAB9q0\nN7GhberOu6/DtRSWApARlkWqcE3mfEohVkfV9acuOLZ/Kq/sjLbGK2oj6FCl\neJaqcgx6iUHOM9octz/x5zuwwELfBfpyr9WeLzvTCEsB9dU5u+gusF1t4n6n\nyhhVmp/hb/YI7winz05EesAx0wBTG1jFwqR6Dvvl1DOfzI0STS+lGNj5Ja34\nDRal/nKaBYZ0hcePUUUlh2njVPs9XwWgJeiqxm+QvEn9pPoZShAr1is5ranj\nRshH0ouYLxgGqg5xXbFLqcB5ehDdWdrtFghxABUZ2ohbg85sNPCO1gngaRMK\nm3ogr147XC//Fk8FqN4NwWqEJCJKWZlabbJ7xTEPkN0aINMX44sPT1hPiYYI\n7wEk9pHDAyNZ/Tk0+JyFvkLtULH9Grwdt8dP+2sIJyJyjiKCseUAQ0VAQfE/\nlixsnlYTE+ooRKpcZYCtRluoGulJQI7LiwWkD/Fyz/Rip/NYebgsF91BA84c\n/qGfcCwUGDjeadxvnlczUkJDcBOEF1+VhZW50E7YvcqLnCwPVDdVhHUO0+pq\nUQ7NAVafhIvNDsxtHFOXzHl8p4Rigr1XOcqk20fo9aMZPHHy6t0c1NXvjufT\nNkK21a0tDo8lMyjkPOvyzgIOp4kYic8Iy3thu9CEyzonC88jbU/lUzz/qVcy\ntkSC\r\n=iwC4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"394a48c85aa714b74edbf6f2b4172e4b066f604f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.5750f7169.0","@material/base":"5.0.0-canary.5750f7169.0","@material/theme":"5.0.0-canary.5750f7169.0","@material/animation":"5.0.0-canary.5750f7169.0","@material/typography":"5.0.0-canary.5750f7169.0","@material/feature-targeting":"5.0.0-canary.5750f7169.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.5750f7169.0_1578506208802_0.9097500293012992","host":"s3://npm-registry-packages"}},"5.0.0-canary.f7abc7a43.0":{"name":"@material/floating-label","version":"5.0.0-canary.f7abc7a43.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.f7abc7a43.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b40c58261ffe18dd20ee0e6d997bbabca75ec9b3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.f7abc7a43.0.tgz","fileCount":30,"integrity":"sha512-1nAshu6n3Rq9FlfPNIzRuE9PgfCexmZdvE980z75R7ls1nbR8Gs3hW07Ypi+z61ujupy7EnIR3b5ZTXNPP5Epw==","signatures":[{"sig":"MEUCIDuHc4/8IClifb7S4AOQ5I0VY0xFrII6Hl9jNkjQoGK0AiEAx5/hiVVo/QNzXcIuBw37zvQ7pphZeaQTjqc+v5IiKOU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeFh8eCRA9TVsSAnZWagAA450P/i2TIjvzGbDp5x6vsbDd\nQVS+wEzLnGQKHodKeGegaaJ0XwsouJYVOWhKlOIPwhWpspkof1fBwA1zthtx\nPsCNG3xuUdKdo6azwhcF6AHgeje7p3Xq2rcSlJ8yuGUAlugSiay61VSehfol\nmZz0fqjCmOERza3tzLQcrixcru7nzGkoLEvE1hzlSIEeM2VajXZNusBEaiLv\nze8OxSCdRs1M2aId0fFGcdXI/rquTb5+0Zg04CwM7m2aYQ4Isv9hf+vYIRCv\nL9C48LINbXTkV5vJgnMbRRPPefuTWqQCL8sc3v8rc1i9O6ncYFlHhLvDgNyc\nHIbNLVtsoSh33u4GonRMMQDhX/2zEmdO8sII3IJ/Bip8PEsxnmvvS+A1z8eB\naiwGhhl0+c3Ch+AziZ46yJgFH8BlSC9X7ZBsMOGVivJHQ5qXWuHiimRpJpfG\n4f/KAnFKJ79v/hu5gR0gn0IbUUtP/O+FypmwyZClY8J/Q5O96oJcI/QY8aZ7\nM8/IzMQDLlzV3qZva68igdPEUtJKZGTDe7h0xwSFqw2O9jxBYnx+EZipOflO\nGkVa+XqxBjxtQeozEsJg2J/CUBGE/p73tt7V8puPa2Xt1mLilsk61rUj5Uph\nfNAy/m8U/yg9UueSslgxW7/LqukYdNBJ4Oa0uyXNwuCENVA3nGgxvDwQprPa\nEjoq\r\n=H2m1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f7431b4b45a3e410e9cbc1ae6abe69c3b00221c9","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.f7abc7a43.0","@material/base":"5.0.0-canary.f7abc7a43.0","@material/theme":"5.0.0-canary.f7abc7a43.0","@material/animation":"5.0.0-canary.f7abc7a43.0","@material/typography":"5.0.0-canary.f7abc7a43.0","@material/feature-targeting":"5.0.0-canary.f7abc7a43.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.f7abc7a43.0_1578508061876_0.23473587872323165","host":"s3://npm-registry-packages"}},"5.0.0-canary.bf7b4a061.0":{"name":"@material/floating-label","version":"5.0.0-canary.bf7b4a061.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.bf7b4a061.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c231bd3db20b1e0434b958aebed3b80811fd0233","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.bf7b4a061.0.tgz","fileCount":30,"integrity":"sha512-tDRI1RKPOCX+O6AVsgPvxcrgFkq3oz6t5b4S6ps9+TRFzJrNjnoKAaBsnleC8ISAYa6O57xXByUUNCHmaOhl/g==","signatures":[{"sig":"MEUCICK7XtZcVXD0vSDI+WxGCAZZ55DxONtIATJ0xhQ0k8ycAiEAkwCUxzVOHDBgwVskQ2kQg48Yub2Ri5yOZZVxNP23DJE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeFiJaCRA9TVsSAnZWagAAp/MQAJagWvvVrnUIEJZtNtrw\nLFZeHbCTHP9PoXPZXtnQ/vBwyHRZXhqtPBmqoBhgSW8dj8HNGe6rqTFVYWl4\n8YrnTRbXNFm8ggNv98bYk5Vp26tM/QuyZY2wFjFqbcQ1zypl6+c24cArfKGt\njEP7xRwP+25VBCWPX5BJkuWSuH0ZXLmbdmzxrSc3/wu7wHM7ZeK40FoG/Ovw\n6QV6nqIGlh7KAuZH2CNBMua2y/O1nzegBeCfGd1KwLDUL6a05pvo9heG5i/y\n7AUcFS9rUhtF3Z5U2sEcWhHT3g640sSqdp5aMDI9dU2bR7XUv1R1eQ2JU0Su\nnwA82D80E/XIW5VNKK/NMnoOokz2fFIZh6xit3yRsg8kk+RqK5STk9TEE0wV\nb7INkyOqkDJdIFU3RqFzG6GhNW6d//I0AytR6KOcoL7UhFTQ44ponCUs8ELr\n3PYIWti4vp3KEd+trN2a4/0nYPDjM7KsmBU84JLDy11X2C8Zh6wm0xmL5Yau\n/zrvWsIS2ja+aGxjUz+UN8gpUP1m1l/AWvso/4viT+GNSjnHpxZ9ZjP+4071\nIxuqV6zqraMic1Pdk+paGHL4d+JtN7wU/+l7IqkvVLrDdjCmx+wJJrivGe9L\nZoS0dVLyszXPWkuqW3bky63QqE/dMQDKBYjGRguDuccEAYhR3iLZGQ6v/aJf\nYvM+\r\n=k8n9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2cbac03ca7852ef897dec80561a01faa8b537228","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.bf7b4a061.0","@material/base":"5.0.0-canary.bf7b4a061.0","@material/theme":"5.0.0-canary.bf7b4a061.0","@material/animation":"5.0.0-canary.bf7b4a061.0","@material/typography":"5.0.0-canary.bf7b4a061.0","@material/feature-targeting":"5.0.0-canary.bf7b4a061.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.bf7b4a061.0_1578508890250_0.4060775394866287","host":"s3://npm-registry-packages"}},"5.0.0-canary.784fa7903.0":{"name":"@material/floating-label","version":"5.0.0-canary.784fa7903.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.784fa7903.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d96dbb2fa2378fd7cff0a0ac271e6913c191eaf8","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.784fa7903.0.tgz","fileCount":30,"integrity":"sha512-DBHJZaRAdqDn8gbUZIMgs1n3k7tbZuNxJNNRwv41NarOFn5C+HVaiPItW2HbaD7GHrF9o3OIGF6husEdmMHZ6Q==","signatures":[{"sig":"MEQCIGB3ReRKjHE2eWvF7kG28+UYiXPiA42szM2zxNayDQFLAiBrjtRP96NAP32pMxq7qzqPsMypWGrZ/q+r6efB8ZzpBQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeFikZCRA9TVsSAnZWagAARGoQAII5MW+RMIzG2da7puDV\nbQv3jH7dvkinvTp+bK0Pl1gbUs8IV5IEp5uzVcXZUGYBW3OKC3zoxcyt7i4m\nyOqzP+08o2d8ms6R+HgU96/Oavo0ZLnjbNFfMtNiPhAI1QxOqoih4bXjXAv2\nuA6e4zF86f3ORdbTA2WYIHipbh1qFVlveaP07K9bd2hznnHera9QcH2IXyos\nlYZxIHu0/ZIxGyBJnxTibrRDDznj8IqnWg+jNWRDIlgmf9UlXTwy3qaoJMXH\nQA6nKVOH6gUXt0a7KIvQFqsn6M550K2tOw3jpgCQkLO4S1DTnnlRefSdRPXb\n86pmhbLtxoYTGi2UNHWLkc7vyXYvj6bBAWEETz5YGwfQAqENgurgysRm6U68\n50A5sH+ghKH1k992HrKDcLEBnKA/5mzkrERpYv3RU6Lf9UKC6TQ6x5TazrG/\nUZKn2mEtg6h3tJY2u13Hc5MGu3ibcYMQa7NJffWFgevoeakTFi6R73grJia1\nxF+CQ1Ivsb2XeSPUY18zjDieBg/rc4YqtEAxq9sIWCT85ADTPWvwUlPwVe2t\nNe1x7HQT/bLbQt7Gpo6xxbSE5s41WLdb0/lB+8zpv5neAmiHlkOzujyH3T/8\nTAsQFjskZs1Thyv/24DUxnRQUv2Z+xdG5j8l+nn/p7yFW7EqiAFE8mxSIfp7\nBTN6\r\n=k1kN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"61b0d187c5c030042fb90bb59c1ebcd090186cb1","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.784fa7903.0","@material/base":"5.0.0-canary.784fa7903.0","@material/theme":"5.0.0-canary.784fa7903.0","@material/animation":"5.0.0-canary.784fa7903.0","@material/typography":"5.0.0-canary.784fa7903.0","@material/feature-targeting":"5.0.0-canary.784fa7903.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.784fa7903.0_1578510616589_0.6279209272097916","host":"s3://npm-registry-packages"}},"5.0.0-canary.823c050ba.0":{"name":"@material/floating-label","version":"5.0.0-canary.823c050ba.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.823c050ba.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6f65ee701200bdcba4d8052d9a94beccd721c89c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.823c050ba.0.tgz","fileCount":30,"integrity":"sha512-aqJ35cWZu3RqDRFo4oCR4wMJuHvuTEgZqpLh2js3f+GZqDz1Zg/aInpDsiLlVbZPDsnmDA+Uhc6+Nz0MxvRr7Q==","signatures":[{"sig":"MEUCIQDhuylXB/1WNyf7VMeeSVym8HZJQK04+FEXtSXn+ZkDcgIgHDG+Hwy14cu6Pz39rJdNgvq8/twc1v7nr1wv30/7o0M=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeFjdBCRA9TVsSAnZWagAA0rcQAIQ+iKSFcwTVumrCm+vm\nNiw5G7kXvpxpSbT28WSd90fIts2f5UlVtr6kWuQvWE8sBPBshQs3uv8jLecF\nZH8piTZT9BVtQHX97s8pqdQss6MENOubmK2FGl72oOcfPH6/DL6/NnoJd1xz\nJG9lXhZC1dtxEg+UXpTeaDqLzDJ9zjYqGvSKZXnTlYKMxU7mxvJNGeHGfpIQ\nxsVXy7bpvGxYhuWrrmxs7sGu6tgI78f3KKc3ZvNokHxT+LFg5xJXrKsR6J5Y\n2pcwu5W3i2NhfGcINqI5pksAa03vvTO/qivmBe+/YRM8zfUtyQxLJMA6zHSK\ns3NBihN7okaO8MRJ0asc29pziS7rsxSWPljQ709JkKitnwm9eRJXd0Cbhjzz\nDiAbgyR2/atNeR8AXr0Vc22GJYdfVu3/t67lwAc2sG7zZ3+B5ZICZv5FoZ45\n0geJjEzgf+kWrbopzO6IXaGEvLOf7Jvp0k6JH1+BGr91ZKzLmykONUmmtUbo\noUtgIuIM/bkn2k7J+ghRChpJw8mHzjdqby9G5mjtNlkmhdy/kFNpBCZ4JuYu\nOty0i6yT9HxfWV3yJjErRtRP60XgsHiIMlT2UBtRhzLsnZxB6w2Su4/PEp6I\nvHttnS0IGPPyUfJSLd/hh301Q/mgV7OmKjtZC9IyXiYTCBXCx/nw9zu2Q+Kw\nm2dM\r\n=Zcnd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b08bf7fb482cc6c0e80d365ea2bf510d80680bdc","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.823c050ba.0","@material/base":"5.0.0-canary.823c050ba.0","@material/theme":"5.0.0-canary.823c050ba.0","@material/animation":"5.0.0-canary.823c050ba.0","@material/typography":"5.0.0-canary.823c050ba.0","@material/feature-targeting":"5.0.0-canary.823c050ba.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.823c050ba.0_1578514241575_0.026606673546074155","host":"s3://npm-registry-packages"}},"5.0.0-canary.70c708dee.0":{"name":"@material/floating-label","version":"5.0.0-canary.70c708dee.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.70c708dee.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"266f036e2712d45d24f453fc3752d8d8175d73f8","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.70c708dee.0.tgz","fileCount":30,"integrity":"sha512-FnyNefKN4FL2RVUoiDYhqEX4XH8/4vK7FvLdJ+naw9x3EciBE5+nKvfK3nRRApRqkcdM5TyaW6QTeCx41wh3sA==","signatures":[{"sig":"MEUCIEQuo04Yto4ZooZGlkFrwV6nAielx8r/7Hms356CjVZdAiEA0uo9IGxE56maQw2MOZphYpr+OwLukYmPUWQ/U1MzG8c=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeFjnnCRA9TVsSAnZWagAAyGcP/2uGXMkqrBe9/58zuW/3\n1o8peBTJzhTuUTQtkiR01CCJh29PjE+IGsV3PTB4hN6rUO/LvR9nPiJpcF57\nsbYao7yG0Cr3eYmAVXlf3eLGallDgmqdVhVFtgxqXBIbGLazzhx8npssBZLi\ni5u/2zjZauS6j9sVe2Vg6nmfr3ZVVTxDYnU3EjIExq8pu82iTKqSiWuLpROD\niFPBowJahPatvHpl80fvNNQrU8O4TWUACio4uw/PkUyfWWBkFRP+BbgwfJIN\nSz6DTQoiv6x0hbH96GKWCzU05UywDsjYpfu9l7iDfrARCTzo/JsWtKICIsnq\n99BpY+bfrZiCJvfyRIf3bU5yLGnVHzYcJng2iPAgHfV1fjtFDam4xWrfnqS9\nFA6b/ZJ3oJAAPIeIy+xyGvNdemVMvI2pifowhHJrRGO9Brdf9SqDgIm/eFbd\nwTjKupTDjUptjfRerYCL110TxOYVqFb4ehKTe03WPZbBRHMbmNUAgpuwuaYZ\nJN1I7zpuT9TQczoOSW20rfH1Z8Kwt6f18uCAY5bfpVnu/+tGRwhnuXFFvuzr\nPA9UoV1kKH2wJW2VQ7OYoNo6JKZtYKk1PmYMS122jBF3KtSvtLySZhK1NEtx\nFvEYtFGd7w4TeEYvwsdOgFgUxh0wp5dq+XRlPT+WmyDaLzsIb+OHV70rIU9d\nkdqd\r\n=1a78\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"096bee7c4a6fa97b650100f3d0e0cb484db375d2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.70c708dee.0","@material/base":"5.0.0-canary.70c708dee.0","@material/theme":"5.0.0-canary.70c708dee.0","@material/animation":"5.0.0-canary.70c708dee.0","@material/typography":"5.0.0-canary.70c708dee.0","@material/feature-targeting":"5.0.0-canary.70c708dee.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.70c708dee.0_1578514918725_0.6513558814622951","host":"s3://npm-registry-packages"}},"5.0.0-canary.5ed9d13d0.0":{"name":"@material/floating-label","version":"5.0.0-canary.5ed9d13d0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.5ed9d13d0.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"0cac4dc4f728f0efd1179143f6e5a834b050c5b6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.5ed9d13d0.0.tgz","fileCount":30,"integrity":"sha512-vXWvv2JPguJNFmSfhRoJha20t2DrgdJgl2EXmgRuG6HgkCIU0TZ7rLlNbHTyGFqIRlV1iYytuHzpeCytfwhrSw==","signatures":[{"sig":"MEYCIQCmh4HsDYHeJiYklpMgfz0MwLNCt6HReUvYBWo6BhDvmAIhALsVafVY1DDqmva6myEgRYYYJ84gpTIUgkcf0RaoTCbF","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeFkzMCRA9TVsSAnZWagAAIJQQAIEztFIAcbLNmu/iPQNl\nREMW8YAf1qPogKxLS3Lgn0UbuoEEP+jInuGdfo8WSZ2w7/t5kFNSdP3SJHP7\nqEEJuYvEn3CZTxPSMf3YULh7scSK6bMxdcgaDKq0YB2sAyP6RZD+2hot6//G\nlym9m8aUZc7rXvtUIkzTyfBgPpE32hk572JPezIQvDUGSPGRt4bgTYe57n3Z\ntF+VcCaPvp78AFNgGopn8i1JKKtOvnpER3MJBlW0t7WViEVXobug/WweG46E\n6T/3P+v9RpeNN6VsCI1jZfrvYlNp9pOvj4Iz0q1oVDcB6FnRM8FPFoAoJyVj\n8lB5vVrWGNFCeUNiaD2sQjE5SLDIeW3UiCdzMwxSK2QPG1wMWHz4rgvoys4g\n45268vJbCV6JyzcK7mJkcGi4yLZIeSluy6GXsbVU46bFzBZsTnYUTNy/pPa1\nPA1pbcSc2nEpdthCDYs+MTNeFYwO9VU4Oxwh8i8RmjLC87+tA/+1OGQGVsy1\n5UIETFfMeqWHD5wJebNm6/biUgfEQCt53e192LG0i9kccfcGueREKFon2Nsz\nmNrEU5IeSsCzQlsceJlZ6v/KXnNzZm3vvsS5Hm69PaGWHuwS67jpT9BC0sOV\nz1DySqS7ONKq1bd65V4eTh4DdWGFmomoArCZ72yw/9ep9C6GJGY4GZennGWz\n0LCY\r\n=rEsc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3c9ae4313970bc3335cb0223b3e10f3fa3ee8ae3","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.5ed9d13d0.0","@material/base":"5.0.0-canary.5ed9d13d0.0","@material/theme":"5.0.0-canary.5ed9d13d0.0","@material/animation":"5.0.0-canary.5ed9d13d0.0","@material/typography":"5.0.0-canary.5ed9d13d0.0","@material/feature-targeting":"5.0.0-canary.5ed9d13d0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.5ed9d13d0.0_1578519755826_0.3686154771230141","host":"s3://npm-registry-packages"}},"5.0.0-canary.4819cc7e5.0":{"name":"@material/floating-label","version":"5.0.0-canary.4819cc7e5.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.4819cc7e5.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4851d4da04d1812065f26514e963726d2aa22b60","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.4819cc7e5.0.tgz","fileCount":30,"integrity":"sha512-3+bOz7ZgLWXhrNK/9O1JXozBvZLPVGPg44mO+CrxeDYxYL6Jnffl/NP56Q8butdFwp4kQ/LdC2fffyQ3qXp0nw==","signatures":[{"sig":"MEQCIFf6gPWBQXe6pc/dX097iuHLEfaD9q3GK4iWlSK0iOamAiBDBeOH2B0giOwTDIymw1fr3SYCANHGm/xQ3RokU84YsA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeFlBqCRA9TVsSAnZWagAA7ncP/Aq9Kr+yS4lBW5u3s6VW\nM2QYDPpMiXnKGcCucn9QBEjbAIQBymslJmx8W763nv1xmWbPMNHcYMLn8JJI\nthvLUqY0cO6vwQSu6c4bmp3I3bQrJp4qYwuUJfB5brHJPN7TyrqHx8ydent/\naAKeZ189mIjixslgS/p/CH16Ub7HstxOCkBPBxBs1/N7Az5kCa1aMyxsa/Px\nQF3zL1sLIEJxwIBbj31zA7y8pJXie0Tevr7ts4Pvqh8XVk1YFlmjy75MWtab\n9IKXQguiJbGjfbbtmZ9ZGO2w8PJhfn/apTkPWlTAew5VMrNijLr8PIRNLECJ\nDmO6PSqMmEwBwOr3/S2/0ARgc9RU/X0jSucy17frRxH66mXjw1zN/qHCoXyu\nepx7klWDMOcIoKINNguiMVmzQ/HShMV333jpkS9HDTy6Y78q2Otlqt4SdyQj\nBWfYrKizUuN2icC9baRTSTVP0iUYIguv+SOtREhYQp/v2D+P3UaZUhO1958f\n1YHI0UpSd/LGwNvmefUWq8nCKJDhOMe7yQYgbWPB6iMcCtuUEys9Ub5Mz2uo\n7MmME9gtq9rHVpYku9XUrNmUspFGcYrJ2KL/JyteNRE395IyqHkRlYAjICYP\nvLD/eZgkH7Y4SWcgFbyLaaQIh9/jKZKK5a/J2uVBZ9DE9PDxR6Uv6I0GlHt2\n9HXx\r\n=MUGK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1cdb8bd7292ce5180cfeb2b5ea0cf8eb4aa6a931","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.4819cc7e5.0","@material/base":"5.0.0-canary.4819cc7e5.0","@material/theme":"5.0.0-canary.4819cc7e5.0","@material/animation":"5.0.0-canary.4819cc7e5.0","@material/typography":"5.0.0-canary.4819cc7e5.0","@material/feature-targeting":"5.0.0-canary.4819cc7e5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.4819cc7e5.0_1578520682094_0.24027334844312564","host":"s3://npm-registry-packages"}},"5.0.0-canary.fe3ffd2c3.0":{"name":"@material/floating-label","version":"5.0.0-canary.fe3ffd2c3.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.fe3ffd2c3.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"cddbd137197c6894950d48955fcc484e1b65ba80","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.fe3ffd2c3.0.tgz","fileCount":30,"integrity":"sha512-3kdIfR5nhlU0zwAp+iNc7gkbE7jM5SE15P+5Twzf/n/xpW3LlLNcXNiiCRvNYarIVBVTuxqDy8RGRkHiaxiKRQ==","signatures":[{"sig":"MEUCIGFKLnYoCZ72vhQOvPxh6mWzd+kMuNt3neYcG6A5CZqPAiEAjKOVaDuyV0v6yZeD1NlYc3iu1QuQ1nIsJd0cUjPRylw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeFlSsCRA9TVsSAnZWagAAsLwP/jNBky/Kk0h4LDBtgUaf\nmZQMPopQcS6eZQ89vrucJPuIBRGWhpkwO109LQL18SSpzjg8i0iHbIIBJY0I\n01XOAtK9JkuDG9V2EhPSRn7uDnYkk7+5mKaaLSu2RiPPFwLM3rx4Qt/Axnyt\njuOQUBW8noSRht4LJIEXl+7KCLu/df+Axiuh9awqbDrzZfXSzEzTlsuEGNOm\nLARCtxgYYWcCPifyYUbxyqHv1ovjpza3o+t2Fg6ksK9kJj4ZfesOkV8YsBTv\nVVzTFteIML2T+aKMlLF1p9/jNyqb06ovCW5ARbO/xLR9X7uKs5ls7cGMPB07\nyj5jUpji5d5gNWEAUOumrh69BIwp/DDy/x8BJVDQ+n0FUizSnqXpFci1YIrZ\n3pxsy+MwkWmfRuVgxy6B9/IyGZ3OFlsC6fG5sNqJsbCt6e5xPjKdtbR4od7l\nfbZudI7MroAhfEV4mhBITS/zyz3MADUuPH6ghWxyz1IcLYcqgYUE0eQWARqT\n++svYsvrMt+wQA0ipm/sAMesajskq5NfkEsIoqSBVvl6sVkmkvSD4+pMExIy\ns/IRuUzvuBsDLrTWEOOLDMVps8Sl/vZh9xI98ldvlyaEUSl8cPh+6qGGBo2+\noLqXvTaeYCupwo53MZqxHstnMSHY59t76r+pbqbFkyzWNLu9Fp/yHra/zWfg\nS2ue\r\n=4bIM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ef82dd049d6c2d6439fc79408aab4567780d26f3","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.fe3ffd2c3.0","@material/base":"5.0.0-canary.fe3ffd2c3.0","@material/theme":"5.0.0-canary.fe3ffd2c3.0","@material/animation":"5.0.0-canary.fe3ffd2c3.0","@material/typography":"5.0.0-canary.fe3ffd2c3.0","@material/feature-targeting":"5.0.0-canary.fe3ffd2c3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.fe3ffd2c3.0_1578521771717_0.7747160968848426","host":"s3://npm-registry-packages"}},"5.0.0-canary.c0e850090.0":{"name":"@material/floating-label","version":"5.0.0-canary.c0e850090.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.c0e850090.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a84effb93de2215c155797ccbc218263a8881279","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.c0e850090.0.tgz","fileCount":30,"integrity":"sha512-ja3B6QbgWK369W+JlRtv+/BkiE/0FFUC3KLaru88h5CHE57OslkntXOGD2HiczWpdRcWWyjWhIfgr66WwaeO6Q==","signatures":[{"sig":"MEYCIQCz0xkndZL2prJjj3+DeA78e8Pzz8l/yq+xrQQz1tj/RgIhAMfNhRMbo+w1/WUPbiEkejmCNXCxcYerm8wPXuRgnbqv","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeFlZOCRA9TVsSAnZWagAAt5gQAIyxLKiBuVBJ3FPCFjo8\nTqprtnyhAtbC3qK8pZdaj3d/eZnljShIvek1j94WvCDKKGF6D9swsQ0MO9Ew\nQgrAr4dpWRw3N9ahyGD+1KJX1syTqAKPFRmX5gb+fdAkNYyNPkQGe3+tJb4R\n7+XjyTYNzZny4hTyThJpuIV0XY9LE36ELLOB8B5Isqvg1MqUe3CBztkx5ESB\nJuBC14N0F82fLoIscTzi9YayeXr2K2Dxc2X36dWamX8QZb+4JYXM5E+mb3cW\nvqo7C4CPn899ym7lpeV9rP6IVmjrJ48Sq4q2P/jLukCkaTtn/B+1ykYfbWar\nXH7fhXta+KnPKdgjgILv82VNoBXls8LcSyvMrp4xb9JSoE7isj68+hkkIZ7i\nlhDEz7vd5dLEG+V2VrwsaaVykAkFUW8S6yhvoUmVefuk5jl/7Or2R6q/l/AK\nGY5ujbS6UwsxwSVJmG/KKZVcL2Loo8QXutybhi3sT5GXvvn4bJ7aSCBv171A\nniZv7VnyexlYrRBntzgszd7/riFG9A5hADHyZTvycy5DrQaGnFohjswQFqKz\nUKVcJ7lZH2ht2JfsUUQMZpGCdoDGi6B3Y9YNyP2ImhsF1yjZXwfWGMWu5YBn\ngcQtpmCiVyIR5/XTjZ1Xez5w29Qs8Cb7Ywt0/6D+YB5GZmer62yMKpntl3Lx\nUufs\r\n=4367\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"04d9e991ccc9d40d53d67d592c9532cb43e763a5","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.c0e850090.0","@material/base":"5.0.0-canary.c0e850090.0","@material/theme":"5.0.0-canary.c0e850090.0","@material/animation":"5.0.0-canary.c0e850090.0","@material/typography":"5.0.0-canary.c0e850090.0","@material/feature-targeting":"5.0.0-canary.c0e850090.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.c0e850090.0_1578522189781_0.7591437823417537","host":"s3://npm-registry-packages"}},"5.0.0-canary.615f86f38.0":{"name":"@material/floating-label","version":"5.0.0-canary.615f86f38.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.615f86f38.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"0eee52efbddf2ceb7ba3fb2e7cbf00e52ee89358","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.615f86f38.0.tgz","fileCount":30,"integrity":"sha512-/aZyG17gisDEY4tPU2SnVUTksWqPMYs5J/uJAmJXM9Lp2pq/UFGJ+IfYTpyjVcs8T31O2PYMjZUTN7eAr9PS4w==","signatures":[{"sig":"MEUCIENuxq76ooYfRZUPwaBE15OUmPlqR4coaeEUNNGrTi12AiEAkV8dzli9HvV5Payi/wrEj4mDTf8zfrBIDya9XlLsYmo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeFlo8CRA9TVsSAnZWagAA4GEP/A4GdLveOEMcqaP9CxBh\nKSPcHSlzFdU6LzBl5+oWucVica/kwJV7jYGwyvdXBIkG6HbzmTSbc08sucVI\nkAH3em6qfNI1mfdWqZlqKBN6HJYBX+QWEyLMOT01nR7qj9foi+N98IqHyGXL\nWkhhwTD/n+p6Ok1trMONuCWzYWSl7pf5toADa9rhh24AAkYNRcy1vfTH5cQi\nE6xfDbO4dbXCoQIyHhwkPJDsn82DRiVsF8A7C+Mf2kETasB1a6n0PGd054ri\ntd2iZvYt4LTDfY4ip2ESM1WRWutDvcuTVbuDj7xAQo3EWx1UZGcnAFJtHsWG\nV0WrrSv1V1HTtlucNUEJ/O+bMTb7iBvdmqjegTjI/k94uLZI71c9hAyKrZRV\nCwQmmxoSQR4nJZVYGWNldBiy3wXWZP7x+Rfh84zb/2X4bKDALKGQ4Z0VbzTM\ndYbCtFBZ/O6qo1pVT9vG7Qcs6B2UpYEyCtFXNpD+bpl0Ti7yBj7T0QSOp3Ak\nFIfmlNI0A88sK3Rf7B8/DA8jlpPLghxFRTxsI0FZa2TozeT78wEkRDvMeaHz\nZbuQ7mBHAgXxm6D5I0b6NPZNw2BVnoWaoudqaNBZGbgfIGxOlbvGx/vFCnCu\nCA4KBNzvlZdaUOgo957eLylXsRaV2QtrTCPjsLRRhtCrq5cGn8Xesv8JTkk0\n58cY\r\n=Juv/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5ae8bb946c188918a80b70e03e7d35b1e27089e3","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.615f86f38.0","@material/base":"5.0.0-canary.615f86f38.0","@material/theme":"5.0.0-canary.615f86f38.0","@material/animation":"5.0.0-canary.615f86f38.0","@material/typography":"5.0.0-canary.615f86f38.0","@material/feature-targeting":"5.0.0-canary.615f86f38.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.615f86f38.0_1578523196316_0.13220382665924846","host":"s3://npm-registry-packages"}},"5.0.0-canary.1eb032637.0":{"name":"@material/floating-label","version":"5.0.0-canary.1eb032637.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.1eb032637.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"8f6a84727c3ca7f992d23532089797d51636a44a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.1eb032637.0.tgz","fileCount":30,"integrity":"sha512-5anxWzIpJNGYcV9qkJQxxWNQ/PCtfNOVdcHwfqUs7B2Ep2oreNei/LDnDcH81+aqcq5WCBOIgi0KsWJ8zEWLfw==","signatures":[{"sig":"MEYCIQDIjz0m3wtTWQypZoq6qS3fNWs5IlWgPmxBUx/Jh9d3WQIhALS6D8X1DUsYsHSrSYs7OeTp2x2l2uTOLjJaGygcyJbO","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeFl7tCRA9TVsSAnZWagAAslIP/jy0pm3C9a5DQHmg6LOI\nI34zXeoIn7mq/+NKmnzJxzXfccOjNaGSPmVP2kdMrSY9pbdcbXwoI98Lb4Ny\n5YlxKxxu0Zaqv9nDdpGH61O5pnLEI6I+2Ro2whefRlRoXiiKrbuwXBivrI3w\n2D4vMq2gdvYmGMOglEpjfaK/jXq0QbqnDjGwRetI965/CT81LTNpQrWJF/w+\nntaYvZNwV7ik2dR9s//495A9atwyqMaE7jPhLsWKb92dmVWjSOsNei4HN7Qz\nL1ZnbRc8mTY5COejXrGjTKmYkj0+wxQ/pZLiy88sLvw8W2EYVokYrWUgO2B+\n39WOuwgojGXuD+L+OLo1LOIIgubvCX62+pnzjZi+mzXjxT/VL2sBEg14ELLz\nLiDqiDwjqTqkjtiaGfUrMw6uEbrDNRQ3UFjzqMy030JpcsbD92A0yw2+2Mro\nICqrbcbVrxfptfIEZct2w3SqvT7aCr5O9x0q7Vj3Vco5+J1ZDRSJQYPzYuXz\nLnSYFHVHJGVLX7b8l7CSptkilZ6zfdEe4FmoTXkte1SghLU1rmtojkeLsqaX\nyskT/xHw5FuEYZdtxtFfThM9suhlFk/tlaSU8kf1qidH+wDxJNPwL2mLZuk4\nJmS2T+AqIqhuCepA+sDlZ6s5eytLn2HJOQnBb+ef81iEvCCh1wVlVSqxBPZY\n+UhP\r\n=A9Dt\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ebd5efe5771491e06a78d3b1ca6b1af49af8e943","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.1eb032637.0","@material/base":"5.0.0-canary.1eb032637.0","@material/theme":"5.0.0-canary.1eb032637.0","@material/animation":"5.0.0-canary.1eb032637.0","@material/typography":"5.0.0-canary.1eb032637.0","@material/feature-targeting":"5.0.0-canary.1eb032637.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.1eb032637.0_1578524397507_0.03764482207064779","host":"s3://npm-registry-packages"}},"5.0.0-canary.5bc5ebfea.0":{"name":"@material/floating-label","version":"5.0.0-canary.5bc5ebfea.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.5bc5ebfea.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f4e70bcd5e2fdc2b95dc02e4b6c60f8d6657b51c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.5bc5ebfea.0.tgz","fileCount":30,"integrity":"sha512-TapjU76P+JbqakeO+pzltG/Vnl5WAGvzlHSueUnKytvy1Wi9V6CPutSUVC3NNPYSKJjq1vkgGKVJEzXw1R49zg==","signatures":[{"sig":"MEQCIAE6UYGlLZWulBLXY30gTomx4hB8r33/fTeAsAR/EgZtAiA4q77DhL7Ao5rt1RUmL2I2d0k/PZAz0rSR9fQAwNqpjw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeFl8gCRA9TVsSAnZWagAAkfQQAInReGDIY8LEgbZuXx2Q\noREzXPiWmw0afIDozaijf4Tprpk8pOEDIjeFNPtybRq2m2Lk92L3uEVA3fyk\nMSzWc2zv9hCcSx7cwUi5KGmqSnjY4sZzrF5jKxPEcoi5KsIkf6Vc6ntcx3Cp\n/GfnJjHOEx4zcsFQeHqwP4cZeTyUK82iZZ5J2iJK3hNT3Fdm94F8tXRzKfEp\nydfDGwGUX33oAMZ22WzPFhcg8EVjopKeWdfFJCT9euJ4Gw4VK9Z9y7y2BDl3\nakjgjmpixSMDL835frOTA19fwub0t3zuPAJ8HvXUomfttfsdxLPoO7IX5I0C\nsGJQ4B8SHQRwH4H0WLeHuvYXe7NR6Xy3zAiN4b0NAkuNn1oK+FNLzt6V9hdu\nb2fZUxrylLDonVyOqKLFyAXaSaS5aEGaESBpmaRCaQsLtPZCRmZtWY5qNMYt\niZexe3zkr5qvEeuGtH+bz2PmXAFOaJtyYZ1iwq0S7slaUBHxhHTE23klgvcj\n8TJZDbnb6hy+5Eh94UtneWUpwcpd8454+RXh3VfSR5JQ+AXKQSmpy4b4q47U\np+lEIClgT/zuHgzl/uFv1ks1eNTaaQ5FEhiA5O+a+FauklMcyjVnTzU3UWGd\nfqvTjyJwmSn2XubtOmGggAM40qkQ0Vub1rneB14e7pUqBb5B4fyiVxGNNYNr\noYRI\r\n=Nq1s\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8d87a9536a0b9e4af0865ecc4d9b558a6c193f33","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.0","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.5bc5ebfea.0","@material/base":"5.0.0-canary.5bc5ebfea.0","@material/theme":"5.0.0-canary.5bc5ebfea.0","@material/animation":"5.0.0-canary.5bc5ebfea.0","@material/typography":"5.0.0-canary.5bc5ebfea.0","@material/feature-targeting":"5.0.0-canary.5bc5ebfea.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.5bc5ebfea.0_1578524448312_0.3553251847776875","host":"s3://npm-registry-packages"}},"5.0.0-canary.1112b8def.0":{"name":"@material/floating-label","version":"5.0.0-canary.1112b8def.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.1112b8def.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7fd4ce3939d2228d7448ab982f6c114999fcad5d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.1112b8def.0.tgz","fileCount":30,"integrity":"sha512-fN6pCEslK3QXEYyWuwUBm4y088550qlfwKfTAg/ZHKbwbq2nVjY6MO93+ONQd6jLBGgv/wVPyTIQfu++KnTH4Q==","signatures":[{"sig":"MEUCIDjV4QoioXF0z555LEGMYtjpmAnp4YhFi+BD8J00QdUUAiEAqZiVP0ZLTdMIGWv4X2lXBlTY2V59KWFmHaSz/+pYBSQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeF6TDCRA9TVsSAnZWagAAlhgP/AoNslpziX/A1qWYQ7jd\nowFKkoBYLb/rXhFqNMk66fRgUoJGrB9QQHkShik/wH/eZq7XtRPohYu/tzDj\nSaFDbLVSUz9ZKLgXlmlMGJC8PumB1GNbp8j00MmBhguErlPBm8/3A2qDkdmc\n1PQkMrxJTt4z+cvKhYqeSrMtLcHEq4RfHZlhCDEBdnj5NL6L+eTY9dslNLUz\nWyr8vBj3DJkfTqd/equFA41HcyMezYUi6Hsblh1TvZ2/qH3f11HJiFRsuHt7\n/otlSDe5E0pOxY3x4kvYPyeBR+vZnkyHk1tAsvt5eZvBfV02HxMTit84f4ub\nydFp/02RN+O4ncfAzVTKYRAMICWT7UVcMHo7MUPCNgWnUFWnQOK75YNiusuy\nss2zCY7yBZDiAzOu4/1UxSyLfExPr1cYGCAZ8zlvXNuW4K4Lk+orgkP1Rhjv\njJhUaS+I8LJ1x3wigacZscoL3tCT+icdNoeNAbBgnLnMohLTS4ztt3nmxJIp\nZ69z7F1TLMQUkEnL1bT3nQDDIR2EAmAcPeLvROeyVRejEgQF7arR+bPnaBV2\nhlqMyJtB4AN0buPGk0zY25qis6QrfH3pJtw/PjU4Y6qNQl9hUH6qME9BsjGE\nzqcMJDkcZSSTvhNv62puvjzY6ehaxG2ayfmUtmmXYsYZaEEMI3EOsEKyoGa6\nk38j\r\n=L2S0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3fdcad176780c1976528d217d2fb149875bb4b03","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.1112b8def.0","@material/base":"5.0.0-canary.1112b8def.0","@material/theme":"5.0.0-canary.1112b8def.0","@material/animation":"5.0.0-canary.1112b8def.0","@material/typography":"5.0.0-canary.1112b8def.0","@material/feature-targeting":"5.0.0-canary.1112b8def.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.1112b8def.0_1578607810898_0.4400543834866568","host":"s3://npm-registry-packages"}},"5.0.0-canary.aab102017.0":{"name":"@material/floating-label","version":"5.0.0-canary.aab102017.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.aab102017.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5bfa23ad7ab1c0976f9e64504045644671fa6278","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.aab102017.0.tgz","fileCount":30,"integrity":"sha512-YUTavVJJuwWxLYcG7lnNKyvz47LtloHW83s8mhpJl92lf53MYM2+4VYF4+22LpNWUMc+d9iWMHHZR0QszYtA4w==","signatures":[{"sig":"MEYCIQDde5SexQIFUg9W7MavvqbTFX/Nczvg43yF027hD0n2HgIhAOuiNxl7FWVpoAwEzdRT3a6za67dANIiH4eVJIW2yozu","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeF8FhCRA9TVsSAnZWagAA0C4P/3bHG6ly529YJUBe5no6\niPbhVCCrPyl53kee0wvcKJk4Jw0MguPuStHhbChrc+i95+y0AKElTnrTO70S\ngJPOmi5eqvpOpjgO6sXpb52KONo7BMGEGkPOulLbqpTXZpPgCATwP0plYI2S\nRjnc1sYhuX6M2ZjrsG4sr34TvWWuZv1WHHSbdocIqcV9/XbxJM9M48ke7QHC\nfy5zkQe/l+L6PyezLQHm6zwE3iRwHtztmc7gSrljiaB6uTYWYB2zkNLGVlDK\nE57D3CbCTphSTbM/iQGLijm8Z9OLtYXg6BGEL/+of7XltSCoTPo1btaK1H3j\n8JQBS3gyKrWA5MVhQJpGPMYWejfYrdQTareDMdHWEGI02fe4wAs4Cf8uN0NE\n8eCjdQd8SKv45E6uf7Xh2RrAiv20e5q/OGWViEr+SGy53zUwmZ6U7ihME/lS\n/s8Unf72s4z1f7ByyZDqGQSqHib0AwDr9iaSi+0JIrdT3JwZn+zY4EZNUNyz\ng1G0D34R+zp6npQTfTEeiRD4i9d6TWVgjYaFhfMDpUGngCnSrHdvUkE91in8\ncksnSHM+CdNExZtLFrLLEBAsJjIaZIPOrB4hpHjNEWimjKIPPwmDRqfdURtQ\n0uuMfgP1ktJuvBIc2+2QiK8BIfUXHaT72I0WtkMoWkRRk5QoO04OCWAiCHDv\nAEBH\r\n=1wGm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3f5eab02080f0c4fb48614a44647ed55d55eb9fb","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.aab102017.0","@material/base":"5.0.0-canary.aab102017.0","@material/theme":"5.0.0-canary.aab102017.0","@material/animation":"5.0.0-canary.aab102017.0","@material/typography":"5.0.0-canary.aab102017.0","@material/feature-targeting":"5.0.0-canary.aab102017.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.aab102017.0_1578615136585_0.09386610961951547","host":"s3://npm-registry-packages"}},"5.0.0-canary.426913342.0":{"name":"@material/floating-label","version":"5.0.0-canary.426913342.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.426913342.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f229ad88d05cb3e67faffa39dbb28eec1af1d98e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.426913342.0.tgz","fileCount":30,"integrity":"sha512-du3311HVefdnCTPQLPiC2807dsAgCts6QQgjfeYlrZMfqH83AC4BTqUvRdDuovEz59ttLKkLyH5Wj6iF8dgV2w==","signatures":[{"sig":"MEUCIDLwnd73c6IyDKEbPHNm/yFUh4XTEHitmWaKZCfOBGYXAiEA6AFAGZNBZwejZdiLaiH+8QBTgcSaaytBGpSL6YxvxAk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeF9bqCRA9TVsSAnZWagAAnXUP+QG8UtAlurcbsepcrQPL\n9RvtqM0NLCACYtcNRxcxuwghADRSi+Do5JZJLN9wvBbHm+ldNNubsqpQ60uC\nmwtgwDUrC5tWfSbsdH2nW2FRe64/tadketzfTfy6WNLdx8/KA6dBO0dh5JyW\nuKJZ0T9Pw3xLkSjIoCPZ2M2J0wGeftezxXb9zv0dGI6KmnsoooDaNnc3bMLJ\nLAmWCqE3/r71p7BS5K0rRuSINLRnsl4m6sQhsG45y0CY4cyCKQPm8LJhyahZ\nF9PLmz/sF53h9V/EVRNFn4bgvAIznthngSnkAIGc9A46i2QhnDcveKJ4N4M3\nR9T8JDqcZyjKZZZEkZXpaj1FTWzB3D2W16D6CKRsdytDee146lGIvDR9jJ7L\nir7J69I7z9wMcgH/GlnN6zMOJxHc2ALyfRLJ9L4q7wXj8YtF7O0ekuiGNlly\nBTM/R8H1A+oTrt3D1tKJlIyBVsJ/lsh0CZRqCEYnlaE9bODF4NOoG1orUFzH\nFo4b1WACsGKgmjJfVoOCorZhDmQ/o7PiqfkA7OWMeCcyodjy78BoRKFAsb8f\nsDwr7DlYEwtt147WegEuoY3mphf7kkYDreFdr6aLUEWzudFS3fMGSymReUry\nLmJ1ei9g4cNaMh200H47r3okzuvmmVICslnYNcI0g3RTAtjKK3kcPYunoIwO\nPkf+\r\n=MFBn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7a6219dfe8ca1677971694ece39ab423ee8879b3","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.426913342.0","@material/base":"5.0.0-canary.426913342.0","@material/theme":"5.0.0-canary.426913342.0","@material/animation":"5.0.0-canary.426913342.0","@material/typography":"5.0.0-canary.426913342.0","@material/feature-targeting":"5.0.0-canary.426913342.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.426913342.0_1578620649528_0.8314640747552307","host":"s3://npm-registry-packages"}},"5.0.0-canary.d4ea9a706.0":{"name":"@material/floating-label","version":"5.0.0-canary.d4ea9a706.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.d4ea9a706.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f959e394ef81a3c91465611c03acc6f798e10341","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.d4ea9a706.0.tgz","fileCount":30,"integrity":"sha512-Ck25Mmz4/2ZPqKzQ1KkEyzkb4Zc+vLQT/QN0fu2MGvcKzODzc5BjxvMd42Vzy3/pnxJqZmCbgsmiIF5WWOYAXQ==","signatures":[{"sig":"MEYCIQCacCKIyOu6hcPr3QdF9ZzKcWQSMQ4f5phoSbSwIK2wWAIhALEcskltcjFA6heAu0AuSAqIDUIk3g0TUfIG0bM0jGi0","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeGLN8CRA9TVsSAnZWagAA+t0P/AlVf7DtDauWzFwRB/ht\neCtKNjiRK280MeZoG5CA9SreWVyza32AeeqC5QDASSfwa/tdw1V83QOUTOFc\nGrkVAnsJmbFPXrR4RZPtHjf6egxTHDNS6i8dtXxqGs7Fwtab4h/LhCCdqKoY\nupx+hc9Ca/J3CMiH2jCWXbr2VsfQ5EsBm+Qtw6Of9/thgRe7BqZtCNM0Rbaf\n1/Iz8MFaZAtNzXNA83ecZJxlW/R1PhUBYNSUpICX4b+XiHu59hKgqu5jxcM6\nxUMJVoM28yYKUpolyIkYdvdpcW+ytaEZsWEhyjEykTkXBeYpruHqwk9yNT/N\n/CpPNtxrdnkMX/NgkdXUcHjqlQF+B3D7iXGHN1GYhi9uIEUpzkfh5w7k/eq0\nKLNhe2ZGtGqvq9bbp6hcL7C/1r8OJca7Z+I/yjem2UEKuUi/ai6A00wtOTpZ\nvSgbP3lMasi1rEBgfQ/vWXDwpkQebUOqyrichv7kS3eEg0WC+l9+u1h6C95C\nJC26JT2d79FUFBVy3+fDYlP4Xit0DmZH1fS8o3ZKg7jdU9giFez6kSOlQ+8l\nV8b1hWUBDV3KM+2QhaTm8O8RedcYcrz5bAlCSEceccp/lo8G/6j1cgTIYViS\nMjt0rsp6+OzqjNHxlWVxT4y+ctoXOBFrVzMh97axkyN0O3ifJa5jPIzlAlhl\n+nzM\r\n=n+6g\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f4f80c96af6c2e34c34a3ed8f01c1858ef738935","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.d4ea9a706.0","@material/base":"5.0.0-canary.d4ea9a706.0","@material/theme":"5.0.0-canary.d4ea9a706.0","@material/animation":"5.0.0-canary.d4ea9a706.0","@material/typography":"5.0.0-canary.d4ea9a706.0","@material/feature-targeting":"5.0.0-canary.d4ea9a706.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.d4ea9a706.0_1578677115688_0.33812309546530805","host":"s3://npm-registry-packages"}},"5.0.0-canary.7d4ee2996.0":{"name":"@material/floating-label","version":"5.0.0-canary.7d4ee2996.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.7d4ee2996.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2cc54cf1d2e5c8602f23c61e30d1b76105561405","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.7d4ee2996.0.tgz","fileCount":30,"integrity":"sha512-kbAYzItX/f2mJX8R1ztE6mZUgS1nTkEhnQziM+cmgqeutnG/8t1rwYBrWfOvvhd+REQYTtflDZv221hqWI45pA==","signatures":[{"sig":"MEQCIEKG70cdpI7RRO12ELAoVLRrrHn12nw3k3DWvOWDh/GTAiAftjq2mFtR2ec+6B/XYSDgaiBqcF5u0kSEuEpeyE9SMg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":159003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeGLrfCRA9TVsSAnZWagAAz4gP+gKrg/ARc5RxIF+R0ztE\nkxG+/tTYIFfAlGlTbR7LqxXFPO5lkBAUwUK6hlA1levicbjkdDSG617SHPLk\ncpFlTXBqKP32s4VLYXbKVpSRKnk6eh8Z0Vx6BhomeaEuW6u6+T079gmK8DSo\nOLh0yS9rbqQKs2O7UOl+yK9AXDUWRphRAglDntfl0GaYrDaRpWvjv54z4bxH\nknaGB0+WetsjaqZGm/PjGFc3r6OQHNQ7UL5R8/v9CubY3EXh/xV3ULDlcNgD\n0ehF2KJbdMJZgOWJe7Syr218Dcf2Iz+27eNFtl61d62Be1n5QdG3A95rLebd\n5hLiKIRvS20Mcj7mXhuyiO05hktbjKhxOt6i1UxtoxED3eXpp4Pc2nk7yQ32\nZW8FYm1zLVWsW09aW1ZpZ8L6yoQKe4Y+WvOILqkOJRM4Qe7TagbfxBLQOO3G\n/uDpRUDDrlIKEtomT9bidKNy34vmbzb1q/8IBVeMh2oR9cAWRWA0sjiwfEYT\nw9mjB7cPrjYSAz5etAqFEX9HpyKDVokA+RxWbAfI11qcALkfJ53Uej5JokOZ\nm6xYmW1rk151CnlHxu0t0J5UigMTxRTbxXCzSD5FQhJbIK5OvCgGqp+WNUX3\nShmx2e65FIVroHyd/EbxbrrssRpS+HlGX/3Y0MD2IyCnIWEtwV+7Q6oilMpP\nQp/p\r\n=0uen\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"32cff7b459a8aa1e335c6ccc84213cff0f6e66a9","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/rtl":"5.0.0-canary.7d4ee2996.0","@material/base":"5.0.0-canary.7d4ee2996.0","@material/theme":"5.0.0-canary.7d4ee2996.0","@material/animation":"5.0.0-canary.7d4ee2996.0","@material/typography":"5.0.0-canary.7d4ee2996.0","@material/feature-targeting":"5.0.0-canary.7d4ee2996.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.7d4ee2996.0_1578679006229_0.45267375915821506","host":"s3://npm-registry-packages"}},"5.0.0-canary.981ec9b6f.0":{"name":"@material/floating-label","version":"5.0.0-canary.981ec9b6f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.981ec9b6f.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7637d7028c1c6d0b82b463adc65aa1da7aa6f978","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.981ec9b6f.0.tgz","fileCount":30,"integrity":"sha512-ThQNj3xoRIVs9/T4bYfMtNsmwISrvnvXMap37ghNYCAsUiSBYWVmT+yIt68iOr7iYznlZoQT0AlJtWzrPU8aeA==","signatures":[{"sig":"MEYCIQCm4CrBni/kOw1qMDBDqO3I9EEe2tDV5ZCfU5CSjNNiNgIhAMe6rVKFGPZ1rA5A1sVP1DPsBtZ5o8cFFIc7tpOgUwKA","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":167661,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeGM/tCRA9TVsSAnZWagAAVioQAI79r9oHpi+o+WWRf3D+\naOvRRcFr91f/eyznQFrFR5m0lLGe05pgDq2kRTjEarf5PvloLpPvsu/QlKUU\nWracbF62kgODaAX59jjH8lVXrTZLL2MPBMgyCwcWHAps82KE7dzTFtQ3Yuaf\nFhpeEiiNXw8p1K4TulzyHykTn4qbkIE7l4GaUlJ88ypQJKvM2AHC4Z5aFFAy\nt+BBblLMGCkqWvw35rWpWheW5yhnN9mA3Akhc/iL2bzMApjcPVb6OhSpl9CB\n+NJjm5CrmV7A6IeaDE96sz1O7uIpus0ImJ1FUZROUC/umlpi50CGgOxktPXo\nd/Nx9Qv5EomHuAmvEVdZEE2DcBo31ojjBV+qkMUP5S18LHDe2+jgUCL+hm3k\netFqOpOoB/mjd6OuZizWdjv7t3sErKa47Ynx4dAU4GTBmtXbxBQomp96h7vB\nverOEVLBs8sDPG7XBi1YX+6QwhkXN6EKUua6TTsiweiGRfOzMUK+lWpjeo2s\nXf4IA5xIb7fC+SoTP+mHfwqcStXnfmxYD4vklWJ1WBawkhd7IXnhPKzimmVR\nwJ9JHqZjF17PuPrvWG2F/xs7H6Iwj+NcDyuUqz+ml6I08DNJe0TAKSoeUOWL\neLyzqm0c9yLHcg6ZpiUa38cVuC5iouIBc2X8NoNpRpPY+s9rV5K6aUAgeQjk\nhoEr\r\n=ali3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e2e9ae33775d14566dd45608f66087b2761d454f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.981ec9b6f.0","@material/rtl":"5.0.0-canary.981ec9b6f.0","@material/base":"5.0.0-canary.981ec9b6f.0","@material/theme":"5.0.0-canary.981ec9b6f.0","@material/animation":"5.0.0-canary.981ec9b6f.0","@material/typography":"5.0.0-canary.981ec9b6f.0","@material/feature-targeting":"5.0.0-canary.981ec9b6f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.981ec9b6f.0_1578684397431_0.15218574535804374","host":"s3://npm-registry-packages"}},"5.0.0-canary.737da83fc.0":{"name":"@material/floating-label","version":"5.0.0-canary.737da83fc.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.737da83fc.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"26e7cc45f250177ba9c9c4bbc24ef120bb3815af","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.737da83fc.0.tgz","fileCount":30,"integrity":"sha512-/svkzty7YhKnpruhQFtRBOn26B+q7Y0u+oBMVxdtML9GAjQHTjckms0GN6nfJkUZm+AQXBV68mSZ2/6NzC/aUA==","signatures":[{"sig":"MEUCIQCnTm74RrEpZMwVY/qBR6An8+bvPAgIDikH1oZJpNkHkwIgMqBvRLX8BMtFJjWZcEN4XBT+rY1NgYU6S7yAXT123vI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":167661,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeGOo3CRA9TVsSAnZWagAAbucQAJhgC1XtbUOjhOLFwiEU\n+M/beXHBx0M2CkLymFNbVTF1WCDq3RZJSh8EJQsKgAZoE9UhAO5PKb7Ux8dS\n5yQPdrAybf8h++JVZ10vgswT+CSZSgnerlV5HUgFmf1exd/Qbw50cJONxjHM\n+HUNUs0lQEVdKGPMB53xNHdOE+SG8X6i8W1Lnv1M0UIAAvE7j3WD1NIRYCp5\nOyjFcJ7lsTRfkwF/N1naXz/KiGsD18EylhwIIJ53oIsydF1Dr6PwKkY9MyQq\nvJyXB7ytbmXK/uhejHXa8Vdb5CB7sZj9zX4HazQyRwTWzbZBg8md1n2mhzIP\nSm8QDwRDtkqxeAm/3dFF1y9ZgjFjrAjhUE9F73FyrKiVHx13qakmYC4Rl2wm\nmsG/hfjg6v6GOKaNOgeTRrXhJZQfdiOpwIEaNsN6mwX8rUJJeKHdfwl0Qg+c\n4VUYAjZpmLBw0xWlz9EejiR3ISaaeeVZunIVs6NH260LWycQ9H+ayxDed1pf\n1b2jrYfC2JuyD0n0Num3JL/lf1twuJobvAzAFuqgBi29IBqzjB4vo/sB3Q1l\nkFbJNWu5TIkFoQ58rY/r3/jTPj8buIR9/wEbbeGasbJSJYB74t3FCAGDbwIx\nV05VqXsOeMXp6sKM4uadnPeeBfC5FQl9ngmNmWy7H9UXlgIxZr7yL551octx\nR6lZ\r\n=eISF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3ea8f6e8d81e688483ab007855dce5cba3b72015","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.737da83fc.0","@material/rtl":"5.0.0-canary.737da83fc.0","@material/base":"5.0.0-canary.737da83fc.0","@material/theme":"5.0.0-canary.737da83fc.0","@material/animation":"5.0.0-canary.737da83fc.0","@material/typography":"5.0.0-canary.737da83fc.0","@material/feature-targeting":"5.0.0-canary.737da83fc.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.737da83fc.0_1578691126481_0.8387382797525724","host":"s3://npm-registry-packages"}},"5.0.0-canary.aca8e6c18.0":{"name":"@material/floating-label","version":"5.0.0-canary.aca8e6c18.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.aca8e6c18.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5ba2ac0357084c1d13d6d9179efaccae9c5016dc","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.aca8e6c18.0.tgz","fileCount":30,"integrity":"sha512-z0pX/+X0jWd2p3FEJ1TVHBsh3yEBMj6fRfslLGgfSvesPK6ruIkpieUCjbUQZBml21TpW0R1qhHTZuZEZg27nQ==","signatures":[{"sig":"MEUCIQDG2jKs/cnrU0nTBYLhS51X4IYOlJj6GS+iQuWJEW2dfQIgCaSO/oHc7+NrMbr2IxK54fymPXzCAexeVeiKdaPrFSY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":167661,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeHMWTCRA9TVsSAnZWagAAiT0QAI3xWqb8Yq5B0U2PG5jx\n5QXcbE36mq/j19faDtIF6uhe1X1hhMFTogmYN+bysp7C1E64jLFIQe6cuym/\nCmyf689jglD6DXnEiCseoJyexAgH+dTgBXW2MgUrjaOIRyqZcZzMDHkUSZVJ\nypRBMQrGuSte2C2fb7NbcZU8Bn5ynygiII0zBNmlqnBFoXM//WEuHgCXJqlj\n8u5gF5l6wb0vb77XNKHkI9UWKFT5yHDZDEoWnd28LIWEUqEqeg/SZOV/T06S\noK1FqJtXeIb6WrB7deRXUfDMag4mW0LxbS21LO+v0tHzyG8PPk02DGuTP8ZN\n6bkWQ18scnyANHLDDGoSau1T1oBf/6e0k2r16fiVbqNYrD/U7F9aahvtAK9x\nUD4++NET9BaLoqtCoiH0TCYLLB/9+kZ5vX19lb7hzH2R+QP8A9wZeLSFjc1o\nMLFW8gsI4WRqhkWxjAKJ6JdVLI4HjoBac1oR9JAfS9paCU1DMDsSgxgdv46X\njCNKZHipId81qGrL32dkymml892d/eboYFHWtZdL5REu6Q915UXKN1bKZyTQ\nFEUXTU+R3snFbx7I0b6+va3P01jCFxRsIbhH7veT+kJmkqouwh/3uwRajmro\nu4G6BHfTyGs2EKfnv32Y22sIGjGNRKZeDxkvScBpXwzdvy23UcXk4gn1Eers\nOGJq\r\n=U7Vp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"47bc251033c39b1b8f816f8ae77c888c07b20fee","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.aca8e6c18.0","@material/rtl":"5.0.0-canary.aca8e6c18.0","@material/base":"5.0.0-canary.aca8e6c18.0","@material/theme":"5.0.0-canary.aca8e6c18.0","@material/animation":"5.0.0-canary.aca8e6c18.0","@material/typography":"5.0.0-canary.aca8e6c18.0","@material/feature-targeting":"5.0.0-canary.aca8e6c18.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.aca8e6c18.0_1578943891533_0.35734250387744826","host":"s3://npm-registry-packages"}},"5.0.0-canary.c38d84e21.0":{"name":"@material/floating-label","version":"5.0.0-canary.c38d84e21.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.c38d84e21.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"0b2bed98b8db41f3f5fe12c572047ded28804be2","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.c38d84e21.0.tgz","fileCount":30,"integrity":"sha512-h0cCKPskp9j7W5GdEtJbiMEIrOpzd+eR1E1jGPMp0/tS2MkWCTvN/LevSzrFherhloIxHCSHmr9Mp/qMJfGIjA==","signatures":[{"sig":"MEQCIDF47o2WjxOE16YxiJaVY0RgziVaGcp0HsjwjDNdnkI4AiBOvJtT4/waJQAINW5pqjcVvx29W8t4EzPUIXBbJjj9hA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":167661,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeHOuCCRA9TVsSAnZWagAAL9QP/1q3iesVGpYp9Yhk7Hwy\nFKjmRK1SakMAOwXHPqqGOQ/QKga2WCGbTN0iqAsCzhDlIec4r7wf+F9wT+PN\nYYM87KlYGDaiMdLVwIZ+gh2UncSjO07y/IQHj6pN+Tz3Pw7SFd58kAma1l2h\nWyLYh00EMhRjKFkYUhziC+XNSR4OQMU9mBGHPaLK7GsPSydlsyHHaqmpl02u\nFLysS+cdBBmP+dmFh3Fid8TrxFVbO05BVXd9jgy5epadQHH5Hcx//beO56fH\nTSMM3cgsQOts1rEFi1kvwvvcNRbOPzouWOZqvMoxeUf4sP5uhnDm8mKCd2uC\n+OQD4pUMtUp6xAfTG3LYQi+5hbuoSsWmDLg7U2TObYBDGMpKzSwd57Sd5DRf\nlNRaMTCC/lrhuJwBoqaqC5GZBihjTmE0DQP2Db6yok3faSmM6LOFQ1lPhjpL\njIQmzq38obW5OtERe0N/zyeRfQVxf0PRoSJwDnJXYCW/4M2IWb5gWpZk8FR1\nyEEgVeSxKfZSLQxwLUMW62F7nw1uxPl5REjh5lPCuRwSdiKaJc8Tp+8Q8mo8\ni6cOBaLLRpD9L/t5JW99bJAbqT4m0rkWlsRAb+fZYaQmiza0Kbx7clrQ2BnF\nirUzIGCMIopxbL5dKIESP58Gx/IODH1HQbWrKv9+pGIwmMdlk0N8hUZNDDC1\nG7GO\r\n=gFK/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f283cfd55cbe9b1863cb96e98011fe4badbb1fd0","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.c38d84e21.0","@material/rtl":"5.0.0-canary.c38d84e21.0","@material/base":"5.0.0-canary.c38d84e21.0","@material/theme":"5.0.0-canary.c38d84e21.0","@material/animation":"5.0.0-canary.c38d84e21.0","@material/typography":"5.0.0-canary.c38d84e21.0","@material/feature-targeting":"5.0.0-canary.c38d84e21.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.c38d84e21.0_1578953602258_0.7620336512389341","host":"s3://npm-registry-packages"}},"5.0.0-canary.a4db5fbad.0":{"name":"@material/floating-label","version":"5.0.0-canary.a4db5fbad.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.a4db5fbad.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5f6ead72368920ff24103db35b8f2dce6fa5da2f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.a4db5fbad.0.tgz","fileCount":30,"integrity":"sha512-nEZ/pOCArC1J2VNhruGGvIohsVnu0mImmTjFFqsEkGioIQurnO+rdj7u1/1EfgBCL4IeNReCCaWItUJYpEIYVQ==","signatures":[{"sig":"MEYCIQC/UqI5PXSyHkY9x0aJ/UY7AFlYlhbpGQfsZiaXYRQ/agIhAJfH87alENvs0JqXnsrswEDWyAYIxpsYFH8pPwd8+iJ4","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":167661,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeHSQ5CRA9TVsSAnZWagAAtRYP/3w17ztuPzEYO/OhZl0C\n9EnUJk65ilSlC58u/rsRUbapG7eO2P1gEz6TQV1dV84y6TUulx5m7PkN0sz3\n9exTTecPNxaaUP9i7ONDSikimqKkSMZICBqylWPvUTXhzfTwlalYKQFCVaTb\nOr7GersReEmy5bt3nxlrFw6MNmL8QX7zbUoIhCdjIpqHYPHZ+Own5gaGstDt\n4WJMDf/DTteMOQfqDF1Bjr4FIrXDvFkFcPmH+6RTMkmvBrUE2jMyr8WWQy+B\nSkgIObEDPbspf+0M/ZJtYvCwE79agO7wX/QA/7P7fpfz4Q8hwMaPzeLFes5O\n46JingoVfrVLClzHagfSf9jeHtlX47FAc7oZjmL9f71ueDtsTh8YEeajHh3H\nuaswL5PyDxXWie8O1pKm4BgTjxECCWkb5Ka2an1c+I5MmB/PEqJkyZ9SFUqE\n1t5aaLx3Heu3hkvDK24oZ8xOIHwgW4xLwCx3beMTtR28oMGRsVAKI2V8V9Cn\nTLfKQsGjGRJHY0urnbeU8aXX/dpkjK8wQni7OYawSWyF1+iSzUNej65aeg6P\nwFVBMHtaFV31mgsZ/y5q6gpAxAXdYq400RohnC3EGjQdn0J+gK3Y+UjcvMgO\nsv0bYYpEDdOKTuOIMaOYAJioV1tEaYX9EGMTB8OCqQVJ60CIWccjNrblUKqo\nn96y\r\n=evJq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"bb5fe141944679686f178779345a5880a89943a9","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.a4db5fbad.0","@material/rtl":"5.0.0-canary.a4db5fbad.0","@material/base":"5.0.0-canary.a4db5fbad.0","@material/theme":"5.0.0-canary.a4db5fbad.0","@material/animation":"5.0.0-canary.a4db5fbad.0","@material/typography":"5.0.0-canary.a4db5fbad.0","@material/feature-targeting":"5.0.0-canary.a4db5fbad.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.a4db5fbad.0_1578968120795_0.29646754853619584","host":"s3://npm-registry-packages"}},"5.0.0-canary.faa9af310.0":{"name":"@material/floating-label","version":"5.0.0-canary.faa9af310.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.faa9af310.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"de4b6ca0a509a4e754b1cbcf882569644f9bc879","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.faa9af310.0.tgz","fileCount":33,"integrity":"sha512-Qh4fLMmsMAaOwVotoOog1ZUd3P4QiHdzG42Y7BcJ+wWHArlL5gDLnP6cNuxFKhaXNQQvKiy010LSibLxhQ/PGQ==","signatures":[{"sig":"MEQCIGlnUN8f3x7i1LKERQpbvyfUHbzY0xqQOjhMfyI7S1EwAiBSxuKFQXxkIP6oqintrjcnrKu1d5rWyqQw8TY/4r31dA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":169960,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeHfHZCRA9TVsSAnZWagAAZe8P/14N159+wtSDOdBPGtaq\nW1Qn/4BOYhkjuG2l6t+hysjCpExY5UAGxw7CzhBOLkLkbWIYiExqUsYF4yWC\niUjhLySGlmVc8oup6VMyZH/Ctay9R5Og8M9BA72qi04L1wTs8bIRXlWRnHlK\nA/Bm0ZYwf/SZqKHX83wJvKe2wGtvD670hfZ9tkVs7GDJAqtiKBrpoZdI3ejJ\n6Qk3I6d/9gmLm6WGQXPMc8V0wN5XvsgVzOB3jJ9PY8sIdX6bLGLXe7G1mlLt\n0RAmrsQc89KMcNeNlTxeV/YseWhN5wHeBrgJJKdU5qMBAYL4fvuaoqi4pGh2\n5Dm3G5V3bFC+zvZzovz3TFgIc1Fx3Qng2UoZw+axOz3xtcKSEGdFi4D/2wRb\np3lQKfLZMsp3pdhou1lTVJCeSafQZP2JHQI/xZC7vtWZr+EomSY+BulB7+3Y\nOqu1j1FwfqHBdEB3eHBn6/gZaMqd9MWfAnwVdh0EvkeJ5i0wWptkV/zoXKSX\nVAMdJNFgsQIWoYIYrnfr+jJpg/YcPfPcBIb7bRrVPz5MQx+ru5W/BsuNywoQ\npj8Zwj+H8+QOrLz4k7tL96BebnjdwgzoHOocNSVt3ZxCd4w7/HN/qy8kdc7p\ntEoOnJU+qoaQmbigKJ2r+0zPSNayPpJWIx2qgGMEE7LVGTEPdfpi/Dc1pTFO\nHNMR\r\n=5KrI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ee374355df19027c59f24bdaa809bc18183453df","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.faa9af310.0","@material/rtl":"5.0.0-canary.faa9af310.0","@material/base":"5.0.0-canary.faa9af310.0","@material/theme":"5.0.0-canary.faa9af310.0","@material/animation":"5.0.0-canary.faa9af310.0","@material/typography":"5.0.0-canary.faa9af310.0","@material/feature-targeting":"5.0.0-canary.faa9af310.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.faa9af310.0_1579020760839_0.7962187518041473","host":"s3://npm-registry-packages"}},"5.0.0-canary.60354c577.0":{"name":"@material/floating-label","version":"5.0.0-canary.60354c577.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.60354c577.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"8639cc05ff664d8ed3197e3228ebfa45845c5b9d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.60354c577.0.tgz","fileCount":33,"integrity":"sha512-LYdZ0dnAXRGex8RTD5Na/fRSH1WEIMncTfaC4q7GDrnhjdw8Q5AbZe4p1OXqwApDvfBNasGU8msBf1XY8fFSUg==","signatures":[{"sig":"MEUCIQCabQ3DFnuha9i1ykSNZsQfIBkD9h2j3G3Bnxpu6Y3o3AIgT/8NyVKRfhiEZbGEasdPKIHWdXYh7ffOJKTnauzRhuQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":169960,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeHkSiCRA9TVsSAnZWagAAiXgP/2rfHGZj+GiScbwfR/kQ\ndRiDocZE8dblAmDRdp+b1htlD7ETKp9MSsIn9pndqB2qHkck1DHotsC9NWNy\nFIU9mGhT7h50o8MoBs0bvU9u4M6lVmb//n9389hM3sexVl31gc5SaTONBTg0\nmy25U2uV+oOOGVnwGi9dIqoUT5/MV26I7wYnslQnnxDZR9G7nC676Hg54Ufd\nuSDGEePiHCrhSiWFijggiRQij9cOWCCqYikAIb3icd4OXr74w3VO8oHvykAd\nlCFPSuGi98kI1Miq5+BvoVw9+MkN74G1f5wuHNgbtleB+SFkKLc3AahSdtED\nCmnl6TQj1rI5DeAhDbU/x7mAsm74fglZRjyykWW8C82bNBBZagJ7YQex9K8x\ncDzBkdJ019VdlwFAPjM/o9sIoEL8OiN99/8TbPDowkEinOCQtyEETZa20LGG\n3seUU3v5SYk0AV3vtbV7FfmTioMLPoOC/hJ0mU8eU8ss1Thwj4JUWqZtWXWs\neRx16eD9TFLOUIncMJqlmGEbJHuAgGY5jRWsQwGmiYDHsoijFjcZXcvBUYce\nQOBosZqOZU+PcRn8powl7S/q9lAiR/mdRNfyMltnwxKAdkNLpEG3eeNvjuqg\nbB83mQM00aPN0VRD5A5IWhhaZa8Pg7ctTR02ech8zwO6WcfQvxNigCN4+rDX\n1Hb2\r\n=37Fr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d9f4420da446050561084fce698a543b0dc6b543","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.60354c577.0","@material/rtl":"5.0.0-canary.60354c577.0","@material/base":"5.0.0-canary.60354c577.0","@material/theme":"5.0.0-canary.60354c577.0","@material/animation":"5.0.0-canary.60354c577.0","@material/typography":"5.0.0-canary.60354c577.0","@material/feature-targeting":"5.0.0-canary.60354c577.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.60354c577.0_1579041953623_0.6030251433126481","host":"s3://npm-registry-packages"}},"5.0.0-canary.d07c78daa.0":{"name":"@material/floating-label","version":"5.0.0-canary.d07c78daa.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.d07c78daa.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b9bd762409d3d8637420c9e77b1d3886a932933e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.d07c78daa.0.tgz","fileCount":33,"integrity":"sha512-rBBtACVEVzP9JWDQNVGd8q9I3PkzxHQw5YK3vWs5yuiWHYC8ErjRn9GOzOUv06Qct/jkDgU7NwAV8/7BkED+xA==","signatures":[{"sig":"MEYCIQDEbbWHMcALmU6L+zijcYV5SNinAK2chvSj9VAq9teXwAIhAP0c4JLMAwXLEmpUSIPCF2AmbZfCFkKa3su0lc/kOjLf","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":170209,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeHlD0CRA9TVsSAnZWagAAiTkQAIh442QzdE77EusYqrct\ndy3O61duSbL60ZiCCzeL5GFS4jpDqMJUa49PhsCiuLF1V2eDCS4gxtUKakpp\ns20Gx32vB9/ExcXSCBLF6Q+4yuXr7g9fYhXNJEmod5eIrsfQDfkcPF2KJMmJ\ni55X5j4U5ON8DtcnIZiwSjsi86ANoIUrazqKSEupsqRXc92mGdN5AWf6NuX8\nsEYtvkZE3IG/OG04A5Z/cJYihMIR4juxgUOTrr39p7/96JgUNGox+Uu1+UN3\neHuTJzquoNjxnGKOy9FoVV7ci6JMbGZJEywWuGb3vUzEUGJFOIl2CEiCS/CT\nYevWtn4P+bD+XD7b/O4bOVsnIWLb/+DBPIUYsvYoRFK2jjoj7jcF3qEO8jfN\nQJl9UcUAkSPTQpmz2LKbcxJB1OeoYl8mC0P2v3Ndu9//1NbmszgqvVfTZCC7\nZTdCtPm7BgR0CCup9RTC1+squAGdzI85CBmkO5G9m7R4/WCUnwlpe1mWVAJC\nRQZA4XxEtU3dAjwyYdcUlJseEZbtAhJiP30rI7Ig0HOZKSc68LV/n0rbyDsa\nW32Y0Vr5EICtBEl693v6jFUToyYG0qK5tCSnRifZUzUxTEgD42nWqXtjzYcz\ndHuz4jpD38Drc224EWs4zhsls0fUSsafVOH6vafIrjaSO2rz5n/YI1hbUNl7\npwmj\r\n=qbaj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3657a12b1a5b9b1742b2749f6991e06a32416314","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.d07c78daa.0","@material/rtl":"5.0.0-canary.d07c78daa.0","@material/base":"5.0.0-canary.d07c78daa.0","@material/theme":"5.0.0-canary.d07c78daa.0","@material/animation":"5.0.0-canary.d07c78daa.0","@material/typography":"5.0.0-canary.d07c78daa.0","@material/feature-targeting":"5.0.0-canary.d07c78daa.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.d07c78daa.0_1579045108399_0.7505103492039926","host":"s3://npm-registry-packages"}},"5.0.0-canary.8ddd5c6dc.0":{"name":"@material/floating-label","version":"5.0.0-canary.8ddd5c6dc.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.8ddd5c6dc.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"8f37be18edd8019bed73670f64bb93e231ab7dba","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.8ddd5c6dc.0.tgz","fileCount":33,"integrity":"sha512-dJV7K7fy2DjN72gzrhvJpFQtOxcdaS5rTTOQCUb4AkDmmAuLlYbDsEyaPymAejvzmNyrpl6QFXcqmxqnH/cGzA==","signatures":[{"sig":"MEUCIFh4adVWCeIIM0w0lIpdM4er8Iv53YB600NwPXNjPL7zAiEAgtOZpR2pm471Askd4NpQXr0s4baIaatUE+oKviAlSrY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":170209,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeHm4jCRA9TVsSAnZWagAAG1IQAIFX5Yl1aSWj1ahmbb2M\nIMk8d4V3ZM0OWLexoaI7c+3PT3wMfzVkh+gYSBgqeJfeCZUUvERbW6/IzbYb\nqXQVD9QW5waK6J6J3Iz7K7wAKkAanghRRUE9gJmNsoMh/924G4iNbu1r7zNL\n7oUj3k1gltGacnsdhIUbxrjRG6EamjGDV2cADL6bpQ1fsx5ZatF8djrhaehm\n3U+I1lOwbWDSHoY3/kgdlmvx9Dq8xH99Qk+Nd67PNytwldW88itWY8pMlwKN\ntjD8AG+ldMjwxxtAOKfPcgVveiuHeGdVbvENsnloCrxo09u2SuPhGvfXH5HB\n5PqrJVbrSKpIx6DnTOpIHdNOqV6H7tWEudMeGH9ie/1X3Qh/0hluILHHzdin\n+mMj2eZweks45HF4p8khyFpErHTvzpIaDQuzcF6r5NjCIJLNxzQkSQuHyS/8\nBCPRKlieL7FbWuNe3zgteTsPrA8JXQO1GJzmMRgxBb4FchkLHxS6BbOYHp9z\nVosICLuspn/HxNNGu2D+p/oqf759H2QXlEw9xj/h5ZqB0YsfNmeNREllOvHQ\nvXnaus6kaAVStBWLEgx9pjV4gbkRtOXGn7Qkvdas3miJjmopyKR4BEgYV44f\nCzL71Io3yLXlZXwcsacQAz7QATMhsL1iXVPo5Ruy5yvtlx2mo7vUoNh44bcu\n3KlZ\r\n=NjBa\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"939fade350708e559f107b53d2ab9d27d6f84f1d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.8ddd5c6dc.0","@material/rtl":"5.0.0-canary.8ddd5c6dc.0","@material/base":"5.0.0-canary.8ddd5c6dc.0","@material/theme":"5.0.0-canary.8ddd5c6dc.0","@material/animation":"5.0.0-canary.8ddd5c6dc.0","@material/typography":"5.0.0-canary.8ddd5c6dc.0","@material/feature-targeting":"5.0.0-canary.8ddd5c6dc.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.8ddd5c6dc.0_1579052579311_0.2701247717778459","host":"s3://npm-registry-packages"}},"5.0.0-canary.a9511d870.0":{"name":"@material/floating-label","version":"5.0.0-canary.a9511d870.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.a9511d870.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3926ed1b93e6431a8b2b2acd71b17cedeb274701","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.a9511d870.0.tgz","fileCount":33,"integrity":"sha512-eMNkHckKvrjXqfAyAMHBoYcrbNays6DDTxQLloJK8NNss8k60HmoF4DdZClGNwj/rn+DWI4Hn5lENApyjxvruQ==","signatures":[{"sig":"MEQCICpE5AEOQp3/tN/0CXllTe0Lg0yk16KFOqP3+RJfnxWlAiB//vvvW4WWFPCl9OEXWmbfqENm8nNCW8UeUeetrSnWqg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":170209,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeH2OWCRA9TVsSAnZWagAAG8wP/ROwM3CJOgPutCSsy0iF\nOgE/p9LV0KaDGk0ZyMCbOAcld0haWV8Fw4LsJ50UOSzv/VkWzbHu2zOiWHDE\nozSrrwrgA3mDi8HsEWYVBg8fPUAOs0nxIrMm0KxTcxAF3A7bv7qcH98TqZm1\nFgm7qnYi2WH4bFQl8n4tAiHKyS+tv5sbXdgsOmBAfPovRHUBTCG9QibXqwsA\nL5M+IMhBJ4SYKI8pgK+rTyKpae2MhiJLscterBDMGPzfYQdK4fp061MvDx6F\niInvopRAWxEQ/KJneXW7VYjarMZbcDSb6Q7h86pV9mrk60RuWW/Ht49tsQTj\nKIXDdHiPcZRzTpz9MnOFWzz6Awl/+I8rfqrHdyT8HH/qrVTKuiqct9HfnQeh\nhnot2VFJS0endQ0ej3mfMk5IYSfS2DjwP4IFvl0Fk6kqh3nIqMlVNmeX9625\nSO5Q1LCI8iFOeU0JTHML9jInJNxcLaJ4PaEqMExwu5XpPE8MOZJ5qXuUj8JC\nMKKiyV8WzqYfFIjX3t97GSzsmViX/VvlPBhxwPftLsygsbJFK6h9YbzvjCB/\nAix0ofzE1HqpwUMID3SFeQ0mZp8GITcKs4aS3mQbr4EqcRnYKI+RdWuwrPYr\nsbrSLmcTNn0ZkcAk8ZzLqmJdXm28wQm6fuIAXORKCXEx0h7TJiQa4VMJN9T6\ngxYP\r\n=qYFo\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"69b4f620220b7e580f5273bb82be01e5990b894a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.a9511d870.0","@material/rtl":"5.0.0-canary.a9511d870.0","@material/base":"5.0.0-canary.a9511d870.0","@material/theme":"5.0.0-canary.a9511d870.0","@material/animation":"5.0.0-canary.a9511d870.0","@material/typography":"5.0.0-canary.a9511d870.0","@material/feature-targeting":"5.0.0-canary.a9511d870.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.a9511d870.0_1579115413969_0.7459821772926283","host":"s3://npm-registry-packages"}},"5.0.0-canary.7c8583c4c.0":{"name":"@material/floating-label","version":"5.0.0-canary.7c8583c4c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.7c8583c4c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"96c3e7b27f681146971c3fe48d1295a8f929e659","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.7c8583c4c.0.tgz","fileCount":33,"integrity":"sha512-pEqPJKvqrUqvdJXiL1IvkZ/CsNRhzZycC1iNE1pwq5Oo2Zun/PJQMn2J9x7PhwLoF2skxhMwPwLq1cIpdOIheg==","signatures":[{"sig":"MEQCIHDIqqiGQYvm2iZGAU00lYB6YlW354EiEyI8v+uH6bNTAiACKOem1niq4K9tz/XnrhIbA4RcPjf+mjn25OBjtRFw2w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":170209,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeH5aACRA9TVsSAnZWagAAF3EP/iVRkNnHY24yd7G7o+Zb\nhwiVmILp67Cc0Mt0JQr5o14V3jPHueSgkiW8aqdOAqqPX0RyqxQbfqMmHzl+\nP5vIuh02l0B/aObbTlPr7sBNIG2w4NxC9b1f61kZcN6utst99UbyT8gPTmrU\nkoWJzIv21Y8oFtLxU1jQlnypnHc/ySUvixyECsdiHq4M/w36hYPi9diiSYja\nFGKyUUA8tOa6EzgIsncSVPdEHxgsUyPL1z1Cqc55bRx35R+q2tUFgNFQaJeC\nvbrukBXjr2Tv7K9rFoG92GM76DJE/ST5W/MNTen3hM6soVHgIkc/x2BZE6i4\nKK4ijcSpkKmiE2G88WDpBTkUe+tQH0PkFJUoxuUj8Bn0k3voKf1/PBzaSgyE\nqo+xbT0dao8oh1zHQ2ItDTrTs4mS5yWrOiZnJbciNI/4r8S51LZtFxWJFhss\nuYnbR0l8pBvKP6dU7gE5wOq1XT4G4XsrHEU7V3e6TlCBdMWPfqzUYEjJg/oO\nr6mboI5YsCNNO6SLeB9cX6PqbIgvXAksXTrJJdNYMYngA4jTRVGz7wnFDTpK\nbnn1D+pG8jMUxmg6KwW4BTodUmgozoN+RqGHreGwUsRP6Q6Bqw/iIGOdiHPq\nOk/N3pQ3a5XC47SJNla22r1bID4BkorwnImNqGtoCqazPRxCk1RZn7f99MFN\nfhV7\r\n=1rz7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d89f2d9150d02c17271eeeb692f29f456fed4c1e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.7c8583c4c.0","@material/rtl":"5.0.0-canary.7c8583c4c.0","@material/base":"5.0.0-canary.7c8583c4c.0","@material/theme":"5.0.0-canary.7c8583c4c.0","@material/animation":"5.0.0-canary.7c8583c4c.0","@material/typography":"5.0.0-canary.7c8583c4c.0","@material/feature-targeting":"5.0.0-canary.7c8583c4c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.7c8583c4c.0_1579128448503_0.25341606797224037","host":"s3://npm-registry-packages"}},"5.0.0-canary.5d4b82bac.0":{"name":"@material/floating-label","version":"5.0.0-canary.5d4b82bac.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.5d4b82bac.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a326a32c27fb8f4b465b47e2df29fc5137b1e88f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.5d4b82bac.0.tgz","fileCount":33,"integrity":"sha512-9rqWrACobw6oJ+lap5dLBHXxjLCa13+4OC2HW8p8FKPrXc0Z2SkLMmZlo3n1cb67sQFr25BtMujxJIH6pai2EA==","signatures":[{"sig":"MEUCIEtx+HbspTwuaeLGtXj7e7IkgYiXGHDQTxP/W+qQBdnJAiEAh82tqjde+bN3WLukCKFrP8JcOmhZBGk4CJUjnqYUMjo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":170209,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeH5axCRA9TVsSAnZWagAABhcQAJKIKnH1zU74enBKfOug\nnCsBW/dmbYVO0Cq7CHGhFGTAfav0net6IeQtSW2YTYFxBYBXfgSISPqEefaQ\nWuTe1spyx91rm3Kcn0g+gW2oknESjIESjGERvAtPaypA+0bw4S4ltqZCQqW0\nQggC1mhfNnDpi3coscEtDLvNP2A6ETafjNnyHShc0xA85cj8xbOVzZtyE1vF\nxYcCxWgO2Bs/obkyVPJBAkflMFe+RVJtdSsi2GI2QzIuv6iY6NDPiJ8rx667\nUSVK5ElVxK1mIOOgkWAn5jThemIl/urOsyCDNRW+1XerwREK0Awi+dmcZAam\nLdyuVXjVb8yQo2DZUozmR03LcyXXXdpdmjnndwUUkawmKUdvq+3aaq+l0j2I\nlzZ/j1RDyE3+YHNpeGrUr9o/pV6S0O8zimYptsB4/fZ0j/gdicqeCRzj0aGU\nl3oRAVlJENO1tNai7svubFtQIzudROLjH6i0Bt8FdnJydFumtAgzfLpHawQU\nTu2qiJHLpU30Zu7mlN6k/5247xQwsiBSs8P2L/rzZJv5+Hta6ctCJ92BB9T6\nULupP7cr6F2qCkSU07QiHvIp2MQEuKUhSUuzEDSnpXYnRWe09PNOHna4Tr26\nSk59Y5dmyfHU3BuIGOXN8JJb/lCbuiwUNFvEe6JW6F6YsEtQUZzn8d9bqvzc\nPuN6\r\n=B8pf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e679f52745cb7c74219ab22354c6da39a642ecfb","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.5d4b82bac.0","@material/rtl":"5.0.0-canary.5d4b82bac.0","@material/base":"5.0.0-canary.5d4b82bac.0","@material/theme":"5.0.0-canary.5d4b82bac.0","@material/animation":"5.0.0-canary.5d4b82bac.0","@material/typography":"5.0.0-canary.5d4b82bac.0","@material/feature-targeting":"5.0.0-canary.5d4b82bac.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.5d4b82bac.0_1579128497426_0.5012052301811716","host":"s3://npm-registry-packages"}},"5.0.0-canary.57d0186e4.0":{"name":"@material/floating-label","version":"5.0.0-canary.57d0186e4.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.57d0186e4.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"58ad3a39cde509d3b26f3947d022ecfa71b0286f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.57d0186e4.0.tgz","fileCount":33,"integrity":"sha512-mnnHGriVLwDxrhY19fy4DkCkBy5CVjSt5c5atjOgOi4DHlkoUbkOt3H9NPF4Au5XnOZAEm/hAuch+U1aWNq0cA==","signatures":[{"sig":"MEQCIGvAQ2+sLOFnzaWT5onAW4O3yR9M/CX3lUyn22vil8fHAiAJCfG1J85tH+c4SGz1oh34kjQnzPIOfNp6MDT99uhFqg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":170209,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeIKi4CRA9TVsSAnZWagAAfGkP/jaXclBS9Wp/sHGGNntx\nbXmekbWzr5emAlvVVnDfUWSRXYv/dEsY+c7X6YGRrBMy96W+mOK4OujxwgVw\nxC2R22WGvSpfS6N2yYdtQUzvpSfpmZydEw1+dmuMfjofXBKfyJhFsz4QZea1\nPNY3ja+QKpQHVLXuhBzW8LNDkbhgdzNiwJdP8nnCW0g1iV9ZAGirlZG6RrU3\nVJ9/wT2TrkcrFziE33MJy+t6Le1camrUMfe+LgcvQ9d4sn1ennhEsE0CYmZj\njGa2QqsTaeP6GZDCwXTjdobdSpppO9uiLulLUigHtpF9RFrHIenCaI3Y+I30\nhvUZIKPL9WC2dsySI8XXd4rXebj40VXuW/DLgfla2tNViRnU1IS9WQotO2kD\nMatqIRQM123gNKL4KtTQiighwGRchlTB7unmCLpRuNOo0w2Lap8+OjLv8khk\nTMrCPxpu4BGK4NmYILjGMZXXZEvO8SEau/UJkCBAR2UvDcHXo+UuTrW1Fc12\nSNxM3QbxF1S5YyS7hnGwotwIsy7x+LR1eRVAIYueXtjB1klzxdR4cCMxaxux\nlmTPYdvmf+WneL7nV3EP9RMiu2c4Rodsu04t+1gYbOdGH+qybP3WQgAeVPCz\nywwkOF7byLxr1lUxZE+j3x8fPZtUzPebhd42PviXm1NrqSEZwc4w1lRAQTbz\nToX0\r\n=rypU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d0058bff117ed84df93c0a71b3aa8c8d6e34cb6d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.57d0186e4.0","@material/rtl":"5.0.0-canary.57d0186e4.0","@material/base":"5.0.0-canary.57d0186e4.0","@material/theme":"5.0.0-canary.57d0186e4.0","@material/animation":"5.0.0-canary.57d0186e4.0","@material/typography":"5.0.0-canary.57d0186e4.0","@material/feature-targeting":"5.0.0-canary.57d0186e4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.57d0186e4.0_1579198647845_0.7408176374397502","host":"s3://npm-registry-packages"}},"5.0.0-canary.071a6ab70.0":{"name":"@material/floating-label","version":"5.0.0-canary.071a6ab70.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.071a6ab70.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6d7cfd875eb71933e42b4042532cc98986ecbc85","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.071a6ab70.0.tgz","fileCount":33,"integrity":"sha512-kjG0Gy7d6EmiZrgNX7Rnhqk/SQPIrFAYQD+7zkSNoIw+/e1XwTcvWLj70WydB2s4gMXC6zqzRlZiu2s/lTH+YA==","signatures":[{"sig":"MEQCIExyW1DHHiwcHRPGoAk0sGhwULGcEuVRF0h4eVg393GlAiAdfRUw55xSe45cKIP/3CpF0HmDWAuOl9G6k8AFADEIYw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":170209,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeIKo4CRA9TVsSAnZWagAAy88QAKJMDL5BdbZyZFNs/sto\nqpXFDfRBS3ojS4PadeY01vGRx6bTlrynpPqZzsnH+M8X1c/DZk9ZQuZpbool\nuVspd2734T8gZLdp+1hidHYQzCJ3p5cS8vtorYGo+AY4Y8HYlaMZ7uBgJlg6\nCCP4VshHY5YT+jE0cy6IclM7bUFq9s70Atk3EZ3dIwe7/mC4xkaEG+P1+99t\nhb9ynmhErtXGiXUg4t54Dbx+KgbKj2LWh0kit6uy2ftaaLnk02LY5oyFIUZE\ngO5p/xGlPZ4D/C7yLpWm54Gdur/VA6b0g/+2AsdMD3vCBmbldpnuwuKuFYzu\nzt/C+k2hTv8nCLBIc+VBrRaNMbExJPxVu51Y8HvimRAUKXKENV2ab6mlL8K2\nu0X5/qBgCkBzXAUxFXzG445WQXRaTQdmbeOSQD5sljJ21G2FUXsu/meq/ZeA\ns02pJ8MaRLe9OpuWKT+OVrrjAdTL1ShyNODnRKjKQTCHFKLo8n3StPrDJScN\nDYxjRlw58ioMu133yLfHV3oXihDfXzwH4ihoTFpLYscLAU1Tf75CZvpzckOO\nYe3YeKPTuC+Otmzd/JUcMNY62EwcMT8Nzvu9sTaZOrWP5zfpDs86etDlA0Vn\nPp2DnbzJutTL7qC5tQK6r+Um1DZJLGw36sausc+t9i4UnekGu2id1bARh5ep\njoir\r\n=Lp6+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"40ae26c99d00481950066e41e33aac0545186659","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.071a6ab70.0","@material/rtl":"5.0.0-canary.071a6ab70.0","@material/base":"5.0.0-canary.071a6ab70.0","@material/theme":"5.0.0-canary.071a6ab70.0","@material/animation":"5.0.0-canary.071a6ab70.0","@material/typography":"5.0.0-canary.071a6ab70.0","@material/feature-targeting":"5.0.0-canary.071a6ab70.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.071a6ab70.0_1579199031981_0.8248528257849057","host":"s3://npm-registry-packages"}},"5.0.0-canary.22e0cb618.0":{"name":"@material/floating-label","version":"5.0.0-canary.22e0cb618.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.22e0cb618.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"664994a5a6125724f94d0f42891855ff5a573ff4","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.22e0cb618.0.tgz","fileCount":33,"integrity":"sha512-trWjUy3vOQaX4JztPkifnXmLFmQR3SIEGYEB7AuaGw5vyS6SbKTzCKV2cRH/Rpt50PqMbhKz04NTWoKoE7zQPA==","signatures":[{"sig":"MEQCID++6ik+Y8p7zWNQb1H0I6WhfHM/MUWY1NQDs3XKnk+KAiASkPlS06Pwz075y0RuZMFWyX6x1cBtbyYt6w9nCoHUtg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":170209,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeIK+hCRA9TVsSAnZWagAA65oP/Ao7/pv7x1bsrmoI65dm\n5rCCk/BZ2/+vLGHNWfOa66jO6DWIHRMEo4PE2ZqWrO/r7khquOVIY1WhwPf0\nWyEj/S3SpSe502sjEEcoliRCffoTploZhMXGFdjEbfnFNwiAqfFRfQqX9dVM\nBYATAcWn1TQ4khFxwvOHJI4Q7TZjGteo79mtID76/vGqdisTTiZ3P1cOM01r\ntJCFcdc1y3JQ8JAV9mIOhCweVa36K4iJ4zBYvZWbFRPuC5V457ksnlobivq5\nCq+wnNFzXJw3nsDFjfU5A4IT5w4YMrmbje+O9Nj6z1GPvKTizqAhQ2gRh9RA\noeyctfJHjkV5fA3UOZCFhf6PSQtXeFs+ePRph4sz678K+k8FkwGTecyePTu1\nXXlYizW/ecPy8KxZYvVWOWk6xHkfQWiRj1VV3E4bqmV+7YqQU13ShHc3qouQ\njuUFkNG4Ir/gCqE+cmsOrRNS+Ze+VDs3HNgM/tOUCQMJszUGCzFkOS8H0+R2\nZ7zWMC7sX+gonTpx5ccamERmggTew58arMKFhid6Iey823MdM4aubRfZXnU2\ncLIq0mzngxJF+IQZ0tAwubvWHPjoOoqXGnQC/2WTPHwV1MJPw63Js1Lu1hmA\nGMR4iJBhXmfqFwAK24HQab2JgHTGxtW2DAnHbCWwgT4nHALU9QUGG2HXPZ38\nkswM\r\n=Hdo7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a2ebae5c07da66b94270b07b137673cf19d6d344","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.22e0cb618.0","@material/rtl":"5.0.0-canary.22e0cb618.0","@material/base":"5.0.0-canary.22e0cb618.0","@material/theme":"5.0.0-canary.22e0cb618.0","@material/animation":"5.0.0-canary.22e0cb618.0","@material/typography":"5.0.0-canary.22e0cb618.0","@material/feature-targeting":"5.0.0-canary.22e0cb618.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.22e0cb618.0_1579200417238_0.15047553287416848","host":"s3://npm-registry-packages"}},"5.0.0-canary.f16f15b8f.0":{"name":"@material/floating-label","version":"5.0.0-canary.f16f15b8f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.f16f15b8f.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"19c17e81675c1a72eb7a0241d6477d712a8a6613","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.f16f15b8f.0.tgz","fileCount":33,"integrity":"sha512-PdeH1uOxjGWczeAHLGFt6qlToho+7gGK51HQhThGPQNO3H/HOjqJLlpNvqqoiPHJSlkl3TbKp0B0O8C9IwdYbw==","signatures":[{"sig":"MEQCIHnCDo8nh7SJra3eZZgYIc5B+snqhtsX0DhN3wqkSWKDAiBXDdhRLheDC03AyVmbe0Ak2WuLV/rv4lMHkXmY+Vl34w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":170209,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeIPqgCRA9TVsSAnZWagAA69gP/3It9b7VevDKaZJJcxhW\n1AXO72ZXqkUctoMV6nR/CvHVQj4THmjbjw68BAMmZ9RSEPY4wkQahvhrI1E6\na9ZMDGjmAlERWq8uCq0usjABqyuvRLsaIC7IAERVpXQS65xuHtvraGqyTNCV\nrfAsbrd3btPf95/60NO/GtUetOc2yzpjA4GGQrM0pX/9U7SMzvSdm06eEDHT\nJ9XU3HXOjkugtfa0WPdWudGFkC/81kzYTtyuvC8/PKJzxagLk1GxaDTTSkcZ\nEdRP/tWO62mjKaTHE9O6twkkU9m0B9HkPqGxJnEN6SwJ4LIQtxY5igARed4g\nL6iq3a8n+xmgcf2fQr3S4Z5cL+T6gbllu0DTdEXGaebNJg2og5W4QyWBKO9t\nmD+klRbskJhJyGQQiHPF9m0GMCybVaLdgMCHq9J5wODdxrbHFWWu8N5kDvcC\n6nBqiT/jaTsLZjJ/keVfw7VdwK8lX4LnQdYO6QUYmSpSgyLfrSGE2YH0SHk7\nvI/el5r23/oS44M5Ocd/e9OFJRxdgdyvrf3jeNLWjtFy+XIWLMHRIIdunVDg\nvsYB8m+mtouZnmyhaYFZa5XP0aM5RTHjQrV2x3tzaqtdpz7chAkOp43xvWUM\nHccsALy1HbWKfD9xw0+/2+Agjryhncf5/Y4hz0LlAwWYwv/AqHtwVL33v1Ja\nk8o3\r\n=Hr2s\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"edeb2cce6b325b416aeba9bc6f4598eb518f8b24","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.f16f15b8f.0","@material/rtl":"5.0.0-canary.f16f15b8f.0","@material/base":"5.0.0-canary.f16f15b8f.0","@material/theme":"5.0.0-canary.f16f15b8f.0","@material/animation":"5.0.0-canary.f16f15b8f.0","@material/typography":"5.0.0-canary.f16f15b8f.0","@material/feature-targeting":"5.0.0-canary.f16f15b8f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.f16f15b8f.0_1579219616070_0.7625084951338046","host":"s3://npm-registry-packages"}},"5.0.0-canary.aa8e43e9a.0":{"name":"@material/floating-label","version":"5.0.0-canary.aa8e43e9a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.aa8e43e9a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4996da2b4272324c20f4a5f423ca853f7bfa6ca1","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.aa8e43e9a.0.tgz","fileCount":33,"integrity":"sha512-zn4nAsXIU+HqDgU23aGfzC068Zhr/JlQjwCkVb1JBZk3xq4fwEC99CLSd6kIYZmag/Cr2vtKok5uoTA4f5QfhA==","signatures":[{"sig":"MEUCIQD/2xRRIlPcGEITGjbmJ2VBdXvU69QAo0rBWXYDGcUx8gIgQVQybH45i3gOpTvKTaC43jSEtmB+nMzwP1kXbW6wtNw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":170209,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeIQGXCRA9TVsSAnZWagAAKkIP/17j7AeFXFqkbxZxfP44\nfIyLj06fUouK8Fi4nRjZGYqOkU5EXcBUD3I6BTZj00mNIJP2oVM1McPgnh13\nj7XSWmkb8spwhmdwXAQ/1UgHUH9q9Xcwy5svXkdwn8GYmkys6BF+evXqyGjR\nkKH6Ml+SYPM4KDlCFtO9zzcYYZiQgqKFP17Dfax97VzbM9AWI8jMD8pXr4cy\nmkZgRf1OBNL47eCVXXdQbUeiw6Nap9oXERUZ2Raj2zjwT4yCsCipIHTz1uK6\nANmY/Tpz+CYN3x+e7qAXBPheb2uF8OgJLEFzIzN9QZ/yN++MmC0mm9VWHWZD\n352pqUIaWL3imtVzczUXtzzrk/R12ccHhTLx0Qv+J5jAGo9DdEb2WG3tsE8T\nKwKKht7UsCLqL6mf2K9M8eRjBMMmVSTTMXHvEWfyfJdNOAMtbVh2sSJJSvGX\nOPIBtPK8+U4EQvqD3KYQPamVLG/8F39NxfFBVyv+EJaVWoB0VR6+lFt2S0kn\nbfOwoXUcpEnSIF3pTH/T8AYk4SVJ/ENqwIWeVQ5MVR7vPDb1J+1QgQ7uGq8Y\nv2sAZZuE0WpeR3JommT/jI7xi8C8blXefon3jpntJ1HV2Dd0hVefk+r7GGlQ\nHRHu7vl+dnF2XtqkOM4c2nJrBI29/lbGEv0Li3Z07A456keWoQix241g0yLC\nWzoV\r\n=LvIv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b95162346a28c58839b2d3e52201e1f8c5fb9789","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.aa8e43e9a.0","@material/rtl":"5.0.0-canary.aa8e43e9a.0","@material/base":"5.0.0-canary.aa8e43e9a.0","@material/theme":"5.0.0-canary.aa8e43e9a.0","@material/animation":"5.0.0-canary.aa8e43e9a.0","@material/typography":"5.0.0-canary.aa8e43e9a.0","@material/feature-targeting":"5.0.0-canary.aa8e43e9a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.aa8e43e9a.0_1579221398691_0.49584438884581106","host":"s3://npm-registry-packages"}},"5.0.0-canary.fe1f3ca07.0":{"name":"@material/floating-label","version":"5.0.0-canary.fe1f3ca07.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.fe1f3ca07.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d9e29df5eda5dfbe4af21b475b38113fda541664","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.fe1f3ca07.0.tgz","fileCount":33,"integrity":"sha512-BKfCbww/WJi3YxtHEiJ1IfhE0L9QNSyk4gTPTJnszUrBmL3YJxnljrjtWyee+C31s1xMF9ZmAqBH062QOcJ7Lg==","signatures":[{"sig":"MEUCIAebxAQjaFDhdW47iyfrke8ZJaMoAYv9HzAB++pGTtG1AiEA/RFMJsGIEIoQKrj5MGv58C9x3HI/VnJUtTCLj4aR5v4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":170209,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeIQcdCRA9TVsSAnZWagAAryMP/A0fegZZYFd5ufxQlA3q\nC/NBeOkJIVREhLB/IbTDc+zFSlrrJA42nIOT1gAarZEyMaePVT3BGWDZf9kC\nj9WfRQQppCbYqO5AyrZO9U/V9OLyJomJpbdyCatsGM/UDdakW3diXVYFrvGo\nbKbVHSdIB6daWJdbKvgNDLH60wEsXArQ+VOAA++4qjBNpIwOaKexNfT7+u0Y\npl5xQb7vRMR6cXAdKuXbJHV1HD0YX0LyatgbbWuSjn62PANV8Kk3kPUti7UP\nGEtKJT3BxdITEw0X3yF9wZs0htMykcY9P83hgBrg2iOdWGP2iqSQntjEyQ1D\nskL5vYBaOkSP6IM3a9/wiFvyBy+OtDHitoJBvub+Ta6FmyffZK35ytEf7Fiz\nAbUmQpyQKX3f3XUxDq2Env0UOZ/OUzNUkim+9kV1QwfYU0J8EqaOtGxzvYyw\n45Xv+pF7w2gVqaNoaN7bdnRoB1SWYVTvzh3B7SxMJjV06fB0IiRfajRiomqI\nQYiX6Qy/XlF122AjIjx9Uxg0W555ZdaVX5J5BLfOlwy2SZ4t3eC53/f++MiU\nNZBapX7VBNZoWj4NnmtF8b4iAgRfJebfH2fAhXrwXkL4NfI9iKy0sv9789dK\nXk2FM+fcGtcwzEyOvBZCz/3ZeTlS/KQkN6jeJAL5qqTigrwiklLIyL74X8l9\nlbqZ\r\n=vTTs\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"55fb21a2166199c09c2ec1273c4d38c6c3eb8cb3","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.fe1f3ca07.0","@material/rtl":"5.0.0-canary.fe1f3ca07.0","@material/base":"5.0.0-canary.fe1f3ca07.0","@material/theme":"5.0.0-canary.fe1f3ca07.0","@material/animation":"5.0.0-canary.fe1f3ca07.0","@material/typography":"5.0.0-canary.fe1f3ca07.0","@material/feature-targeting":"5.0.0-canary.fe1f3ca07.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.fe1f3ca07.0_1579222813160_0.14261517770177123","host":"s3://npm-registry-packages"}},"5.0.0-canary.d405af26b.0":{"name":"@material/floating-label","version":"5.0.0-canary.d405af26b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.d405af26b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4a8120ef99940b49413c5ff2ad566a900abb3bb5","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.d405af26b.0.tgz","fileCount":33,"integrity":"sha512-nAohcPYKgVjh3nsb6i7sYolxFFTux0NPvufR4jPJ9BYoeanl7J+J2Mkuo+R9t/HKHMPeHtI73c7cAq+S5ee/7w==","signatures":[{"sig":"MEUCIQCGqg8l5ZCXS++sDLo9L4MzUN0E3aBl4CrkJ38WjNAjPAIgZ9rS4hBXhhf4ci8kV1zRO1FLPtxRtwObgNyxk1Zt5mE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":170209,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeIfooCRA9TVsSAnZWagAAm0AP/1NbS39+94vuKnWAFXdt\nhxvZ4o1z7WIuMfGZw/fKc84hwyHG5wcDJb22OaSe79gvtJEa41E6uGQgy+I9\nGLxNjWgYl/TRTyxf1WM6z/zDJnM6VnJnI9Q4fR2h87kEoUKoFvf3w18Op3nD\n7ZUF4hmsDeCmtswBwkujdPptpkNRpN60vv0j0Au1AcuxFnKTiPm3G+IPA4yq\nX9GvPgSWHRC+AnBcetzvAjjNtxvXhVjLCCa0H4SvtwyIBLWwIC805VBCmupa\nxMuMpXnBuf2cqlZ/ArkHjvH2yGq1PGaMX7fczMxLa6nA6V8rKL7qk/g8UufJ\ntsj4MR+qOEobehb+KcDtoQLLdHIB/q7nPyw+vPLHXZsiX51Tae79z/kIcXfV\nLlheUTj9FCgNI3QqvlCAgVtb+Usy0AuRj9RoOIDysKJouacCPOGXHu/yca0m\nYPU8Alf7j8NMiOkqqV6vRHZ0T9khIRk9hcJUz/VNgUAojt9/N6aLm1x4XT5x\n6kUM6XDd4SXCtRx5UI8D98PI1FOoFrQ94+7tYhEvILNFY96BrTCKjBRiO6d1\nTyDsc7T6F4ts3g6iidqCfWSY9LbgzA92iNcBanM58sReQfNMNKZzzwl22vJy\noHREobBm27ODTzMJjh2TXxlzUB95nHoaBHHJk0P6Yg4CNYCeCqGIqfdpIbl0\nic0v\r\n=+A5O\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"0520800061215f99c3d58fbcb661327da2b8c126","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.d405af26b.0","@material/rtl":"5.0.0-canary.d405af26b.0","@material/base":"5.0.0-canary.d405af26b.0","@material/theme":"5.0.0-canary.d405af26b.0","@material/animation":"5.0.0-canary.d405af26b.0","@material/typography":"5.0.0-canary.d405af26b.0","@material/feature-targeting":"5.0.0-canary.d405af26b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.d405af26b.0_1579285032235_0.02603685445204862","host":"s3://npm-registry-packages"}},"5.0.0-canary.6e857aae2.0":{"name":"@material/floating-label","version":"5.0.0-canary.6e857aae2.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.6e857aae2.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f7afe788988b2278cc30174c77ea92b45e3b69be","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.6e857aae2.0.tgz","fileCount":33,"integrity":"sha512-JdYHQs4XymjdkOTNs2B6i1dGqdwDi12REtCDJ1I7YoVuER10C25668kEaPsaW6u1kVi0MNJp6eTsj467tQTiHA==","signatures":[{"sig":"MEQCIBnCmg6jmtuv0RwHW3Hd0FLOCoJkvHwmEFC7iYdO0WONAiBBJe1Muf7uZx70agIIRLekF8+Qdg4AgINprdWXeCSA6g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":170209,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeIfr7CRA9TVsSAnZWagAAsIgP/1aIcRaktKt4Ad7OSQ0J\noROtpKDQf/jCHVnn8UR2I/ND0Ee2/tIDt7LbBXY1mkfc7l0O2vxkF0jnTypk\nw1ytAaHYctUIWIX/nEE2Dl7mWJZCgRRoSBTLxRlqNVaLoVOQ0w4MHjPzoo3h\nX5Mu0gHRq4ynYNPwlv4p2/d9brsVQUJfXVqdM+FrM9tvlYfCwsMRP6pqT06L\nvgyIVfV+BIhYmKHpE2dT8EnCcDfBhRiq/N/Py0BzlvKUZGEGcofyyi9dfojH\nHoIVsXILUBpXm9cA9f1clkm0Xxo81UJHkj64ld/sOOywaZpQwriRFvxlK3j5\nO7A1w4S8rGR4tL/mmJ3vRK0fonr1UVDycxVs26Efscm8r10k9Yy1egG2/HDY\ncQr1/qfEqE/Ux1bNFP5BSvVBxil+RqYt6zSERKabMU82mN2BYN62eISDnoTs\n1UTdeBpd+DWrYaYou75nE6IpEsk9BfNq9OZNzQUeO+VPWjm2X/GnjrH8yLYd\ntv3IuzoYuHCrCXdeTaB8deVuu5IhUOwyyWykZoCU0o1535+66kIgSN8Loj7Z\ndtRu3mDkoZHiy33TIfnIWhVnjagdyuq+o2pDh+DKnarr9JklwSNXCi4DmVc4\nxLk6Pl0h/oX/ITmkGQ5JHov6kDvUeoyR8cnL6xz2p+NKR522nfwNHo4Tib4k\nhPuD\r\n=EuF8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2a53aa5d8048725819709e1279ce78762b8b6170","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.6e857aae2.0","@material/rtl":"5.0.0-canary.6e857aae2.0","@material/base":"5.0.0-canary.6e857aae2.0","@material/theme":"5.0.0-canary.6e857aae2.0","@material/animation":"5.0.0-canary.6e857aae2.0","@material/typography":"5.0.0-canary.6e857aae2.0","@material/feature-targeting":"5.0.0-canary.6e857aae2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.6e857aae2.0_1579285243092_0.6235249156592877","host":"s3://npm-registry-packages"}},"5.0.0-canary.e2e764f7c.0":{"name":"@material/floating-label","version":"5.0.0-canary.e2e764f7c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.e2e764f7c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"40db87011aa770df0ce7a8fa9783ad492f0ac3dd","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.e2e764f7c.0.tgz","fileCount":33,"integrity":"sha512-s7awjhDWyaudEAdNNeofQLLx3M34lysmFhHc4JWsfEjPKiDSlnPlPouhOP1b82kYuw/qusfstF5XJpYh6kZBAw==","signatures":[{"sig":"MEQCIC6oSAtt/scNM0SWQYjrfMNM86H5bJluDGz0m/t4XRNOAiAt2/NlD3movrV4Ol5qv12G5AxxNNGLYS38M3HfsS3fGg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":170209,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeIf6MCRA9TVsSAnZWagAAkqIQAJ4FOrz+74QS0MRZkWOy\n5OknmAV7IaQX0hdyR4iULPhGmLRQhA9pQlC2i9LgSKrepYelvVDu2TWKQdFy\nUUtpufOUM6T245Le5AxRvzT5vXdLDciwnTfK/ezFpTNXHyrvzW/0xk9vJpUk\n/6dNL0O/cPfk6aEweaHNZOJruvjwvYe3A5sj7t29V5owOdn9uYCxEk9BuYIb\nSQG2i3aFiRiEzySZ/wYnukAliImyPhi8FdR5DE9ltYK4ows71jpK/bm7Apy7\nrr5lw3QEKbH6NLtMMPlxFwCrgHjHsNDzuDwkaXmFqk57SE46QFWivgFdDoLm\nA2IyIVc4/kNskAgfHfr3ZMw0wOzNCJB1qOxTehoyLS0xDy1Gl9U+eSyHN/kZ\nnSCM0iCcgezGtjcpTOf81r1xsc30YfAImJnY7Y26UVyz3vYzeD5SfS4Z7mIS\nx9BZaHclF1ZnKawCxb7HK+PRGutZtW/9DDvBsePsRY5Hvm1T6RF6KYK1wew4\n9LI35/YLFNEnBljTGcWfmeaIbjHo/BeF6qjVF1n6UxFOFszxldIVowJrzexI\nE/YbEAqsJVRlJ7DWltRSWxWbZPvS0RRr65uF81nXUhqXZ7W73P9G5+ZHKrew\ndpp3WMtFPRq7wX6U16XzY8LCnzOcI9hPZTx/IUyoWfAs3OlV/+FXb2e06YSY\nN/nr\r\n=MFu7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"9dd6d44ba7288e1e0e80905a629b922c21b54e37","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.e2e764f7c.0","@material/rtl":"5.0.0-canary.e2e764f7c.0","@material/base":"5.0.0-canary.e2e764f7c.0","@material/theme":"5.0.0-canary.e2e764f7c.0","@material/animation":"5.0.0-canary.e2e764f7c.0","@material/typography":"5.0.0-canary.e2e764f7c.0","@material/feature-targeting":"5.0.0-canary.e2e764f7c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.e2e764f7c.0_1579286156616_0.8047174026250878","host":"s3://npm-registry-packages"}},"5.0.0-canary.7ef986a87.0":{"name":"@material/floating-label","version":"5.0.0-canary.7ef986a87.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.7ef986a87.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"11cb56a9dc5c5f5061b8d30f689a5ee0bd5d6c0f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.7ef986a87.0.tgz","fileCount":33,"integrity":"sha512-2u01iln+hgBV4OpCOu7vjbqLMtBOejoOAvOIqpdlW/0GbOH+mQVXlCTXsibfASbUOeuNsJYI9Utjgfk4Og3xNg==","signatures":[{"sig":"MEQCIAdzifuP4PIlsgg9WaoZoO3jyuf0LMnZJ0KY5o+n2mFYAiAo28grFKOGVJmyyZTX4GVo34fQqxh6GLDCUVn+yW2pFA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":170209,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeIgtmCRA9TVsSAnZWagAAfMMP/jYeaPOwxpYyo8TcBvRe\n7vGXKJl3b35RWzPCmva8EGOrrNmm7CtwBfqtLvklaSflwUgwr+m06i4odVTL\n8aePDPCZqLjx1XskIkvTUIunva6HYDNsrwUZ8FN6hS5XlNhhSJMz2uRq6quz\nDO0E0XLl+TeSQYnmcfdh7Rlmag/+UXwhNSd6fk0PSwZPI9q3/39zFFKDn7A4\nWEf0VcCjbI+7fCy6c1v6MuXTmixX2nXOUgifogN8oIMjZYqJMo1yB0VQu2p0\nq0szKe2yFB7i7mo+F4piIMDuOvJdc+iPRMYv33q5OAibWekL1bELjGdhXA0I\nGo4UONlzO8X6FlDPA/Lj6g7vlNgLTSwv5ZPtxPWR22QqrNKgwW7H1FrH/3IM\nCYPFAPMYGkZ6HOiPC8w/kGGAXLtQTTMHmGgKglMiVfm/xuNynJrh5u3x5e0u\n9GeUCSd7TTIauMPBtr2Chb7ZVjMfoSrPiomszp4KNy+W/ym9ysNsoBg5sdVX\nsYpoqTLa0PxWxf370TOivs4xPEmN+PS/kF+U3ronNDeo+6USc+gPB+567VEn\nmZJZDs1mDv7lQbz1vissSSMzCQS3DTNbgwrr2iNjol2kyaCljnd1HAu1l1d/\n5XmzSBxIBAeQcotC7Kxs6Kjf/PgFMCxVzeVUSnVnTcs2OX14Z96lfbX4tt+5\nXKzu\r\n=p+tk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d18e160fa2a4eddeeddf0a07020cc2cecff9b573","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.7ef986a87.0","@material/rtl":"5.0.0-canary.7ef986a87.0","@material/base":"5.0.0-canary.7ef986a87.0","@material/theme":"5.0.0-canary.7ef986a87.0","@material/animation":"5.0.0-canary.7ef986a87.0","@material/typography":"5.0.0-canary.7ef986a87.0","@material/feature-targeting":"5.0.0-canary.7ef986a87.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.7ef986a87.0_1579289445960_0.4284709136179603","host":"s3://npm-registry-packages"}},"5.0.0-canary.29402e2d4.0":{"name":"@material/floating-label","version":"5.0.0-canary.29402e2d4.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.29402e2d4.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9a0dca1e9675e3237cc54cb8a1df30b344f8b562","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.29402e2d4.0.tgz","fileCount":33,"integrity":"sha512-QibpZKnaAVJ7uxcQBbcc5beWp1joxFhOfpe1+CWmm0rwCZHNmKn9ypRsnWye9I+7UryD+6fUzqGpoYh3QBdnaQ==","signatures":[{"sig":"MEUCIQCU2CNiQH8w8M12Pkp9OeFD65m7p0M0DPw2VnIr8ilctwIgQW1r71w4JqRW4eWhJlSrTHIAuph/b0KZEtYjhxnwlPU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":170209,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeIhuQCRA9TVsSAnZWagAAGssP/j+iyFIh7t8EjkZyZDpr\n0M7qRD5UR/TD5SxVdBU23Y22EOOPmiEi9qJNXTiE39WktlqHB6OmcQw0009m\nGve5DMEnUDrPSgNjzEklHtsho++efscAsKvhDPlwY1K9uo33tEDzq8WfE6K2\nN/yX6rSnsL5hw4XZuGdejqCJSNSI20AFJPC8mzP7iROexlioGfJOjG12bT+6\nuse/RLAC/Vb0P7CdCUjJEG3vCog9Cm+tdALNESh1Bbn5hulDHMr3EvxPNlrD\nZc+FT18jvmVi+xN02kNxFhka/TzwSjz4+NhwFuPugMS6LGfsHys5vdk6Z77B\nXJb9yWYUppKVdFTEr3jU1UcVyxxAZ5e+o6r/89Z3URItNIt+2MBILksVNLPI\n+8Qab+jY8YBKGZ5/J8vhxPrOczDcIEo6JLZ3tXMaSB235BBZUVM/tMAS/rfL\n+R17brioJNjYej0SsdrFdlVPPHecQQNls0kkKW3DuWiYRzZIrLVCX2+ILZe5\n1fNNPhUOycnpG1DRJcKEM5zb9T/RfTq7U/zj5/jA7Q5nE792O/oe2knrkQyJ\n0xFd9LrTGEzklaC7tDQ/kNQz16Knw9eA3bsH2sLlDefP5OYq3sjMyQ3UjiB6\nfEmsWfocYKKw7qTuH3GLU69/o8UNN9USXXdLt68L8nO43a3q1cV3E1PS3oDJ\n4thL\r\n=Jw2U\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"6c6caf45e8fd759ec1c6409699c53250c8c41f25","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.29402e2d4.0","@material/rtl":"5.0.0-canary.29402e2d4.0","@material/base":"5.0.0-canary.29402e2d4.0","@material/theme":"5.0.0-canary.29402e2d4.0","@material/animation":"5.0.0-canary.29402e2d4.0","@material/typography":"5.0.0-canary.29402e2d4.0","@material/feature-targeting":"5.0.0-canary.29402e2d4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.29402e2d4.0_1579293583698_0.9975383242184157","host":"s3://npm-registry-packages"}},"5.0.0-canary.2b3ec563c.0":{"name":"@material/floating-label","version":"5.0.0-canary.2b3ec563c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.2b3ec563c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e49637bb8d07216294dea22243635c35ca717d9c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.2b3ec563c.0.tgz","fileCount":33,"integrity":"sha512-ZnojfsIXx/n9o40nMQSIGaAVigMD0Dp+9eIqlKsquobhjKtMnDy0PpHSDSBZ/ACk3kqD0B79FtKMPnxHJD+B+A==","signatures":[{"sig":"MEUCIQDINHKGkHHxHyBz4VSjzbgk1Fe4Giblngj94bL0q1TtUAIgdCeBMl5Gx8FClG+ditSXtOBXbjPCcHqhosZfeKHJdjw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":170209,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeIj8hCRA9TVsSAnZWagAAVyMP/j58LxUmQiXqMUtC2IM+\n3KYKfnLw3Byh4+CyKfIWRh3QIeWymf2Vd5MOmPQmkTgKNPjmUeYXqbrUKKGc\nTTGsmyNO8G+njz1ktNu+KzeXzx4+xxA1MjeMmi953eZwGJdeghZbZQW6lhlb\nXR5we+WUkKwTs52HTVLep+rN1hVexElyxpa+80SfuPDb2Mj2Udlo5YLR2ySN\n/zPjmLgwk1uJX3PzJpBKaOpsB/m80JiIi3JG3w2+m5wSoLR5g7XENcDVwNb5\nnSGalQQEPDDnmS6R1Urc39HhpAI6L0x+l9PxkIvuwH+Umft2NEdYSqlipcYC\nkUSnQuuGtPQdBhETCRa3+ngVpfVkFkVy/O7EXsVJVBbe06bQLf4r0PAIUYP6\n8U0uyaXetK+zs3G1Ts3mhTPBcxwV0HZYqsC120V/8f0evzh9tUUrnU7AC3g/\n6G7BGWOPCej4g7JfTp7DdiP+IzIpPmDi3ZBks66BwhY126bmCdEFJ0SIlNi7\n7MUWI5nRLMuMrnsCM1Aq9m+BSj+sEKfGuh9if6e9SSpd/Hm05Cd0RS5zDbIO\nqsUDoDOl3IMwc4OyZaWMOMpVCNjlMGGZRtZkxjxdKEGEuSDHNtwT5uuA6wGs\nWuTFj2jy+3c1rF5W7EuCGRNVCOeLZ8haxRT/Jhp6d9cnJnQ78iK7YO2MK9Jm\nIlKb\r\n=tv5A\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e0de6399e32c2553a23c71775c8e5b54fc527e5f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.2b3ec563c.0","@material/rtl":"5.0.0-canary.2b3ec563c.0","@material/base":"5.0.0-canary.2b3ec563c.0","@material/theme":"5.0.0-canary.2b3ec563c.0","@material/animation":"5.0.0-canary.2b3ec563c.0","@material/typography":"5.0.0-canary.2b3ec563c.0","@material/feature-targeting":"5.0.0-canary.2b3ec563c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.2b3ec563c.0_1579302688838_0.029995196330632634","host":"s3://npm-registry-packages"}},"5.0.0-canary.e8a993677.0":{"name":"@material/floating-label","version":"5.0.0-canary.e8a993677.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.e8a993677.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"63b128750ffed55263ae17edc6976872631f6a08","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.e8a993677.0.tgz","fileCount":33,"integrity":"sha512-IjM9JD+mZIN5qh8oDNpn4oUJQtwoiNOjQIFRaOPgLfeS8/NMa25jL0tNdR1+m1QL7g7Q5EXIxdbj6rpigDDYSg==","signatures":[{"sig":"MEUCIHaAN5YyNrYAGCozSEffBcHn9eFEt1jFyw8aSVEdyo9tAiEA7MTrg5kGb1i+fAs2XEf6CXYEn/3x45YeGYWDXupPWi0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":170209,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeJyuhCRA9TVsSAnZWagAAxk0P/2qtBD9KgUimh16poDX5\na0uf0jiEbh/HdYu9rIoFTRZ9eHkm+Qvx/n+BM1PtBoFJFbehb257+oTJ+Kt4\naqCLN5rro8+7XLDdE0WOZRECZtVFrCCHOYxyC63+sY7Svqeu0MwikRAO3S6A\nEuSXEToYAdYJmokehpvvifoOvO9m7n1EcFqTl1YnUgKbdSIjAHI5xDYJZ5Yv\nHXBsGd3fGfDWyATBkX2bI28xaDPog4fWPqI+/PC5xwpiOofcOdUGjahcVoAB\nMfRF5VnzVxztZ1yVIB8Cxm8A9pI2RUrM327fhnrRHJvwXnneQ5NRwZJypB2m\nCjKIOf5Lz7BAq517icknyyGIjoGDMfWI/5/Z4F+qHZSlc+3I4aegwtTBuSv5\nGeXFGhaDlnoGvQNJOz69OCDQk+34ey5iFPG01D/fxHGwApKj4R1b6Rk46Cfq\nRany8+8IemMfOGoQobt8pLj4eCcafqHm/LIz1KoRx4WBhEtScGi8yFv4dv6o\nt0AulaL+zERd+xwOwJez5I19L0+XlO63wBTV2vyksEjWh3kPJKcYqe33i9+X\n9BsYLdb8J2MpJOqkfBSTvwOchDWMhCzxEXy31Y5axZLUNSkEyc9zRImRU8X4\nFYG2/yb5Ijpb6dqBeZXwpTDzp7WMqLEFnlBQnJdBkE7s3w9uTU03N2m6HObi\n5SM2\r\n=IxUS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"653e52310f90e65950905e8fd8fca6f99e87ba63","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.e8a993677.0","@material/rtl":"5.0.0-canary.e8a993677.0","@material/base":"5.0.0-canary.e8a993677.0","@material/theme":"5.0.0-canary.e8a993677.0","@material/animation":"5.0.0-canary.e8a993677.0","@material/typography":"5.0.0-canary.e8a993677.0","@material/feature-targeting":"5.0.0-canary.e8a993677.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.e8a993677.0_1579625377209_0.43619181837709964","host":"s3://npm-registry-packages"}},"5.0.0-canary.cd4903304.0":{"name":"@material/floating-label","version":"5.0.0-canary.cd4903304.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.cd4903304.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f6a64b0414a863ba17aafb5c8b792a5a38923275","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.cd4903304.0.tgz","fileCount":33,"integrity":"sha512-UzInMb3nEi/cB2qC+VKUVFALdTCK0cgqqGmjDwvSxM1H4aULYIX/GYYZGI633U4yrNbg7S5K6GhAskOH1Zn87g==","signatures":[{"sig":"MEUCIF9hP8Rir4B7sJ4Uuw6a0GIHwOqlBwYqX80mxoRmY+/7AiEAnQHLMJAKtrFlxQfhIFbXSIUGRdXcJAT363GQBLKVWYA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":170209,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeJ28PCRA9TVsSAnZWagAADwMP+wborD++lKmckv+I/tX1\nutV4vwdK4Z8Ij2uDtAtGVCsUpQXbyCt6vDEAh779tIeIQT5//2LBQf84j3ib\npeyRMRPzoN6QIP0Vo3K2tSxeajKFiu+cvLqh5ALhH6QVL8LddyyKx67V2U5T\nWv4PrqK+eag7vp9vSCFHCyBFvQvYsIUHGmZGWoH5bYvFShKkDnwxujZHNTVf\nSpSKgi70Y0odIDGbLk6Xksy3DO/2f6S059LN1lLdu6/nB1bo7/RbYfp9aZfT\nHrckFexpYDYpJ+eeRz33B4GK5LdAzdni7HFY1fNzeTFBXUH/WY0Pm8jDCMpg\nOgatzlMWMpG+/e4okVEV0OnkWBwqp0YncumxhDW7aoyvuG0nPuf6LX9FbLGr\n7faJfWVO0VLoG+KfTzitd/5988nVCU/lRetFEgSuTcwvv6loIyf2l20oaAKp\nBEY3kedWdvgRzUKcJTUew3nXHb6jNqGkPppaoEPTDB64A3xek6uZ9G/c8Wbu\nxh2N7abJCuEcnK35GEzP5vdbHsarRY0bPPf5WYGp4TY8S72Rs/8HyBGho9uE\n2o79n/mYiqMTM5l14Ur594UiSvwA6MiRH4rHfxxHA2GmnKKPCmUV57uIqo81\nGOBD5Fr9xeTZC0uifGxd6Z8Iv46kUzDOjuNMUiFgxp4cH4+FA71Ic9btljai\nS0vC\r\n=/SUr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"0a1f35ca90587cb380a06e8b6eb8650279b9953f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.cd4903304.0","@material/rtl":"5.0.0-canary.cd4903304.0","@material/base":"5.0.0-canary.cd4903304.0","@material/theme":"5.0.0-canary.cd4903304.0","@material/animation":"5.0.0-canary.cd4903304.0","@material/typography":"5.0.0-canary.cd4903304.0","@material/feature-targeting":"5.0.0-canary.cd4903304.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.cd4903304.0_1579642638691_0.8807841847862359","host":"s3://npm-registry-packages"}},"5.0.0-canary.7e4b04b25.0":{"name":"@material/floating-label","version":"5.0.0-canary.7e4b04b25.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.7e4b04b25.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6e7ae42c9e570ad16a89c06f68991238dfbbb9dd","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.7e4b04b25.0.tgz","fileCount":33,"integrity":"sha512-bVbcgtpA66h+1YB3SMcBP7lfSHQaq00yTAd6e4ZoVWzui5ii0spLIfzVfVwVYXX9hUixrCj1Rnm6brpLE8zgNg==","signatures":[{"sig":"MEUCIQClqQgig+r72Aq0nAzvMGeR1zUaHMm3wODV0JNyuNv7fgIgSY03DgT8eDxDPLEn0V3WChxMEW0PxO6WWm0dNJq6Wmg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":170209,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeJ38nCRA9TVsSAnZWagAAboQP/jp8MDcNz6jPKvRSGn1E\n3wj0OpHG9Hzt/d/n+g5FW+XIxkePYDhbtMl0lrxGSR4CcNbthq8DTq1Pm1QC\nK4+AHMSb6+Qa89CGIzFQwIprEQ0xdQ958rolNrJDcdc3Btkfad3lExKGYBaA\ngnhbYifgP7TNdPMv3uLkCgh6b9kYw6EaIU8mKFsbgzq/0dfKiGON/PlZAFxX\n5Gud+AvgIfKNWXrJzUbDTBsNON+/rXtKwOws7FlCXjGUYn0w93bIoS8HEn20\nUksK/F++pr2vJ9udo4zsRViCALqkD0c0w+N8PMJLNb7mZW0St9cys4eZrlsG\nZnrVb0k+jtj4J8Q46+g+mEqz2y3XX9LJiv8N80Dm4ORxHpHbZhlBtylZAnaU\n9Bstl2s0+j/K5ShTath4rrLapuQKhzymf4SLEl1MQ7yrE7rTtPYhyngM0gGz\njUVVgJNNDfsXpw1ksY+YfQzUBvFldCXrGlv+SEaY8vEwewsjhFKLa7xjz2h5\nGuG2K5lXgpku0gdHH9KZ9NRcMUNmltLgwtLE/+4NWgR64tKBMABLbkvlhoh8\n+xqMGkJg6M/lvQaE4fL8OwlgTwt/yxEmn8twvWZu703CMP3tpEffw+/6FPDL\n3WwhfiPti20iC4Wf6U1ubvrQehPROwCeboyUUhGIQ+Kq+hlvdWexTxuK2J7o\nLCfn\r\n=/9Ju\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5ce556593315b470008c9bb156d98d7624231a5b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.7e4b04b25.0","@material/rtl":"5.0.0-canary.7e4b04b25.0","@material/base":"5.0.0-canary.7e4b04b25.0","@material/theme":"5.0.0-canary.7e4b04b25.0","@material/animation":"5.0.0-canary.7e4b04b25.0","@material/typography":"5.0.0-canary.7e4b04b25.0","@material/feature-targeting":"5.0.0-canary.7e4b04b25.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.7e4b04b25.0_1579646759258_0.5865666508464682","host":"s3://npm-registry-packages"}},"5.0.0-canary.ebc296937.0":{"name":"@material/floating-label","version":"5.0.0-canary.ebc296937.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.ebc296937.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d3b66942d0b781929ecd122f218b5e0677c611ae","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.ebc296937.0.tgz","fileCount":33,"integrity":"sha512-kHZn5CJv0P6RmQpvEw2MwoLE6dA96asxhoNu4XDD3118xeQGf2AHCae0bG6dgag6j8a3iL1C0dcebWC0djcnzA==","signatures":[{"sig":"MEQCIDrZMbYACeA5PyPoMT37Xt+wAQ2mgZSSG0Hsc+C5tlSeAiBg8pCNiKY6PE4EFnJtgDfcZ6LhEFMmYbdWUY6TIdD16w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":170209,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeJ4z6CRA9TVsSAnZWagAAmawP/08LYalf+VF0Fd9O7K74\nba8y1a/Urw8yGZBWT6y0Tvydjv4QLRDxtneURBGncOv7Cc1Xhc39DVjvfN5X\n4kejNlU0V3hmnRcA1VvO1m/DxVcnnEge5HzO5EmKMCttBh9y6S/fR0h5dm+9\nWyjiysiKfmHT09LbyRdUMf8sVzAb3oQfj1HzuAtqY/msk/IF26azs8jHsf+4\nu0DQLf3pepI4OC5Fj+WY0xZ5txBC9UPwpagyIsmbHuhGPv4k0KdbCtjNYYmP\nBg+LjGM9PC5QcwM4phB+egNg2txO/JtdvStE/38t/sT3I20mFLhZvZcoXXIg\nH+73jNaQgx3lDVAuIro5PeSWIBjzOLq/5oIPrKKnv56pXbjF2b7qWHLEF7Mu\niIw29a9aZoIwABLB7F15U4cIiONhgeefWS1zqJpIvNWV9qfxKfyk+vudTgVB\nNeAyp4I941/ieu/IqF0bMp40iqJFJkwgd32kHv3eYKsMjlq1owAjf2GtEWDJ\nziYP21t+QqPHYKahKv/fecl1DuJgDe5irKW2wRb/s7RJx1DmEFSKqvjc7SQB\nJj87wNjdqBjGoLRHU2Xw8m7Lguf5vO5pGvpduVPdeaUDnwSQD41rNrKLdV9J\nHJTPG5EWXjc2JBfM8AFeSvLorOr/HhfwA/MAojGb53vLm3Ten/lrudKCnNVP\nLcuS\r\n=v79G\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"56393bf41fd3e60f82b11c9571455b6e0b0f2025","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.ebc296937.0","@material/rtl":"5.0.0-canary.ebc296937.0","@material/base":"5.0.0-canary.ebc296937.0","@material/theme":"5.0.0-canary.ebc296937.0","@material/animation":"5.0.0-canary.ebc296937.0","@material/typography":"5.0.0-canary.ebc296937.0","@material/feature-targeting":"5.0.0-canary.ebc296937.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.ebc296937.0_1579650297605_0.04223098695399807","host":"s3://npm-registry-packages"}},"5.0.0-canary.cf33f113d.0":{"name":"@material/floating-label","version":"5.0.0-canary.cf33f113d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.cf33f113d.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f006757566ede68d5da881074033c58f2bc036ef","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.cf33f113d.0.tgz","fileCount":33,"integrity":"sha512-NyXVd5yxJLKnjIlXFvP7S3uQzlBWxU0ugJBGY9q3FuY1AVs6hOTyNhbioOTTP/ZQqh0l/aE0h40N/b1N1+dRlw==","signatures":[{"sig":"MEYCIQCvRPUFGXvWK/u60CQpbm+kopCJABL5V1gU11zek9CBFAIhALB9CIVCI08H6IWchynCoKyGkho/85AKqOdZoyyBTyA1","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":170209,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeJ6PICRA9TVsSAnZWagAAkGwQAJq0cBi8iHLI7zbNQCnw\ng8JH9tZ0Qq5zSMcCHl+m5n0U3eslia+4gn0JxMDINeAYnF/LE3HE9VQ7TBHM\nxNiaoaDv3TobyGH17B1OhYimO2Ba2wLuGVT1piRn+rTrO5tPc1LYbVTskjOa\ngWydxP1Ajo/F4Hjdt2wfMKRCn7323KGlIVWRi7CT35rg85fgbyeZBBcXrCoA\n071ZPkQOE8qlpHWaxAaMNLrJW+50unhIToKOV7A6+/55eLrAPEYgAcRtqDfF\n5l7YpAyRO0FPRYWQ/mEQyzQ7VdU1RL/Z29Yy3KONaPuGO/bFCvwFIOBaVlPK\n9eXKKSF59lnujpJZ1/LqR5hJJzVWIJ9yRBrkASLnai9Ov4fp31XVj/P8iuUd\nA8vlDDUG/3NhUSUkN5diZ1gfNc+uUt4e1VZpTt/XN1RzIhU5NbX3JJTx92MA\n918HN2raNeACVavFEd+le8oPnBsifBMFk6UElcQwaQA6Ns8MVqCpSVATAjvr\nws8aumCcFdU4rbYdubRiWC0OSVJSSI3/uHD3+TYwgLnw9y+VtGLKbe1bdAmf\nsL69SPZfD/7bGdWCU9FaZ/zYY3I0lz7VQux63JiXRKI1bTTImAuWh9c3krto\nz1l3rUW6XxSs364sNslwd6NuMnlQolnCYp0cTu7ah/5pATPjoFom+vna5Pj8\n2XZR\r\n=gfCy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"337736b1343fc4e03714756c4fc2ccfdfe1e5537","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.cf33f113d.0","@material/rtl":"5.0.0-canary.cf33f113d.0","@material/base":"5.0.0-canary.cf33f113d.0","@material/theme":"5.0.0-canary.cf33f113d.0","@material/animation":"5.0.0-canary.cf33f113d.0","@material/typography":"5.0.0-canary.cf33f113d.0","@material/feature-targeting":"5.0.0-canary.cf33f113d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.cf33f113d.0_1579656135914_0.25630638096547664","host":"s3://npm-registry-packages"}},"5.0.0-canary.e1d5f1be5.0":{"name":"@material/floating-label","version":"5.0.0-canary.e1d5f1be5.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.e1d5f1be5.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"bd0de4e60a5ae4702ce741a42c27d0c617c24f5f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.e1d5f1be5.0.tgz","fileCount":35,"integrity":"sha512-GeW0UfvB+61QR2gwf6F8KpCrBFs0UKFvC67XX8LeXma+uHDkt3kq4jppXZqZe0cb/fTrd6r4BaS7/6PpCnRzsA==","signatures":[{"sig":"MEUCIQCiAS7xlV+SJJ6V/Npn5im0B9zgOYTYza37eqZnYCj2zwIgecHLbv2e5DF1dypMuVUXbUhwvZq3UFYCusSx1DD0MCE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":171096,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeKH56CRA9TVsSAnZWagAA4iwP/jZJ7MvjhqYg7XXNHQRf\nqg7yPxy7mQyzei2R0n6vCL8PcYBlQXuJfeWFLfyordKFajM4B+up/NuB4fwv\n8zcTnWtGwAh6kyIxsB6NSbafEqpn1kjlz/fRTivrNzGorTmx3MFop142PZ1G\nTcSrUdvuSENbRsUWdhi5vJ76ZXK5EinWk+mKYOYULCVbUOeONDSatGImc3g4\nF2tWwGT8O+GmEmhTobsssM4H6/QlqhGp+9Eu9JxHhSOLpgvid8iymePZZeqA\niNAIHKcMNuW3IWUIObuHD2WjOhS5VQ1mMq4XghjCnnwdiZc0jkPoaNHjZ+30\nr5YqiHjWLqY/Agyjnds3EcqTZYCJMnbI42/F4Zb0ojqF7lU96mTtMdpMeFi0\nTuPvnFuCWV3PqIB6CySx+77LqrUWiBheiulBtXfKsWbSoVWqME4jeMDTg/+9\nmZTQvhw2s8n0H8tn38wx+N8rB/SmEvfZbFgB4072mU+JJp2uS4a3ysLoJb+k\nZgRwnnkS6PhJvRQljAZF5TkDnWxyftvRkgmrfxLqp6sgLwftxdNWPrPXQJWa\nMiLWuSSLsAVjkfQKZ3/rFP6hJ6n/r6ubwijpmoeRCp7tnso9/MCS2d8If5MY\n5uxxnECnyTxih0f/OiUVRkiBZGOn6l507tSxPKxyTv3Ae8iqqfkhSUCvDN/r\nw1nf\r\n=XvIM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"4726896d58f0dfdf4ec6ed819abc20912d43f2de","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.e1d5f1be5.0","@material/rtl":"5.0.0-canary.e1d5f1be5.0","@material/base":"5.0.0-canary.e1d5f1be5.0","@material/theme":"5.0.0-canary.e1d5f1be5.0","@material/animation":"5.0.0-canary.e1d5f1be5.0","@material/typography":"5.0.0-canary.e1d5f1be5.0","@material/feature-targeting":"5.0.0-canary.e1d5f1be5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.e1d5f1be5.0_1579712122328_0.7715275416842706","host":"s3://npm-registry-packages"}},"5.0.0-canary.6b6a4ff92.0":{"name":"@material/floating-label","version":"5.0.0-canary.6b6a4ff92.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.6b6a4ff92.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"760ad00b865ac6866891e289d642417d6dffdc2d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.6b6a4ff92.0.tgz","fileCount":35,"integrity":"sha512-k0oq1QZ1/kkJDs4Yg2O81FzITqouZmsaqqnhtgJckp23OcfsXeF0h0l3bBLp/KQ0xzXS/FwskKT4Y539St558Q==","signatures":[{"sig":"MEUCIAf7OJgLtT8Mde+17CB/kcGxzuEjucvnTmSgErF8EeWWAiEA93TEodpoTVPPbxU9y4occQm+FVJMnMmrxATZoW49UbQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":171096,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeKI0QCRA9TVsSAnZWagAA70kP/Rzmhf0W9vKkR5oy19jJ\n2lehxOjVgJXGNV74lpf5FoEAeoC2ZsFC1NG4EBjfd9J49rCZ7DDSSMPPGUC4\nYMa12yEX5pxb2wIJ1Z1OgBCPKeg/8aMbQZLGbEjNEVD6943B1cyCFD6Q/hoA\nXzqLBoc2VLsrLZToJd9TsgbJ9iZaOX9uZH6d6chumF/u5srMINL9ViQSoVCf\nYAVhybxbTnahNSX+uu0HlnKrUalatBJbcuG0xVolNcwkrJFKxESXa6ZxiKT/\nYmfPCjcekA5wtoM9Kmc4EkCK7rcXtzJu7rQpozvY3bIAn5HfiooVK6l9evDZ\nfLvYwakglPOL/oAdoYh40IScacgoEqFyTOGndIMhOoxUBShyyRVp9f7j4/0H\n1Yd4aH9mWFhovMUqGQGQ4gDOptp+XKTw0l2cCuGcoaG5vJjJ0OkBal5RnlMH\nu6f87iHKAb+hIoU/301RwdvvRN/wlJ6IK1JelerzPHf7tidOret4fiVCLBU4\nENhbY02KedJUxvz0igPCwYiBcx3veSoE6v4hdml1Wgx3omsgRAsi6ATPvgNq\nYtdFlZSHKGYue7ttKAwoImweGxnk71ceU0kkHbJf9YWqVxXscN1XXyTMMTJ7\nhizc6B0U61YmZfJFnJfYFtQwlPwjAv+qNtdH57o7zq+sdAXFH5LBS1HM3CLj\n0KvJ\r\n=2NSe\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a4307ced3400e7b61e83495c8903f219bba0ae44","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.6b6a4ff92.0","@material/rtl":"5.0.0-canary.6b6a4ff92.0","@material/base":"5.0.0-canary.6b6a4ff92.0","@material/theme":"5.0.0-canary.6b6a4ff92.0","@material/animation":"5.0.0-canary.6b6a4ff92.0","@material/typography":"5.0.0-canary.6b6a4ff92.0","@material/feature-targeting":"5.0.0-canary.6b6a4ff92.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.6b6a4ff92.0_1579715856470_0.21121650208172915","host":"s3://npm-registry-packages"}},"5.0.0-canary.6092f71ee.0":{"name":"@material/floating-label","version":"5.0.0-canary.6092f71ee.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.6092f71ee.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4e1452eb85e3e3b2bcf0f9c954588befb9648a18","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.6092f71ee.0.tgz","fileCount":34,"integrity":"sha512-l5wsLZnzmqfn+fLHoTCpT32/ULxK/RLVHIc+ZwSG6aDA6EfbdPHnaQoqliE3k0H2hXz0r0UXzCu9Py0vY5uZKA==","signatures":[{"sig":"MEQCIB+Vw+x268/krAJzGslz/mGEpRjHppORQUwhnK4JGs7TAiB4N6NUvj5ZOWYNAzv915u10V5IzAsEC8ipy1nZPmU4Jw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":170859,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeKLvECRA9TVsSAnZWagAA5fsP/A1CZtyo1uPbpiZOXmzq\nlcVxiAaHgBLxukiFHR81G1DeZQviJvqUsV1So+541GIsOgEr4bjQ4oaIvjOl\nDkcZ0H+ZISP9TFSLupFUNHzyuI+pnL92R+p64Ukr3JAIbR/3TcHa3WL79Gy5\nKRDyGvoSg6TaLqhJK94vcaH3VStjSxEuW5DuSZSFrj++bO91Vpqwyhz/01eC\n7tmh0PWb3vsgrK+MjGCqlRDwyplrRmspTth8SVzoxGv5Z1V7MwcwvHNzuepU\nmSe5jxJav1EWBHbHQi4y5C1xYBgxX+BcKvRPzjrkaVhvFzYWPYpJv/kaXwLY\n4skSlXwWZRqlewWeLK/yBmcq3TGV66ZXIChQaxSHqhfjwNauWcjgv1tiGLLr\nJ4ZvuQx6A0PrzkgRpX1j8wSn1pekqzM8b1d2UzHHwpKQ7p/NqeNNU1B1bhuc\nRIJlSl5IiAWXkqNUN3Y2THJjg1MEN2GgnCMdPFWf1ENWwC1TLQa8cgJSmlHX\n6ypnUA31Orojy3bpp1r+QcpgO2Kw63mS/MNSn+XdLmg8B7iccf0df9Hc0YhD\nNtBKPjBzXvMz19CVAC7Nhvn2mrYtW4Dwr06cN0eFpPaxcikk2aiYqHXYf4h0\nO/0bd2LsKBZ6JkNCMc4hyTVZKp5oySfXa3vFmOhGH/1FrxcbgQA1mdFIz1xe\n21kn\r\n=tI3j\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<label class=\"mdc-floating-label\" for=\"my-text-field-id\">Hint text</label>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Variants\n\n### Avoid Dynamic ID Generation\n\nIf you're using the JavaScript-enabled version of floating label, you can avoid needing to assign\na unique `id` to each `<input>` by wrapping `mdc-text-field__input` within a `<label>`:\n\n```html\n<label class=\"mdc-text-field\">\n  <input type=\"text\" class=\"mdc-text-field__input\">\n  <span class=\"mdc-floating-label\">Hint Text</span>\n  <div class=\"mdc-text-field__bottom-line\"></div>\n</label>\n```\n\n> NOTE: This method also works with `<select>`.\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"da5d9e639c767fd3f9ad77c867d990afc21cd359","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.6092f71ee.0","@material/rtl":"5.0.0-canary.6092f71ee.0","@material/base":"5.0.0-canary.6092f71ee.0","@material/theme":"5.0.0-canary.6092f71ee.0","@material/animation":"5.0.0-canary.6092f71ee.0","@material/typography":"5.0.0-canary.6092f71ee.0","@material/feature-targeting":"5.0.0-canary.6092f71ee.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.6092f71ee.0_1579727812373_0.42992797628685553","host":"s3://npm-registry-packages"}},"5.0.0-canary.d8d95020f.0":{"name":"@material/floating-label","version":"5.0.0-canary.d8d95020f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.d8d95020f.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"521c92c57b02ec605746566a5b9ebd589556926a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.d8d95020f.0.tgz","fileCount":34,"integrity":"sha512-taDTJLywTzmQ+rvnrH5VHZWBT+usMy/arwsk5ANuvUgIz0CtlU3F6XBVg7XePUV4zTd5tw75aVMS38lcI3qH6g==","signatures":[{"sig":"MEYCIQC35rXF7lmNvAhhvaKkr3PLTcsutbbr+xR2pgRvRLhnvQIhAJzWvMvQGZQ3uSGRycbnegtF4zucea1iNQXo2nD8he4O","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":170587,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeKNYlCRA9TVsSAnZWagAAz3MP/R6coySBHmHKp0Vbgadi\nesR9SSHDq8+oN468pGXx6YpChnWqZXz/P+HDDmsVzKGxAwmmUBM8LdCakV5O\n8YNDSC6y5ePyZv95tQHms7P8dkC+1ZQ6RMhYhN9moJ2S2V4ewm9+HlYLJS5K\nh9XJ+CF2lYegcX9+/XEkvADk4hHViqoWxXSurU/wbKDmscH777y7Wjv2Mnau\n2/pnnN7fZZ+zNDYhJVFTiP1AkSQmbaULA82wd8JlA2uj5XT3QBLGDXU4vgxO\n6wr8ToOn20LT4Y50J8QSGCLkaiefPfxBG3fQ5i8WQcYyVCjO8YxAxrH5JGBS\nvDERhXNfosiTnGlx962sdxuIKCZvCLOyjYOXiL5lYi4aFJbk24lywGP3Mt0j\niebvfqxDwh6/Lqaa0Bfs0LSHErNCjv3+C+6gjv5uBup2+4r7phObIK0+EaWp\nOAT/Id/1/TJXpYF89WNUfiLEwGwQJ00cUJKItNf97G3qmuTl8NgF5Wjh+DL+\nsLk1x4tcm2N9IHlYokZyUBfTiCFfK/F+hYkScFUFrRalSuSTdAcHEWqHwwJf\nIzde7XovMoAgWv+r14DioygktVpnTTOXw+zeH6gN4E5Xit4CmvjHnCQbEmdb\nu/vG0NkNyb1D6tb7p9aiiQgGGBH3DMkrEQ63/TD4EtTAyZdnWreOBIJ3CvZh\nW73v\r\n=Riww\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"6360c5189134a77fd45542c27776ac2f86b16a49","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.d8d95020f.0","@material/rtl":"5.0.0-canary.d8d95020f.0","@material/base":"5.0.0-canary.d8d95020f.0","@material/theme":"5.0.0-canary.d8d95020f.0","@material/animation":"5.0.0-canary.d8d95020f.0","@material/typography":"5.0.0-canary.d8d95020f.0","@material/feature-targeting":"5.0.0-canary.d8d95020f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.d8d95020f.0_1579734564562_0.8090137798691694","host":"s3://npm-registry-packages"}},"5.0.0-canary.b7facc628.0":{"name":"@material/floating-label","version":"5.0.0-canary.b7facc628.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.b7facc628.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"33d0b0df0ec3a02f1ab46faf707ee578439f90df","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.b7facc628.0.tgz","fileCount":34,"integrity":"sha512-ih9JJsDy9aHxiRgzIzpXYCxvZ4dM68DoeeHes3xi3n4o7VnkSC9zbZ7OHlVQYo8oplnCGx0curoLtBC8mMlJBg==","signatures":[{"sig":"MEYCIQC/Tk7BFW7UtygMDqT89TL6o25WkivixmeyzYXn3EDdlQIhAMz/b8GkxDbDGpPe3ne63WPp1cgTKoYNjHMqr5QN/euC","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":170587,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeKeITCRA9TVsSAnZWagAAeQUQAIehIcIMSd89zEDmRvYl\n0fex3ZpWHhH6FQqj+EQTpRXRbjVFpBnfW+TjCcBi8XzVMdzRqy5x20iCCmi6\nWfcJD6qvUOG2fyxSAT56e7XnHX2jHF3oYP6rrUBHrUtYuEzwi6HfGK7+K3e6\nJbNwCFFFts6P06z4c9A4iaJMU2MnjvhpSgQEaGjnpMmc3sWoOvd0JRJEfmNd\nr/Nyri4agtR7cBmRK/c9lB7uAusGtoFUeq+PQG092R4cstpptR/0tSgXnMty\n+hEgwCQaEJJEop3hLgP7GRHFGuzpmpmNN/SXe1NsDNZEliqbIVYXp4fMNzHz\nhCk2MWrf664dmVexxlp/XzYRphy0Gel4My4MhvW+JlLHNuBbWDyieX0914iM\nkK2s4WF3ZaNNfg5nhau3tyifKF3K2Y4+i2k6M+AQ6LMvKEaCUNiY2Xy0KcNT\nkVOjUab2ndX3iaogMVQn/6kj+AAkOjHBZ1hDub8R+3uEyNdwNiGcj0E1Hkwd\nutXrcKT+wq7JtCjKKKHhYfT4Z86njJtpJMLjN7V2q+WureH9+66kenvaT2Qx\nwFb0Vyy6QliEzGKld78JJWIpY/dbZEwPFh6C4NxtRvR7E056mYpEU0SLpDhT\npaERAKwV87JZpJWjl2dMLGxnEz6KkKHt+8Ar+hdaos8Ns6ET/x6164mxxP4A\nKyiT\r\n=0yXc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"265b39c05dba4587f44e16eb788b56c1cb0153a4","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.b7facc628.0","@material/rtl":"5.0.0-canary.b7facc628.0","@material/base":"5.0.0-canary.b7facc628.0","@material/theme":"5.0.0-canary.b7facc628.0","@material/animation":"5.0.0-canary.b7facc628.0","@material/typography":"5.0.0-canary.b7facc628.0","@material/feature-targeting":"5.0.0-canary.b7facc628.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.b7facc628.0_1579803154936_0.688788154757138","host":"s3://npm-registry-packages"}},"5.0.0-canary.63f357dbf.0":{"name":"@material/floating-label","version":"5.0.0-canary.63f357dbf.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.63f357dbf.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2d45bc89473c031df4be1af509e1b17ae11102d5","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.63f357dbf.0.tgz","fileCount":34,"integrity":"sha512-fC9A47ehHVqRLmbNw5rJLo7KBPTlg8laTL4TGIQQW43zHRIrCZeu3RaaRVMQyOwtqXYjEFZl8kIA1BmUFEvY1g==","signatures":[{"sig":"MEQCICsKbW4smVcqatbfuk0BJ2cYZLFqGs5zAcoYdix8tzzUAiAKPOTmVTVCIHBhDW7t0yCTrsvK4M2JUO/wTMl+pnKs1g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":170587,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeKhZBCRA9TVsSAnZWagAApbAP/3kMalDRQ5uEgKFVsSB8\nkBCEncnLz+ipO6MJYDALXv/sUUtMGjernNYY7RYoDoO74fA+OwYuVFwoBrls\nXSn654+mXcIPkoof9Jssw3tC8w84UKULSK0uv7st7mZ9+fAnc2D9llC1qPfh\nRtWrdcx6Va3GtorfXm23LBRMaAYvXdGUGGWGYlQ7lxraVcQDWwJM9BbqMGRx\nY0dWuylIBrV80LjlwzwXz0Wmpx+YMJVZ7NcgUBwcfMU1H2uq8z2MxUA8kOld\nXHgShzkFaWV7yCKA8FKvFF00wFE1bWWlymTnOV21OMyZXWCRFM9zsLZJqpEW\nkA9iJviMwcQsZFqJTvrDTqTWwff51AalO43qYTUtSoS31+eu7gNaSuWywt07\n0dbqr072wiljBaxEiPNIsQNSmAYZz5xJIb4Gj7mAgw3oT/6r23/eYuV9eAxf\nJQqkVKGko+VIAIFq++f9mh+5+BVTAzlwqkxO0JLr3c2e24csrBXazCCRal+8\nKsTqJmJG/o+ve7IUqQslYyqeJyYZqoDlaa83sKh54GYszpV0n/xOPrvj8zPa\nYpWOGHV8HPzWEgTEe1g288ZXKX2cCklhm86vGFay+hz7JB8hmtoRApsjbNNK\n7akqYSxlFFQK+iw/sRUJs/Qvt6qwztaM10vhUc9xW3Ftv8vTcNOaH/6S2y8u\nUOuC\r\n=PNA8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"eeb2b38a1cd8ef32c66d35119a666a4b01da6d7d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.63f357dbf.0","@material/rtl":"5.0.0-canary.63f357dbf.0","@material/base":"5.0.0-canary.63f357dbf.0","@material/theme":"5.0.0-canary.63f357dbf.0","@material/animation":"5.0.0-canary.63f357dbf.0","@material/typography":"5.0.0-canary.63f357dbf.0","@material/feature-targeting":"5.0.0-canary.63f357dbf.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.63f357dbf.0_1579816513327_0.4654127730788091","host":"s3://npm-registry-packages"}},"5.0.0-canary.f2426d26e.0":{"name":"@material/floating-label","version":"5.0.0-canary.f2426d26e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.f2426d26e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a6b7862a002f11e19832a7dadf0e78832710f0ec","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.f2426d26e.0.tgz","fileCount":34,"integrity":"sha512-0Foi+pZNvAPRmXfvKYHRLzBtPDhokhaiBFNN5AOrpk2mCMvsmW/gxHpvTD61QqnIP0ztcVNDd5cegJP5wALnQA==","signatures":[{"sig":"MEUCIFmDZKGATaGt2vGYjS09ooxJFU/EbJ4r7wpdR8la4BqNAiEA3y0oI8yrBLzoNVXVVkLXQx2GI0UFQ6i5z94Hv8pr+UE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":170587,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeKjJhCRA9TVsSAnZWagAAHGQP/3nNJryLJLfQP9YTVe1h\neNESRBwf9leAfj9IGHPaP2cWK2pOzaEZgmqy9owP5BFZE+hONO6+w/hKvBHR\nvYZSp+mC21WzCHe0SFCbqVOGemW2jN1s3rbNFE23xMPWzxfCnFDOYvKoUU6c\nzqZV5nLMxRsXzldlL7Z+JWCPHCx3mkA38cIja2xoMJXQaYh83KmQ1xBcPT6/\n/VVpul82D8REGSXGu/wOgRo4FOgVmigczHLMQpUUciqGmeIr2ANokUfxsekI\nY/hub1ASg74HR5R/G3L9s3iFvE9kiRd3JZ7hUjSf6UIg946t+aUTr43npM4F\n2sVy0V/ybt2V6ExVB2cBPLqvIVMQEFsc5xrtdsR7fLz2KI+9JGD1g6a5P9k4\ncAWaXmstnzj9R3ztUxm0u476JFDUN3nWgOcELrbgzIJMcgutlIe1Z5l2FivD\nEcWGXfiTUm8vMI1bwMv+9JgDTxBDhxlPeNJZ1X4cctNELjbXoBRfSou6iuPa\ndhWi2FtLX5gHgt45yNMWF6SvJ7Jf326GKTpRoxNPFVqKWnzgBUeMdAlZvnXi\n2AWw2+kaz36DjdUqbti4+8sF29MP/S46/Mw1uTN2QOXo52hggrPW+ygm9UlS\npYYmCsgqUoxbPqkoe1xE/CprTdiNsCUeOsxy3a74yWEz2/OPSVa3U8ej8vN+\nHCN9\r\n=G7jB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f25cc47237fd4889c25ddd16c4d80cff95fe3c91","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.f2426d26e.0","@material/rtl":"5.0.0-canary.f2426d26e.0","@material/base":"5.0.0-canary.f2426d26e.0","@material/theme":"5.0.0-canary.f2426d26e.0","@material/animation":"5.0.0-canary.f2426d26e.0","@material/typography":"5.0.0-canary.f2426d26e.0","@material/feature-targeting":"5.0.0-canary.f2426d26e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.f2426d26e.0_1579823712711_0.6072665942375084","host":"s3://npm-registry-packages"}},"5.0.0-canary.7f5e0c23f.0":{"name":"@material/floating-label","version":"5.0.0-canary.7f5e0c23f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.7f5e0c23f.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9528a5405459339f0f694d0c8f9bd1afe8a0b642","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.7f5e0c23f.0.tgz","fileCount":34,"integrity":"sha512-uK64H6AdWbGTuh4dVdhmUmi9OXEgj7kYxo++qT77TNzHcnpq/+V62GY4U2B4KmNvxOtz7PHClIJ8OHOFeUu7sQ==","signatures":[{"sig":"MEYCIQD9E5Cv4BiV4FKbgpENKlfAZ1Lrb0bT26gdjeXmREzo6wIhAPz5uzThHyw+06g3vlTQ8J4tp+VvV18O21WmDWwMyHmZ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":170587,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeKx+lCRA9TVsSAnZWagAAKXkQAIJ8JbwtXsm7amStb/4j\n/t71CnNBAxbRjBCCDiT/8X0IUNDDCaqMV6maSOT01KM0h23f6426fW7EpbOz\nvEFXdV4UhGTMWwyZ/ljhHcWZd6krtWckPnnqo5vpOjDvH22wH5+dkG+NNA0P\nCeEwt7K+Fdw5wMn9Mi8i872YXYCzuq00yqVDD9CuX7a5ixHrNAM8WRtvIfix\nGgJOuEs4KuASdKzBjdl49f6n3CObcu5GLu00j2lU0JfNLJzKvSnE8vqkAREE\ncLRrQe0WEAJm1LaHa/BwAk3sWwd1/pDs2onMQV3aO7iRJkxLgyr8RQX4ZDPx\nAxjyAEKuKCZZrjQ8veLOEPclzlSNAXquOJQV7ShD6O7iC9gGV4uBLnWc2+2y\nWzwlUJeDtcNtS2GtQKIr+PrTAI+WSHWf/eFhWSmiWs+HrNCwOzmvNDl6svMT\nlcT2f/4k9FfuzFk/gsicx6M2GPQ0BHQeQWqk0lUGiTpCIwPncaRBO2uER/En\nJc/4X2Q5KFxSeZ8IjB+hDi29uw5aganclOOa4qk+2Yyd6nEoNNuXLBHKYooM\njCjt33Ts6dKr+I96YuuTVb9ANBNFdbkrpxLll9zFpvcFXV3M/kyL35TpLBpR\noX1j+Yw9DdpBPdYzHUGzd6yyLaHtg3skzdTrad7yPTeWFzOZhaDaP7yqhbO0\n2rQB\r\n=emvf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"619b057dce90a552f56e341228cfddbfb7746acc","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.7f5e0c23f.0","@material/rtl":"5.0.0-canary.7f5e0c23f.0","@material/base":"5.0.0-canary.7f5e0c23f.0","@material/theme":"5.0.0-canary.7f5e0c23f.0","@material/animation":"5.0.0-canary.7f5e0c23f.0","@material/typography":"5.0.0-canary.7f5e0c23f.0","@material/feature-targeting":"5.0.0-canary.7f5e0c23f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.7f5e0c23f.0_1579884452702_0.6469374513964139","host":"s3://npm-registry-packages"}},"5.0.0-canary.3fc3ab520.0":{"name":"@material/floating-label","version":"5.0.0-canary.3fc3ab520.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.3fc3ab520.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"fb6fd1ccde3b000999a13e75d8293deb928d7d23","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.3fc3ab520.0.tgz","fileCount":34,"integrity":"sha512-tcx+fX72cR5Ea5QICylWx97ycuxrI3+/Qi85+eM3dJp7YpG3JbqxO02C70MCPjbvOLC4fTd3Vd+nabwH7lVEYQ==","signatures":[{"sig":"MEYCIQCVBw+me484mAWrGeqvjYyTNBuSRaUSek4QE7wwVB+8MAIhAO4dMr2s31nvraaguWZ2ujs+PebxlUU5zFEvfu8euYnf","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":170587,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeKyduCRA9TVsSAnZWagAArYwP/1YXvfZmlMGZpW/C3Tw1\nHRCS8m3UbGXbSq4lEYT+GZard393WpKuvtNXA//TWgq6+b1p34yPUAjznHWa\nolNpuD4WBztaLvDUDuuf6IwhbGe7OqYQS8dCimI7C+GBrrfdckyB6pPoq5Sm\ndA9T+Qbre/ptvDETocfoiUZRxhRvLNc/GkOoxTco1DN/9QI7WiCd8DH0KfwR\ncU6lB7DI9V96iiGjuuXg1Icmk/fvNyeDOnBRrvS5yyiJiAD0f8cgeMxBOTXe\nrPJaPLJJMx31TegubJbymHiLnddW0sVzxNwGl2+GquXDpveaBleO478Oj5Qt\nzsWlrzwF0sSWcsERFS1hC/8yBNfnPRNJtXcI+5bVgcT0hRfFRiLqgQsPUy1k\nPopfLgtJDAZ2hYH5EhcG+p/PJxkJ8sljlK0Ur2q5i89rIFo5LNSyh4iGNxWz\nL5Xzgbm683AOUxvLgP644xbqN5RuytSo0kVeGUmkSkfV3a8/HB42X4+zjUWH\n9CoBAXynYQ8nnlCR3GDl3rZECQPH6t+mQLeFi2NSoAEY2lnWQxYktZAQE3eX\nSTKWEBX7vZ4NUcQZidFVMLT13xN5PvO73d2NfaK1d5bsG9/OnK9DZW4/Noql\nyjd3ZN1t4nK/IUxtw5R4P4R55IULaJyCS3k7f5PZmaDcAlGYH0egGinvv6rG\nCv9g\r\n=13id\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d15050fe97c7130fc9607ecc53a7eafd2b9c58ef","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.3fc3ab520.0","@material/rtl":"5.0.0-canary.3fc3ab520.0","@material/base":"5.0.0-canary.3fc3ab520.0","@material/theme":"5.0.0-canary.3fc3ab520.0","@material/animation":"5.0.0-canary.3fc3ab520.0","@material/typography":"5.0.0-canary.3fc3ab520.0","@material/feature-targeting":"5.0.0-canary.3fc3ab520.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.3fc3ab520.0_1579886446372_0.6335282305386198","host":"s3://npm-registry-packages"}},"5.0.0-canary.80a4d326f.0":{"name":"@material/floating-label","version":"5.0.0-canary.80a4d326f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.80a4d326f.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"60992d7e99830c3ee6bba82d8b35e5c688d650b1","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.80a4d326f.0.tgz","fileCount":34,"integrity":"sha512-BBmNRTVk4sPey+zYQux+9n3a+Kprh9Z0d57bLFRD4deqoCZSNA5qAOpG+qP4zHnnUnZWn8eSxDWbR3L0mkEPmQ==","signatures":[{"sig":"MEUCIQCi/2wwVdymkfhpRoxob5Bb73fwjs2m9ugaNYxUBt4TBgIgCCZHU8HcM/IWWGCCY8Ogp598ZUySYrg9YCldbulJ3ck=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":170587,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeK1d4CRA9TVsSAnZWagAAEQgQAINxshFXr+Vx17PLCKhV\nVKmyIQoZNdUC9Kr+ioLwJiD7VrIzde6xIH2JSdYD26vdbFAXmoYEmrYeD6bd\nYcqbgbcy5ix0VXfyvPVOOt2ZVAHgK56Rmupleq+x4m6AO5ayPT3Vzdv5Lnl2\nic89ASraUdlQPzuPQHVtRUEllt39E8qQKxG2siL/xYIKniy+rHVm1i/75xfm\nNVJIilX1SpoQBxVq4NHDy43wINZFU7xl+IW4TO/mL+9b24u4tGkXqgYJtoie\nfcKZfgy951CMP09esELjZFw40DFu37H0Ej8ZJ/UBo/QvypxTIvBWc4crUu5j\nngjyrL4E1zHPSKw29vOdyvySKxIuOYkLEFu4t1J4XNdzg+sa76yk4sTlIPWx\nkA1IER/4trLbYOy4SlUr4Vnlms6ekhWc5H9lWkZj1Z+knj1SUOyyOyMe0Osh\ntFM5C9XtqEPdKP6NIgQ8dUpu4IPNWThHkbZ6IEtrwRjYqS4WwFKgm3GuXyfh\nIVZDSt7zyidX5pQqB7nUy/fJB4zu5hitR20WfgxzX6/m36ifjH05W8vnfLZF\nZuPstYv4XbhSVQj6q60E7Z43c82P8qgfxQyxDgq9i+DXIPicbwplB/28OBaV\nnSIZ05pDsqQcSiXyGT2f+05JqZuKbfiJ2lrJ/FwTW4rokwZFbzUWu2OyeGAp\nv74W\r\n=cETL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b0001f5c4ba1986c74470e492e82bc13e15e2ad3","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.80a4d326f.0","@material/rtl":"5.0.0-canary.80a4d326f.0","@material/base":"5.0.0-canary.80a4d326f.0","@material/theme":"5.0.0-canary.80a4d326f.0","@material/animation":"5.0.0-canary.80a4d326f.0","@material/typography":"5.0.0-canary.80a4d326f.0","@material/feature-targeting":"5.0.0-canary.80a4d326f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.80a4d326f.0_1579898744213_0.47495663236977803","host":"s3://npm-registry-packages"}},"5.0.0-canary.ef7de4def.0":{"name":"@material/floating-label","version":"5.0.0-canary.ef7de4def.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.ef7de4def.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3c638f57c45600b423c19a9d6bcdf51a93ee6872","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.ef7de4def.0.tgz","fileCount":34,"integrity":"sha512-9FoeVMHSSP4MM9pcy/Zz8gikow/8w/oPjQDB5HWoKubmZTIpOIqw5CCdFfS99nV892aVwx/zvktPMZSBk4/6nQ==","signatures":[{"sig":"MEUCIQCgft/gMbXujHuiYJmBFOnwWNTacRjcSwjQ3NYmYctYFQIgGKThUICLrStsf3k/fUZrvmiI5COMot/mQon3RyFyVA4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":170587,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeK2JOCRA9TVsSAnZWagAA8AgP+wYqJ4Medn0PVOKjsNJo\nv/mfX5R/a0nkayFk1ePfIZgBuYIrPjwbTFDnhmcWk1XO09Q5rHnaLnNTAmR/\n8Ai+jDaQTh7+vjii3B4eNPa4W5ILyHFHqQkoQczOXUIVtHp6HVE/a3eRvR3i\nW4Bc5eSmPTNRUJ7Zbe8ma+4UANNE0foWSe48ViKD7ve4DedhbyY0XmnpZPtm\nVP4/BvkT7CKE2FTAy7UQXuzufCVUJ8yg8rDPerYrELhneROHgtEhiA1HgfAq\ndwGNRlxiYZN88MzSTKHk38aZTeI3/vKaVDgY0+sfKIdbqQNc3NKEelqnt//O\nLUzkgyRnjkszkp2KDflWEQ9RIluI43awFyCsMzEaRHqtoNhv0ADrDxlgVcsX\nDQZp+bX+j7eT3NP5tyQ0xrm3Ct8FWJ3ZtfD6OovG1+hFVRPZi1pV//BC8cwR\n8xumVTw6+5ESqDJ7RgUpktcD6ybRX0GkumoCN4XRvWNy1zaP1msqhDcHs8gX\nAgEMPLnyJImnc+zF6ewh64rtO+TVKO2KqyhQq7b4aiMF7QJd6g2orDFSMNrm\nOyW3ii+GYusk5DQIoZDBkQ7MjqmyPHxx7otYQ6HvTpe+Ruqz8JmSNWpjhx9C\neDv9vjBfjMJuW8k5b5c+RhpYG/uzxYLttiz2NsTVFPdw4eEQLxf8pSiBc/Ls\n7+ua\r\n=Yw5l\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1ac98da12680a4581dd0427e23f1dd1b95a939a0","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.ef7de4def.0","@material/rtl":"5.0.0-canary.ef7de4def.0","@material/base":"5.0.0-canary.ef7de4def.0","@material/theme":"5.0.0-canary.ef7de4def.0","@material/animation":"5.0.0-canary.ef7de4def.0","@material/typography":"5.0.0-canary.ef7de4def.0","@material/feature-targeting":"5.0.0-canary.ef7de4def.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.ef7de4def.0_1579901517724_0.8154309200663723","host":"s3://npm-registry-packages"}},"5.0.0-canary.93e2288b6.0":{"name":"@material/floating-label","version":"5.0.0-canary.93e2288b6.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.93e2288b6.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"fe21c93009592aeb6f4e3907f48232f6fbb3ca12","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.93e2288b6.0.tgz","fileCount":34,"integrity":"sha512-aLQAr3SRzA1L409k8DfNoI5CbUFEBw2TGDgmwsWMRmZvcj7UC/8T9hmBx7CT4fseZpbAn2Z0QJyLBSJoj2gLfw==","signatures":[{"sig":"MEYCIQD5U8LyZ6Xj7oYtY+Dxx8KUQcRuN181ajx4tCW4rEy8zwIhAOpe5TTITSGKKcnL3UQak6D6UE/x8oCGyTvnIplDzpXw","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":170587,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeMGePCRA9TVsSAnZWagAA0rsP+wXad0LCp0qeezA3JpcZ\nqxQ85yswhiQqtXWozKYejhkEjDP5yyVZgRfMTHhiHzymDZeXwgSYZVou0hNo\nmdTAYF1GdmVAuHEX7vUv4TUm5QgZ9QzR0kX/DQrcjXazoAcPJ17w3rReZlTO\nLed/SUdJqj108mIOd7tuYH2t4R1Zl4rKraIqaxMWN6HdjmpgO5jMMtuLDv9m\nphoQMekq6qWgwsKWpARSCAAUTOlMUHqjntFSMla/SN4MKw9TfyflyVRGgWLv\nXc607jreVBQm/+HYNaRavjkQfPNIXSsaO/A+qUhXoA+SZ/x2E3jl2LYBsLvo\np1k45yygdHAE3+sRslK7aHl3v/+Io/SNcy5bUEHyX0wKJRqxpc3o/VrtcyOG\nQtBruRzH7LzTfoKHIASHYae8Q76rnnWrDDARxuiCUlF/23fNcqPEsxj95+qx\nQEPvFTVrdx9UBh67GNxCAlfiaE7DrudPD6tcZOl4mScSYdypJXP+AFAWaEUV\n5JnaerUWb0gLfqO9uZ0Yq8z6ouUqS61BONs/gtxoauTxbm6lUXu0lpCg3f0c\nUUo5NB9aQSbv06Sw/g7AEOaZ5we6GoblynMdBhBbK5NU2Fe0A4KMzj8GjqKz\nbE4rBkPTqzeWi4BxVRPRm8Gua8/tfgRPuNOVLg66js7freDsxHWfGbQV72/e\nj0tz\r\n=XRpv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"00984d219befe7ef5ec7c042cd975979249ca8f0","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.93e2288b6.0","@material/rtl":"5.0.0-canary.93e2288b6.0","@material/base":"5.0.0-canary.93e2288b6.0","@material/theme":"5.0.0-canary.93e2288b6.0","@material/animation":"5.0.0-canary.93e2288b6.0","@material/typography":"5.0.0-canary.93e2288b6.0","@material/feature-targeting":"5.0.0-canary.93e2288b6.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.93e2288b6.0_1580230542611_0.561937075717247","host":"s3://npm-registry-packages"}},"5.0.0-canary.34ef15f67.0":{"name":"@material/floating-label","version":"5.0.0-canary.34ef15f67.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.34ef15f67.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2b7dd95541b52473ca0c1a22ca626190dc86eaf5","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.34ef15f67.0.tgz","fileCount":34,"integrity":"sha512-gmkZx//xSGknogKvxE+CY1/B8eYOtMIvH9Mb3EeTNRW/wibrrB/w1OXIyI1RsVMMe++RBLdkBmDvQaqlPL5/7w==","signatures":[{"sig":"MEYCIQDCWSsBTyUEZCAshfMXSDi13YY4idKSrx45xFPO9crlEQIhAJsKfhnADd9dAZenVt/7Nk4OB2XNIy2WgUvfJzFUdcSz","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":170587,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeMG4qCRA9TVsSAnZWagAAyuYQAIh1yVs97yhBLpPhoR0W\nrTMzFKMxu29FfHJiWTtZ9eM4JFMvFkBQbC3aso5V11CGItmak9/xcLEGJhpG\nFJwKo6LN3Tfm7Ky6zO6E/l57r3zYI5FpLsxOrqa+ZQa5j9MYAF4jnDVhflSD\nApZ7eqcLZGwMMFFDq9M4m8VcW7ThI3pQ/W399+ovI3seppupbqD6S9/f0FMC\nKslYaxjCaQ3ac9b/gL0oZJCJ8psq29BxVChtOdRE9InJu+YDXvfLF7fn386S\nToj7g77M5L5B7zrzEUzNFkyQfyaR7V/RN2Q1bfGeM0QI2uRlZtCUgpC/RTaJ\npFVp3UirjUDmpCAuKWjda/dP9TtVBG2Yg39Vylyv/NWmM44LiL16DqkO1mZo\n06X2zwaQvzL/WSZE91+F+Y9UHmLZI2lIQH7Jm6vc10kw0MsDKkmDhECLupjs\noWJxvDrIaK+becHXhileRu5hj1tpRZzfjXn+RDeRW+O3ito266iMGELQaxrC\nNHL0NO070omT/4Id3eM7ax3IN9SDk9bXtRB3c0BlU/kWxMLSIbfi3AVldJK3\nk163PFdssFS5oQHIXjNPS88gPimO0xCoslJyq7lTskCB6rvhUMVPKDjiSXTJ\nV0fI5GCIvW74XrRH4gU2FNBLJU/wvbSrPr9yunNag9rBj/kjkEPMra97nmwN\nzOdj\r\n=7ECI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"21f8c61e71f0a9c48eb2042e25093b7a821e30f5","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.34ef15f67.0","@material/rtl":"5.0.0-canary.34ef15f67.0","@material/base":"5.0.0-canary.34ef15f67.0","@material/theme":"5.0.0-canary.34ef15f67.0","@material/animation":"5.0.0-canary.34ef15f67.0","@material/typography":"5.0.0-canary.34ef15f67.0","@material/feature-targeting":"5.0.0-canary.34ef15f67.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.34ef15f67.0_1580232233951_0.5291671596566567","host":"s3://npm-registry-packages"}},"5.0.0-canary.d3d176ba5.0":{"name":"@material/floating-label","version":"5.0.0-canary.d3d176ba5.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.d3d176ba5.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2142845b46ae465183357af1b80cc5afc44c82be","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.d3d176ba5.0.tgz","fileCount":34,"integrity":"sha512-2+bvxkeUv7GTWqL4BU/+IrcFBfcOe5bLa9agG5/WRXTuzAo8zf0k2kCzXr+K6DPLGQPRGAAnaOzUM0I2/8M+qA==","signatures":[{"sig":"MEYCIQCXC0fjxUHaBDv4IFqLprgJIfx/WImIeX8sLraJEpiyewIhAKSHCGXUmadywAQ7gH6SaUtmCC82eHfDIWivx1lNJwRV","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":170587,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeMG9yCRA9TVsSAnZWagAAzVYQAJzqlHqmuH9jZirMujEX\n105HPm/1YgEkDi+YT3JVsl1M7aHmvpS5tLrHrlIZN7Hr8qFrVxAF8wzYws6e\nClwiiLDamW5AkhRV/hau3vcjy401/skxmaQwKttLaPn+myr/FlirmYPzPBol\nh5FWFNDHvClZiqcbGAAVE4HPLEQt5uJc7dsUPDSJiXpB2SqikgQDKsGHWHMO\nJfRbb3X9hogq9i4U/YJ/j03J3LnXMs72F4dHee1xZEyOfxVrDGMb2d1z22QC\nctCK7zC31PzTcsmFIDWf/v/P1ANbDS4ZaoS3f4CO9HhX/RSDeOygbUwmxY0b\nrV+MzeEL45rmv8rauEANPXAC69dB6VThqi1QthdUcf8upE9SkJ/3RnfMYfFr\n7bODDtD+pVS+BLWo7sZfMWdKCeSdSCGJRf3NXS6TTZxs7aDZpx2Blz+jfLVl\nrKaJoySMxjV73p9tBwYIe0DpgmLMPElRstw6730TV76mJae8ntbLuL1o//UP\nUiivvJajglwZfi+Ab69l4Xt1YY/+W1tJ3gBQLN/BqDabQ/OXcayBZA7C636d\neu2ixzu2mNrBUkoZTcn9UL3j6d301A9D06yHKa45VXtsmTPn8nPej2ujYaLr\nc08++mmA2+RWBLG9pm2+dRMx6KxyF4TmbYYxsu2lT8UxpsjFhg008SwJ/mv8\nY7YU\r\n=zlgx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"218eacd6961bf740e059146072cd9e6c710dcdc3","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.d3d176ba5.0","@material/rtl":"5.0.0-canary.d3d176ba5.0","@material/base":"5.0.0-canary.d3d176ba5.0","@material/theme":"5.0.0-canary.d3d176ba5.0","@material/animation":"5.0.0-canary.d3d176ba5.0","@material/typography":"5.0.0-canary.d3d176ba5.0","@material/feature-targeting":"5.0.0-canary.d3d176ba5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.d3d176ba5.0_1580232562196_0.9767466260889037","host":"s3://npm-registry-packages"}},"5.0.0-canary.32c1df133.0":{"name":"@material/floating-label","version":"5.0.0-canary.32c1df133.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.32c1df133.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c9d30134fedd64011502543dbb57b70b4c59b9e0","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.32c1df133.0.tgz","fileCount":34,"integrity":"sha512-abGuJdAKYETsL+sxCl9fcrioyZun0mPWhUEeQlidIDGhVPLjHiaxmrOftE/BgUb6cZEAOrMa8GgZzre7rJjpag==","signatures":[{"sig":"MEYCIQDpv/g/WPuGoA5rDarnu4XdHOjnfGBhdNLqU6zL1kJJrwIhAKpkRWaUEX1d9Sne2nGBR1xikTvMZU0/iS2acHNORI8F","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":170587,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeMI7WCRA9TVsSAnZWagAA27gP/33A7iZq3ImrWfxLKALT\ngB20qliTL1rD3/r69/p+3SDO9LwwXpYEywhO56w/hPiEuQSduvbnqGYUbIpJ\n/Vi/zhbJ8XVaSU7LdGskdy82YjlAmgpj/IOmJO36ktBwfpXrj3NDuqhH0Uoe\nvhl2X8u79QXzdTXcAemvTkSW4UmIAgvoxlgVZfgFDX4NaDf4JH+QKovLKufc\nvMRKCD8RAgL3kYn+xVylqHF7GjD1p8ocJck8rbFYJ+Y2oiA+XWbmPf6B1wxV\nQ23MXZpyv25HQGeKNR+kZTQupRqfCNKLpU6b8HOEGyr9RYUracIl4peghsxA\nISrX4CdTjUlcIDB88S8ZSuvoHP5IY0NpLIpR0PIcXfe0mmeHESHKiqLgeQlL\n0gaIabHhWGcrvxGR1HvuCmYRZxAudmrP66AMRecFIPyUv/hKnh5Ncel/1sNH\nFLqszGsvagjC8CO1+jbuDLxDGTYOlYQOonDe07tOU2QChESQcxdmcS28OW5V\nePygOIRerXPqtfkgFgL9diMywGUtF2Vybx/XhmYwqND1uDhobHBTvgLqe3j2\nlOdexdgpihjmuun6WwLYA7fseCmN14Fv6kwNaPtStcLuerXV6DZYciwQnU5a\nwFVI842t/kYocdRnb33pH/xk237jtYooL31c0sQcMwaKKIjTqyH2n1O8G2R4\nZXe5\r\n=toFi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1f36bc15da25ecb33aaa27693bbcee65c1d56eaa","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.32c1df133.0","@material/rtl":"5.0.0-canary.32c1df133.0","@material/base":"5.0.0-canary.32c1df133.0","@material/theme":"5.0.0-canary.32c1df133.0","@material/animation":"5.0.0-canary.32c1df133.0","@material/typography":"5.0.0-canary.32c1df133.0","@material/feature-targeting":"5.0.0-canary.32c1df133.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.32c1df133.0_1580240598330_0.373629701630962","host":"s3://npm-registry-packages"}},"5.0.0-canary.f3adce86f.0":{"name":"@material/floating-label","version":"5.0.0-canary.f3adce86f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.f3adce86f.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"528ca554e27a73fcb12abaf6b1181d043b0f723d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.f3adce86f.0.tgz","fileCount":34,"integrity":"sha512-e4dXHNTT9b/v+o7m0g7tG2UvkOgf1EIKzVQ4aofOwZS8p4liZ8co0Q+z/IFushRiIZfeK8TdOXiExAn+Tl//zg==","signatures":[{"sig":"MEUCIHHZX6IgdBQtDPxi2DLa33KN/6BZA2dKd4hdOqpRu6E6AiEAi5Frzx9QeAqVpX+HaElS9G9FotJeiyC5B3xqegAeT50=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":170587,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeMKxJCRA9TVsSAnZWagAA9CQQAIlfhGw/FYADDfWk3ySC\nQZZPQSGsyqjLALrMn1WLFUf8YsKciSU+UqEd5xm/zAtnI6Q+adVDMnWDYseN\nSQ++iMnvHTVAE2ua3Inm4LCKvnxX7gj5zxbeLTX2HUqXIMvTDEiDV85hYgT0\nC2prFq1nZDEQTGTm4FNmSolQeHPBzROXpk5+V7ICRUfkIvMRMF1Zhgoz4xFj\nD9LboR3RdaT5OnhdcNtkR7XKI9XSR7CreTlVE4uimHAmrLhMJAXdpP+NC8Hg\nmAGZLFJtXHZs60cN2yeDw6JTD8SNHa2d7slFJuFWktScDOjTYIh9UCOEGsdZ\nWwdwVJWD9OHFaBNqaRctw2bib5FUjqfiBWDErLk1SrEZLZyq4u4N0iuIvkQ8\n2oFP27/ud4InJpOCyMtE4H7RxpUW80JRUYZTPZzerv70X4xqCehUKGwsdTjh\nCPxQjCePwjnXuqurJz1o0dbKVeeCHaAM3iR2kWFzrJMJLBoo9TkJSMnYP2c9\nuTUitxTeprW6+FdOvv31HoN47ApuAYdMzhaNsvjiuyl9XPtxQSrXTJINEgrX\nhcascHfxfU/rDd2/pN7ucDPkkjJiU665zfPTzCg8Qajyre0y9BqmH+vPX+2Z\nX8UHCBn1oxIXygw4xl81/LssMtCLVAjZ2sbg1PQgLYvJYJ3crpd/44zKJ/GH\n1b1c\r\n=RmVx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c352913b9c3e29f7b404b08db88a506e692187d7","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.f3adce86f.0","@material/rtl":"5.0.0-canary.f3adce86f.0","@material/base":"5.0.0-canary.f3adce86f.0","@material/theme":"5.0.0-canary.f3adce86f.0","@material/animation":"5.0.0-canary.f3adce86f.0","@material/typography":"5.0.0-canary.f3adce86f.0","@material/feature-targeting":"5.0.0-canary.f3adce86f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.f3adce86f.0_1580248137368_0.5625885594494391","host":"s3://npm-registry-packages"}},"5.0.0-canary.a4423f890.0":{"name":"@material/floating-label","version":"5.0.0-canary.a4423f890.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.a4423f890.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"42f9208627df5a0c60112407153c6d67f8268d3b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.a4423f890.0.tgz","fileCount":34,"integrity":"sha512-P9m74xUNlrmnQ2Xmg06Bnh25kH6AG9TU7PzlUvBxXQO1ZxwoYt7RVXmck1L3Jx31fauYwxmVsfgp5qDtesmgpQ==","signatures":[{"sig":"MEQCIASK+RhAlLpozA9rGI0VdW5RLviqSTUOGlLKtst78+m5AiAV4oqI9NZHRXY/a5/DniaIPxzIk4anSvVN8o/tSgu9pw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":170587,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeMfSJCRA9TVsSAnZWagAABGEP+wcPkl/D0XFpFYLhAa5b\nE2ltK/oHGJEq1jmrAFT6TelJG2Z5FHZj0Yd+0F1wa1218JatNyFfqhbOIM8j\nVX5htpzD8zyOfwc9D4/vFj+6D0etl1naBbeLUB4EcrRJWwwvKQ3Y6dCf37OA\nGs43u19sArA9Xo8aPR2vjgS00TQnvQJC3NG1a+46aVKjHaqJNd8R8JE/Fks+\nm0FieN6x197qbPf0+mQMEQsb5StMo3d7+ulEw5vgMCgicP876EEuuSdtDOJY\nhmQ0CN6NuIhmb1rpVatdnsWFN4txffjIqsFd/3YjnaeYzuS6nkp4C7NEqLUx\nqfE4mJztwB8Yf7iStxCHKQ25xoIPKDp0FngMCoo1EFsZCc8l1FM6VCOQlTht\nQWHfteRlT3IpljqHgxj2t4vw4J/MFmgf+CI0MbVg3vLOYnwkKJ8Tr83/ul84\n1Z2omF1rCexXxLwWRhn0CZWPshKmFgNynNH/2PHWlyGlUJBDt8qi6H1ed4St\n9dmnFJC0Gcx9R36E2hema1K6ZHJItGDBj1X8xY/ODZqHEGkBfiTerCeuRdGv\nuE1+OklmQrvMvpEwYgz3w73L4C3u0rE2oQoyl7Izj92CPFSF0uYG7qIjQDo8\nmNh0MIy5fM2fb4HyjG29+PF0hDuiIFdwfJByGJVupwPpvHfatx3XhFSQzDqy\nb6ez\r\n=FSoz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"981df6741191636b0a527b318fe896f47f74cc0d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.a4423f890.0","@material/rtl":"5.0.0-canary.a4423f890.0","@material/base":"5.0.0-canary.a4423f890.0","@material/theme":"5.0.0-canary.a4423f890.0","@material/animation":"5.0.0-canary.a4423f890.0","@material/typography":"5.0.0-canary.a4423f890.0","@material/feature-targeting":"5.0.0-canary.a4423f890.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.a4423f890.0_1580332168746_0.8690011145234302","host":"s3://npm-registry-packages"}},"5.0.0-canary.9351f167d.0":{"name":"@material/floating-label","version":"5.0.0-canary.9351f167d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.9351f167d.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"286fa568c13ad2e5e6ce4320c2dcdc29301c4d8c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.9351f167d.0.tgz","fileCount":34,"integrity":"sha512-hUt9nwzs1ScTegvKO/ff5GzSfH/M7ky/ZyzOgTg7+b2GrpdudpwYnu+gzily7EIegkpkjQOyBiEzUo5Svqhqyw==","signatures":[{"sig":"MEQCIHAmMym9nYggl2WIcg6UgEq8wDTjaXPl1K4eAJ1QjZJmAiBtoFJKt/hmQM+/FqFc3Ey8ThjTbU1Dxc7hhJ4DgjFc6w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":170587,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeMf9WCRA9TVsSAnZWagAAMtMQAJIvbDBSWYTGbK+XDzyD\nNzJp2XR2vtTrsCAqlneLPxtFkqCgJgTRuZXw5FALt82zlYdkyxc2nJlb63DR\nTxxGOvL52rPPisYLChpZYCS50JmdHrS68/+xBq6nwaplgOJvEm72JcaM/fmv\nof6c8aePeONl1c8ISlgY9OBOV7cvTIuw9Eg7brgNOUqQ3vB3oD8JvYHdPb+N\nmfhCRxuf0h12qdiiWd4UJ/rsJgz1WTe3qBNoRpjHtJjZ7EZb/oHhy01FfCrk\n9seCOy5X68gowW5l1jcOXfV1/Ov9n1eygYLdcykX+JpqIkPLeWNicX5GTfMx\nfZuAyPelXoDSl/LbB6rFK/llH7xVd+s6I9PJiVPFyfQIlpk7dYU6tZ+22h2D\n/A652wclaj2XQKLiWS/cD05h80mrVJD5v7Wf1mQDlKEPMaUsYG5kW1sg1l5l\nLAM4cOL4xhfkpGrNfnf31f70AmPxc0H4dQ4rwW4WtdTaL0R5O/T1TaU45k65\nR7yg4iDWm7GGgx9XldTltuDzhKm5geMkxG6MR4B0XrAb0rpc8bR/3aBAQd45\nuyifsG2tf2cguUs+OobuMNd7B1PTkoZINra0YV30CergITXLDFoYwywsjIDi\nXYQH8MhzMqDqI2DgNY4LmsWLF81RUg+i1ht5mDV1yhbprBFYspOwURKz8BLv\n4o6a\r\n=Huc7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"6c1a50ef6adf8852f326e285227923411e60a63b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.9351f167d.0","@material/rtl":"5.0.0-canary.9351f167d.0","@material/base":"5.0.0-canary.9351f167d.0","@material/theme":"5.0.0-canary.9351f167d.0","@material/animation":"5.0.0-canary.9351f167d.0","@material/typography":"5.0.0-canary.9351f167d.0","@material/feature-targeting":"5.0.0-canary.9351f167d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.9351f167d.0_1580334934499_0.39133349925886396","host":"s3://npm-registry-packages"}},"5.0.0-canary.29b89dbc1.0":{"name":"@material/floating-label","version":"5.0.0-canary.29b89dbc1.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.29b89dbc1.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5c53e69296743bd19aff0f50ca28790fc9b76357","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.29b89dbc1.0.tgz","fileCount":34,"integrity":"sha512-+ApllGzIsPdOIsYxronkPk0bjAojahBei1ISaGpoyTuXVnZ/6hdJ3AsSy+wbG3iTlhRJHU3GhhKj10Ry+yy2gQ==","signatures":[{"sig":"MEYCIQCvi/dOotoDtUvk7P3JFr6BJh6cW79FflzDYa/5o2vxOwIhALdmQMHVwdahWxaJS8d6VW/L5leBixi7M2iB8ShgCwIq","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":170587,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeMgRMCRA9TVsSAnZWagAAfrEP/3SRSAfFYGLLAHyz4Lqz\nUH7qSBQxBsT69szKKTZhfiF0dA84569bFCC06/9Ytmrdq8EHywwv+hqTgteM\nOh9+rpyi7z7Tx6WSG2cmSXl9+tANrdv49zhRs+lux8vYDqBPEnqdHuy24JFE\nBsrQPU1gCUgmLbDfRdjGGPrLj2IPunIGhtc1cToHJYqrB80oeVwQRtXY+1QF\nz6Luldzu+KdF7k6DlytOQ54xCxgOaBhjF6efqkwLrQ8m6bbFgTs1VPRP9sg2\nyRTqb8UhB4lPaaLHVUIwJDjW6G+WKaH6p67ayZnnpxbfBWb6g6BfZQ8j6S5x\nKHCHAw1aEbY9NzBosRJurIuJpTIeqUz9QcnAoAiuDMQhe3y8Zgieb+WoLsyN\nz6e8hUmfkC3o68GcfgtLz+rOCVg9H4dyYSa+Kuou1u/S06k7hHglsppN8nO2\nXfwxBa78nDVQc07k66BgabDo5/JZbQmUhNCcX1TkkiZl/cyz+A/+wEe1eQjR\nkKywapY6JU8RTn0QFIcOUVisVsnZosLx6bmoGWFlF5IvT+SQdOjXC7Vii2aD\nO1IQGLR2azqGY/R5WMWaEEb41XAb1ytSWrw0ga5+4iaJTjy+OPqtnNf3OU0U\nDplwlPE8rSl6NK6ul68I/ctBfI0wzLLpc8veI51kTlPIcGD2C1EDL56cktMl\nEyfs\r\n=H4JD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"662c3c36b5ac6bb47c841a10193f2c717bf9ca86","_npmUser":{"name":"patrickrodee","email":"prodee@google.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.16.3+x64 (darwin)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.16.3","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.29b89dbc1.0","@material/rtl":"5.0.0-canary.29b89dbc1.0","@material/base":"5.0.0-canary.29b89dbc1.0","@material/theme":"5.0.0-canary.29b89dbc1.0","@material/animation":"5.0.0-canary.29b89dbc1.0","@material/typography":"5.0.0-canary.29b89dbc1.0","@material/feature-targeting":"5.0.0-canary.29b89dbc1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.29b89dbc1.0_1580336203947_0.12744782291536927","host":"s3://npm-registry-packages"}},"5.0.0-canary.45985457b.0":{"name":"@material/floating-label","version":"5.0.0-canary.45985457b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.45985457b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"95cccbe49ccaaf9948dcc695952685690344a19a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.45985457b.0.tgz","fileCount":34,"integrity":"sha512-AWTZkGj9jkiNwjfkjF90xmn7gPGlVUzOLvBI7jCUAszulEIjL+U58ylGWXJUMdY+BirhorArW11FxB5hWB2PxA==","signatures":[{"sig":"MEUCICrw5ETzANp3vnsrHz3Fm0r2myEeh8wYzVHKdQiTG82+AiEArczQmnIrDLizK98mR3nzGx31Y+ZIVNXC+O+yv/QQ4/s=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":170587,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeMhYiCRA9TVsSAnZWagAA4OcP/iyrBhthFyhzzVLsLnvj\nWvEQ67sv7coQHTUB/+200zVDJLuVqwVpDAUL1A9JKk1cVeSxXkXRsUAlcFXV\ny61Q0hMqCMLLRe4EFC4qdUPgMgNTLS/UnH6CyMKBtfG39p57O4EtLT5pqlTK\nDSrJ5g4u0uhbB9GqOGL9Smp8pgqn5R6S0hWud/zbav56DE/ZGVrt6Zc9BObr\nrxQhflRnEjv9Ywo7q3Rs5h3oDaKpgb5a37FBQQWlrxKN7VTA14tletfYItfL\nfmnmKFZ0k2nvbdb1n3YE0n5EsKKp+EYG9i+XDzXrnxpD0d39+MABuPwZO/71\n6oVT3cuJcuirSNmbUhhGoGMYPhO1rr5b/P5Usum5gmX7YRcO3drzVn8fEN4a\nPpZMfhtlS6B1hpknl0LM2IO/A0LHAY7sPLuRRGF/JkyVVL/cLDMuI7t3kkRD\n86v1DKZQbFQSQOp3KjpJl2C9fJM/Y5QqLcSMC6TXbCba1EBaBd/ekzCR6ey+\nerWWapdWno0KBhDSmWzcYd73tp44V7FSGhcK93TalT5wbOcfp8m2DGTsHXIZ\ngxjluQg4imPThyljmlEO+AxFfRTvGq3Ip9sXHjz3eUahO/9IZ8Ze9FO+GjRa\nzeeIM/ipY6+DZrUMy08hN5a1GGKA9EJpDNuABnRZIcSPALvuLonkc+vGvl/S\nn2SZ\r\n=8J7E\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"bfd13ab23e42c09d1390ffc6d7cf1caf1a237485","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.45985457b.0","@material/rtl":"5.0.0-canary.45985457b.0","@material/base":"5.0.0-canary.45985457b.0","@material/theme":"5.0.0-canary.45985457b.0","@material/animation":"5.0.0-canary.45985457b.0","@material/typography":"5.0.0-canary.45985457b.0","@material/feature-targeting":"5.0.0-canary.45985457b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.45985457b.0_1580340770509_0.620185237192566","host":"s3://npm-registry-packages"}},"5.0.0-canary.a1a0deb3e.0":{"name":"@material/floating-label","version":"5.0.0-canary.a1a0deb3e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.a1a0deb3e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3201db8a0f62638ab38135360974d68aef04a890","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.a1a0deb3e.0.tgz","fileCount":34,"integrity":"sha512-2JNCYcSgI7XAK1kQHG4/TVVoq+B3K+A2a/kQNCpSnFKeKDZk5i4ef8FbB8xeBVDXdmXx/hDESpdAylmUnaG/7A==","signatures":[{"sig":"MEUCIDagwOD27p8zI+ZapFfS/62xrlI/8BoPPNuw/h9PpwQXAiEA/CAiSHuep0uXDpAjNC/AliQo/VCkakVFJPhTa97OWG0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":170587,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeMxRUCRA9TVsSAnZWagAA+BcP/igr+LUpSgkHOZ2s7OIQ\nmDd7ILsRxg0T6eoiHolHvutn5QahZxtmMFcLs1QXcKlQGwZBdT8+4MzsBVhv\nxN4xOJTBN7AtDiwvdvPYhAxFoLtR7/ieRdHg4mQQ791DPBP+JU+ZMM3nzQP/\nXjN75Ks+dnyP5HBLWZHpyKUMYCjufV7A2TWm63grtKhBG2HQKPRoFdhSih05\nvF1xuMjve2tOCYg/pMTacfIUn9SQfpoa7kHA72VXSikOash5EtmmZUrKKzwG\n4LfA5iYxtmXhLd97foHo+tOWhnzZMQrlgQzryFdzHRjz+0olzjxjUJYkCKdb\nG/IysPY20evk1twRtSU+wsNJz+9+brTejkLY8deLgJbFPB8JcpVCygGqsZwx\nwtmywLP3S47BslrbnUR0kMSSEZWjmCFJyUjWfxEpR62Gu/Fy88efYPFHFPcB\nVXXB+kSWUlIVC4jDVGw/4MUc9yvPbn+lb/uyupf/bs2REaI+zRoSpIjoD7su\nc03ocZ2/kmE7LZWSsDue8yLZKG8Vja7oBA0o8UjTf+HOeg7HrGu9CRgeF++e\nVG0j+RGu96iV2b6++aJ52h7OwXRNU2dEYHghj1k5mGeC+PbCDXyxakWwUbGl\nUgQpUbCNkSbhsJaW4q44SXZmH4x4fAoIJeepw/DWCLu5bOVC1iCqsTfDBgxx\nELy6\r\n=I7aG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"515cdf56b0195423f7134244b26cd7999b647d68","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.a1a0deb3e.0","@material/rtl":"5.0.0-canary.a1a0deb3e.0","@material/base":"5.0.0-canary.a1a0deb3e.0","@material/theme":"5.0.0-canary.a1a0deb3e.0","@material/animation":"5.0.0-canary.a1a0deb3e.0","@material/typography":"5.0.0-canary.a1a0deb3e.0","@material/feature-targeting":"5.0.0-canary.a1a0deb3e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.a1a0deb3e.0_1580405844382_0.7602588630113372","host":"s3://npm-registry-packages"}},"5.0.0-canary.181486643.0":{"name":"@material/floating-label","version":"5.0.0-canary.181486643.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.181486643.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5ca159c439063afb1575dc34d6fdc50476e20522","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.181486643.0.tgz","fileCount":35,"integrity":"sha512-pcRHXEZugLLXm+iXxSuA3n91iSZKdBwjK7v2jfriLjqc/lgcrSSHjSqSBmaQyasiJPjKTd4DhMo8jlMY5Gbnfg==","signatures":[{"sig":"MEUCIQDjSHV1gCJkN9wpwlUMmR4+m99+cA2boSU4mFOxPJh+RgIgRWZxO48uaT3pFLkcMMrVCOpwMSiiBosA9KMUM9GUvEI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":176648,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeM0LlCRA9TVsSAnZWagAAcikP/1eWTrfGYjI81alczkbx\nW2jISkRlffH38zSxeHJC3HodTjQZNJzSx/DXEfHBWpIRQ4DGKvgJlRoFAJhb\n8nCqPuGMdtEEVbVHm7fAMcPfnqKDrNOupkYfvJsIKKGNzH3oXjWG87UkUJMo\nb4Dzhms7OU3S+u2/rOnlUE7WruHDV29bdZvuWsHB3y17bNIhSg7ohYVd8V4H\nRRv9ODqyt+8qdhXiV2JsQPAKytscVFnbxrtRPKuKBG3/8Wk8Db0VnetndDGS\nqNNg66jYX2b7c1R1WvDmkUhG9W1yo8u+SvY/JggQ8qxhXY3DW4A+ab5zxU0/\ng/RtiljRtiAzEV6hFHirpo5TkU7rEWL8V2SLxn8s2ODj79REx96/OVPjXtn3\nPakxHjKDe3xRsEo/FEfYkgjW9l+0f6P16+hapiCYjDEAo9PrT2dZkVAaP6FQ\nBMrt4I0p0GfeOlwALw1aYrS06PmOzR/LkXZQd8fHK5ETKVVZkNm4O7lycFaN\ne8XIMOOhpKl/viuW+aPc4408YK8dLs1p8nY4WHvZEV6ARUGLAVro3HIGpfb7\ngM+Q/JadKS57z/UL6BYbC5L+VccAD2EHgac7WNlC1fGQ/BmY1L0Sf1ZRt+pH\nkIaTIrG3euHzKWwwiQKlv2xeEw/Ns3ezesl2ubL/YzHMhkh4HDYnFVmU9YGY\n01+i\r\n=pwjI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8f29e2225089ac3fbbbbf9e1a64e9773ce276236","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.181486643.0","@material/rtl":"5.0.0-canary.181486643.0","@material/base":"5.0.0-canary.181486643.0","@material/theme":"5.0.0-canary.181486643.0","@material/animation":"5.0.0-canary.181486643.0","@material/typography":"5.0.0-canary.181486643.0","@material/feature-targeting":"5.0.0-canary.181486643.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.181486643.0_1580417765044_0.8318188352632667","host":"s3://npm-registry-packages"}},"5.0.0-canary.3a85313ac.0":{"name":"@material/floating-label","version":"5.0.0-canary.3a85313ac.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.3a85313ac.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"651b9a1cfc82209fd656f301e439eca60cd31dfb","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.3a85313ac.0.tgz","fileCount":35,"integrity":"sha512-HmvrvVPrsp1plQIDWZvYtWaN84Nibg76BBzWL3SmPlNb2lumNSjt8nor3m4R4JynJ47xMXkre6rhDx+jngf8oA==","signatures":[{"sig":"MEYCIQCNoFnPP97lI9JW3j7nArxsImN6QAzstrzPTiFYb4vcWQIhAMdghEGA9XezwHjHzq5UEovF6YK5WxhfaxDzPmF57yni","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":176648,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeNFRpCRA9TVsSAnZWagAAK2QP/AolF9f6fAgYGnQMP6g9\nkEaC6GxGgatFbV2qC4MznaGwVFqWgcj8znKYf+QLPUGXDlQPjFpdrq/TCqrG\nfqfCTjcFbaG9ACaaRnH/iofR1he+qR5qpO+oyGUB+B4ALGvadYkJ2D7FIJba\n9FZh+rvAx//dp03ZQh9TdHzYM5pSIY7gbvtDFpRui+4wUSbDtoSPH3A+ON+V\nhvEWmF/TWzSVgtBMmfPsGaI68zs4W+HQbBL4BK23VAiOyhJDDeV+ZDVIOCax\n+HXZi25hTkjcp6WPLuJZB0FIbecCereQ//b15NzcBD1trj7zj0NhpsxrbR7t\ngz//LaNIcQCszloOaIuJIOa73XNtC2x6ntbhl2wS7sh0PxeHcuuZzvsoWj3J\nTbr643LGLR0ZIDHWV9MDP7ADwlp3So1V0OBHl3F+VvctqpoxWUT7vX+JPTnv\nUuob4EYG3Ah0bF36aholQllrmGCBn5xn3X9pWaO+uibo6yu/hWd77Lmw5De9\nSwXtq8O7GYM61lbjIl/Ujo4MY9Fn63YgwAuEQRRgh9nKxdYqCbkyZS9dAr5I\nkt+I7PZ8hb43PoTAjpIkOJXoqQpA+VhCxHdexd3hIesJ3VyFBC1/7bP0ZDMO\nQUNU7+6puHnaYB3NY2MLwt6B3ayIitjQAn25AGZCUWaU1QYYgHCYGBCbFmrc\njne5\r\n=pnRU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a37832202a98646a817d62c20ce70cd38f089d31","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.3a85313ac.0","@material/rtl":"5.0.0-canary.3a85313ac.0","@material/base":"5.0.0-canary.3a85313ac.0","@material/theme":"5.0.0-canary.3a85313ac.0","@material/animation":"5.0.0-canary.3a85313ac.0","@material/typography":"5.0.0-canary.3a85313ac.0","@material/feature-targeting":"5.0.0-canary.3a85313ac.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.3a85313ac.0_1580487784979_0.2700640994128798","host":"s3://npm-registry-packages"}},"5.0.0-canary.b6c7f624b.0":{"name":"@material/floating-label","version":"5.0.0-canary.b6c7f624b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.b6c7f624b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ed1ee494b9958ed244f2a08a4518c34069d068a7","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.b6c7f624b.0.tgz","fileCount":35,"integrity":"sha512-J3e4YaXIQYvMKz40PC0gYoVcJLW3+7mYSDS414bzz1pwS7L3tyFhOdgKehkeIOQGRoKEYp4ev7XDtWr+PYWD6g==","signatures":[{"sig":"MEYCIQDepP8AsBFCsvsuOdPGjLHcLCcE8if1XMDiCQv3kO7JHQIhAOiGY7TE1+pp0drqHmNCfAABgXCxei48CAR7t9ElwI5c","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":176648,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeNF3BCRA9TVsSAnZWagAAMykP/ifntqZQoLDnu2FR6NIO\nZJNDUX1dSWPomgzO1ChFNuAdBfVDTzqFQZNA22zvoueBsNef2CKrvkxslEOn\nthxT6mCqcU2Ibcus7pO0LXf9+V1y9lkG/cWEXq1F+kIbMMsqqSGUtzmHF+i1\n7LRpTBxNaeODeTVT4C+x/46sKZa9PCWSCN5HdAt2J81um5QKbPHq+vBDd5Cg\nZAYed7maHr/g9MrFJ+P+SUOJWuui0KNDvlk8YHWJItpus7oDjcSlRxociOLr\n3mA0z71rRVFNZ54SbeH+Rqj1NeKFjkf9EyvJpBf5/h7ly+yxuKBuCvFY1sSY\nzLeHURJ677nazExHwBILWkuO9zsY9/TqLuKj7aImrDkM2GYz3yBwMps66t7m\nuI+Ted2QHTMXfGK5eyGp/IJ5X5bSBS23Wm/tflBVkAN62UcCFo92nERZSqJx\nGix4MNwD3I2+ylLitPxt68HBC9BQTxkGMBRBx1NYHf/P0wmfo4utjp7O44to\n82uHuffHSGJQe3a+BpKyvhkOmBEulMR7QdsJvNiVnUPJibsgV7CNwMdi3tax\nkqvaZP2ZE8jm/BR47rVH+AIABt8PiVirL3sLfSdgrKsZYfA8QJL2LgDqjALb\nJqPqur2ar6xTxYsfV+3kXG1KR1szfdwrk2/F8uWnqqRC2sgrAgPLQFw1M36D\nrZbz\r\n=XjHr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"eb607bfa0326630c63037143dc919ac8ec5c3636","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.b6c7f624b.0","@material/rtl":"5.0.0-canary.b6c7f624b.0","@material/base":"5.0.0-canary.b6c7f624b.0","@material/theme":"5.0.0-canary.b6c7f624b.0","@material/animation":"5.0.0-canary.b6c7f624b.0","@material/typography":"5.0.0-canary.b6c7f624b.0","@material/feature-targeting":"5.0.0-canary.b6c7f624b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.b6c7f624b.0_1580490177057_0.6213327042444652","host":"s3://npm-registry-packages"}},"5.0.0-canary.b3f70ebde.0":{"name":"@material/floating-label","version":"5.0.0-canary.b3f70ebde.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.b3f70ebde.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"81d3d9e39c2937ff6763edaad1a700648fbc87c4","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.b3f70ebde.0.tgz","fileCount":35,"integrity":"sha512-3ikD1RyJhRzLia1S0uWy8EF76RgNc8V7fMFEcmgLbByJqi8qeFEiqHHj8RQ+JGS0nKoe2uz7QoFuLV9+6uwwCQ==","signatures":[{"sig":"MEUCIFGJtzMfnG8ASfX9fh60aR78IKqIkMTsgDgC6+NDQRcfAiEAgXCyXgnFsv21XPHTZdbKesQfEe4OWqSM6tgY14aCMaU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":176648,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeNImeCRA9TVsSAnZWagAALNcP+gKfCeaEZ5tnUxfJwKy7\n4eRAZiK6m5axAk4tUBIyd+eEjy4VCvM8X8bOIxWpnG3nEFW5c9jS1Ej1A7Pe\ndmFpGm0JYYoMSXSwAbTYrY03ru8nzqKLWW3Q9NeSSByGu6rp1O0O5uF/U1Gm\n0O/B+khm0/Zecq3yHRpFiI3/hHOufvtd0EAwnupVqfx2uAmfP38wolHeUlmk\n9IuRzGPBgCl40HzyNax+Oiws1pEpmYOrbc706L7am9LT9/njxCn+zRxqMoU6\n3kTMsMeY7brkrdG8TsTXOO05bTxKWfUwEr/Q90K5WOMgvxi4iY5wH0sGlga8\nZJdWtFNlkRXOiBtS4bx3Ayv1W/TvligDOtlItw0y/NkCQMiGRvY6l2qrdmyC\ngVlp1FTXaQCixFIj7jA87xwANkJvap4B+WEE4tWrVIhIQSrm4jjHDaeS/VKX\n/K9FqkGhl7oCv+NTfaJnEBUZRi2DFGVcFJb2ybsHmGpWJkZJs86fn3HxBR0B\npXLSBvPOUF2aY5KHr0pT/Q/nECj0tBD2MKpAGQinD4WcYOIZ8dLdiq5E59wd\naBh6S+FvFefq0KS62Kb+K38PzaSOpQXrpHWtHpfFrDK1/gD6Z+zybP0VVdEZ\nkN0oClbSoIAiunT4ZoqYSbQa44ATVqnAoBoKNZN3ZUWgRBNjE63GFJvVxdxD\nexcd\r\n=7CVd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"00a0473670032b0ea60db83e614385e1e3166dc8","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.b3f70ebde.0","@material/rtl":"5.0.0-canary.b3f70ebde.0","@material/base":"5.0.0-canary.b3f70ebde.0","@material/theme":"5.0.0-canary.b3f70ebde.0","@material/animation":"5.0.0-canary.b3f70ebde.0","@material/typography":"5.0.0-canary.b3f70ebde.0","@material/feature-targeting":"5.0.0-canary.b3f70ebde.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.b3f70ebde.0_1580501405758_0.7761085412474897","host":"s3://npm-registry-packages"}},"5.0.0-canary.3e782d8f8.0":{"name":"@material/floating-label","version":"5.0.0-canary.3e782d8f8.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.3e782d8f8.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"41ecf5d578baa6a89f94519d00b69a8c9b86cd3e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.3e782d8f8.0.tgz","fileCount":35,"integrity":"sha512-xgJ3CZizkyGFLO2PhBmC9O37Q/QnYOi263UuMMN5r1LMLhqg6qwsWMNLDg21I+NwBMBUnQrViWAqTT10+3XLQQ==","signatures":[{"sig":"MEUCIQDBi/npPgxa1DVVN5vv9rdkRuxLrwFhFmapWJ8IqrNDEwIgFrtXgYrif0Q8KG06tN0C4zYrNkD/f6JuvIfsX1BIO/I=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":176648,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeNiIFCRA9TVsSAnZWagAAZZ8P+wRVaZGr6dei5y7l523b\njsU8m4C5eK4d6/i07um6Fud6aMVTx8KLVWCKRa/Dp51dliIvkSMEplK1rD92\nbVNmDLNIoFd0qYmZn/FyjwvSqixZ5g0imQkJEEEKLIAx92tKEl8FxfL7Ca0M\n56L06dJUA3kLugR1auyGDI3KrXYAe+/Dwo0fGdqHMxn0m3YrAIEHvdUaPNL7\nKyYYECSZksT7dIVr7dRLmENkZJ40ObUSRHxqoQWL2pkW+h7PstEoyVQxptwY\nQVLHq7vXP+T/mea+OuYps43uudY3yebR/CqS4HtvgXgd3gLeqkKewCqiFq4G\nu01V1224k+QGAtlzVSqzUS2DZS7gc36QE2//F7HiZxsgGH8sBCK4EGCX0do1\nod/KpnEtDbJzPfvr2nTCtBm7YIdFHMp8vIjRykxQhREJEz7BDO3/1h6uRZiM\n90g5q7jUMCI1B8/Sb8IWIpoo/6Hnd0vWnvZAXeXSPz2AjmQf60HUt47FDSOx\nCEyrgNn5R9jRTB9ubGRm+M9dghB3K25C5gotWEX6kxMqdBNjVymbF2Ufrg+F\nJAcNnFg2//lGU4rbqtOikXINXqb2tHJxIqIKTyy210QkL+jrae/g699epU1x\n14Eh0KQwMotY+C5+XncKtw/YjR630GfNj578Vinqgf9P/8ZQVGthCzFeJoTN\n29PJ\r\n=ihev\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8aae1fd4299832f77f4d1d51398e5b28ed5af5a1","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.3e782d8f8.0","@material/rtl":"5.0.0-canary.3e782d8f8.0","@material/base":"5.0.0-canary.3e782d8f8.0","@material/theme":"5.0.0-canary.3e782d8f8.0","@material/animation":"5.0.0-canary.3e782d8f8.0","@material/typography":"5.0.0-canary.3e782d8f8.0","@material/feature-targeting":"5.0.0-canary.3e782d8f8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.3e782d8f8.0_1580605957444_0.13383488824934187","host":"s3://npm-registry-packages"}},"5.0.0-canary.535398572.0":{"name":"@material/floating-label","version":"5.0.0-canary.535398572.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.535398572.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5b4b214d85439352a58580b8c3bfecc9a9b6d9d6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.535398572.0.tgz","fileCount":35,"integrity":"sha512-REBnW+8/Rk7haHM5XTgxJymH3qbkeqzc5B3cypnpSpE4vdhNIkyFwDw2bwrleTwMAI3ud8VkJdWAIDdMRx6viw==","signatures":[{"sig":"MEUCIQCLxEN677LvrncBFkHi2uqex7sYAiNj54YI8J1mHbQDOgIgDSWf+bpzrtIOX0neUhIRVc+J+SHhvvEPVzerwrF+XOM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":176648,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeOGJdCRA9TVsSAnZWagAAKpQQAJSPUa3nGr5vhwCeGpKI\nxRJ/Bt/jlmWleDQBDEiTOhLeA38AjP+QEEi4wKicwrEwtk9oclE/iuJlpVWJ\nBcp1epzEPsZvwXtOFIN3Z+gLrZ1e59Qc4gUnB9A10bGG5gt3WH+wulzFSGX4\nscSLJQku8CGwZydibkxOwaW3uVXBuV3LO/XiOdXvyIJoCXzEsBY5q9wIdVv9\njrod2o7WFAT0N20QzozTBplkxQv0olYl9bzsPyvv1+xQGPYKDLVx4zewQXnY\ndjCdCPIxkE1Sxvsob/9s+HGOBCDWQg+gXD2pxIugd32aZCtKd4yj23qLCIOI\nsAG2wSuuP9HKkaGfo7LGR4pR+jvrNR6n8MnGmewGllK81kjC3nQQM3ityPSX\n1iD3j3SDv0lzaMmNmO2Vmjie0F6euwI43Zw9lNenaY1kqu6QwymMEgva+iJ2\njHjNkagduMo5ZC0oXM46fLDVGOO5tQOY8NmmZQLOSHmTCuFlCGHAERQtNmsM\nHLf1j0ppSsnnHS9lXpXzobjyVFG4Ust9gdMqXtZ1HwgVGNNThAVwNpohUt9m\ncVxfn/nuGsGh6RaS/6KxI5fRz4BWBd6k8TiUXJXJ+E9kU7mnGwhSRT4J6Zjq\npV2WlMLRI6rCVeEPC7BHA0vRo78fhqq2D4fJCEETlzpcjLbzuIUil43Fjd65\nlPTW\r\n=ydGR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7f68038e23db60e7b4c44c1b17a6a82329805553","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.535398572.0","@material/rtl":"5.0.0-canary.535398572.0","@material/base":"5.0.0-canary.535398572.0","@material/theme":"5.0.0-canary.535398572.0","@material/animation":"5.0.0-canary.535398572.0","@material/typography":"5.0.0-canary.535398572.0","@material/feature-targeting":"5.0.0-canary.535398572.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.535398572.0_1580753500909_0.1932686054300996","host":"s3://npm-registry-packages"}},"5.0.0-canary.5ff33802c.0":{"name":"@material/floating-label","version":"5.0.0-canary.5ff33802c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.5ff33802c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2068752c1ffba03ffd87c52015a5ff88d8c6322a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.5ff33802c.0.tgz","fileCount":35,"integrity":"sha512-L5xeq+Tus1dq61Q9Utu54TKn4YYjxCJxSFJFfADH18go1Lny9VaUK8XrJouPzpNYDklkrHcnBSAx9rYOX35jTg==","signatures":[{"sig":"MEQCIFOgpTXabVdtGrxmjnNaLKo1a6nZwygijdH1mLRShrNQAiBCngUthgxrEX7aFsP4OPasiBgwB8PrEIZEGFsFOidgSg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":176648,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeObH/CRA9TVsSAnZWagAAQXIP/0kVmvAe59/dALprOWrh\nptnecRYf1I4hBb5/o3U3HbV3UgWMynZI2S1FQgcI/6uq5Fi8bIhBBXKmR02w\ncaMqV2N1dMTJT5uaBD4FQVJaSAiHX0BExTtVbAlbhDJ0qgiHtw0xTh7asELP\nVbQYV6Nhc7/zcSoMih5pFILyoNXEUTsjF1sZ661mwwKCflEGBCIKLZF6byce\nHqM4c9tgpUbs3Ra6tzs79HJIKBHlNUBWT2pQ1GZk2vk1zTr93fFNo3nPxu9f\nSVwJVzlDar6cTJeYzI7Tzhc2qDXoWEXl3ioShTD9Qy+kEPieV5lmHKCKubIi\nHAqiAd9KYeqUJC78YCZO8OyFznHWBmD3ak2JRYwVVJhjQuRLj3lfPem2ciRD\nvZI9AprPwiM7QDN2v/mQxA2A+nGYc0XhfX3j8hRxzUNtXn9/AioS3jXPZYVF\nOQY+ZZJS+8O4wcHzYyfV7zHrK8DSWvJCD0ADQWRmXbVzqb+2uZ0kS0IgPNLR\nfTzbCbEzIqvrxW/6JroaLQ61fV2RK9B7c8orczEgjD62jUWn5ANSwNIXYxey\num1+XthS40eY/KPTVJ0V6oqUU7osefhZgs2eJ8zllwjsfJghmcz0yDLXAUxl\nU84tfJkKUEGbroQlmB+Hn9hta9Dm8aul6jkwpIprFPct2LteCtMakMCYAYVu\nT/22\r\n=TyD1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"61246014f77c40c0d6594f32e40f4ce98d8f7c8a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.5ff33802c.0","@material/rtl":"5.0.0-canary.5ff33802c.0","@material/base":"5.0.0-canary.5ff33802c.0","@material/theme":"5.0.0-canary.5ff33802c.0","@material/animation":"5.0.0-canary.5ff33802c.0","@material/typography":"5.0.0-canary.5ff33802c.0","@material/feature-targeting":"5.0.0-canary.5ff33802c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.5ff33802c.0_1580839423499_0.17613026204079207","host":"s3://npm-registry-packages"}},"5.0.0-canary.1eb29491c.0":{"name":"@material/floating-label","version":"5.0.0-canary.1eb29491c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.1eb29491c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c1f895dfef4136ddeca0666ae8efc3ad5936a324","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.1eb29491c.0.tgz","fileCount":35,"integrity":"sha512-ClRDR+dZ/FE8jAURvg3viSTSsWeYBJtGOTN0jg/1qds0ybwzgcRhE/Mqeb5ybECfBayRsKxVCvEln1eA9HGLxA==","signatures":[{"sig":"MEYCIQCUnZeGKa8W8zangrAJkfMkTel+5tTuWGKhtySbQuTR4AIhAJ+KH9uFL/D0dsmigNO2mSgHDADGZ00zcxtulrH2PCk3","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":176648,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeOdtlCRA9TVsSAnZWagAAZb4P/2eFrcyUcJySTYOnyRrt\nQTF8RqlwYkUfQKq0FdMXR3W0h1ZzgH/GVJRnwxewrPEFjUPUOXovL4u/frXi\nun68nj1/CtBj4wcKaeYhJ/Q9Z6+540M9cCuhL1kA3T3FNjGQ3pORxs41WxDb\n5jitxjLzWhteAJkboMHZV7G+KBM3chgW7kCTkfMBbgNn/KlE8O6T8A30K/Z+\nzkAV77rfK2ab+EODLMUjHOASqGcEU3YSwjHdB+bS5LOvrmgViGJmc8w9MMlw\nfi9DMSpyWIz+3TGXNHqGm2zznyG6fhjkeUcnOUWTAat7avp7gPP6lA8cixgu\nMSULBClz6YuX5YwdLjvHthsi57EJXq3McgXTVwfefMZjyCY79ZGI7pc9NIra\nqbc1H4ZQS23275zpfSEfOrKz62fx0hf7xfAmQr9MwbQTTgkZdHEth7aHJmd5\nON5XspTKoD/tmy0vBHNPSAOmuiIPC8UimQIvEnFtDKOJIHqaHLnpNiYSZb5O\n0IGqLq1gs281/Os698bjUlLyKYAyKz0/TsJCTPWzMzfUrCQpcFEkX6QnMRs3\nhGUms17qhKa/hnh1eAI+0P5lGDeGj2Xv47F/3LuKT2Wn7XCJ8ObW5BhD+nQ+\ncoDInlKbcFAWo1I3IGYhlIuqr6dhMhQxKwOIDP1tf/UjaCVm9kC25JnHAwQW\nmehJ\r\n=ajEW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"689b043c66790b1c63b5d2037a1ed800248443d1","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.1eb29491c.0","@material/rtl":"5.0.0-canary.1eb29491c.0","@material/base":"5.0.0-canary.1eb29491c.0","@material/theme":"5.0.0-canary.1eb29491c.0","@material/animation":"5.0.0-canary.1eb29491c.0","@material/typography":"5.0.0-canary.1eb29491c.0","@material/feature-targeting":"5.0.0-canary.1eb29491c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.1eb29491c.0_1580850020580_0.3024163848224677","host":"s3://npm-registry-packages"}},"5.0.0-canary.4c7154b26.0":{"name":"@material/floating-label","version":"5.0.0-canary.4c7154b26.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.4c7154b26.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a2b3fc311b0c1e0bb9c09cfcd86cb75e24d51727","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.4c7154b26.0.tgz","fileCount":35,"integrity":"sha512-VgDtaQOCaw+XYickQA936ngQqwgc9j9iZE0U+pLrjOLSdHuUAuMVT1pCinx+HOHIURYhnkYjvy6YH2OPbfQmqw==","signatures":[{"sig":"MEUCIEun46puufnT8x0fz31jnl6L7qD/oLXpE1nkSaODBD9RAiEA8/FMO73DBjYGtmo9xsVdNC0vXuSy1oJKIPsl3Jat9zk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":176648,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeOuclCRA9TVsSAnZWagAA/k0P/RRSH/klZ/J5B5T/g4WV\nyNeCYdByzt8oO7VfQDomiCr8wmQoAu7Ox8A/S9WTZNF8cxHcfcT3/YXySOu8\nH6WmCEtJRndgxd8rKxYbkdRl8j4ONI5VruSEhMQLPvQiH4RYH33ozZHlxVM8\n1WQeJPIpanC1i0lsQclIWaLqN0pFmJyMOy+d2f1LBxA4vBZ1PzSS4ExVxEJk\nyOg0/8CRC4GoYypCTY6EaDmlRhTz3dbdIqHpBiOmhznKRNlgq+14v/FE2pj+\n4FN4cW8bfjQrlCm0xO3+SSYMEkKoFjMYRbpE0es6b+DCuL5UkC58YumUc5k3\nM1WLHk71gO6A1+BxVpGod7Dg+Ha2GKRkQ4g53tXWYfngWgOQZD3RheYNwCst\nn+S6d2R8+HZsvXIFvNZovMqhtF6N+gdEqyROtgF6rjRaVsn9rLhUwyyDScEK\nYcLGfKs1KJTdRWRtJKUTDowLZRh86MCead88tTBFSxVvZ8AZ6qGr2sWhf/j+\n9WxxJBFicuuBcI3HjIFVieeY14EdWPzphIxjPVAMoP1Vu/24mL+IXjT/3rI1\n78MfFI/Ig8JFkG8iKEiFnKHd22PBK/tRD5b/3D6gfBx1fnn/RSTgJsKYtYUh\nk0KDHDkCMDSejhWOQavQV6ynytbUFxlgDNfZoxBH8kIu1vFnTs5bGm+KXhcj\ny7jz\r\n=FcOK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e15f799c180f6eb07455eb8d644b93db93df5402","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.4c7154b26.0","@material/rtl":"5.0.0-canary.4c7154b26.0","@material/base":"5.0.0-canary.4c7154b26.0","@material/theme":"5.0.0-canary.4c7154b26.0","@material/animation":"5.0.0-canary.4c7154b26.0","@material/typography":"5.0.0-canary.4c7154b26.0","@material/feature-targeting":"5.0.0-canary.4c7154b26.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.4c7154b26.0_1580918565003_0.31998751146027127","host":"s3://npm-registry-packages"}},"5.0.0-canary.ab5f49a2c.0":{"name":"@material/floating-label","version":"5.0.0-canary.ab5f49a2c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.ab5f49a2c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"36f1c6561f867ce0dfe37e1e098c851601a91ecd","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.ab5f49a2c.0.tgz","fileCount":35,"integrity":"sha512-GX23pBheKXCoNye5sZ1VWEQX3ziWK4Um+fiMlClYc6eUirR0Q/C6YpQNMB5K3F98jdXJ0/xlqM7mwCg4U8vG2Q==","signatures":[{"sig":"MEUCIBcS4ZfBrxyGFrH3jOJ0wiVhbQaDBnmkAe+gQJyyn1PVAiEAuh65iG5R1kChq4dvxj6lktF/XQ571B3rMQE8xdHSfQI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":176648,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeO1CuCRA9TVsSAnZWagAAkjoP/ji5biioDwZXMp4+MOq0\nA4jkA3c7KHgJa2C4upS0jBzybXlcT125LYKa2c4bufx4MkAhfwg3pxvceH6H\n9/8TblXSp6yW8a3a5gjHw/0OuUxRr2QuHQWJBpxcoqr7MIlq+wef1aL34E3C\njzbL+IcOryvCBPReyDiQGCWIGxUEiXnzW78lCUWJKjvyd+0PrE+xMrhZGXKs\n0+WmXCO7He7oK2uN+qoVyGjPlVznLB0Oq3iKaSMoO+0UhzliL9oksbyt4mNB\n4Ce9b8QXI5W2tmsEihRzjyioDFLkSe4aCgDmcIaZHXv/PnCaSZb1l41y0pBL\nfjxLD8lhsQOWA+IY1vRxcjyJunPTOzqbYf8htkdHWeSvAGoyPSEdNuL32uPq\ndDlU9vsGazX/AlKBRxrIHWpJFwzx9oxGQzeWGq/2oiIBhXL+He5sSGZ8HGyE\nhbhdQmJKwNlj24oeUJYIvAUaYzazi2/Nt4GiCQU6vjQJMy/4FTjp0a6Cs5sN\npEJok6ex3wMzyN2CnCDUSxwYab58VjmHRe9lnNvk8++neIU1da3XQ3IiUaRb\nSwcid17cxir+oPY2JhdaSO85zDHuGD2MiT/tSsJuxdpgDFzMRi+3htarxCSR\nQV+Mx4zsO9L51nhg4nORo3lhc2jviWHJdG/uHDfhLXM4hq0+DmRzOkLe7Hjt\nQO4m\r\n=coNf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"9e2d33465e4a55862766486d77f187c0bd37883c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.18.1","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.ab5f49a2c.0","@material/rtl":"5.0.0-canary.ab5f49a2c.0","@material/base":"5.0.0-canary.ab5f49a2c.0","@material/theme":"5.0.0-canary.ab5f49a2c.0","@material/animation":"5.0.0-canary.ab5f49a2c.0","@material/typography":"5.0.0-canary.ab5f49a2c.0","@material/feature-targeting":"5.0.0-canary.ab5f49a2c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.ab5f49a2c.0_1580945582299_0.15250208493838957","host":"s3://npm-registry-packages"}},"5.0.0-canary.c541ebe15.0":{"name":"@material/floating-label","version":"5.0.0-canary.c541ebe15.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.c541ebe15.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"05494d52f45806182838384192d389c1ddbaa465","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.c541ebe15.0.tgz","fileCount":35,"integrity":"sha512-WYLmHWAEob9WXtWo7Fzjq1XwprbP+/TViCrycv6P0u+1keT4wUrJLKlEgMh9OPXMwklKiQARaWcF0jMslU0sqQ==","signatures":[{"sig":"MEYCIQDotJIxGfDOyeIpslQtUHfdz7iFm4vm98nPzppH/hBXRAIhAOU13tqnJyJErQhVoT0TdHlQ04KQdbgighICocsbZGyH","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":176648,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJePJNbCRA9TVsSAnZWagAA77UP/jHza4vc+KnaEFbN65yO\nExDeZWtjPO+Pojn2jkeVMiidDmvius6OkSOMKeMnPq4pwk1wG8SWmjTi0/Ur\nYfF3YkN+j784HAlmkn1D9JflbhkligbhPMOUMwnZeya+/uz5aH9SbPsFYfLZ\n2aCHPZMPb4wxRSyaysZTVm4tWZdRF1nJZfOqLqo4HlvAIS8hj6AQCNus5lZq\nhW5N0YCer16VgGFKup4XYM43KodHEUvO1fjLdwt/iSoHBvk0zPs8Q/FiYrZX\nma8uHizPmsRC1B77JSNkoSae0d9fJqrQa9d8R85y0jVm3RKAN0qknZt1wdNf\nFMGV/gCXW8xlY4nXPGORl8v/p7zIv2+iqWwAPQZsL6e/hndLLoahsndwAlnl\n8W3DDLl/UcGnsjxKE3yBjk/kjAuDsHooz5QAd+UF6BdNhlu1HhYqWRFk/Suv\nBnWResEiO4SlRtKZVoLf1/zV3OBCWrFuo+ZTR3YeNHgisxHt4OHqvVDmKNsT\npVeXQfId1X3/KIP44TiYuk9zURLx5LXQKYUiAM3Goc5JteogBu5cyFkZv72P\nSCadpxmDDwSG6vMHIBG7YqdaRKMI3qMYKwMJ3S/w+aa0tv/UIcSjNsxccUO7\nAFRZM1JyaU1AfoyshvYAXhIdjSlbRyyNizvOgYgMPXE4pXgAd0Ppp2eFFpfu\nC8Nh\r\n=og4O\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@import \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`mdc-floating-label-ink-color($color)` | Customizes the ink color of the label.\n`mdc-floating-label-fill-color($color)` | Customizes the fill color of the label.\n`mdc-floating-label-shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `mdc-floating-label-shake-animation` mixin.\n`mdc-floating-label-shake-animation($modifier)` | Applies shake keyframe animation to label.\n`mdc-floating-label-float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`mdc-floating-label-max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"87d5a39f72f6a882a8412df86762c91328c6d985","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.c541ebe15.0","@material/rtl":"5.0.0-canary.c541ebe15.0","@material/base":"5.0.0-canary.c541ebe15.0","@material/theme":"5.0.0-canary.c541ebe15.0","@material/animation":"5.0.0-canary.c541ebe15.0","@material/typography":"5.0.0-canary.c541ebe15.0","@material/feature-targeting":"5.0.0-canary.c541ebe15.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.c541ebe15.0_1581028187450_0.5310081023479121","host":"s3://npm-registry-packages"}},"5.0.0-canary.98f7faa05.0":{"name":"@material/floating-label","version":"5.0.0-canary.98f7faa05.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.98f7faa05.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1eb167fbab371580570fc56266528af88fcf2b74","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.98f7faa05.0.tgz","fileCount":35,"integrity":"sha512-OwyLP6/BL4ueAHdlDNarh6r7PpOAw46m7sCBBWjrjYCUtVzimWmirWYjlxTLer8X+OHL6b9wfc5qTsikyHs5LA==","signatures":[{"sig":"MEUCICPaQQW5ameTe2iuIFI2nCrr9NKp5LYPGIsW9HVGBXqzAiEA6busgjnQKaGnUA2mgS9Ek1MJveFzpGs3uA5DcbPC6mk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":176512,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJePbimCRA9TVsSAnZWagAAbgwP/AnS1k46cbaHtmUvp/xr\nHxd2ab34poo9i1qB9e0GSRR2m8xfpsAWoEIaPpASlP1KP1Kpf4eopFXM1ueA\n0fUNDwJV70u342VvrXHUIIOjRh1GocwLIzfkRoAwNLd99re+cSdT4aGkdFOn\nCNGyD9bvcyJ+9resJ0Cnb6CvLUMQxVHVmQahA6GWNArqpiMAoskoWRgxQ7xv\n/zbHusokl0SIldyvXI0+axxFVkS/l3gPSj+dHK48DCNW5FZ+xmqx8YvlUIZf\ntWbeiA6AuBJ5nDoFD+nti+Z8OAbZERtIdMAAeDGslFuRsxZDib9XzmkOegtq\nXdFaap0STO3R8m0s7OlEK27KpyOnY31gHyLJZPqUxaK6rq3Y41c4xay/s6D3\nYrUt/Mcf1g/mz/AW0ZLi1cKOn5/+sQYBBi1TO/0WhQ9Ewl7i1C1ScyjaQYm8\nbPAdFArkMbiaeX6d2Rnm4zDoEz8HouUcGkI7GMhtX543hlc6Kr7RHu8i5uSk\nOlxJ9LFOkJhLqiHPjbBRoRPiDyiOhZAkNI3f6mzWHcW/VmaS1NDAJrlvG+4s\nErdb27hwizg2/8eYYLkXRLJFX2qMRVukuH6cgEStaHn72+x9Px3AYh4qCBDL\nqSIw0L9CR4rOB/ktRekYvR/Jq3T/JTylqtTdcrrxj2uBDpl43mDBxwbp4qL4\nr0/F\r\n=TxpB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"698f18ec0e8c9dcdd38beb5ab6b4cfa6218fb288","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.98f7faa05.0","@material/rtl":"5.0.0-canary.98f7faa05.0","@material/base":"5.0.0-canary.98f7faa05.0","@material/theme":"5.0.0-canary.98f7faa05.0","@material/animation":"5.0.0-canary.98f7faa05.0","@material/typography":"5.0.0-canary.98f7faa05.0","@material/feature-targeting":"5.0.0-canary.98f7faa05.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.98f7faa05.0_1581103270158_0.6419216213071994","host":"s3://npm-registry-packages"}},"5.0.0-canary.b4727e43a.0":{"name":"@material/floating-label","version":"5.0.0-canary.b4727e43a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.b4727e43a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c76417cefc1561c8934e74072c059974a47cd68e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.b4727e43a.0.tgz","fileCount":35,"integrity":"sha512-RCkEuRd37PjMToMDpAyVpd7Qzdzqzr3Jh5s+6X3kXJJC0cTQ2luBlaNczuy2oT23Bh8MA+aCXsvCw8gmeMmGkw==","signatures":[{"sig":"MEUCIQDS/yurNcuLEysIaDA5Di5vohvuV64DLytk6IxKjJjZsAIgegm6cWBboHquUvmTplsFcHbll/UoRgAXMmaIyqsOAhc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":176512,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJePcCsCRA9TVsSAnZWagAAlO8P/1FucYpKnRcy/7j64mz/\n+pNVg4L0fMSOs79kIJTOkjiuh2kVcHtFx7iGLnZvEbavVkAdgPhzKZAEP9kB\nT6vDN1nQwrrNS7g6S0ugQRyPYnT5WQmPr2hUDBhr90Q6t9yFvQOvgvO/fdsq\nFE45sRoBiT9YbwVXmmUzZKKhbxtTPVOcyejW4igwMc+2obbyFVkIrdSASvuQ\nUsshmM0Pz9Al73NThxWv2DYSs0bbvaL9cqXOg943ZL10WLTODacx0yUl4+3o\n7R6h9/3WLskZq8+aU2Sa61pjgBPrgBH6se26ShQdeHCfjlHOrqHs5fqgiJuz\nxib7vAyW6PPm2LLiph3zQHBEPsU2MHPlVvv3zSZ9yuf9vSDbxNX8Q5IzBoJD\nbpcViVOdW1CuVOa9CzthyNUfHr7Np7t7gfFeNCLLIH9G77qkVZhvPghoVG0/\nps0auZHFchf1w+rufF+QiTTiIbizgD0d65XB7hUMiHgvjdiRdj890vGnqXii\nyZKdFtwmBd5qLVUowXp9NCiAMLlFS20cxH6bZg1uEhUTDQ1Sp+VvycPnwlX9\nEPttzCUCVixkMGsLnJB0buVyMNZZmgaKQHvUVXOztRxs7TwPk1HZ5vt1OC3m\nrjv0s3nmcdiyItJjYSlevB4mSlyuie4Trz6JJ2ZXcX+PtRqUUVcAOi6DYsAn\nnJYb\r\n=Wlcu\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"140a0d7a10f30d8ce4b10dfbe40bc63136e206bc","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.b4727e43a.0","@material/rtl":"5.0.0-canary.b4727e43a.0","@material/base":"5.0.0-canary.b4727e43a.0","@material/theme":"5.0.0-canary.b4727e43a.0","@material/animation":"5.0.0-canary.b4727e43a.0","@material/typography":"5.0.0-canary.b4727e43a.0","@material/feature-targeting":"5.0.0-canary.b4727e43a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.b4727e43a.0_1581105323768_0.9452523465306804","host":"s3://npm-registry-packages"}},"5.0.0-canary.91d9d5a65.0":{"name":"@material/floating-label","version":"5.0.0-canary.91d9d5a65.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.91d9d5a65.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7c9d047877ae9b5db221f7834df94421414aa395","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.91d9d5a65.0.tgz","fileCount":35,"integrity":"sha512-+iuHJLrob4bkDLFsT/DlLbDZQJtO3eQeU/utXFolxHr9uBROMrZT1J4JDJLhA6zNRRP3QVdMUqe8ZgrRxaJBgQ==","signatures":[{"sig":"MEUCIF7lRTaQ8MMLY4UhzjfW/hkAKs7KMV3CQ6JdW6KJCC3uAiEAgBEkEN3kL8Cp/UmCQOPEAQOs7XcTqVAHS6In29OaCN0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":176512,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJePevGCRA9TVsSAnZWagAA7d8P+gP8m6eTC+xj189C9NSx\n7mPdYy05qYxM6zChl0ufhu07z2t0v+8l1X09iz62n8DuNz3CqBcnsCwC3PxJ\nPGiaouRJi8N8jgP3n09r42zp6+fS54abc1T+5dmBk/2TAA2nWQ1dGasv3G26\nFJEsBbHxa/ad9p1QxK36KP5d11Ws98fHPbllOD+NcSjMEPVKMrd0uvJIMW/t\nCE3JGeyOVGKFrLdj8DtxvDMOQ1esEy57Iug+yl9ezKAF7IlvJ0TREKHyUzNF\npfhlpKuYIfvvD5dP2Q/x2Re1ywxmlvs4VdU8FsqdFWg3fGe9HYZ7TA4tfgTd\nFMUWVBN+IoyNnm8upqhwfSc+kzv6R8SpnoMr0TKE1HolkQz0Lf4CfIQjEqvm\n4QjlsaIbqC4T53QCaX3T8BRaHcMUF2r53a0P/y3BvI5qa1G4REBgRCNxgBEs\nJI7oekGq7sh02P79TkNshRbiYSSxluASaJSdhea8eDpDVhgUrC7XV5/y/3yV\ntJ3w5zQeF6rB0HO5NK9oikyN/1xw7f/bLv5p69HBynGqN4GLWoQ2pk4RH5ex\n0+xHcXc21IjV8PwXM4yMMOenE0v/fAQLITMqOS+OrdN0nhWSjFJZTi9nUg22\nmREXw3Q1Vp4eIFHsHjTcYivrDHEWoVXf3q1FOFPfoWaDUVyfah4L8/8KZGDA\nP7+t\r\n=Ixk3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f98276c6136d4bd38889e0b4d6354081a3ca941c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.91d9d5a65.0","@material/rtl":"5.0.0-canary.91d9d5a65.0","@material/base":"5.0.0-canary.91d9d5a65.0","@material/theme":"5.0.0-canary.91d9d5a65.0","@material/animation":"5.0.0-canary.91d9d5a65.0","@material/typography":"5.0.0-canary.91d9d5a65.0","@material/feature-targeting":"5.0.0-canary.91d9d5a65.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.91d9d5a65.0_1581116358170_0.58485064922203","host":"s3://npm-registry-packages"}},"5.0.0-canary.d5c006ed1.0":{"name":"@material/floating-label","version":"5.0.0-canary.d5c006ed1.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.d5c006ed1.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6ecf3f9044ab177c8c809d7979f60b7de1d010ba","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.d5c006ed1.0.tgz","fileCount":35,"integrity":"sha512-vP6TNx9TDHF5k2dHyWy63qaqn/WJvg8D2eQbJWtHRzQ0gq9kmU+uUxf0GcgI4OYVD/WKTKFZXFFLQZJfwg+2Fw==","signatures":[{"sig":"MEYCIQC29DTRyORpmkXDS68MGm66OzEdcqBTuxlfnUOhfDEucgIhAIOXVG4IBuqbrTblFT14Efh6moCH5UTYylla8LJJQlVC","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":176512,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeQYlhCRA9TVsSAnZWagAASIUP/RLmoKSwGXlXa5T2rvCm\n2BYO/dFxHjlFJstBSZtX4HiIchrtFG3Y857F+t1N2khR61awgV4kq+KQhxa/\nauciXnEx/yNXGdJIBqZkYkLcrJTuJSYjxw39StG7y0tyLwvbUgmfWqEa1Dxw\nxvBqkhUUmLgl1aItJ1B9m8izA29qpgR9UgJBbuvgp4GM9PfoRtX18DwJAcRl\ndka2T54qIcR0IyVVL8ntHEt/Q4yxj7H3k+HvWATvqs96e/WvGK2bRRFiT9mK\nzyZC63oLF1A1ADPIlolMooYLf9q9FY29m8FnbfhJ0zjJBDpgeBstgVNbvDQv\nfA95+EKTUW6Z6c2Z2J7RqOQAU+F36TuMUsDEcf/x6ipSD/99gTEvsUeuz4EV\n1JTE7J5XOg/IbVKnqddqGFm/fLgy0sYJlwHk6Nx9kWUowpv8akcMZUzT4TsZ\n89oEW26FxQxF+C4Gowrewici9ujxd+4w94A7db1w1jSa/bPd68GrN5qvvqak\nIs9jVDBLX/5DGEfo4HVIndxZaY+8BDmS2liREaXmOT7pVuCmlJ3HGWLRyrGQ\nog5B18+7ZktXiHnBbN2Lg+/DGOv/GJHBMNNGNzNldJBI2pMMjAIo20mZaiL9\n/UOOUmtMKvjWUlV8K4ckhbNlG8M+HJxpbOHxFKXmiOA0Wc1wd2y/CvpD0zr8\nRPH6\r\n=3LKB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"fe50932259fd2af2b34c60968682a0b94f7fed66","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.d5c006ed1.0","@material/rtl":"5.0.0-canary.d5c006ed1.0","@material/base":"5.0.0-canary.d5c006ed1.0","@material/theme":"5.0.0-canary.d5c006ed1.0","@material/animation":"5.0.0-canary.d5c006ed1.0","@material/typography":"5.0.0-canary.d5c006ed1.0","@material/feature-targeting":"5.0.0-canary.d5c006ed1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.d5c006ed1.0_1581353313299_0.6968685404881001","host":"s3://npm-registry-packages"}},"5.0.0-canary.559f1a570.0":{"name":"@material/floating-label","version":"5.0.0-canary.559f1a570.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.559f1a570.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"59948b6ae283171528495bf79206e7b741c0c720","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.559f1a570.0.tgz","fileCount":35,"integrity":"sha512-2gRyiaf4xtM1O0XqufkaDE9u2abmBmXFhq8aMOLPtKmISYvcmPrLIxI43GANlmZvAXjv5yWrzKVngu3cKCmazQ==","signatures":[{"sig":"MEYCIQCuvDMpPUw4wlM7QpcnYYz1esey+H+lULDeDghoM6pTsgIhAM+fSggTvS8HMonN8ru4QO501u9GJfIkdM14U9YEbhxz","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":176512,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeQZHcCRA9TVsSAnZWagAABE0P/0W91RmUsuIexpExARLq\nerrvXn8vFCU5ZYbpNgXqfJcLonrAT+qDyYYPc9q5iPXNa5vGcrE2ZH5QyHjr\n3F5iZ9zUkGZsYv2Cummzo1hkvSPhPJDSWP20o0wqjxq5/Pzg2mxmp2zKthY6\nT1qiWn6Bc6VktyxXUQfrS0GQrrBaxnbcR9Ie+5iCk8MRZ6JSl8AxLyXtCNvU\nF5qz2zUDQDQ9pyrpOWYvTt9468K8IWup+ybDHENCUfEvFY8J824gbtp//hOq\nUzbRHn43CZeMPz1xWdCenzBU6a06F8PslGQM6wvgMLq/PfD18CV+QHQf5Izr\nO8A7jOD1P0bNt+p7LQRbG3m5kwIN56OGaFKOJhzO8lWPYYqswTllkjTsNKIq\nc+Kd8qS3zulyAeS0hKMo+is0fXRKVwJCf4NofmT2FzV2ZZ/Mu+X002qhKt+9\nAklZoGhJUs8NQuv9lmtkI5uE4K9qrK7gA623MKKeg9L1vLCYpKkd1Kj+5iZc\nC4k28w/nZvN3a/O4MIWhpOmNgFZAIHrIQGdxfRMpb44lhIssIjvR7ZOj7dZc\nOElEh0xD6985mVds8h4Y9XVYhTofHRSnXh+XraoZCmBhEI7AQb7gn3x1nGbZ\nQoSZBKe61WD9w1hPLy0/ZzyZlOC/tEqrNI2rDrFahNnHe82BL9Mlh+8ZmTYD\nU+Rc\r\n=TzmN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a4adc0cb689de4e266e65d90d614fbe1177aa5f1","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.559f1a570.0","@material/rtl":"5.0.0-canary.559f1a570.0","@material/base":"5.0.0-canary.559f1a570.0","@material/theme":"5.0.0-canary.559f1a570.0","@material/animation":"5.0.0-canary.559f1a570.0","@material/typography":"5.0.0-canary.559f1a570.0","@material/feature-targeting":"5.0.0-canary.559f1a570.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.559f1a570.0_1581355483793_0.974201902592168","host":"s3://npm-registry-packages"}},"5.0.0-canary.ad3bbf782.0":{"name":"@material/floating-label","version":"5.0.0-canary.ad3bbf782.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.ad3bbf782.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f513faa7a962e6b4f68a31e133fbc94548517c7f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.ad3bbf782.0.tgz","fileCount":35,"integrity":"sha512-BZbGdY+rDd3mNMERgsLGab6ug2DHRfeogxi/0oPpYg0vC3jboyQQ9ZUZ31K5N/vQvShXdlmcEMkl+d6e+8NaAQ==","signatures":[{"sig":"MEUCIQD0o5v1Belo/s4U/cWqn7ciw5ZQ0Lx6E7hwg2D6n0J8aAIgDntj/2GSNKWqPNiUQH68dCVzriK1Ox1eUFNUQtg1Ni4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":176512,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeQarUCRA9TVsSAnZWagAA3XUQAIgefiqNO0Mxr35Wia6w\nTFl8Os4VVKPmnAbz7GlwPhfZDY/ghsDxboeddcgdaC7xWq9Usdbl8ERQxOQF\nKGW5hYU1z32GUVkZrFWWJBxToLbredutO1CfnsJR55LiJ99eoPrvfrITsvvi\ncUCWIWKeDlofzr+uNmVvwbql10GratSO5sNT71245mPmE0fwbPX3QW8LBlbU\nvtNeMsQSVUzJSmW/zlq9DTG5NM1grkgcOL3XsTn9F8UBV/lFCDpzj45kxSMC\nPPiDtKmwFk6B6tbKpy3R06NGihpOYiH2bKxzPmC+jQH/oOQSzRAzSKjh1m5E\nojQ6FUUBRZUw8UUnIrCbu1ByNGTv2H+l/HtAotk9v1VsqAc5lLRlqgho9NRL\nkHJDQSyzRfYVopDeqMYjR8MY0b9jKpbrDNtmF7kjjTq7j48xYJ3Z4n6g5fgt\na9qp3KCLEPUfA4Gf3AlW3J3XH/D2vpZD0d+CNah1Geci5Zz3ljzzMSVAxcHU\nNMBdHT0qUbphyLEzEvNPFgMp3n6COYMk+cTURKLDmM6U5p7WDUQOVu2FSJqf\nWdZ8N4MDz4jYdGPONkvednAlcvtylb2/bCZOprfAmS/kKqVtMqd7/wxxtnbH\nxGSF9NzbV7Abe0ZxwcJ+++HS16ylG+FpUM5oMyvrNSgbEunmMqnUDgELypPH\n6O3z\r\n=CRGF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"48e565307134ef2e860fdfd1a8ce59613a783ba7","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.ad3bbf782.0","@material/rtl":"5.0.0-canary.ad3bbf782.0","@material/base":"5.0.0-canary.ad3bbf782.0","@material/theme":"5.0.0-canary.ad3bbf782.0","@material/animation":"5.0.0-canary.ad3bbf782.0","@material/typography":"5.0.0-canary.ad3bbf782.0","@material/feature-targeting":"5.0.0-canary.ad3bbf782.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.ad3bbf782.0_1581361876441_0.5590772483734596","host":"s3://npm-registry-packages"}},"5.0.0-canary.570d8e49c.0":{"name":"@material/floating-label","version":"5.0.0-canary.570d8e49c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.570d8e49c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b5faf668088870ca52a0e6f4809ae003e2bd4f22","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.570d8e49c.0.tgz","fileCount":35,"integrity":"sha512-nML2EKtL2lS8aPM34NTZvNUDqis6cg4UEPtUsOBSLwNBSyUWUfLJoSZnGoM6xfWElZ2gwb/xuwcm4uCrp6slsg==","signatures":[{"sig":"MEYCIQDDPK108nMjBFjDedPF6+MHIcDtYEt0Z1A/BF3F3M7ELQIhAK0sVESOMXNJRG6s4lGd7SR93//IK4OKs/2Zg1xbHrkR","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":176512,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeQcBnCRA9TVsSAnZWagAAQX4P/RhB5zCcu+qLyzYc4AZw\nrRqA6Cztad2YUMbstxwVu2kQ7a1LrZ36XySylryOtODt+On+WjYD1k3PDWOS\nsyYqVcfbKn6nmrkMQiq8jmeE/wqAM8x2hO+lEUFQBM/ODPTk6L/IbyCV643W\nmPdMIzMMbpaDYzO7afXkjAwpSsZo9Sl+pAX7l6MSBnePN3+NtqOrumU3JywR\nJ+cM3c6CgnjCwjLZ7cYBsLgAtFZQ0OWTz4PNGnlJ/EquR6wWTTMzjCauuAP0\n4xPA7tdqRJxaG9ikenBTIBCgrmhGL+YP+YkOAMx0vWEbiMNlKeBWP5c66wQq\nNLKbEjmKP0dpzVz+odhnE7GV2SDiLT8o2egRKmdcxXOyI8OwlPIj8WnHEaSB\n61dYaKMW8dFchK58OrPgeK3qOC28TNDdYi6SHBWtpyrpuaMCiAjp71UQ1cR3\nJds0LdVqhJbV8TPWkh8i417TdgbI1zxzcJOyecHaRqt9Wj8xl8hr8ZNvK+eV\nAIlXhNOATOA1ZLwuOr+XBZQv4GtL9+MiDjvR4q1dRdvoRN2KX9Aab23P7ts9\nwYJWHBEJ1esITypelD1C6iWvd9sBAae0VzevntI6fJf1fZGSlic1+DUf3lkt\nM+OyH8Y/WrJ6CUcqSDS9cL0WVDdku8MCKYe2SXoh6mQ56EPv8KQMr1ARcSXO\nsst6\r\n=fOvJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b6857e33db49c411cf5f55873a45f72841824fb7","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.570d8e49c.0","@material/rtl":"5.0.0-canary.570d8e49c.0","@material/base":"5.0.0-canary.570d8e49c.0","@material/theme":"5.0.0-canary.570d8e49c.0","@material/animation":"5.0.0-canary.570d8e49c.0","@material/typography":"5.0.0-canary.570d8e49c.0","@material/feature-targeting":"5.0.0-canary.570d8e49c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.570d8e49c.0_1581367398848_0.23362740929891035","host":"s3://npm-registry-packages"}},"5.0.0-canary.48b06b89a.0":{"name":"@material/floating-label","version":"5.0.0-canary.48b06b89a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.48b06b89a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"509831ee2fa709b8436490ad707df229c1f5cf54","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.48b06b89a.0.tgz","fileCount":35,"integrity":"sha512-KQID3SafnztL4E0p+UAsPdNSOzaURk2bePTb0kS8J4M6LDkEpNU4y9Z1PntqCgm6UhDNN/4t+EGk0x0+U11JFw==","signatures":[{"sig":"MEUCIGKZN0n7swI11/+8LwrUWDE/JphJ/qMLZcDNHJjHp/4rAiEA6C4oBBeakjOldXiWCEjpzJRx7XoGTs99ZCRVV8U/GyY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":176512,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeQvW5CRA9TVsSAnZWagAAdQEP/AvFeygXrY4mIckRdmf2\nVrPS8GNgADuEnF8oLqs486mgzGHJJnVHBOOc6Ny0GWqCajOnkl09YGduvJ52\nUrSdUU/rVnu8ngtyDxiJJnQ3AJZzWd50WWXvl31smzbQ+9oDu2UnN/93BOfs\nnIs+Fiv+DaoSUyrQy/0KusrWWYF7qfvvXgZowcQyDUuNu5g/WDZuZc5/JZfg\n6B7a5davEHLzKpEQLzJktE3iADg/Ng0kLiXw19srCGMrAbyEDwGmCHHl8asC\n1SuN9j2X9RSzMT0GWNTbDKVyJTmnjo+uDwJf6q3w5Y0M4TnAGvi30GYk9gD7\nckK0ZgQB+KxlFNhqVWVyfoHNTYXO8H5LYjiZu8++VjmnwSCVjH0Pj6MHF1dk\nynLiRelJJxnVS6t+ZqOxoRvtj5rD5zIRTaHYoCxdPjmFt4UAL2FTUahQAQx+\nY10WByaulXvDAgkNNz+kbDhZS9Ak+N7WotFGr0cDpKQ1fwijt7UDWci+pppx\nxmF1kqsU7jXU1/YeSlm3/WQDjRf5FsoMEJrGMjz1oCVddi+qjpF4sPthkmNz\nBVHP5xy1uqhIyGeDlE8CFCwwwDudfRYB7+7YxLVfvhQeQkCjylmTknHOcC1z\nloUjLw46rzf7Hd34ED0qiFr7dSn9/s7PPW7itlWf9VahqwWFb2Ec2FGN5VNW\nn8uy\r\n=4AS/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"540a576f2286061b02bebceda7cbf10554255781","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.48b06b89a.0","@material/rtl":"5.0.0-canary.48b06b89a.0","@material/base":"5.0.0-canary.48b06b89a.0","@material/theme":"5.0.0-canary.48b06b89a.0","@material/animation":"5.0.0-canary.48b06b89a.0","@material/typography":"5.0.0-canary.48b06b89a.0","@material/feature-targeting":"5.0.0-canary.48b06b89a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.48b06b89a.0_1581446584640_0.377712728095827","host":"s3://npm-registry-packages"}},"5.0.0-canary.612443dfb.0":{"name":"@material/floating-label","version":"5.0.0-canary.612443dfb.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.612443dfb.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"438bf6266b7f1eae671487a7d0d09eb24d49b7c3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.612443dfb.0.tgz","fileCount":35,"integrity":"sha512-n+8IwYvCIrpaI1vCwM0s2Xt7hByzdyxA+q7GOFeHzrtAOpVd2W2ry6aPqkA3OwLK0nxvS3+exQ8yzp5x3k56lQ==","signatures":[{"sig":"MEYCIQDH91afex61BdrSP2VstidEPDscjIFel3SG1cTou+EHWwIhAL1n5EKTcep68wUuolGvGfuIzkYtDmrdwb+uZKktm5mW","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":176512,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeQwUUCRA9TVsSAnZWagAAE54P/jblsFkscOYE2nmVHJKX\nfkvQxNhQOAOMv8og2yXVjHYxZTcpmcGADr8gmSWkf2YuGUa+/vSixDWl0j8P\nNJCZHiakkdsDraUQwirUP7dYkMB5Jkv9Dcauuqt+IyFkFVNSAv8j9sWELnOH\nuFhhqzqhJqL1gC89TdFdoD9cH/F7/+jS8GvvNKo+FXbwWa5O6JnaS3KeKSVU\ngOmjOVeZ91bcjWSgSi1mtiIyhUj6k9tlJXptnw62SwVdC24vl0C3ly82wTek\nJ+nEKK7fjNVFoPP0uM4ahZ+bWoucS/AwKV72NmZQjsdSLWzFLRxegJvs/ouM\ncUvWIKImNJMP6poRUK2xe7kx5ERqY3/UvSB1pIgEIaUQ2KB6/p7insuZJPyk\nwOg51cvhM1hXznqzepsEuZs0AJSmMqNKco1rAMGtRiUyFwzWvVH7JXk/4u8q\nIIqzDh1FApWJoVqaec814J78PwWrMBBLuu9sVfpGCHvs/oafs85Sx1sNAI1f\nmuB+awb9IBqEO7NoV2cSo2gQ5Bx+GBAyw7ywvnJZ3578YJPu/2Hw9Nvc3QK6\nD+5tzmu0VaLDO2/dmInVzSnsUXAXRV/NO75X7EFjvx7AMJ8tFrfTt75J/ZOn\neh2+Yd+b2g2JLzbwIXe/JgeOYPtrcobyvOyBBvEVLNG7s4aXH+udV7WLujL2\ngL5E\r\n=TXdZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"622585006b9702fc93bdf0ae416f6c58e398243a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.612443dfb.0","@material/rtl":"5.0.0-canary.612443dfb.0","@material/base":"5.0.0-canary.612443dfb.0","@material/theme":"5.0.0-canary.612443dfb.0","@material/animation":"5.0.0-canary.612443dfb.0","@material/typography":"5.0.0-canary.612443dfb.0","@material/feature-targeting":"5.0.0-canary.612443dfb.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.612443dfb.0_1581450515840_0.18072929348522893","host":"s3://npm-registry-packages"}},"5.0.0-canary.8c11ea2a3.0":{"name":"@material/floating-label","version":"5.0.0-canary.8c11ea2a3.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.8c11ea2a3.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"cf9eff3144672a232087032ed49bb9907ad2529a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.8c11ea2a3.0.tgz","fileCount":35,"integrity":"sha512-BGtXaNqlPtE8eCh9pjixy2B21SBtiKGRpVi8H7+V8KdWvsruLVSsMkgb5XFgZ9eRKMS7mzdsuFRPuGM4tZxcYw==","signatures":[{"sig":"MEUCIC6vZG7U7wMrlZJWsMpZqLstYStxI34iATCLLQLQLYKOAiEAtiMpB6hBo37ATMUmoW0ce1U4jZhJHs9zqHZmJiTSMnU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":176512,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeQ7yNCRA9TVsSAnZWagAAvkcQAJHXZeAu3rKCbRo/nJwq\ncSNAASyI8UBoXMci69Rw+DDlZVp5MncZZUQR8CVnAxWxStDYKer4sL5BxyPy\nQ5wx0SY0ZnQE5STpAI7WzuPtE+qCtJp3gV+8oe5yjKQOzuqdy4FvCiXxY/Fq\n9qWWbZjyMm6iDrUNQRnxiUkillMJq1iZ/1pxPkh9T+/T97JgGGw0dXXf+ctA\nMFaIFGpfuigkE6IWXjbXZwPBsDtlQxKetVnZVPvyb0MerS1DQv2l1yAT3ADA\nNfJGFEKm7+zCVwPZlVuKbOoFEsimxzB/WIGC+ujozn8205BFo6GB0B4QXHtT\n8SmHOuOfmASz5N6/WKMXFNhpdf5I6Vd94mDH2nGmu8cYeCIVo1fMfgSVqfqU\n/c5MNXrQdsCFrKZAJWXaJ1Nuft8EKpPsVZDn1ShjmJAXOHMloK77xKxCju56\ncPkdtBjeKsAVCNHhSwrbJcKUiKTHlNVQDCIuvXRoKW74011Brsa0boYHhOB8\nM0l5w0HUYUHaX75aQtyZ+o7Pv9n6G5kR74EGkpwmDHsHS2cbB09A+zcFhqcY\nnzz97njHUbsluKx6oYeia7AdlVIyOXS8RzGrSU9g1LMs70uOw49w/3DYmjiV\nb2sLEu+W1wrG7EjC3x5w9bO05UqhNxCu/MZ0C16PXPj9Yqy2l50zjh0MPbQT\n1cqV\r\n=d1Tc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"47068a39cd18bd1e384c83a2ca5c3d53ef8bbbb6","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.8c11ea2a3.0","@material/rtl":"5.0.0-canary.8c11ea2a3.0","@material/base":"5.0.0-canary.8c11ea2a3.0","@material/theme":"5.0.0-canary.8c11ea2a3.0","@material/animation":"5.0.0-canary.8c11ea2a3.0","@material/typography":"5.0.0-canary.8c11ea2a3.0","@material/feature-targeting":"5.0.0-canary.8c11ea2a3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.8c11ea2a3.0_1581497484706_0.7903719652688392","host":"s3://npm-registry-packages"}},"5.0.0-canary.b2f3d311e.0":{"name":"@material/floating-label","version":"5.0.0-canary.b2f3d311e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.b2f3d311e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9630b408904f6c1613fe1e04adbba08c9831d6cc","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.b2f3d311e.0.tgz","fileCount":34,"integrity":"sha512-RVlBYAvF8cNEkj+FgNmrLSognJHQtiBvXquAFsIBdZmqpnKQJyyPb7TSqlPdS0Eq64YmGc/xAHwww9NXKyUN2w==","signatures":[{"sig":"MEQCICShc8nyWKCK99nQsRPWutZ0THF8aI/CT24Nge6gKkDBAiBFkAgNwt037DwhOKIervq1Zm/a3gkPpXDB5ASL3ohmaA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":175862,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeRcMOCRA9TVsSAnZWagAANAoP/3h1XpCT8p9jpEjg2qUn\n1XAvtKAuN9b1IR4+Ci2BfcgI74QEUMDzJa5lEpAYvBWk/KVAGdpvHvNo9BeY\nFAd4SUZgzd2OV9vLWldqRfrAAiJZYkJnQSMvWuYkY9sgUxQrXKCToLHxaKY8\nTgPJsimyxO5u8NbLdnc3H6afolhE/J3R1cYztYuKZ2QRf/xjrZa+kEHNsttC\np7em00AJ+uvT97/V8TJh9WELKfYOVztQFj9+LrSJ3x72t4AWuL05p8HFwegm\nlq0XlSCB+VK5x2zgG8PyU4PIn7wbwF3PESpqX3GfnITLVZ4lfGyCTKomSbNg\ndFCll+5Zlg5YAq/fsO3lv+0rCnaHfyPzWAddc/oj70f+n8qmh3BexUw62kZZ\nCD2sA/sRhcCYMbEfqq5izxjLSJXfD4UJGXe9Et/q8TVzDqbMjCzZU5xwCNmM\nbL6FskPT/ZuA60VGBJrJ2As4OJxTxCdnBTM+NBBV7pisrnrCIYvd9qDudyUL\nRHzwRQqI11pNrEcQVLZfm6DP+kyBNq/ILvI55KeqZoYziiioglAr+x5Sq9Q+\nUJCS3qTUqaiX5xY+kjgIDCsE8M2sGoptbZzCGd9atpFM1TElYwp5NvMmXM2J\nfRyIHGEID8mIzFen/LbRrYMG0YLk7gN/moTPoYfKnTLUetDET61Qb85hxVku\nkbdp\r\n=ovG4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e8b88d39be927e40deb73ae78a049ece8c80b9cc","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.b2f3d311e.0","@material/rtl":"5.0.0-canary.b2f3d311e.0","@material/base":"5.0.0-canary.b2f3d311e.0","@material/theme":"5.0.0-canary.b2f3d311e.0","@material/animation":"5.0.0-canary.b2f3d311e.0","@material/typography":"5.0.0-canary.b2f3d311e.0","@material/feature-targeting":"5.0.0-canary.b2f3d311e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.b2f3d311e.0_1581630222454_0.2856450040734013","host":"s3://npm-registry-packages"}},"5.0.0-canary.4f488d0ee.0":{"name":"@material/floating-label","version":"5.0.0-canary.4f488d0ee.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0-canary.4f488d0ee.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"fdc65f4d616cb66f8d45e52c6247f0b43a32671a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0-canary.4f488d0ee.0.tgz","fileCount":34,"integrity":"sha512-SEpBoMKhQodMlRmpPKEMMpDjYA+7ozyXSLaP8bFdScvvnP4ohm41DlhpAfoZrcjnnX4nbTzWHw19cTclIHEy0w==","signatures":[{"sig":"MEQCICWT76mTjy9c+DXDbgh9xHaG4ZDnuvM/gngz5gvWPsEJAiBCCyekg8zXsTRcuZt6FAt1cd6mBVdkRTzhLB9Yt1LcCg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":175862,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeRdZfCRA9TVsSAnZWagAAW/AP/Rl6CPn4GOvzkcN9p+8Z\ntucdYKgDVLpDfM0FDEOmUlcXW+Yy/tcSY588NtloKJfNc1AOQwg4ICJBLTvi\nFzUX5uPMXA8Z9sdzvkiUseMXrXmqhXjM1q+H+SOHtjYd5uLDJvXihN0eRBdZ\nqg9QgPr5yjHTwl/dyZTGrpbA6st8oRoU5w/LOC3Dm/zWJRIsqxzRqECfloSO\n3aJSJtAFtq3PJBdNlWa7bWbqqgb+uuOFEBBnrVyFQs5vGKIxQpsZT4BgbdZk\n31XrBioqRN/jyJzb2CASP7iWeewkTvRfUsMjjOGkFQQNK5dljo2AvPfJCimN\npO5Nx7thpmLRpxZ69w2+vPGa2bVrJZ5smGl/2Hrlva7rVLymj1SiN9qPd/r3\nQlJVs0jIu54SPbritxGxYrnvgx/QGxE9e/gV8RO6PQfFzEz5qzf6+EtbdxAk\ndb/NLxF3Qk+GG5W0S7rWQNk8ZAUi7bKfLNog9ZdxbC8V4GOmUOSDv4M9u9TO\nVlWePbKiz5+6yVZOly6Alo7WGNkn/HVINBxIEKj9tuacTFgeqjnyA+uJRMqu\nmGVmEZdKyqHulCoWqOYg4Fe9cEP8KMP1axevZ83vJjMPPIVHEws0yzRiosRX\n5cb6J5VpkVfoACmxs1rPb5S05eNe1I1lceIwlSv+oCTWdZxq4RqUPSGWKXhh\nHHWB\r\n=iZ5f\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e3b2ff94a1a6e30260b88a9da6e55d6ed122c399","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"5.0.0-canary.4f488d0ee.0","@material/rtl":"5.0.0-canary.4f488d0ee.0","@material/base":"5.0.0-canary.4f488d0ee.0","@material/theme":"5.0.0-canary.4f488d0ee.0","@material/animation":"5.0.0-canary.4f488d0ee.0","@material/typography":"5.0.0-canary.4f488d0ee.0","@material/feature-targeting":"5.0.0-canary.4f488d0ee.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0-canary.4f488d0ee.0_1581635166932_0.07460735486764114","host":"s3://npm-registry-packages"}},"6.0.0-canary.fe79de07d.0":{"name":"@material/floating-label","version":"6.0.0-canary.fe79de07d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.fe79de07d.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"aa0cc88c5349bea71ae9b041a414e1915db67cd7","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.fe79de07d.0.tgz","fileCount":34,"integrity":"sha512-qdtwuU+LeJNJWTt3c25oKFbA41gZjtcYvgDtfddXsrddbTumQe4AuY22HmGEqbah9hT8jYxvr1nYhhbQJKNGpQ==","signatures":[{"sig":"MEUCIQDywk2s2J9Sp/7l1bHO9rRLNL3puATcB/zYhuxjQFui7wIgLIsf95HPh+DIdXNPpVDd1ltqF09nfZPmfNHy7I1TueY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":175862,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeRdprCRA9TVsSAnZWagAALckP/337cNXNBdlnz5AbbKZP\nmby+p0eVzLu2zdgDpRCzIsia0uAniN06BQCPtbCaPL+oqZ1xCUN0Edt9LAJB\nsb/SjTqQ1JXsDPCzhUIGxPvW2Oy0h24izFvOAHy/amBU4R8XrQTy2WZUOBGm\nrkhgoODHfUU+5+mtPVgXZmd5PYjkUGdDDR2MUL7DFlJw1sfHZ7qmexMoL9np\n8vmVWoCvP4Kp9UVUpVTGIWPepph9fC2kMM2ZIkMO62/5kbHujp9d7TPJKDMD\nJu+mfQCs9iD9c5m4aQMOMALBwUFy02e7oY0Zp27qqwWwkYPIsPxnxZ21rnbV\n6WwNT4Qlup+3nup1c2jLt+5e+9Dz0Q2jxFmuastpVQVPcbDUNTwd9S+D8YuQ\nH7EJdSGxJ8IQed6DtuXZC6P8yQ4fLp24zCjrVBe03FjLE8ihnIvVbL3B4Iyr\nWkGOyv+dkcGIyNlrqdtHRo3eyTBIgjvvCkfQHu5jf26Lmpn+9YpgJFbZ9a6Q\nYrS1DlzhoL0zW60tk+RbYA12RL4AlNkcYUJZl18AzwC8sY7imXhSM1O2a/Dj\nzKha//MThHyy/qDSO/I72Gyf2X2IWgMJlqjRb4JfJ8lG4alVoXIFbTWasqUz\nH+7eNHzrfEh+3J+Pzr8XvHxXGfqZrWy3Zwfgd8f2x47SXYveNvnccMECdXaY\nrUVY\r\n=OD4G\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e2b4b3810f62a16846d719ee7439bcbbac266d30","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.fe79de07d.0","@material/rtl":"6.0.0-canary.fe79de07d.0","@material/base":"6.0.0-canary.fe79de07d.0","@material/theme":"6.0.0-canary.fe79de07d.0","@material/animation":"6.0.0-canary.fe79de07d.0","@material/typography":"6.0.0-canary.fe79de07d.0","@material/feature-targeting":"6.0.0-canary.fe79de07d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.fe79de07d.0_1581636203030_0.9813151800982725","host":"s3://npm-registry-packages"}},"5.0.0":{"name":"@material/floating-label","version":"5.0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.0.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"947289aab28a9e5faca7f0cca710142106a23a69","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.0.0.tgz","fileCount":33,"integrity":"sha512-jJN+jnxMrvPPtwiyBnuZIfoxx0nVQ4piR1JUvFairFY4MokbE2720tR6PVwYO/CMnpLwgUHPpRDhDiRVVmUAMQ==","signatures":[{"sig":"MEUCIBN0b9/hAfAg5/Jqa17gyVCxAahUwTQs85HtHmz2ZzkAAiEAoD8gwAcl2SOpvoGkJ1egV5jdXmeXsr5ovZHmV8Fk0fE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":173830,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeReUPCRA9TVsSAnZWagAA87kP+QHHo2EwBJ3h/zFIghvV\nOF8BjZVmcoYHTorQvN/mbqYi2HlO9Cd5e24aSGm9uaISMzZlM3ihJ4XvE3Y2\nR/6y78Uxcw/7BsRoJOyG80SlWSj01X8g533ox5Oqox/yK9JFyaILFkcU5zoy\nBVQ8F2ObeDokcAmrKpOz7/ezR+8gGNBzct5e3wFWal0wvdj1W1sAag5TOqea\nnudmnlnYmOQM3DKbxylJDoO4paFyntwWjfLb64YqkK1h30AORFr9BHd9vQ0Y\ndxhM5eJb8EyUObF0l1xfn4IqjmQaP298O143XlvnqQGFAEIM9ibbZQM86eH/\nhAvnbczV8h9x1YLmr1KPg4pwd+QPeEfZERZExXwIvuT4n9668q4vt/YweDTY\n6tId9PUtZjyiSsjkocd3CHpM17WX+m0w1Y8dbbv9PXN2ZVvWMCQIksO7rYnq\nkFtKR/NFCIx7BIp/SzcKL60lTtNlbKHJr4SUhoAMixxzDRMemaV/qo3Tx1DL\nbm+b/GWnHXO8xU90UaivJPppmcFT32hbKi7UTSpQz8v9kCVzzfje/eB+Vl09\nwzklQ7k3rDnWuTHrheVzzz+YIKadZcO78Ld7rCepqsY4Tphwpm5jSrIo5MjP\nrr1pDejvwdylztGSV6MDvgM87aZrqHwvRwor0m3Aql96ee9m2S8Uqz94hOiJ\nlmJX\r\n=io0y\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","gitHead":"47845087df2f88107786b4577b1be4422b14404d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"^5.0.0","@material/rtl":"^5.0.0","@material/base":"^5.0.0","@material/theme":"^5.0.0","@material/animation":"^5.0.0","@material/typography":"^5.0.0","@material/feature-targeting":"^5.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/floating-label_5.0.0_1581638927332_0.8940311684095952","host":"s3://npm-registry-packages"}},"6.0.0-canary.5e313b1f2.0":{"name":"@material/floating-label","version":"6.0.0-canary.5e313b1f2.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.5e313b1f2.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"8f76e363f1e5369db9f3958f90426124318dd0b4","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.5e313b1f2.0.tgz","fileCount":34,"integrity":"sha512-Te+8+BS975hfESZ+JCa+5tOQT9WvJPYvI0HT0T+uBkg69wROK0srkQ8na5IvyXI7XEEyXCz7x0Tgs7ZsQPQMMQ==","signatures":[{"sig":"MEUCIQDADBolINuRtspBp+QebeA3Wz+4Du9R8uauOu+wNqBKSwIgaJWRbMsBVzO4dlUMf7O17vqVDgC6NddIDxPEtKGS6f0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":174357,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeRzGyCRA9TVsSAnZWagAAZt4P/i7WJ5Q/kX60JAnpXpMI\notlMxKTtj6c2UntkJg5/qpgGdjnHT1RQCOzb1uHPmjYzNaBOzF08tUZNF0SR\nuVDws5BizMw7JtGLxsFB0c73FgB2LXI19U6GrM+UAAemLquKahVTQ1C1mZz9\nnKF+q9MvS79fRo4mwjjX/h9u+m+8snNKH1zoyKcg6lMYuPa/OlQnbEB12sud\nsT2A445F/1I7W2d6NZdfOGb2vyw79m8gOjQjfpxjTxaQyQIv6klP7ikkFt8H\naQNEKc4QewN7nN/INm+N8KViq7StQa5QpZtfKwWRZBp8gdfV9voqU3HwJkyp\nB95B+L/uoorbHLrwJehIIaEGxqlODz4/I4xV5W44cdeYUwRbMtYUPUL36cd0\ncKyK5IXJS1ISuwIUXURKgZeTxOJMfSpUVq6H+orE0JEE0gR2E1kljxUrS7eD\nR0jz2JPnWacSqMMK9d5xEtruzvovbdNxzXmu2jBbWBNNX970cjgJKwGILqQ+\nJVIfRvX9Ula846S+qocXerY3NmjfudLqCL+uOHW6F0XipK0a8TJbiiW0735H\n40zZMeuXk5PdmUneARo25+M4EoKE1Mglk15liiTM4CBRe2Ay7TCGsj7tQXjE\n88pRYXAnDra7QdCGnv5/UjTjdHxGX10j1/7hFG6E6j+P3TJjMps4klNvtSP5\n2OGh\r\n=S1N0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c7787e7880c79b0baaafb2af1123bbc383025b20","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.5e313b1f2.0","@material/rtl":"6.0.0-canary.5e313b1f2.0","@material/base":"6.0.0-canary.5e313b1f2.0","@material/theme":"6.0.0-canary.5e313b1f2.0","@material/animation":"6.0.0-canary.5e313b1f2.0","@material/typography":"6.0.0-canary.5e313b1f2.0","@material/feature-targeting":"6.0.0-canary.5e313b1f2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.5e313b1f2.0_1581724081739_0.30762753620347016","host":"s3://npm-registry-packages"}},"6.0.0-canary.6a56f387c.0":{"name":"@material/floating-label","version":"6.0.0-canary.6a56f387c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.6a56f387c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"cab586f5171ccd043923cc9606a55039ea84c624","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.6a56f387c.0.tgz","fileCount":34,"integrity":"sha512-6TAsIxe4HUBm2RW/iIaX6d9rHsbd7dlrjgmjjH1Rv5uQEnDWG3kjWHS1R5VaP5SepfPFQhDJ3IXNbM7PkSHFxQ==","signatures":[{"sig":"MEUCIDy+1t+SfeLk5tJ0oLGlF26gAiGvAOy+4Zy4OXgiO/hBAiEAkx2M7bE5KWhSaizScJ8xQkAWQO8MpQ+BWhns3iezGr8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":185388,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeTD5/CRA9TVsSAnZWagAAquwP/1nOLV9ymlE0hIi2CgGv\n3V+dnxJfmA6FrYHT/Gv6pp6HLK769s0y3n7oOUOd4FMxd8nshF5aK6bBFGwi\noVGzQDN7JC4NpUD1SW6uHsb6miZsBDSfxHnvY9Ks/KESC6YQsYQ7m/j8BbYm\nXchkAGRvWHctWMxnYF++WfPiiJI7cZz33UScxdwtdY4ZHExNnUBRN1Ro47zy\n8VrTDymQcNHcPvzUFHh2UvL+5AJ+q8Ild8wwhXTPWTqouE9KRUpykL2vRVku\nAyY3PbK4aQETvMq1H6P0Ey/USdMHBiIhh3ePvJFfC7NkxpivJGiC1ILO3ngk\n6zMiFA8RujwtH1HWcp7/LE7Xey3rqRSE8AB0+tc1yIIQbfnp/hLGPx6iSWhE\nVsVCfMgRFcHVg9sbbtdRc6VHaoB+3bkhA166BsPpR2ufuW36ihdv+aSSMkD7\nqKKaVR7o8MhsjGO0JqTwL0XhcVkm8uzYeBHSsVpthDlivpXdyu4jsq9oP4Gg\nRmHQrp/AuI8SqEro0K7WCZZdp7lNSh2ZOlSLPCEc5H6F8TV5Ph9tRbnCFuC3\nFIqXyoQ7CAAvapv/kFEE7eZ7XTd4lOZgsKbIM87QPc/cGIzBilfSzVWZ228/\nulE0m9LOgasL9gPFUkW8IvNiAuphmWEX6I08g7Fq4DYIQYPv8YsCHxxWL3Mp\nIORD\r\n=ct0a\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1e3f916aaa994ac19a65c62b461edb01c08e95d6","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.6a56f387c.0","@material/rtl":"6.0.0-canary.6a56f387c.0","@material/base":"6.0.0-canary.6a56f387c.0","@material/theme":"6.0.0-canary.6a56f387c.0","@material/animation":"6.0.0-canary.6a56f387c.0","@material/typography":"6.0.0-canary.6a56f387c.0","@material/feature-targeting":"6.0.0-canary.6a56f387c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.6a56f387c.0_1582055039257_0.8381274172092639","host":"s3://npm-registry-packages"}},"6.0.0-canary.bdfd52632.0":{"name":"@material/floating-label","version":"6.0.0-canary.bdfd52632.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.bdfd52632.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"0ff3857ac9b157d060dd561e3e3946dd9bce44c2","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.bdfd52632.0.tgz","fileCount":34,"integrity":"sha512-QZmjYaH5p8PfakadpyHq0LfMCEoIBQN1ZOqIc4YywD4zib8Gy+5HFi/RVrK2+kUxDW1cP2nkP8OWo2Uij5v8Hg==","signatures":[{"sig":"MEYCIQD5HYjqv8DfTzjw1CgpPSOtBxva+vJcJ/0iYLk3BTMoKAIhAOR2SY7SEEJg09WF7GOBuDQmJYyp4iHxjrxcK+AFyZab","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":185388,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeTZkWCRA9TVsSAnZWagAAgrEP+wa6ZRch3JrQ4KPCq+Zj\nwuuG8NNMz9Ym7uvWIhWb1wh+uVhqO0v5ILybT5tzpz90U+DoE+B8/c0glilg\nMi6nXhX9U8IQTnD9MNoEfdWc4SlIhAIgTkqHG/wUIoJYe+0dhNgF6ffEB1hx\n2Mt396UA0heUhFes4qh64/ENTp5JSoaddi/LbRgVx7KekwoC2gbL74TmyGH7\noRn2w6nsN7GzpTtmHtUSvSnTYVhZI65YVb/MwuLj1usIGDTF3w8zFlBYXvLZ\nLZVfqbtkYqUCiiRb/rBTHdC377yMfNX6jhIBPhrIR6BD41ICz5NyhbF97pkw\nYvKKxuRMR1vv1mTAII9Az4U3mkTD9AnoVPK2eI0bwkmsl+aUuKnpYvWYntEK\nUHAww2H5pTKvju2kLsfyP2OLjbdBOGkYzhYQ8+ctiTsvPmGucDHNrtBOXL9x\nEUEJ72+sGHTeV79/Ub39MQ40wX0E5IeptvHme8LTGHPtAwYbbtyYE+sqP3ze\ncOSix7UddK5xhFJTuky4RYy47CbapKVJaLcyv5YFREsoA6csK6OzU+Sr2Ndn\nCR5PyQjC7nOi9GIl66/E0wPNPuZGCYwul9BM7AgwRLNMmucWQsEmb51smsSi\nLCtZHptyKL1zYvQMGLTschCSslkb2IZ7Azu6tB+pxh/7T1TwVh6MzGJOGwIX\nPDng\r\n=dJ1z\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"533f28d31ceee3f93d9c7695d4f394323e37af4e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.bdfd52632.0","@material/rtl":"6.0.0-canary.bdfd52632.0","@material/base":"6.0.0-canary.bdfd52632.0","@material/theme":"6.0.0-canary.bdfd52632.0","@material/animation":"6.0.0-canary.bdfd52632.0","@material/typography":"6.0.0-canary.bdfd52632.0","@material/feature-targeting":"6.0.0-canary.bdfd52632.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.bdfd52632.0_1582143766483_0.4520065093872596","host":"s3://npm-registry-packages"}},"6.0.0-canary.ad2e4376a.0":{"name":"@material/floating-label","version":"6.0.0-canary.ad2e4376a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.ad2e4376a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"bcaa673fd49ea792d42a190f99bcc94bd3eabf42","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.ad2e4376a.0.tgz","fileCount":34,"integrity":"sha512-8kgbqMwzv11KzBw6elPWsiqEz8S6w/5H6i+UAWD32pTzJlfZf9Nafcr65RoYGtDWZ/i3WJkXrZjupJAu30hIYQ==","signatures":[{"sig":"MEUCID7tYZeCqHv5mk1I9rr3eeW9nRFBlIMwvMipm08lwBMjAiEA3VXjnnAbhs8mgbp/Q85csttR1jKiT6JMeSo+vCmhSsA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":186022,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeTxNICRA9TVsSAnZWagAAjgYP/RJn5Woo3sXTKAmPreY0\nI6iKoNkHd1Hy7YlM+fyoNJxypYbUQJu2gIFXBfyZeVzGRjODSRo1Qd4rVBIG\nSHIYWNo1TE2y415PuRlOtaHZPrxTcqcagZ+zgKOWZ9LqMmhKAhf+uW3lkOEv\nbjnOK1PFBibchidhtvqRd/SjK2uStBVW3+o04PqJ97YmlvQKNb8VXnvgFcAc\nvvIMrE+3GjDIHs1oaUs+P95Lfn3sD0cTyggd1BRWWT4K2E1J6sKzA+0WYdzp\nZj1NyFHQGYBt5XsYvnlM0L6Vi1cHpJ9SLVbyIYDyCVA2tBLea1EGEc7w73hI\na2wFq0KnCIznbT7iWqY58Tq2B6ZOmO5X+Z2GSHchfD5J1ZO1UTQJ3uyAT9x8\ngpksqsvVTBG4zZxa+TOj8mlKYKb5hBzXoV06Qm3gi9vME3ZNJvo/xIVi0W0Q\nm92GuV3DrQJJh8dHlz4wvmH0cvEh8qMGhZWSh+sW68H7m1x8R4ID9OlBlPKb\nn26cXUCA2qfUChMXjhgrcd9nGeF3Gk/8sPfJJTfTzz8MunpqiVJ0REfbhXtu\ncNlSBcjWYaSNpHzre1zXWGIIOa7lSoZGBqc7A/SZ6VK86QPuSziDddtekC9U\n39SIlAgKul6cmF2TiNKe4NixnL9YxFGEFw9+216F/VG3w3aaVdQN6x8NLDbq\nn9jO\r\n=4IKG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a91629ff788e0ccd5049a85d588ddf65efe5899d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.ad2e4376a.0","@material/rtl":"6.0.0-canary.ad2e4376a.0","@material/base":"6.0.0-canary.ad2e4376a.0","@material/theme":"6.0.0-canary.ad2e4376a.0","@material/animation":"6.0.0-canary.ad2e4376a.0","@material/typography":"6.0.0-canary.ad2e4376a.0","@material/feature-targeting":"6.0.0-canary.ad2e4376a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.ad2e4376a.0_1582240583982_0.06558685506660655","host":"s3://npm-registry-packages"}},"6.0.0-canary.765caef18.0":{"name":"@material/floating-label","version":"6.0.0-canary.765caef18.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.765caef18.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"01471a711327bf587779d88d7b0a66b2be03ac39","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.765caef18.0.tgz","fileCount":34,"integrity":"sha512-Ol/NsF5epE+IpfLsG2s8ZMdS1gc2yGFWsT54G3JxicFmEpvqLqq6zgWQLKnnNfhsyzrgqGV7gciOyoOhwpbaVw==","signatures":[{"sig":"MEUCIQDj1pwhsRa451UQM65Pf31KIXbimgFPJUSVfiwRwajr4AIgbbGolhKM66LFA9JzSZ8kDPuSFHKu3b319o+ANYc7s5Q=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":186022,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeUBRQCRA9TVsSAnZWagAA9hQQAJWigkVDWPG+W/xYE1fo\nSKk7v3Ml2Yvd7hCJPLnpuxwlT4uYF+mkKBiSJzcCsgTflKyTFGhOKX4JGSXq\nFtPaTSZs4sy1mwa/Mu+dyTKTZTMkambw5AHxaxVB2c9eYXQEipHHx8TOX7M6\nj1Jxquq73jXMmCPkRtzkhsqhqblxuo8DRdOgeG9dUmqxGTPz7fyiT0vQuAzr\n6lKpjHi2hJIEnI0VJUInUMSIF6Dbwo/6O/Atq2HS7lnp3qBaDq9N30ndd6tH\njmhiMd0lq9jhWT6KzoI8XYL+VenixkT8JUZ38gVRmM1e73G8bxQbqsnnuejx\ncB/y+RXQif03vMD2pbNm7nGP3J+KwMO7yYE4dJYdlNuXQ0+QYSfk5dOWSvTn\nMsuzg1KhkehJ3p3ydEV1iDFrOVwE8SG+FtLyClMFFdKl5rOnC5WHTyO/KA5D\nHYttntYXQ4j2YgDoeP+3z4oVTkNGYsTQ9DZM//tClapOACYEzCIZay7uhS/h\nGAvHg38ZjpUpj/dt4XnLyZXCKomn74/8K2/EnDn4JnY0vSobExq7XWaD9LyI\nbmdVzJAXEaAbNzRUmfekQbMiPh0jUL1MeQNiqUd+AD68ArcooaesgnlDwlyq\nkrLzGdPM9uTI5jXsAC9HOaly7EpRChpAAC6RIk+jWQYpHZSXJXc6yZ803Yk8\n1MKB\r\n=eKwe\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e18ae69dc972686bd9fa70c34bbdda38c5caaf0a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.765caef18.0","@material/rtl":"6.0.0-canary.765caef18.0","@material/base":"6.0.0-canary.765caef18.0","@material/theme":"6.0.0-canary.765caef18.0","@material/animation":"6.0.0-canary.765caef18.0","@material/typography":"6.0.0-canary.765caef18.0","@material/feature-targeting":"6.0.0-canary.765caef18.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.765caef18.0_1582306383839_0.2453048438345129","host":"s3://npm-registry-packages"}},"6.0.0-canary.949562303.0":{"name":"@material/floating-label","version":"6.0.0-canary.949562303.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.949562303.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"863495351bb3b36dd4c9d5934a155a1a6ea1e2f3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.949562303.0.tgz","fileCount":34,"integrity":"sha512-mDASFtLyfqNSpXZg4GDH1b21LIxg/aoRZVxCPrVSeSCY9PRPkNFzo4hPeYID9mCejBChOSL284f/nSGIQJQDXw==","signatures":[{"sig":"MEYCIQCVlVgq0I57nZUyaSHqYXPUlZNVm+KSgrgHiuL5J2xRygIhALcyc0e29qoefv9IUqf/pILD7GtL5VVGTOfHxXI2kyFG","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":186022,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeUD+pCRA9TVsSAnZWagAAR6UP/jRdzuZzfVDzobJOxMny\nj0u8XAYtAk9gmOWXm8C6Rej3VZdNpFk6edzd8QhcdMMeRREvdLJHa+CGBmQ9\nTDZabY+QYfpyeotuMR7l4OlPYRV727Pmd6bz0KnsFTPk+53K20LrF3dWZNSu\nAouIt+xnKHeWD5ebCVxLcm4YAawdI+ClqysVSOt/3zSkJTM3ZKz160V6VG8h\nVW8GcjmtJhlp5gInXYHNtmZNj2t736Fgs+igichf1Q6YQat7MrQij15i5gj/\npfKfLddfwRtSZjvgtgWMHDDShe5sO2m37GAIg06t7MZHCJFpzA24IpeNptAJ\nLkHdB7XYrBs10n2zWnC4PUCx7KdnBPlFg/IUqnsSTzleSVTy2Llbs0e4MBeY\nHu3cgQlu7Swk5Fn/HcmiUPXDVx/ASb9+OLebvsulftPP2cUeihyHeNPYX4FA\nkB7O3CMhs8l5w+TAkV7zEQ/wMKJ1IinFP182pLnWkxZ/VVb7M8PKjmUrAxOT\nkBFsRQGlCDChGJ46tanicLXNEfG387MzeFGwjFjtNpSU2HHQ8qz75cJcMETX\nim+4qFcTdHJHYjZDYvVTW9fSCcpGGW97nj+2NFcKMz/56iKPImr8PRpgFvzQ\n8g4wDSxZ9yNCPuuBAym3eLbMa7mGdUxe4KE99U2zvIoYOTDflPEd+WUmKCHO\n+Z9/\r\n=FRiU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b23ce78ac58e49e4a566fa22d5a4001cffa160f9","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.949562303.0","@material/rtl":"6.0.0-canary.949562303.0","@material/base":"6.0.0-canary.949562303.0","@material/theme":"6.0.0-canary.949562303.0","@material/animation":"6.0.0-canary.949562303.0","@material/typography":"6.0.0-canary.949562303.0","@material/feature-targeting":"6.0.0-canary.949562303.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.949562303.0_1582317481379_0.4331454149040084","host":"s3://npm-registry-packages"}},"6.0.0-canary.7ec96974e.0":{"name":"@material/floating-label","version":"6.0.0-canary.7ec96974e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.7ec96974e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"45764d27551e000090eb4306e2309e2846fdc9aa","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.7ec96974e.0.tgz","fileCount":34,"integrity":"sha512-AwCYAzeBFNrF2aUEqHCBBLA89a1b6OkvuB2NLoznMhp66FU6XT8IX+OfEKWo59Dqi1eZl6ZuF5nl9ZF+3szQqw==","signatures":[{"sig":"MEUCIAXxuV46UtAVbOAO5vN+W0CELgDI05T13E/OWCMM+b7SAiEAkxVGw/rW+lT4RHnAL1l/Lky9Emtnfn0NytTAbT+OxvA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":186022,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeVBzJCRA9TVsSAnZWagAAA+EP/jnAKcrXYqoacH0rJRDE\nOlecaXovgWvysSTuIZbi1Kw4iaJx2LC/MLa9PsGaYEid1d1j3VDJO6OnRgKm\nrmVAu8WF2tJx1NSavH2vENxcA+tTmMOeIKnLcOrZno9B9+a5yulId3Gm+Ib3\nqiQvkRqE7h/nA5kYY1hb7oGMW//K4xyvSyXZAp2G1z/LeMyYcU+uOBNUnZZ1\num4WFhU6dYiMOGQ550Wa5fteTC4rozQJw41e/svlX5qWP2ko0fjsXc0Su+0u\nQKlUfq4r0whYAZDC4UVY0FTHLlmRcmq0tlxRiMzoyqvOUqyYSPaJrz6RuDx3\nJmvWcY298zxzUy/aM4uvUj+OIZOIxGVKY53KzbjPSHdpP/qURMV5WxqyEL3w\njAjQBkgYfJqFn2OuA6GzwcKYdX9eYw0uBrg+ccwyuhfFXGHYOg5qaYBk2nIw\noVU0OrBymc6JSMvEEvbF7suc6zPjAOBnigsBJFR4jp5PlJ8sZHrfbOv/w+HB\nbDyEoxJ58QZ0oj1/l2UJ25blf5wbw9XbR16NpSkdz1e1bsx41KsAaaquTjAx\naOt8UVtunAJGoaYMjdujSzjrf2BWdOI+srn8SwXtQ32NQxvl3ZxRp5RDOOEp\nzLNAcgVm5u/yuV+KWP+YmYtZ2cY0zGppHjz5D5q/sF19/du1Q7hYviagg6ye\nqU9k\r\n=mvtp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"79d3bd54f6272eb54a09e4cbd6a0e62f64e30a98","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.7ec96974e.0","@material/rtl":"6.0.0-canary.7ec96974e.0","@material/base":"6.0.0-canary.7ec96974e.0","@material/theme":"6.0.0-canary.7ec96974e.0","@material/animation":"6.0.0-canary.7ec96974e.0","@material/typography":"6.0.0-canary.7ec96974e.0","@material/feature-targeting":"6.0.0-canary.7ec96974e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.7ec96974e.0_1582570696848_0.2663741336746699","host":"s3://npm-registry-packages"}},"6.0.0-canary.265ecbad5.0":{"name":"@material/floating-label","version":"6.0.0-canary.265ecbad5.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.265ecbad5.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"45f5fd33617860e1385862d7d8a6ef4fbe964744","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.265ecbad5.0.tgz","fileCount":34,"integrity":"sha512-z0U91P/GovBDhcwKoibB9ezd20qBlpa3L2pLVnG3Qhod4clK2b3n2y1R2CzRBkHFxpVoUI24CBguuP4D6w181Q==","signatures":[{"sig":"MEYCIQDAdX0S4IprkfqVIl+qsfnO3RU0mM/2gHXQeBAVl+v08wIhAIQBICVnJfMFGG5P7bdnLQod6WzDlEdbFSrZN5gJp3IT","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":186022,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeVYsKCRA9TVsSAnZWagAALsIQAJq0ojV3blAYrvdz8MJo\nQh+ksv7aK48gzoNK1WA7hfNrpeUh74Ert0ZvNRoSIIYYgPXktabrhJQ6EBoj\n+todPl1+vSoS0hf0taMDYPRNzD+PjroGGIDTfwUhUW37fv3aqN22tXe7eozf\njakw31E2P66sxBfZ4XZyy1Cm7mo4GeYt1KsjZAmg42jDEpRSZgZMMY2OIXXH\nmpbfxeOmUdd0+PyNzFKxQ0b7QejrREpzHhWzgnyXKfUpHIYeq77TKgclMV4q\nN41k28ENBpmCa4U/dUybAPnBt80pRAdQ0MgsLdZ1ZJD7a9EQpBxQArd8qWH0\nuX+yQmGdRgCIxyoS1gxuRXqTeWaB5mW5bMBiat5U8yVZ8rGqpIMVcOk29YrW\no3LhizlsOsF/Gc+H7ro05TM/semW71I8BZ7EXX50K46rR6K37kJm1V8TNHJY\n8aSCYkPd+ZhcbwWKHJ4/J2/vlNxGfo1lrpPfR5t3TM8PUky1pL3Wk50HH4Gp\nbHftkxRZZ5agxm1E+yOj9WRZ0fDCHTJq6O9JrLo62f9gUl2dvK1Tb1uRk8rn\npXgZ5+olF35dyOjaEqUgPyJwNozlTK5vib06M71th01A55utbZBkSqskzyPj\n9Ir+7PKm1CInyNuVj5QR/H+R8Gb4RuNs6Ti3Yjy+kVWIUl4pZBV6y83H7eNI\nvBd+\r\n=PX6d\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1600f4154da0a0943fa8aaa13dfa15c79b0ef89f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.265ecbad5.0","@material/rtl":"6.0.0-canary.265ecbad5.0","@material/base":"6.0.0-canary.265ecbad5.0","@material/theme":"6.0.0-canary.265ecbad5.0","@material/animation":"6.0.0-canary.265ecbad5.0","@material/typography":"6.0.0-canary.265ecbad5.0","@material/feature-targeting":"6.0.0-canary.265ecbad5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.265ecbad5.0_1582664458309_0.48565973396289563","host":"s3://npm-registry-packages"}},"5.1.0":{"name":"@material/floating-label","version":"5.1.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@5.1.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"8d654b3f2ca98248e5a73a63feec8f4523c5ab4f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-5.1.0.tgz","fileCount":33,"integrity":"sha512-5EwPiBa5A4Q678tNWdkkBGDdSCDzudhVgBtRiA/7xRo4dHXiBxX5bhE+RHrF3ZQyEf6fsShspqwAFkTA1EaplQ==","signatures":[{"sig":"MEQCIAR+yNY3B1KpUMBKvR5Hyn0pkZ7tYPkMc3N8F3yX3J3fAiATTo8GeomYfhhBSaPw9sjowRqD8xovRIcvgZ0sUqscEA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":185495,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeVZPOCRA9TVsSAnZWagAAxC4P/1saji1F2BjZn3PdpPgO\n8npOWNbQF1lG5xPJa2GqYbgCLDkhENyR2RQk+csnhwp/lUozgpt8dR8cXekt\nUEIVDhQe9N9c8x2nS+hXvXXz5s3H6IHD9pJTOP6YI6CrjqLQcV0c9mgS6Pdi\nrvpsFnr9LtiKGixDcm1kfPv3i7jFqnE8D1rU6hsdL/BmOm61Lzc01F5r7H9V\ns1wC+JOGoZ4fzil5qzWIj/zu8m+r7C10uS4qKQXaOav5+ZKBmdLtgV8IUmaP\nhAIfxVnQ6euWF/oQRvERp8DjwdeHYWYPJo+777wUKLOMxt7IiwCjSDH5uj1X\nQdMQrkBi7tiMk496gwxUFuiNwvTEjx8brEFcF7C9ySyZTY+FViFVFu/4e2pD\nMgBZFuzmNwPvXTtycmmQ+lAEDn2PfAZ5jctP/N/edy7eLBqIqPDa2Ta5qE3D\nmhBN28W/IH67SEBWCmnw4P6an4hatLsO1EbqZIiJOY5WQDZfJ2oUQELLC6HE\nwLhBtEd4hwrIAqokIZRXOAwqW9pRETweFKON5c+0CTCdIz8ULH/AaTMB4x0/\n6E9I/Uy+coKf6219ZY69czGVIXTv+ox3FvdlzxjkPn2rTQmOZSO0JSWuA1QK\nU23BghA1Vpj1Hv+6WcGVPcxnm0RojTq6s3ExmDjWBu4MEcLYObpvBaobQSLq\nUS+y\r\n=1l+7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","gitHead":"2cf87456f7b6bb4803ed5f1b18a06320c301a1b6","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"^5.1.0","@material/rtl":"^5.1.0","@material/base":"^5.1.0","@material/theme":"^5.1.0","@material/animation":"^5.1.0","@material/typography":"^5.1.0","@material/feature-targeting":"^5.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/floating-label_5.1.0_1582666702055_0.5294634506973703","host":"s3://npm-registry-packages"}},"6.0.0-canary.2cf87456f.0":{"name":"@material/floating-label","version":"6.0.0-canary.2cf87456f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.2cf87456f.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e6b2e23a2c74c19450bc7fef6eaddc2b387dda23","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.2cf87456f.0.tgz","fileCount":34,"integrity":"sha512-YTkBvzmcj+wjqzmtrxR5HwWKcL85MANIpYICXfb5VkBEZcU062c94Ucnnz73oZz4/Huhm5I4LvGZYctwV2Lu9w==","signatures":[{"sig":"MEUCIQC29snO+UkExmXMZ26m7aXg15dSW8oBtXBezDglYhi4uAIgLbf8GzI04SwldiSksFRybe2sWpjyraOaxmNkYd03Hwc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":186022,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeVZP1CRA9TVsSAnZWagAAa8AQAJ6l9051yFQPjLVQSUye\nvJMNOU2gmlk02ZgNxtZi3b46MUa/FZUh3ZYUU0dRyS45Nc91uGDKT83iXJi9\nDpfrjJ4zBvhFydeVO0vVT5epdgXaZh2JRXIJGg27M4BO6azidz64S6rgqIFw\n19jGu9MRYoblT9CjxfMsGH1lBtSdPT5UOvvC83339L1+pjjZd+wbRcONmsZo\nzele8Ls4l9bu24vE/Xnso0Oiax/7vMlIHdK5wZdgf7vQxxO8wB8uHNMWDMhV\ntpJ4F2uckcny/SQK+sgvj8NaODQE5GoteE0wsyTKACcT73wdRaKJwaZVIkqo\n2e5ZaJd7141PRS47PWvJKa1Hu1pi9twqSvGccZUjsuNu6V9a6sURvKE7clLo\n0dekGcz13IFhasXOw5sKlIuRhDZt747WMSvGlj8PkA1UmdEb0N3y/wT1MfiQ\nG9ylmNQJAG6AqAyXCPg12A5GUWQVfcCrfKJhfGrjPPd8eDZgBcN+PgcFnNE8\n+hrIHFJ08dMxDvqyM5/w2bA9e60OiusPD6HEepDTSv5Vrc4OFc9AR/lgJGQr\n2uCKXsarwZEUPOv9eEVl7C9GHmZ39gWIIDN7LEOXW2RA7Q7mTwlwihdn/X/t\nVw4behv6ZBFk7L+A418IoZZSm7tai9Im0EGs3bn8Z/XCQIZ8s7w8XXarpwHl\noS1d\r\n=9keC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f8e328b58b1986d1b2e248ebeef472088137ffa9","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.2cf87456f.0","@material/rtl":"6.0.0-canary.2cf87456f.0","@material/base":"6.0.0-canary.2cf87456f.0","@material/theme":"6.0.0-canary.2cf87456f.0","@material/animation":"6.0.0-canary.2cf87456f.0","@material/typography":"6.0.0-canary.2cf87456f.0","@material/feature-targeting":"6.0.0-canary.2cf87456f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.2cf87456f.0_1582666740666_0.6128744556803853","host":"s3://npm-registry-packages"}},"6.0.0-canary.781434a92.0":{"name":"@material/floating-label","version":"6.0.0-canary.781434a92.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.781434a92.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6729cbd2fef34f3b305b79892c759faa7276a73f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.781434a92.0.tgz","fileCount":34,"integrity":"sha512-0Z+hkaR92jG8xScZTYY0mVughO1odKIvQo/olymw2CuXEPVn9h4VFvq+7NK7/1JQzIw3bv3M4hYrB6A9NhYtZw==","signatures":[{"sig":"MEUCIEtAN5MqrkzeedWTiAoDncQk4sihyY7VZbANCkvKI6J1AiEAo0RyEucowjKYVxvxEmi9BhAhDdOm4YxJvyNzMnSxHxs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":186022,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeVa2KCRA9TVsSAnZWagAAhtsP/R+7GCRSPlp9ylL/avR4\npdlJvNS9GC5yvUSbmdOtm8XPKlNWX4KPLQBJsKQ1q4BEXEj3hJW+/ZxD68ri\nXZ7gq050EWW7Pw/XF8TLQjJYszPUVgDrgaD0QP/0bM70kliS3Lck5HmwhSqJ\nEo+ymJF5H2MEdRC6w5Jooy6z33Gt5gX1EbAlmlvssB12ZaWT9PlE5ztWI5NR\ncXfnvrR4WQRfDkQEpl9FWkl9RNdx3OoZxoCgV+xTt3XKE+BtPRMVjulPIQ1t\nyJZPJPtObGQK4dPHfenBXmewTBrFzmq+CpBi6DB3ApTTP99PsQs1oELTqnje\nc0UHZJgbUnl5E2xvbSZgZay5vRAoxr4PS0SBo+a/tk5s9SuD5rXLif95VUxr\nBRXxdWlfwFNY9/xKe8Iz18UbbsrWxSbDXeanCByTPaCurOpiTzxljX1EOwzh\naBJwz5oZWoRzMuD2PJf4e7/aLnBsJX8a7Fb7La4mBRqGzZoOb6g8gLcx4Dol\nBAl+j7VEQ/zcSuLWSUkP2v7XpjPldMx+uN5QW31bWv788vfUuIhiUmQnXL8u\nZ57uR8ofB/Mt6yQoLJuJl9utamz+UP2DW8vT+sb8SbUiGiqZ+2l94F9KRayJ\nlqFzSb9k1PTRJH+V/rqaZTxnKlk7UdcihYTLm7tzisJo4PVSA3JCfT6q1sWZ\n4PeB\r\n=FJ7e\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"550f1e0ff50e94ece83c72bc45536fa64683d7fc","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.781434a92.0","@material/rtl":"6.0.0-canary.781434a92.0","@material/base":"6.0.0-canary.781434a92.0","@material/theme":"6.0.0-canary.781434a92.0","@material/animation":"6.0.0-canary.781434a92.0","@material/typography":"6.0.0-canary.781434a92.0","@material/feature-targeting":"6.0.0-canary.781434a92.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.781434a92.0_1582673290463_0.6559407824262362","host":"s3://npm-registry-packages"}},"6.0.0-canary.d6f60c98b.0":{"name":"@material/floating-label","version":"6.0.0-canary.d6f60c98b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.d6f60c98b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"43dfd9ed7ff658660c15dae0bc7361bf83170213","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.d6f60c98b.0.tgz","fileCount":34,"integrity":"sha512-aIVeLECSu3xp5GPxODk20FG6TkJ/p0bl8/2oFeF+8NtHChdK2cyYXC3D+vMKv2y3IckTV9QqqeVfSF/IVfrS4g==","signatures":[{"sig":"MEQCIFrcYh7BNK9bbs7vlRbqlCXZ0kAP8F7Sj/WEK44j5shyAiBerWRtCpROFB+IlKqcmoNBaAbESo7irhJqpemBKUyHcw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":186022,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeWY4/CRA9TVsSAnZWagAAXY4P/3WhCe+PZ+fbrvNXOQVW\nquMppE7dotNyHAfMv1KwbY400pJ2ZEsq65iz7Jcgel30fAZpEvn1wfFy3+rh\ntvgda8xSVvhF8MlJTsDbWESMJRlNZ9Xn6whk8ikZj50pSLaQplgcoo5RK679\n7HvF7HUngVsPX9LH6XDByJvnHvqrXa5eCwVfiyA5J4Jnpin+ZiGr9COPZ4i+\n94r3q0+KIekv6SQ2HYJIEQUDTzroY8YAYmyXMxOaOBuiTWx7Hi6W+Px0Op6l\n34AnYAl3Ugrwr11i1KZKWspMkkqbfAH3t/aecsFm3I26CIji02m4gJtmK82r\nqKzDYoBMvJBFiZ9ucXi8DRd2hQQ2G98K+4s19juQhOfGb1x61GH4Odlj/tEH\nrCW/cNWabeXGdii7HFGyewSNEoKAKMCCTwQVQNHEZ5ILWPuyjyfJOvXITe+4\n5uMpNGrgZ3okeisrhVcX8FhLL6sKdRzH0T4uJ1hRd43Hb8LCpKHQaH1QMjVs\nWLG34BJG0geK2eOgPQEMa1JVp31Fze63+REm+uKNVajZQkVv43+genll6hld\nKkQ+IKO5/Y4mM7ml5ZrXCzpiwiFqYxqb9JtoxMMRFPor7amDb7mMdPLHWK/s\nMG/4K/LOdsEJ5Id+6GxqCEjUeC3SJfAhSFv2DiVa98hSdRQ+Bpu+PNQut4+5\nRId/\r\n=GqA3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"51319f628dc2d5447017b393bcdda8ea48a93896","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.d6f60c98b.0","@material/rtl":"6.0.0-canary.d6f60c98b.0","@material/base":"6.0.0-canary.d6f60c98b.0","@material/theme":"6.0.0-canary.d6f60c98b.0","@material/animation":"6.0.0-canary.d6f60c98b.0","@material/typography":"6.0.0-canary.d6f60c98b.0","@material/feature-targeting":"6.0.0-canary.d6f60c98b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.d6f60c98b.0_1582927422844_0.3754426134700908","host":"s3://npm-registry-packages"}},"6.0.0-canary.69edc6e28.0":{"name":"@material/floating-label","version":"6.0.0-canary.69edc6e28.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.69edc6e28.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a266a1ab8adba79552332e0df33b0d58be73a269","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.69edc6e28.0.tgz","fileCount":34,"integrity":"sha512-2TzrxUFDl5mRGzSksPYt7avMVqVCvHW9ELTTUsdawslK104An3VoJpm+AxYFcLaY6L4uZbVZ2dFl84xf5KqoTQ==","signatures":[{"sig":"MEQCIESpvS/NCnCJRXsBc/TKF33w9t/X5hJMSpufRvul65ShAiBxpSMR4MxPKRo6yD9Pzh/D5VnC0KEpLI3VO3ZHM3PBSw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192340,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeWZBHCRA9TVsSAnZWagAAZi4P/Rj52a0lH5ATBPgNg6B8\nHJPuPUT4AldRNLOzsTK0wfecSAM49FPuRT2FNL5ZWaHmIn5+5NcezsL66ZIy\nVZoCtzt5NR0SqeDkEq/ozfzrW4/WFKoe4EhW37OXjnWq6MuQoMTjsPt+SahR\nzJHkqpcFlPy5MBOlLMm35ByJltgHxIgfGlVxz0ty5GEOWczH1VHo1z3+NRc7\nkftJpQEeD+vFiO9yWmnYNF13dxSx15yy3+IbSmS+2MPSV6Q3p3Djzu/2z4Hk\nYQsrqpSQvprs8Bf0MCiE7f7BMZTjI/feLwLMsyKB2gUJs5TuAsyz4QkHv8+4\nfWMM6HMO7SmmzrEMEZ4v0DBpNOsWiP+4opL/IvLbiO+Esd9xTyMVIWYk5L9S\nnairG8aZKD20W6MVVxX1QcTotTk4b6slm4NGLFzFJHCVOZ0cfiTd0uUfm7QC\nW5vL+ZgpZ6MiIrZ8OmLBbZrydV2kRq5iq4b4GITstmAv08jEp5wi0Vc2G0t9\nMaeIwdYq2dAAsulZX0hXfsXRCKyyB+G5jXdx0mvsbE8h1MIuhAz+30B0wu9c\n9FvWfmuqh6yJ+iC8EBlyPr41a8T7HKwnar+R7geMdCiBg2WR/WRfYGFss23P\ngn42QqsLKXKnnGB7BDLymPI78DLNOKTBoxI51Iu2/t/GHTHRMYZTYiGAVSt7\nHw4x\r\n=ApXF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7394312b46cecfacb3ac97cf147ed16fcc42e538","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.69edc6e28.0","@material/rtl":"6.0.0-canary.69edc6e28.0","@material/base":"6.0.0-canary.69edc6e28.0","@material/theme":"6.0.0-canary.69edc6e28.0","@material/animation":"6.0.0-canary.69edc6e28.0","@material/typography":"6.0.0-canary.69edc6e28.0","@material/feature-targeting":"6.0.0-canary.69edc6e28.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.69edc6e28.0_1582927943142_0.3613866356238131","host":"s3://npm-registry-packages"}},"6.0.0-canary.9372e4939.0":{"name":"@material/floating-label","version":"6.0.0-canary.9372e4939.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.9372e4939.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a3c382d23d1b1dfd3210bdb1e2418e29f9fc1643","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.9372e4939.0.tgz","fileCount":34,"integrity":"sha512-n4D4GjOi3WkAYLvgws36jjmW4NbQs7SifwF5KJaS6nOjY8+Ruyyv24//swo7s0tUaRB79+7cKtkxhrM8AtOGHA==","signatures":[{"sig":"MEYCIQCbQrttoyjauPnSyTXSVm03GcNb5YvXRvWeNkcVQH8fYAIhALjbUMD5K+5mep4Hq+RJgHYUUY/pUy6lS6VdbbNmCsxE","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192340,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeXquqCRA9TVsSAnZWagAAobMP+QGwPL9buOv+0d/jOexE\nse0YPKlrSQHx7IkJXab1ImKzclnZJC8GGGI9K8LcztVAPrM/DetrzlUTBvz3\nJQBg9Cl6TXhtlMChqe03WAYzqpjqNWj7spEqegaQrBJ9OnDL8kEkleGtQfwP\nHocIDqSbqAUIG+mb56MXmXxpE0oiLdHOOZN8iHjvMEnxYT4lwalAb5UsWrlN\n3RCoh4brZZHwriQcRA3gmeqVht86vF+XCtKzSPK0QkFTvB+/WX6rClOZQvgi\nEUKJJHchv8qXa3ccMYjmHwJLpQ/uq5sDlYKC3tCePImr1aqeTy90bsP/3a4k\nkgEpgFeyAbuvLWwcfaihSJ3nDMRrGt6Moi/p1Zl46qunN6qBRhaQ4jos2Bac\nB6lmHhQD8K9t8PLmHo4tkx/kqbDAp6pv3wJ8cr4T2/SkzCMhCvN8jweQfgw6\neVbnwWGspADUxgCxlgz/J9nIUBeU2GngN/9NpvUF0Lmw9RJzbMp4BqPXpAF2\nOlhDhr6i6PwBfp4N1lPGOfRchlt/1A4W9zSC1pcYAcBFpsDRBbc+WIGCy+j2\nc/QlA4E65tVFuAoDgHOOF5Sp0AN46mYhvDokvLV3eUwVCE6+e0pzTx0u+aYC\nec5A4yvLisJg8LooCkhQeaK7Xs1YEY5DsysKlCKRWw1m8Ap/9sVr+6GDfqMr\nONqa\r\n=q6Vs\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e54df7e88218f93cffe81e63d7e28371126d5611","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.9372e4939.0","@material/rtl":"6.0.0-canary.9372e4939.0","@material/base":"6.0.0-canary.9372e4939.0","@material/theme":"6.0.0-canary.9372e4939.0","@material/animation":"6.0.0-canary.9372e4939.0","@material/typography":"6.0.0-canary.9372e4939.0","@material/feature-targeting":"6.0.0-canary.9372e4939.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.9372e4939.0_1583262634363_0.60481747289075","host":"s3://npm-registry-packages"}},"6.0.0-canary.9cf5e9842.0":{"name":"@material/floating-label","version":"6.0.0-canary.9cf5e9842.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.9cf5e9842.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"8d7a3daa54da5982456c96c00f47d45dac98d47b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.9cf5e9842.0.tgz","fileCount":34,"integrity":"sha512-7c8oo54A5TVX/AryTaZTN+Q3077yNAAIPrRhIO5fQM6rvm4EbjjSEx66Wat7nN0oJbmYsy7DihhKQvGgyetiKw==","signatures":[{"sig":"MEYCIQDazwoMqNFmtOF4D3lSJnYDPhJFWZ0LrDoEd/n7l/vRlAIhAIc0Ir9bxAJ3TynyGppMV41zo6J3Cd1D1dDo5cqOdHOg","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192340,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeXufVCRA9TVsSAnZWagAAmW0P/2SFMQ8gpKBHPfSXFay3\nv0uLpLGeB/fXHVr+z4jSeAw12EuvS0XFOVb+BKGq7d7LiJnCeKkS4lNorcLx\nzlTzo/lOo1XAA0TzWdqIC8N/NqZX4OqDqgUHtIdF2vzY3/djgHtYMgPqEdEr\nYf1ijwoUWf7HUTF3RKHuY3JXzAKXwHrpCZUWTRHRhuZD5FgRNLq0MpS6BgF0\ny+LIK9eI85vN9UiJHauPR8b6F0j0k+r4qNkxUT4nKqJ0N2QXAyGFmxEeD5YG\n56kZIabIok81Kpdyn/Wu2mNIO4T8rNAucJE4yG3dk+JMFK8+5J/DXE7N9Rx6\n1KQifnWvTx+/Em5CiOtBbYe4uGlurwJIxGrAogOibWz7jmxsy4WHlWFj4GEa\n8iuFbnk/VPEyRH01J5XHSUiUaA5ioD2CLm82kBLg4w/XvNH/xM8ArhVNuyCX\n0O1HfP7a5qUh/sZsXytlYXV5dR9bQH0gc3Iz+3L3v317DLrlNifAx2hTqDRq\n61YXQbXRp/gR3D3dEDNwpxC5FKoKQbF/bsa9vQQHpwE2HT8BlBPw6DUIMtEb\n+O3Yv7p13vU9RFGDiuAzrqC1kigj7kxnZ0oIEJ1L4gCCX62irD+gfjBi2WyU\nbfQWDpoRYAuGjTZndHJCAJbj3bdIS/MDxqrO5B7wCt7UIxyerSQktufN+vfl\np+ts\r\n=i6P8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"9ae3d1faf8362261d4cadb5f9386265501b7f143","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.9cf5e9842.0","@material/rtl":"6.0.0-canary.9cf5e9842.0","@material/base":"6.0.0-canary.9cf5e9842.0","@material/theme":"6.0.0-canary.9cf5e9842.0","@material/animation":"6.0.0-canary.9cf5e9842.0","@material/typography":"6.0.0-canary.9cf5e9842.0","@material/feature-targeting":"6.0.0-canary.9cf5e9842.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.9cf5e9842.0_1583278036814_0.23535726479631558","host":"s3://npm-registry-packages"}},"6.0.0-canary.3657f8863.0":{"name":"@material/floating-label","version":"6.0.0-canary.3657f8863.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.3657f8863.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"630d70ce6e471a8e81504dc116232268c8243e1d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.3657f8863.0.tgz","fileCount":34,"integrity":"sha512-lBUGAEACG/1USn0lJBR1g1oTHD5Tn3mCZFUgyN+IkfNnxpJxeTkuHTkHNppmWjyQcbrf1MoNiSqXwr2bXDShOA==","signatures":[{"sig":"MEQCIGh79+NpcLOsyk0YkKCFQncZHVwAtYfMORs2g3ray2TpAiAbIdUga1YGqcyIkRBl/5SRoDtf8XinP3RAvIsPSA+plg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192340,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeX+j2CRA9TVsSAnZWagAACcIP/iSDI0SVy8aKogxIbGDn\nSV1idBzXmRAtL/dK6tuedDbHcJ1HDI9YuQXFZS+1P3chJaDcHhJJS5ykATxb\nmMD0S+RTw0BkfSYdEQ6YLDNyq95NHZyJO6dVRHJ/b1/lJGXmwFXB5ygLEwIL\nzPZtwvgGlqbPDvffDqnLU2GKlcSsTCrowFAJY1Q9fgOZvKT41rmsZW64IvCt\nG27AV8cxJN1JE7vfu+7lohLzqq5gqN5pzAHItikQORrrQQAPUbP0Do5Vxvzm\nNc2j2YDajqdWyYXB8bnvZxHtV3YD1w88jf3DGe0tTFFBuwyl4E2vpkYCbHvZ\n3h+NFV6359EwCSuUXETRV2ffvlX+ioCgEBT1cls/leGJ6/dLE61cKVDgb8wZ\n8zS4bG+gblhjgA248iQzem/2LwlrYrlYNDTrd12xqr5hiMfbPEIi8hRFw2CS\n0E90UEn/fxrotzfAygBsVUXwWhyLXI2Io85noe9FqWuxpRhdSDlU2tdXxFGc\nrvTjN1ihSASJv66Y5xP0/Pul/FX1Qxj9spIFqvhErvwxtZea7DPFHXylueT9\n1r91Zv6gpKyaPa6Ff+HTx+Uu15LrTLVIIvQ8y5QxTtYdfC0x6TEplka2bF1f\nzDBc9WMHYEbc8QAk4cWs+BEpRCaDjCZxvMGttcw3+qQ9wGBQC5uUjdOs4cBY\n1elQ\r\n=Tjpe\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"4075a5619b546f352f6366e5e90c61777ee28f5d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.3657f8863.0","@material/rtl":"6.0.0-canary.3657f8863.0","@material/base":"6.0.0-canary.3657f8863.0","@material/theme":"6.0.0-canary.3657f8863.0","@material/animation":"6.0.0-canary.3657f8863.0","@material/typography":"6.0.0-canary.3657f8863.0","@material/feature-targeting":"6.0.0-canary.3657f8863.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.3657f8863.0_1583343862027_0.8794658666841","host":"s3://npm-registry-packages"}},"6.0.0-canary.98b843417.0":{"name":"@material/floating-label","version":"6.0.0-canary.98b843417.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.98b843417.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1efbc69675583df1fa660c82253e2ebd5f4c86c1","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.98b843417.0.tgz","fileCount":34,"integrity":"sha512-VW2sqA820FcDh6klsB/+FnvucQ3F6l/O+hi6+50H6bl3/xrd8x0cgoiTvRiGBCDSB/zsFLqu1HW6mQrdL48D1g==","signatures":[{"sig":"MEUCICJ2RAkb5E102AitdaUbkiigwTLvBqYjgugXvMgzN8GkAiEA9EJgyNCA3a4Cz5t54tNxfIXd7IbNi+I/uaymLCs5u1U=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192340,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeYUVxCRA9TVsSAnZWagAAVEgQAIcU8Ol9soXKPK/21K7R\nUS4w8l8RVZnBchUhbIt2TlMaEICA99nQgQONnEpcdIz4YtnnKYXJP4PTQ5+q\nAVT0q2bN71lsLzIL6ZPdbNA2Aai+aCD7YgqJR20j5qOU5XJDz/B165iGXYrl\nCrahCGaa8fmZVZdM7n+H938sNikFgY3SrrQJZHjHo2GqiVEM2V1YlabrWHYE\nlrxcsnsLVWmbMcXa4pouVWdNjPCs4vAOYjdkpbZ+j5lSKe5y14LqIZQ7Y6Th\nRrX2gUMvTqw3W6y+gEKTS0bWcc1RX6HP1rfZrMSs+pkOAaB6IALwEBD0XWve\nov0wXYGJ/ozZMTSKRgbBkh/GJ8NUYa2M+Qla0rlXWtb+rsmQ1IfB0K+VOER4\nZ1fZsSdrvGvNTG5Tfo3w+MYiFO9CXe9jcZGvB3XYysmmWLieZ2buHqpkI5Aq\n/j/0pvIudJyV5XcMM+XwCnZeGIOume4168P1rm+VO6aezYAVCf2NjyhimAo4\nzMACih2r8Qj7d/mzt3d5cpjDvgy5eMaOoMFqSeW4/KLPWWSukucKtcIk/cK8\nf1xk14wEqlC7fcxi16b8rQJiNwCLDz4eV7oTitRZF7PDnIxcSJW4qXFVAXdW\nWy6s9KjopwGGO+R/fZkxy33w6T4BS7EB0vTjESfydkZkPQOgPvrWKJZZGO2W\nS/hm\r\n=pJpf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"68f2aa7dce5bfe926cedccaedf1c0c98166d0bc1","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.98b843417.0","@material/rtl":"6.0.0-canary.98b843417.0","@material/base":"6.0.0-canary.98b843417.0","@material/theme":"6.0.0-canary.98b843417.0","@material/animation":"6.0.0-canary.98b843417.0","@material/typography":"6.0.0-canary.98b843417.0","@material/feature-targeting":"6.0.0-canary.98b843417.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.98b843417.0_1583433073503_0.1534652494934272","host":"s3://npm-registry-packages"}},"6.0.0-canary.17b9699c4.0":{"name":"@material/floating-label","version":"6.0.0-canary.17b9699c4.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.17b9699c4.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f75798ea71b557e96d8ee959196338cd5ace016b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.17b9699c4.0.tgz","fileCount":34,"integrity":"sha512-4QQgdKyYJFMgatWACvnzzo7iGFPcgW4igJwMQMbSaYZV6G0KmmDD9BTJ+oXcmhzsHnOvk4K2xNgf4Rbz+XKAnQ==","signatures":[{"sig":"MEYCIQD1Xtpjr/34RONXUeUn6bpRDzSFjydIuFJbhnPZkO2NiwIhALPbfe5RwSGSsMu7pcibGqkvE93YFBc+R5NSUAU57poE","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192340,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeYVF1CRA9TVsSAnZWagAA5okP/3MxMh8aOZacbn/5eFOv\ndIUPhAYKXBwO7IQvNvEOOlOtnASMrSXViuySyW3DQ6ggZtl5pTQwjPLhhska\n0Xf68HmCs4oS8+/WL4suHocHq8b6uDcnnfYhyyIy/efiAunjnh9Yfa1LCY4A\n6Z7Zo2RV3dfrfIz5KOmq8COndZq5yreVP1w7Y6spL+D/j1yk+nzfNN7pynp8\nVE2bRFXWeWqsrsAVlQPTJqks8xgyfK4XMZw4RHd+6BdOmAzinCF0D78aYLdu\nNwFA08fVBlx7U6Gfd4vyP8jOOjqI+bf4G1RBgKVOMZgC7LVYnDHifRJzOEEl\nX6ulG5qtBvfoJwcAbzVnOsuaQMT9WDW6ENh6jHSuNlw3AY3eQLhCRWDzOmC8\nYUh4AW+Sqo6IxhppckBq5mvEgALYEoCMWD81iZ9tKqqrBVcMWZpItlYPRXLa\ntEk7gLDMCUGOnlugKMK1VdeRojBwbUFcUMif++0SP+c7J9F2KocS+i3LH3jK\nX9Nkq1OKGCyX4Fk6LqSbmw9UokRx1OKbrgsq0cECHisDuw7IGqkBTA1Rby2P\nCw4+b0Mfd7o7grnthWibnQaWob40yO6GDITzpX7BPOslsVQcAA9/70deOZQU\nAASqMhIjNrFKRke/dlJImW5Zn/tKTBxMycIUoHN4XkbpFe37J0/BPfXXbNkD\nrYlP\r\n=5LvX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5cc71188279f7fb4c0eb3b0b6b98b59815539374","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.17b9699c4.0","@material/rtl":"6.0.0-canary.17b9699c4.0","@material/base":"6.0.0-canary.17b9699c4.0","@material/theme":"6.0.0-canary.17b9699c4.0","@material/animation":"6.0.0-canary.17b9699c4.0","@material/typography":"6.0.0-canary.17b9699c4.0","@material/feature-targeting":"6.0.0-canary.17b9699c4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.17b9699c4.0_1583436149587_0.3635265085948487","host":"s3://npm-registry-packages"}},"6.0.0-canary.6ee035572.0":{"name":"@material/floating-label","version":"6.0.0-canary.6ee035572.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.6ee035572.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"33bcb6f254c5da349eb86eae78e2a7bce978000a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.6ee035572.0.tgz","fileCount":34,"integrity":"sha512-Dtixpt4PjTUQYhNWCBpSRaV5M2rvLE+M5exA1YiS/BK5ONERyogNxel/9s+cpDO+9GmfZ0jmW376muLm9/Uegw==","signatures":[{"sig":"MEYCIQDLRi86doT4FtHr8o00IZrs+DNlZDNJukwSntoaWwAcKwIhAJz2LRS46pQiRCTXDAiq5hkX1Z49yCnm0OkN4DZnG4Ji","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192340,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeZnMLCRA9TVsSAnZWagAASOwP/1loi5UP1BeWiY95hB8J\nFFuAgF7IQ+6fp1ncKSUcvA3w8kJ6WFOVgck7aqD3dKg3q579flrnREgRywTv\nFFdDPcjVDUyPmDW7CtHZsrQVMTJQVcV3dPAntb5Kf8VPPp64DYchXKONdiGr\nsFwScY6yOEMIuvrWU9N5oikzRprEBmu9WqoyDFOATQU0XNnfgNEOy+1El53B\nZya+fjBriOBg97wiRWD5orJtgA+UMjOf1LBmPJ4B0HSRPc4jG3aPf1Gng4kZ\nCGmOOVXsYj6IIwXxS0loKzodyFMS1wd6yQAdxZ6flcvmxJoG/SwDvJqvZFm8\niy7hQmgWb6uA/0rRohxwCkWPzQtKHpvYguqmOp01CvCQ8TNnpJLnrgWGbZJc\nqizqFofPpvBYHvGxQ+ENKIfrfkBhJcaZThqEFvkPBH481XF/VHod9AA5yL+o\nNbEXrcplA68TWHhsp/uXTeuvyFoRFNd9D5PCrXZSfgCpCVV+37b3v+xE53W3\nkwDmNPm+fOQ0EQ+qK5WFgRHpxkeQBzSq0ijZVTV6RO3adVGqFt1E6T3JlXWB\njQPHVCj2FHEPp0tW6DgpgaFmQj9+t0+H2xAcC9/550qovmHHWBQ2EfU1m52l\nNKrb4Rem4dPpzYkB1Tizql5i2jWjwn4vzaeIcQQQ7hGrB0l742/yW18ZM+px\nXxA+\r\n=NlSl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f7d234455251ae34ac1d568b4654bba0bcadc57d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.6ee035572.0","@material/rtl":"6.0.0-canary.6ee035572.0","@material/base":"6.0.0-canary.6ee035572.0","@material/theme":"6.0.0-canary.6ee035572.0","@material/animation":"6.0.0-canary.6ee035572.0","@material/typography":"6.0.0-canary.6ee035572.0","@material/feature-targeting":"6.0.0-canary.6ee035572.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.6ee035572.0_1583772426888_0.8363161494059366","host":"s3://npm-registry-packages"}},"6.0.0-canary.bd33cb56b.0":{"name":"@material/floating-label","version":"6.0.0-canary.bd33cb56b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.bd33cb56b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ab56bd234527203df62dae43356eee8247e23064","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.bd33cb56b.0.tgz","fileCount":34,"integrity":"sha512-NJ19UiP1kP/svTyjctdQtm7YgSu1WY++u7uJDKNHFmpams4T6n8GYw2JbQ0/DhSDBELFcqCFIRFtSeIAYLzeEg==","signatures":[{"sig":"MEYCIQC30acLBQ++Pjo32+DfATZojHIZ4uhkAUQt36i56ArNWAIhANBvMoBqWp/qvZDJK+Afd9QLYRHfMTsY9cm/hu01wD+R","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192340,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeZntQCRA9TVsSAnZWagAAZzEP/ie38uc0gb6BZyLyXbWS\n3f0TspDcnU8OmvIaFMkPivDfp8izhJGzza/v6b99mq+a0u4u5i9Eneq5TC4P\n9rd9hlQjN85mZLsdJhH0Q+P5kDbGRHt5kwd0q7m58sw81KTU4doJetAhKGUJ\n0jHmygRThuNksEswS2zsji1JUXvigGsO/C/tlC8W/JQ4qeKS69CnlJ8vAPpI\n/94MRv9kWaZXZGzrg4wRrLWmOfaL93mzNlfMwYimTMW4FrnZdpm1qZ+wj9M7\n6R0yLbD+lZjRr+NGqzbAwGQVJnUnlJ//VxCrIwCfQdXBFcECEwVsRiFCTCQ/\nwoSmFEAUQWWCKxEPE8RF346X/74472u9X9ru0jNFgLjtl5O9ifKZy2wYMeVZ\nEy4YI8t4NKNu6yW4Tx4I8GDdZ69EQdwTOFakSeWFjTtTI1hsUx50sUz46Pre\nYTSPOg2ETVHZ6lADKU4l3+jJC1i/kLUajS6iWptOZ140BDw8vXWkyCX7zqPq\n2QciIu9HVkzNguVH4EvozqgMcTcur1gxix9yWz1OLghOWUUlkZPM/ddaSYWh\nooU6UQkiI/md707o83VRyo0V5ZeKxwJYmEmktDsvWV83npg/htumGK1LbcCj\nWKzi7dk6/EQNhAOFt5hljYnyDoyEewKk1M3whYPBVzlOFfFe8GyvagkLm4ac\nLl2U\r\n=npet\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8829857459a9b7c92653d2bed2a8ad63b58b672d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.bd33cb56b.0","@material/rtl":"6.0.0-canary.bd33cb56b.0","@material/base":"6.0.0-canary.bd33cb56b.0","@material/theme":"6.0.0-canary.bd33cb56b.0","@material/animation":"6.0.0-canary.bd33cb56b.0","@material/typography":"6.0.0-canary.bd33cb56b.0","@material/feature-targeting":"6.0.0-canary.bd33cb56b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.bd33cb56b.0_1583774543633_0.4322291887722378","host":"s3://npm-registry-packages"}},"6.0.0-canary.26c049afa.0":{"name":"@material/floating-label","version":"6.0.0-canary.26c049afa.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.26c049afa.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"739ffe4f64c1a1c63e38ad8bbf8cbbac389ee971","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.26c049afa.0.tgz","fileCount":34,"integrity":"sha512-ud5Ffo8pq1IdpARjBDEA+S7Z1amnGjgYxAY9qptZGkvPb5xqBDQRshmUUgsyBfKOfR7FxFQzghAUIsTyeIpquA==","signatures":[{"sig":"MEUCIQCTPFiyIp3kdaFsJrL1uOmHN7FQbbu209ULEwPnQuP98gIgTFlbXxMSZ8xan8YvfDem6+l1XUopxEZ0KjKrmV406SQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192340,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeZ8g9CRA9TVsSAnZWagAA4XUP/1jEBf+WyrLNPNAVCY9l\neBBJwh8L/eu5llUwrwHLfWcbgRxFt85ZWij8upEYeej6WbV+udOK+U5ih8wU\nS/pIH0viIoMBQhJm8RDMuw9EVvwEgDEeBnGYOXGusl2hFHd2CYy7Oegzy8ni\nWcpi4i5XfV0EWkIvJlbRsJJshzqf75+6A2xKMXzm/3EtiIcH2DeZ16W53gND\n+zWlutr054DMDmlHXz0ol9KEAez7kARq+srFbMZ5N7GvJeILG7q1uuLb88Ql\nGnvNYxOTfBndhjF9pXHiPKytbzWH+XJoo9AzsoG38Lr8X6s0IDlYbCsjvVFS\nsvf5dLTo2PkasXUVhoiYzhpH8pZAVSYbRk27s3FjykecmLYJRTi3ceAKLjv6\ncV/C6No5v2kNbABstagWXPnI3RqDm/ENTSgLFcCa9tp/UVexzvodB1gEP0As\n3tXQCP3mNe9yO5sKbJjQfpifCfQQspwH0UpF8mvf9rO5wDtB4/h3DqHNJJPC\n5h87LbvsXWAu3/0hIZlQdCRCB7B1hwgRTha5SOvFz4STJI89AMTYhsGK76Ec\nVmDRgNUYJIJC+UyFdWd76jpKX145UVckIsGB5qsafnqRiLHo780l0Q3hLeoE\nFjG3ZWjJjtlDLj2Az8Demefvmfhq4oViBmMXEZCW/PUqCeEOQPzCj1GxM/mF\nZ6JK\r\n=A0PU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"042ad06994baa2c42398713e57185e4bafc82a3a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.26c049afa.0","@material/rtl":"6.0.0-canary.26c049afa.0","@material/base":"6.0.0-canary.26c049afa.0","@material/theme":"6.0.0-canary.26c049afa.0","@material/animation":"6.0.0-canary.26c049afa.0","@material/typography":"6.0.0-canary.26c049afa.0","@material/feature-targeting":"6.0.0-canary.26c049afa.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.26c049afa.0_1583859772463_0.2233422939613423","host":"s3://npm-registry-packages"}},"6.0.0-canary.1db5c9fc8.0":{"name":"@material/floating-label","version":"6.0.0-canary.1db5c9fc8.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.1db5c9fc8.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7408e0eb246be90dde10d9556cc13f4354d8ff3e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.1db5c9fc8.0.tgz","fileCount":34,"integrity":"sha512-dXPHn+4r3bJlEoSzyDBDTadElsutXAuydsKHQbBHzUW8EHSNXiFzIqVYCJBDIbOJJmijJoM22RXRr3lEfpni3g==","signatures":[{"sig":"MEUCIQCxuKirgLMOt1PgHH8b825ZYfQI7f7Pxe/OI9RvRCFTdwIgdbGYS6V6cW1Ax+oqU4SzT7v4N/UNfHCqFu9puLESL14=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192340,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeZ/qFCRA9TVsSAnZWagAACpwP/1J4FShQI5PaBbm1QALy\nOIdDSXpiasRQTScoOnzrjbZCpzU+UYt3w0okdkE2u2+KaPfY7enEezgRkXsB\n4ZdeHPlzZkwGDForg42q2nCVzZ50rifFGJZq7aO4s4b074ZwRyrC5wHW1bSt\nieMSCEhC5LklqpeE/IB/rYl4gpEfhzOj4O5ZYXIAg+1zv08iMxAyRrsTOCiZ\n2abDh2VbttDALL+Iik7I6FbzEnBQrW/jTse+Q7bzbm914Jt9koLa7+qR2xgx\n2QWScUUrk26w61x0rER60gdrvtf7oR1izuJt1dXrutXPrjZNzGx221+yfIH0\n9A3PLHwUBaRl2oV3XBAmBP4cOUiFg3y6+B+ZuzID7HBnwmePmZXCZjdZFrty\nzkfSsb5NIXJ9CJ8jV8qSVos46GTKBmuA2z0Di5JMP8E3d7rOZph3VJNSkRJs\nZcYCKISXfzlJPOCNRYbn+Dk4EfeKbbrVHr+xAh538NYcCONXC5dIwZFEWzGI\nsYpVMZzmwEEtxMsdVrICm2der93RHxgCCPHCBD892TGH+smKe887zWQacBxX\nF8J/8efZH2sdMLUmdyqTUuoovQwK/WqV8iC5HPYsSgJUUUdXFjK/C/KHyvB/\nirAmvKBiikx4kuJL1vOugt47h3V/aKQJKy30lg/0NoY8i4sELHkUDTjK5lrJ\nYc7G\r\n=C1X7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"cc90b13bf23ae60f937a981d548d55e3641c74ed","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.1db5c9fc8.0","@material/rtl":"6.0.0-canary.1db5c9fc8.0","@material/base":"6.0.0-canary.1db5c9fc8.0","@material/theme":"6.0.0-canary.1db5c9fc8.0","@material/animation":"6.0.0-canary.1db5c9fc8.0","@material/typography":"6.0.0-canary.1db5c9fc8.0","@material/feature-targeting":"6.0.0-canary.1db5c9fc8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.1db5c9fc8.0_1583872644474_0.307994877705261","host":"s3://npm-registry-packages"}},"6.0.0-canary.4971637f4.0":{"name":"@material/floating-label","version":"6.0.0-canary.4971637f4.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.4971637f4.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"11a811e888cbedec31ed8dab97c99f627338b41d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.4971637f4.0.tgz","fileCount":34,"integrity":"sha512-jjew79+batSll9cu0XCubB5VoopRdBOlcHhQaYBrwKNMLtqFP2GL2wqcx7qE8lQTw5hlh/CVwhq/rKdo06bnag==","signatures":[{"sig":"MEUCIQDGeDrtLPu+JO63uIp8zKIADEx0BIFpS8q6F9eygvJfmAIgUXdZni6UdKOs8Updj3e7wTpl7lEj5xbaBjYlBeH/AHg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192340,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeaBupCRA9TVsSAnZWagAABU8P/RQCM/1L4mX8RwnTeuAS\n85hBMF/NF6X5p4L0Zt5JF0shyWMNJUGGw+M3MgIlzyyuftERqLdm2YIAMC8L\nqBGyE4smjHN1x/E6Vqnbe7oE7+vcQ6tKlqquBWXbLB788foCozMpP0T7ZeYK\nz9T6az4MORL0q+NSH2Qu3pcruT3YVNI7OhVn9cA198kTG1vhlBumhyQULDYF\noIZvSyU00/jhhhtrwRJeiixXTvIbc+97cuD/8PSGruMQVRDn3fvq0SoP9fcl\nSYbrKEM9ALpiOMhz5hOQes6YL3AiSsZ3myYKfDQEGAOZeZ+PtbZwjZ9fRL21\n7UQFBCVG9i0yqD9farLIjPmiWaUt97wyuVCSysAjoqpxi2PZDrora60INg3j\ntnDd8zW3xfcgrdgVq/334/7D5+ZCWQm+AaqmxO+ZFIIFassGcKB551HbnwMm\nNSvYU+JbgL5yhZXKClpqQ2KscWi/r6+f/hnDECJwwyQ9Oi2w+BgdkOk6Gdg0\n0i+QloBM8DK0R/48bbeirrEGi8B0FS9kwReEj12Opx0zv8/lUkmw8Q5YDAJQ\nMcEnCPg/wn5aknATMUAVtH+Mie+bLfpYja5nRC9TM1bUYYtoHeNetRTUQwP/\nJdUIfOn5OqOwGR895GlGhPRKXeY4WSVyQd/bOSfjUda/JmNSH3Fcjt0BRtSA\nLurQ\r\n=sfb9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"4a67187585998b5863a9eb407a3ac0a7e550061d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.4971637f4.0","@material/rtl":"6.0.0-canary.4971637f4.0","@material/base":"6.0.0-canary.4971637f4.0","@material/theme":"6.0.0-canary.4971637f4.0","@material/animation":"6.0.0-canary.4971637f4.0","@material/typography":"6.0.0-canary.4971637f4.0","@material/feature-targeting":"6.0.0-canary.4971637f4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.4971637f4.0_1583881128622_0.9150224278034689","host":"s3://npm-registry-packages"}},"6.0.0-canary.1ae8130ce.0":{"name":"@material/floating-label","version":"6.0.0-canary.1ae8130ce.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.1ae8130ce.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"bc6845d636e1f6041a1e33abffd151db048bbc4e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.1ae8130ce.0.tgz","fileCount":34,"integrity":"sha512-Aeg5qJELAELQHXQxrIo9cLZWKpbJnka10Yr0Z/U6hS8qw7JGULgMHx1uC8mbwzeHXCqXg5PbHmXk4L1qz9d5dw==","signatures":[{"sig":"MEQCIFx3Jku525KGH83z8gGqs4/gHJ16ir1r9icjxpUgMKD1AiA6gvCoR+FaJCl+pTuI21EG4OkwCBPuzGpJFd7KT3Z3Sg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192340,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeaB1CCRA9TVsSAnZWagAAyD8QAJm4l8VAlBxeTLmtHwBO\n3WypW3cKlK68qC/jq0tTETBzursu7jZ1JPF6QaUSN8eB7K2dhO7AGyQ6uqqn\nImADxzzHuYCQFn2RaCjG3/0nLGRcTOX4RKjWQdgIag/h8Sv/Dj26lvOxIPhQ\nvX0eDFxelOgQkgUPb+d+4NJVBK1tVOaNHhjjKO/zL50NdnUSYIDpSt9ETtrS\n7zkGfrRskKtIq27MCYlez/VWHYq2AGDdfjVkmWR1QYPhTlA4fqnr30nyxHQK\n7dUtIyeDN3DrZ1TeFYPMPLYskGykQZsGVuYM8iuT1+gNbJTq4tt3qjADckwz\nr5soWcLBZKuAXEFEEc3YdpxzSZSImHZ41YL7j+WQgwUnK5gwc7V76UlP4qke\nGCJJfwhSH2ykEXQ+QM/nvm2fZn6TLfWk7pKoPm5rNWKowr7WGlNe7DSN90Xq\n9P+Q+mwfQbxhXt/TqHM5RQCd8UKU0BHmftsNNLIlfcqXcXEES8Dgy7RMRkyi\n2OpHB8MhGTbmR16GpltaM3TlN8xuRgxqEQA0OCgGEWIY2v4+Y2nW5UGJDGlA\neoGS+/xvDaStIuOLOnxI+EovfbG+RvcsEQj4UpKuK/8EfmUjSeViGnUoiXRD\nUl+q1z65IUEZl1r+Ldxx+IQ73lLnKafMger7WyJStey+vHLXvXVdZL8akPOV\nvOmD\r\n=CFd6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e5b4831aec2400bcd99b87f3537adb62cf047dc2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.1ae8130ce.0","@material/rtl":"6.0.0-canary.1ae8130ce.0","@material/base":"6.0.0-canary.1ae8130ce.0","@material/theme":"6.0.0-canary.1ae8130ce.0","@material/animation":"6.0.0-canary.1ae8130ce.0","@material/typography":"6.0.0-canary.1ae8130ce.0","@material/feature-targeting":"6.0.0-canary.1ae8130ce.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.1ae8130ce.0_1583881538030_0.4158565666491105","host":"s3://npm-registry-packages"}},"6.0.0-canary.8639c2690.0":{"name":"@material/floating-label","version":"6.0.0-canary.8639c2690.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.8639c2690.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9581ce9b3bf718d791a1b681162195d73d94d293","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.8639c2690.0.tgz","fileCount":34,"integrity":"sha512-ztN2jWyEK3VChIMquZ36aXWOjGk4u4s8GEX906QSp5nIhwG6o2RwQcfj4biOuVWuIN1EnittfSihaVKlHIh/TA==","signatures":[{"sig":"MEUCIQC+gsDLy9Dt8rmVPDrw/T43Kx2MWeiUXb1HVsbe3Ah5ggIgS3kF9O/ihvlOs2eWxhztbwxV/hQki/CoQMK/4hyaQOg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192340,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeaIY7CRA9TVsSAnZWagAAWJYP/2ZDPGWZSW3NK5CxRkmX\nxU5uX4UCw+JrPFkcX9y0OvyD5CUzCP5V5DTMT8AOn/Le55M1rMWb+/MGOWSZ\nm7OouriKP4cn9X9uEK0t5iNqsq3doF7Rcl0StvDJYzh7V64bEKAfy1k6Tz/M\nph+Di0IpW15F7EXDhE64J0C0g9GEh75je+gd+xbW5nVv9VPz4LcUTh0E4b1u\njfzguTpyU4CbUK371z/PDOt/JpH3G5NXgOFrnHyCOZzAuMLp1BXZPTHiihnl\naV18d3gJBdYxczBES96ZQSmfXimSt6Y0lKFBDp1nGncRhrhDH2hYFIVzfK3A\n5qUy5WOBM60H9E2JW/LjcTAmjpDBicSVumTRa7XxFavw04XlVwT4iXg20ZFG\nlVC6eUJWvc9wsbtw2+El4CRbf8LGDqEKmxJsCsV4PtRRm9okfg/VpoaeKs9K\nbXaJ7is2FSRuDFUznfNI6iiELtGaml8euxDJBVLxlz65JCeRhd6QAyebzMsj\namB9599X14fzNkjXWajsws5qLr1WGjoZ0ZUTFdJ4rpbbgFjSJd6xvKvDbWMR\nF3xc3HFZGkAJYLKEk3VwPSixaPyQifATcPWeZGGqd6bfPhVRzU2WQOsZqv0/\nQu3hXkBcHM4RfQjHWop0pfZyC1dg0W7akJmCM7/fzFMbOeGoap0ETmCybiaR\n1G4B\r\n=WBNU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3834dd0603f05e8710f74b00560d4aeb887e5b82","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.8639c2690.0","@material/rtl":"6.0.0-canary.8639c2690.0","@material/base":"6.0.0-canary.8639c2690.0","@material/theme":"6.0.0-canary.8639c2690.0","@material/animation":"6.0.0-canary.8639c2690.0","@material/typography":"6.0.0-canary.8639c2690.0","@material/feature-targeting":"6.0.0-canary.8639c2690.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.8639c2690.0_1583908410784_0.17793684192527337","host":"s3://npm-registry-packages"}},"6.0.0-canary.d5808057f.0":{"name":"@material/floating-label","version":"6.0.0-canary.d5808057f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.d5808057f.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ee558875464f59a187fd95d680d7554b7310ca8c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.d5808057f.0.tgz","fileCount":34,"integrity":"sha512-BOXh7nTaf6LJ7rWWMTnAMkbVQGiayI6+6h99AaLdNE/bnVhU3GZgGrZl3YXQ5cvK3kUOwJh5UKpuIv/BQdE/ZQ==","signatures":[{"sig":"MEUCIHnNnDecTgEeO0o/eOBkSMnzmsjJsfNVnqXI2B6bFjfYAiEAuqMNkHL0ijpFM7oGD6jdyJOqu+8dEd1w3pyYqk8YzcA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192340,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeaREHCRA9TVsSAnZWagAAH1MP/AlZFl9qqlLMyG4lX1Ym\nKFke5hHPbBxauruWE9WQxFzMTVgbrK2RQza0hHw9054X5j3PLDuCGQyiDVQs\nkL2VAWb625OZR58r9lOsyzaII/PkRGCBsC1PMYKVA94p7YyFLuo1DRuG6Ihu\n2qRjCh/uaXexcqpHF1Olf9YYQ0590ASbsMPLh07V/VeF3ilkvDgaI+2Yiey2\nVTUoD27ThP/tSaKIEdBm2/k9CoEA6Ma4hiryMHvtKZg1XWxgIdmKmafTIWLb\n+oQm+01/zxp/Qr6sxwU9d41mR2GuVtJXOo+WY9V2i/JQ1zG/eabmp1D5IiDe\nDyKhsDTzLFU56vcrVAkBgJePhoIgIVka/5/bWEj2eeQ5hecT6KS97QdeOV7U\neSU5NrL/i00VgA1x696auv91H3G/X02jTZ8qTtwfxoBBlcexQ9NIxL/EkbTT\npd5ExREzxJHnIaTLSfO9CuBy5YTw4UcQ3Nzgo6M75jWUezXtK0GeCm91nRlp\nHJ0wyHE9OLBjsNM6Vz5WW4wN/ZLf9LxK4zBVOC5hLTOoZwYPfuz0c3eDlK6h\nSvdMOGjDcIQQlzl9QPXUd0VYfE8RbhbIG85qbJA/40TSceTHvKeXuszyHMl9\nQd8RREqlkKh6gTdHpF8HMCzRDyWZ59W585t15YtC181fZrcFGjSklW0Kfhqa\nw/Ne\r\n=NIpC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"00a6ffbbceea71ed3f3126dbce724119ddc06379","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.d5808057f.0","@material/rtl":"6.0.0-canary.d5808057f.0","@material/base":"6.0.0-canary.d5808057f.0","@material/theme":"6.0.0-canary.d5808057f.0","@material/animation":"6.0.0-canary.d5808057f.0","@material/typography":"6.0.0-canary.d5808057f.0","@material/feature-targeting":"6.0.0-canary.d5808057f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.d5808057f.0_1583943943551_0.07382995265630599","host":"s3://npm-registry-packages"}},"6.0.0-canary.b3f58203d.0":{"name":"@material/floating-label","version":"6.0.0-canary.b3f58203d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.b3f58203d.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1ac7d6c74704046219fdd992dbd9249d1123050e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.b3f58203d.0.tgz","fileCount":34,"integrity":"sha512-9XbkqEgkkRHXTX/yfqi77e85h5+zOTvPa7VNM+rAgioRuW2CMgmi4zAokit7iwfXThL/DDVPo2pMNyfrNEIiiA==","signatures":[{"sig":"MEUCIQChlROnQdHvwR8Z8Fmi3/mCcdNFsFYxX9rh/FY3jgFcuQIgMVg2Mq8nLv85vZ7Lix2DPZgl0QuoKhgr6W9UYxZhRqc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192340,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeaT4rCRA9TVsSAnZWagAAdO0P/A4F+p2zXBOCjmhrr1To\nqCd4s6+aqyXMIh/LSp/fV4Dlt7/AKOHXCbTvBtY9UKnk+sCcD7OSMjs8DLh2\n9RbEF/knFPsLCg3sjVAUVwDv3vpvwH3jzS7brhLZGXa9kjPYOMzfDJgVyKln\nCcYjS2b44MDddo9aRvmP1kaWZKcYAiGK9cvd0kBloSWKdf8VUoWCsAWxlDlg\naTTIVtIV8+k/FIDW/BduwlF7Ib+OLgc3LfrAAv+jVFPCtv4/JstKA0yoBeSy\nABuxi/yDlYf6nD+MjXiywzSCIm7AkNPPLYwTqj53m5foDvHnvcL0iwMbqIfl\nhK6dyxIrDyc2fM5D979/RrbaFiSAgyyBr3dlGdXo6s8f02m9oPWkKFvh0rIW\ndZKKOTLkR7zkhFBBIG3RLMeKDu2TGFUfwmwc0/40JhJcmMUg9oBZBXWzDi/2\nicwahRXSXror8PmtrMSQnZFJLeVW5BntWG11/fSrdnqMJuT0ZJuP34LePvlc\nea6p1aGRuXRr2e0RidCsNHgRMHHW33uv/fn4a6pjqhed74D8cEnrLx8t71AM\n2g4zqiGo+d0SL/D/YMqykP7eoWK/eZWnR/3biq7/0F55n9eqCqIVj/WlHcd8\nDc7xRwDPg+Ufw341F6pI4vxos0N6GAiheiW7gshIOkh9AixYsALrkMUXbu1+\nTE60\r\n=ljsE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b9ad376b2ebba49982e9b605c903e752e4fb28cc","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.b3f58203d.0","@material/rtl":"6.0.0-canary.b3f58203d.0","@material/base":"6.0.0-canary.b3f58203d.0","@material/theme":"6.0.0-canary.b3f58203d.0","@material/animation":"6.0.0-canary.b3f58203d.0","@material/typography":"6.0.0-canary.b3f58203d.0","@material/feature-targeting":"6.0.0-canary.b3f58203d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.b3f58203d.0_1583955498676_0.9067922615257913","host":"s3://npm-registry-packages"}},"6.0.0-canary.bec065920.0":{"name":"@material/floating-label","version":"6.0.0-canary.bec065920.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.bec065920.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3f5e6d3ae5302b20893a8eae5b8454080f0d152b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.bec065920.0.tgz","fileCount":34,"integrity":"sha512-IwoCZTQf5uKNWY4z7hNzZ41/ewNML+4zGTY5fhPMx/Q4FlUEjBygJ95SartuZHsrCzUF02oj6G5+AY2i3EvFRA==","signatures":[{"sig":"MEQCICTtYsxGSpZIK8cuEWRpYOdTmOD2E8gHNnBoWGWloG7/AiBXWLCSFDN1H1FwQbYE+uukDqGJJEF9nGK9pojSAfA/jw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192340,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeapmHCRA9TVsSAnZWagAAkJgP/1qlYZt2fV2yvVcWWsTy\nd4chZGX10rmJ6cKfnCKzBSmZi+GhLbXzCGMOv4AQBf0IYg3q7hoHUZAVbe63\nXa09fXWKrZyUbyHYKrUyX3SLz7mYniVgGW/mvLdyGjtgerayjN762D8qA8L1\nSmDN3AU2NzlvHEO3+kEKgjSo//M5ZF2ZaVJVZ+uuh4Oz+fZf8GwcIR94rqkK\nXDdgUNjRVAcNf4TIIINGEXz5UKi4AZYxkVnTmkcYzWrLL5xAIea9mOyjMvqe\nAj3k/1LEwUkkP5a5Ku4sHjxkCREujYGOClx4v02eECzagWIrsEXeUvziD+El\nIe/VqaVEazPBQZb1Naghm00u94+QaZVQP7p3rX+VTKxT/w+4SjS/ka3F5noe\n/NiyZdG/PNpEGa06sIjv5xEYV3zpvYCNBTIGyGYl5zavy0RUBxqpBC7h1lfS\nVf8oHXNZXfW3CmOvbu+vGdO+D2lsqzO8BDKA/nvLXmXJGtTOO70msBFhb7Dm\nzVYnz8r9dUlpzsT1e0SY2LxGGx4Drmo6OJdbPLdboRlC3alwt0JZKOonnU4E\nuh4ZbPDwmKQxaN9OoLQIIWrwzUJsESbTYvN5v9yCPg4f6sLUTPJOTqXJTk6k\nqZQj9NbHbdOIZkjjEBpJFakS6YXZf527c37E7ZrwjMBYVqHdpipjUGE/jjKH\nmo9P\r\n=n4Sf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ff203cc1a864067909d369c1408fa7ce64954660","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.bec065920.0","@material/rtl":"6.0.0-canary.bec065920.0","@material/base":"6.0.0-canary.bec065920.0","@material/theme":"6.0.0-canary.bec065920.0","@material/animation":"6.0.0-canary.bec065920.0","@material/typography":"6.0.0-canary.bec065920.0","@material/feature-targeting":"6.0.0-canary.bec065920.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.bec065920.0_1584044422723_0.8219773790705744","host":"s3://npm-registry-packages"}},"6.0.0-canary.776291ef0.0":{"name":"@material/floating-label","version":"6.0.0-canary.776291ef0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.776291ef0.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7d616af03bba73feda3b1de18677e0162440619e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.776291ef0.0.tgz","fileCount":34,"integrity":"sha512-KHRPXM1jVsCMVf8oOQ5Xw0tLaXWk/ulnh/nBmg0vE8cx+pwhXu61q4G2KU+oY95+Ne5XUmi322QlydeeyLufrA==","signatures":[{"sig":"MEUCIHNcUUuxoiYqn6tQ1NDhlLOuiyJEECeqVt3t7DSZYuUFAiEA1qvRX/OsDjE1E5S9PUNkKXfj5jccjbc+jMnUO2ivSKo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192340,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJecSMJCRA9TVsSAnZWagAA4L4P/1URYnQgvKuRYU+7J8BP\nKiFSL1uPc6yMMOxCXNCQijjh3gmSqeFk+nOMHCC2FvKjJo7x5j5j6PjPDfW8\n72tJJgY5ifpnewgAV1qauyRVpmadIxzdKosME2Bq+Mln9qAz5xjV1VXwtNCA\nJrPvevMvP6xlWZG3a5VjAJUqRKAMzh2euNCeq8E4tWipMBRnuCn69UP7K4fy\nT8Hio4ASTdSPLCH2A8ftZtcY4+4gcqnx4FIo39AJPXf90WiPT07uPzv6/B3R\ntVUVpyCJFJCKMyHbF3L32ZL4mjy2SKDswHD2DB2Pj37bzyMuSs/OoRqdq2qF\nmSJN4N7MoMSHrrasfXunxBFpLkL74bobMJ2v+oidYP5yTJnNrhzWphBquW1S\nJufYRjWTt2PKW+QukvqDShZgoXURu7zoV45oMSYWxwXu9WTwT5O1h1nIgKsK\nLm3GBdCea9FCosCD4aAYZvc6h4aITX8hKeXWrkubYxKGe+IQH+MOIlCDNH+A\nXRaeRBAvlm1Zolui9YJSea7A3AZ9XA/QTXEN1ACbTOQNJcWVWkkJT0au5o7H\nLD6RXYvy1HKV8+JdcI9qSBGIEfajIy0OLLByHscV8UPvD+6tuAvKQI/w7wOf\nVygiBZLUcy1Y4qxo68WYasPvVqJd3NbUMDVf7rtb4mUSqcDypwCkdbIj7ivb\nBsXu\r\n=EArP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"32f95102d2dd047c662697060685989ec64bb05a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.776291ef0.0","@material/rtl":"6.0.0-canary.776291ef0.0","@material/base":"6.0.0-canary.776291ef0.0","@material/theme":"6.0.0-canary.776291ef0.0","@material/animation":"6.0.0-canary.776291ef0.0","@material/typography":"6.0.0-canary.776291ef0.0","@material/feature-targeting":"6.0.0-canary.776291ef0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.776291ef0.0_1584472841221_0.4345934671134126","host":"s3://npm-registry-packages"}},"6.0.0-canary.ece19f3dd.0":{"name":"@material/floating-label","version":"6.0.0-canary.ece19f3dd.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.ece19f3dd.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a325d53f8191b5c9b1a3700235bf504589ddc078","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.ece19f3dd.0.tgz","fileCount":34,"integrity":"sha512-Ewj7rolkTscbmkd9M1fqjODjdB2CyjcWKTHAd5frnObjeKWs+Tcqak9guGN5ZgdIODxgYXD7delu3PUvmnBuEg==","signatures":[{"sig":"MEQCIFap3RvoQQ4qwPML0ckvydptMSOwvELTK5gThSTnH9dAAiAUc04S1xrESGV0YafqVIvX5L/KRcle00RI89lCJ3DPXA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192340,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJecUi3CRA9TVsSAnZWagAA9DUP/iIeNn1VnL8ENuSA+IuK\nkGuWaXH64oMxgvvSYSJHXJ0uJDZpIxInhy1blcZrEuo0bR2zp/E7mdnhvP/l\nAHm2jbJX+jxTSKUZCQqPGNGekJE7rvmuq3DGidct8lXIYdxR/LXFH38qT+RO\nTNY5qTVfoYlBib13rJz1jJWWxd39OxCF5iHTlRTNpkWAA0qZLIp52EJ8iRaG\npRpPBc/Rn3norWOwGggYFh4IOerkGeX8MugFfc7HomoFbpNMqP2tM7+4unYa\nca9zI5ksRGeqxxYZPQ3DRzILj+0UidljzVvykJQthbMSUoaNSsZIOJG8l5Bs\nXkLCXx1PygzowgBh+wa/JsGlfbnz1BVUQbUA8YICmuEP05JixEG8WwY54dKb\n6jh3KTf9elBy27Yr2Yeyu/QBN+XLQWg5ZMRM7lqe+1R48kkCkTtxGCIEIWY0\ndOysg6UkfOtHfeLeUj9CZYfzOCRQdO2xwziWLoLn+fVP6qgJwo1O35JxJKSp\n8Ky5Jt4w1FCpXKYDa5l85/WDM5BdSua+rRLv9lmgTK0l+vF9E9kR4ijMfVJw\nVcD0TVIj+64gmGI92MuK4K0i2qbZE0hr/JJc6V1GbP3C8R4W8oapwFrkX47D\nZqHQ6WUPKFTtlRxp8RifnsRdyvEDbX51nfXYkM1gipYNdFnHphpu4mbKgJdF\nLFwT\r\n=nh6l\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"41a07e9906ac09ddaefa5cbf8327260df4eacd59","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.ece19f3dd.0","@material/rtl":"6.0.0-canary.ece19f3dd.0","@material/base":"6.0.0-canary.ece19f3dd.0","@material/theme":"6.0.0-canary.ece19f3dd.0","@material/animation":"6.0.0-canary.ece19f3dd.0","@material/typography":"6.0.0-canary.ece19f3dd.0","@material/feature-targeting":"6.0.0-canary.ece19f3dd.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.ece19f3dd.0_1584482486884_0.95145421975941","host":"s3://npm-registry-packages"}},"6.0.0-canary.4dc45af6c.0":{"name":"@material/floating-label","version":"6.0.0-canary.4dc45af6c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.4dc45af6c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1ccee65117d449bb37a88981d0339039dea4ffcd","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.4dc45af6c.0.tgz","fileCount":34,"integrity":"sha512-xVEItAgLHGvgKiCQe3kNEz/NVWwZ9EKzJ84lkpoK1SHlxP4ctmJYXOj4QDir9LAVKGApgAvElpi3s6GLPPubMg==","signatures":[{"sig":"MEQCIHyaG2Pfa/7DkYm1ygjAgrZw+LiaUT556APNbvWfNXjKAiA2Lh9TtPg2XbK5XlQEsYPK8XKAXPpHpeVoeyIKLZFsKQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192340,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJecX3aCRA9TVsSAnZWagAAgn4P/3Zo2SuCGucoLYUADzKE\nzsOphi4bfpcL5Hu3fqc+Hj/Z3W0zWkFMw0sjoOqfxCJf+AVU1MkQtyoRQ5Zp\njHtEJir6+oDqN2Tdi29lb8j1OVI53a61EYeh5ip5q/BAkHNlr5OQCYqwmuJq\nGNK3HC1mezIBf6P7wFuEamRTVTxK9cynqd2836AN5nCxFUPxMC9kDO8+qAUM\nauM9Q0D+cQGwFW1nuoqk7Ddj3JEJ13jOl2AStBBcD55p0lm81h+FBXKrUUP1\nqAcfXvq5JTayh085v9s8v9tlHtlIaTVqYw982bIXJdNpeG5yzrY26QwoUVDg\nFQFYzWpiSoc5sOMwX7wYshwKLO9IzkBDfj//y8XGxJ65CIdcbnVH0XDSpQ0L\nkcxgjO8sRQZXJ48ccFS4e6FgDdf3oICQMAS17Y3vLQDhlXFsqci8y1CmeAKW\n0hxl1duLbzQw0w6IkOnbQ3DSWdxtsymJ+FJOeFr4VgC5nvolRj/gO2ezIY+N\nnzxCy7XdCe/YAH5HJ1L0rJ/qePMwVqvhRorYUEdovt/DgMyQLWgsdvXPL2WA\n6mubAZk7vLJ9JnwpyUpAxyVm+lYpTGeJLt1ZZGSFCtoJVwFeRf1RNBGnCNKq\nxtnwlvotuI9g3G8Pnr8lX+GCHRjIe7Z2xtqgVyRNPP8qWpIBfshUG1Y/56/i\nF72d\r\n=ySVl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a2b97fbd4b046de86f7e8aac6b54c5a6d31583b0","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.4dc45af6c.0","@material/rtl":"6.0.0-canary.4dc45af6c.0","@material/base":"6.0.0-canary.4dc45af6c.0","@material/theme":"6.0.0-canary.4dc45af6c.0","@material/animation":"6.0.0-canary.4dc45af6c.0","@material/typography":"6.0.0-canary.4dc45af6c.0","@material/feature-targeting":"6.0.0-canary.4dc45af6c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.4dc45af6c.0_1584496089961_0.6765136458910292","host":"s3://npm-registry-packages"}},"6.0.0-canary.6b48781bf.0":{"name":"@material/floating-label","version":"6.0.0-canary.6b48781bf.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.6b48781bf.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"11e7915ffe539c0ac841496095b9a98f0bec46d7","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.6b48781bf.0.tgz","fileCount":34,"integrity":"sha512-yH6xingUuEYENS+f9uo3nyS9USl0z1VRPmy4Iw9r+8WkW3DwCURDBQ6RWXRKTjzJxfjLNT8lyTQJO2QOQ45tfQ==","signatures":[{"sig":"MEYCIQCbMIwD/HJkWqwKPRxxRRhkvjqRwv7XXbZdwjDoW9YqJgIhAK0SqhPsgaWbsLY7DB78UtW+EOqrsOqoHklT+RUGd2ue","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192340,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJecj+mCRA9TVsSAnZWagAAF8cQAJaxzrTGYX9l0SYzYiBO\nIyRHzvVCidK8UiAXVNenJssrNPcnn7eDuL49WmiLkiTrfjSE6/x/2bktUnZ5\nmfx2NZdnvCKS84wiFMBXKPHKXxpHx8bWM53+iTDJEyBdvcO/lyGwzz8wTARa\nHq3V9bGjv+Vh/k3UC0UqyPI4eB9ik9p1gIAtNzV1FqDXVfv1liwIeyU1C3cE\nNQWbI59yQ+W3mbb7vdVcVF2weTA0CFeJ55Kh/9ltGFE2wYmDEfUZgGam7ZlY\nz0OwpwRZbep7oK8LQRRHwLFStRJVVlRFmpUrt5GwwLnnYwedDcH8ZxznLDPk\ni0GQ37o2n5kgqk4ZuXOewZ6wtkhMo4IcCiRcFJmBe2gMbGi5r3vGSkGY0QGR\nVfpqIEockQuD0PL07ObWL2yLCDyXQfy+5pzAbftiXOrXf9BPW71OpZLDHkkr\n7WdIMUavFU1jBxhb9Ba+M7++cyfRDcMifKrigjTCZ1bH0PpF4VrAkwoU6xv9\nlx29dChw4bHcWBYd37OdPjynNjU9aQCfwQYCfxPB3sY3EBEAoYZ9ylcULmXs\n8QkmP4N1xlpE2Gj/vuvo3WJN0skmKgUoh7SF+AHhirv3smeR9mUqW8OxBkSZ\nLNDHdYvUBRPlCgCvM61oWrvtSaC5pcyll+W7bh9qPQvqNwuVNJOzoxdleDUH\nd1Vm\r\n=3IxR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1da9fc619190678090689bcdcd73eb5885c8a35b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.6b48781bf.0","@material/rtl":"6.0.0-canary.6b48781bf.0","@material/base":"6.0.0-canary.6b48781bf.0","@material/theme":"6.0.0-canary.6b48781bf.0","@material/animation":"6.0.0-canary.6b48781bf.0","@material/typography":"6.0.0-canary.6b48781bf.0","@material/feature-targeting":"6.0.0-canary.6b48781bf.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.6b48781bf.0_1584545702269_0.9570993645837345","host":"s3://npm-registry-packages"}},"6.0.0-canary.a88c8e4dc.0":{"name":"@material/floating-label","version":"6.0.0-canary.a88c8e4dc.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.a88c8e4dc.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"0dbc43698850f910d67544e2808cde35bd764166","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.a88c8e4dc.0.tgz","fileCount":34,"integrity":"sha512-/ll1Lu8bIZ2t6srCcB0wiHJmD+AKnGKLwzjsk0RiRUcIKj+SluxkU3ChvoWKdTWxHk1Ri5Fx/0/EZ7EDmeqk2Q==","signatures":[{"sig":"MEUCIQD4rSXdS37y2Sr75L9C8S/9zYytNUWRqdeuSDeea4vBcQIgVolRtywbbILyoG03+495S7iTxxJCHo0rkmUTB+FP8VM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192340,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJec62HCRA9TVsSAnZWagAABTwP/3up8ZMvnLqvT8UzOK1y\n39eGthJTBOSlBGIVVAvmNN82lfLbBwSdgE3u4zzG8aAM9LO8JVM4CK3+RDtH\nRgVOX9etVtQzlCTnGIKY80WO/Ht/IwHSK7fHIokhX1Vq1geKj0UREpafrq/q\nANcgwfjsRc4+UasBd57IBx/X6KZIQIxah9dAc8E0LwJzP9L7GCpZs9EsVP7o\np6kW0Sf0n3ueLNbibVZpeOWgtOWKYqMFDL9ARkOX3l8T9iERMkr6jBTjpvlx\nVPKzzSFSfLWqpjIox74mCF9dzG3+iQNTFsrcO7HvpIWTMYDp0JrPFV0AmQSM\nyquaczdaN4EdImOI2YbBO94lBgHxxf/ChBFaNY/MPzdlCh9ebutBsjOk3Ms1\nnYsQXItZe0OpnuRPEM5VMDQS58eYzDD0zSK4EAnfz4pMAKgVYq8Pxuj0HGVC\nHuannbYcyLhiA/2TIBYsZ3KEqkmOWS04Td2GI/vk7wxRQ47kvH/yH7Zm8NaK\n7Lfp0rifGZCuBOifLrnU2tqy8v1HB78jVvvgZFamTU0GuYD7gW2a29/AuovI\nf5ZLF0KzczqBZ3RQj69D4K4CqbXPogF4JWUt2qXOF0AUrOZoRqFJBZ9G4hdr\nNSLga5NYslU5E3DW2bDJ1kiP7exvVxckqN839Y2aWlWqnXgHvJ/P2SUC1b0P\nh8gf\r\n=QvjV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3d8bc73a5f46456d2ada622785f02cbd3b81c6a9","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.14.1/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.a88c8e4dc.0","@material/rtl":"6.0.0-canary.a88c8e4dc.0","@material/base":"6.0.0-canary.a88c8e4dc.0","@material/theme":"6.0.0-canary.a88c8e4dc.0","@material/animation":"6.0.0-canary.a88c8e4dc.0","@material/typography":"6.0.0-canary.a88c8e4dc.0","@material/feature-targeting":"6.0.0-canary.a88c8e4dc.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.a88c8e4dc.0_1584639366517_0.4386155277144981","host":"s3://npm-registry-packages"}},"6.0.0-canary.cafe18860.0":{"name":"@material/floating-label","version":"6.0.0-canary.cafe18860.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.cafe18860.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9c6fe85120281c606bd03a9ab9438d8df0ac5b92","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.cafe18860.0.tgz","fileCount":34,"integrity":"sha512-jBrN25xNBTOxQY7l9lxXRQ725Kim4aSigON9rTiP5Hex/mA62WIh8GH8d85fukdQwbEFTkjq2/OX0NASD73XyA==","signatures":[{"sig":"MEYCIQDFdD1YHguSTSXwwEOi6DDYj/jhMvYDIhltNcQPTp23SAIhAPQ7mB3VPtNXONTE6BiiJjnCHg6WvRHCL70jNYf/OFa6","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192340,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJedNj5CRA9TVsSAnZWagAAEZMQAJekqG/+SICaxHupIcwQ\nhTT4vP/pA+/LFxeXOFSLkaYjTauv+7lUbjJZba68WD1RWAJXkiWQj+C+j1rp\nLaV1QnjX1exlpeoVhIBxzKqVkFKK0ZZHiIputQxs5CL18PuF1ob8xRaVzk1a\nieiIujDjWKgumj87qHT6Z23hrCme7WOntYPb2QIBrRc8DfHToEIZFpYCIO3H\nsAbWh4/8He1/DWCUeV4KArxpUPk+2bMF7F8T2ydj9230jdo1QjGZmrc0YUWr\nUToJ5AatlqUduliDWaGCoIM3m1bgxWefH3lerrrwhG4T7Dnt4sndTB1U6RLD\nv6aSEsJvN3QB6dc7PBjPhYp0Bx/O66zj2TLPryq7OCbVf2Zh9L81NSgUm7zI\ny6okr2Yo2JZpROroK8Q5cLM3cyrkSSYq+9+ilQEELO7rzPZVVrbAU8pPiwrx\nOW+BhzOAeQDatr79tuHnkOSI3OOjH8wVLtvO9LIEERMgS0Pz+Rjc9lgLyRXX\nWgfULVvgf8CWEb/+DUDzld0GU/MHc+0XwaB8gKx5r9Dnp7LPwN2yrdiJbUGM\nDOwLWPAAeYgraOmMg9S8ozb89+lkijR79Q6cx8fEO7Y74T2ks3cYWrpCtqB1\nmjydo+86NN4eH72D9aHr27r2SrQbJZ1b4Y+DZoqeNoy+51BU7lxPvouap6SA\nRXEn\r\n=zZzz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"51706b933143947baefab6db8cd069a22ed080ae","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.cafe18860.0","@material/rtl":"6.0.0-canary.cafe18860.0","@material/base":"6.0.0-canary.cafe18860.0","@material/theme":"6.0.0-canary.cafe18860.0","@material/animation":"6.0.0-canary.cafe18860.0","@material/typography":"6.0.0-canary.cafe18860.0","@material/feature-targeting":"6.0.0-canary.cafe18860.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.cafe18860.0_1584716024615_0.9341105501280791","host":"s3://npm-registry-packages"}},"6.0.0-canary.35a32aaea.0":{"name":"@material/floating-label","version":"6.0.0-canary.35a32aaea.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.35a32aaea.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9398dfc009576fd40bbf5bd4c7d636eaa4b197f6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.35a32aaea.0.tgz","fileCount":34,"integrity":"sha512-Wh71MuHAmVnTS6g91IVwINbYIW/ZH3o43JA29aVbZ/8GizLyXiK3DWbTWENSWcf2aUUe8i2l38lbBimT+X21/w==","signatures":[{"sig":"MEUCIQCozwWHFRzPN7+lXKAU3ulIElQ7HiSG7Fjba6hHMJZtXgIgZUBPy7w4DirXBXNC13WhVhNUttRdlBbZ1Zfn3FFZd5o=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192340,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJedSCgCRA9TVsSAnZWagAAhLcP/04mNKRFcf4oZkLy6OA+\nlhJdgv73fYmz4vLjAZLPet35BF4kZnF5MxBpBUH7mde+Pd+CIvRepf8fT5H/\n29V/wsuUVOLgdfwZLfvji2pRBZPqcL2udjsT7nPMu7I1PfJf/T8pimGbBuz4\n8tIjgds5kjFYfLFGFDgOr3EmzmzogM0Ea2mxqypx+BCRwVvzNwEC5+6Owcja\nL7/7ihEW8XKL5OI4RQ9eh0tA4K95gmUlxvOSFijvkBGELFX2yEcaC5myGKD6\nLhINCJ7Co++We98SuoY9ZvdrxZ2cVxtbfHUyTkFSg6H3CHn7i+LhMcXSSncE\nG++D68uONx/bJoP2nplFT6+aGYwaTcnDb3+DTqUBme7kwbfCUtEw1mELjPUi\nw6B6hoPSuTzFO/7z19G3k/3nAcuqwm3E/NkGVYtT+6RYLvsoxewh0yQE0E+l\nVzqv3Iare+5NenQBLNLm2bGdRTP5Hk/A2Lw3f3PqP7R+Rezg0p+tAgKZzTtJ\n4puFbUIkcZNODWDUNJ0I44EvowbNHnVUTQrR2XDnTw/Z0Znq/6dalvbmBvX/\nScpwkMUtMpV86JTwbT9x6LpaVs7uAfkaDUbF06QezPjXg67TpCSGbmDiaqIh\n2sdDwyCAEjNU/q87gqOtGF05538zLxV/MVR+7ZruejqsuvUMxRT2LncvvaPK\nr80h\r\n=/lKR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"09df3d66223ea8f4d4a6ee61b9e34bfe08387774","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.35a32aaea.0","@material/rtl":"6.0.0-canary.35a32aaea.0","@material/base":"6.0.0-canary.35a32aaea.0","@material/theme":"6.0.0-canary.35a32aaea.0","@material/animation":"6.0.0-canary.35a32aaea.0","@material/typography":"6.0.0-canary.35a32aaea.0","@material/feature-targeting":"6.0.0-canary.35a32aaea.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.35a32aaea.0_1584734367852_0.5208554478682497","host":"s3://npm-registry-packages"}},"6.0.0-canary.e75deb854.0":{"name":"@material/floating-label","version":"6.0.0-canary.e75deb854.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.e75deb854.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"cf54eff17cdcff074eb4226adfcf6351633dc827","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.e75deb854.0.tgz","fileCount":34,"integrity":"sha512-2V2TP+MkpbDk7h+S2IpED2KvgjcglcKVRZE4Ji8ZvV9um/0Ar3xuiKVNeW+qoNbwNTKZSQZRc82Gl9fOxYf1ew==","signatures":[{"sig":"MEQCIAhPmsCq4/1cZts251AfPwvjfRJjQaktFFFXRhNfDsuOAiB3avMerQI6331tE81yLqFsF2J5CDhDNmg+YwdT8oa25w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192340,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJedUCDCRA9TVsSAnZWagAA5Z4P/jG24Vk2XwrXBhnWfyrt\nBmrY6NpZwIRGHQ2kKx+PF8lR0LSAxzPN2Sq+oLsvVQ1YgcLY01CjIGuNm16t\ntQf0Rp3wwnGU9mddWkyQwMv6gc4ApIFthVrlSdi+YX+RZuESP6sefDRAm/uG\nwR50H/s/MxziyuZEh1yLCkF4nOVV96rjZa66kZYJbG8gwP7QlO8iBU1yDHDl\nMlIVxIm87So76fev3jOgjv0JwvSnhiVyMkh0xKSc8u32weMI153iUsEI9skX\n/G83KICnZg1/w+WTLx2fr4M/DuRPadj4IRbnKPuhf4j8o6PesJWYz4ihgi/N\nhajqVlDfkI8iqyfKvSsX2hTOin5QoMRqOITisqphHNLXZGuh77zksI+sOeAN\nm+hCEN84icHzV6gSMHScF7gaJcdNllai6ZE5F92ulVmEZb3WclTPhVQukxWB\nRPLP2TqiOxz8gAQcCCrbxHRBhgNKOWbc9MIWv2ExNDwW2FQWEBXZn8tE8kiN\ne0GwhCdZgQFeJC2e53YmtVgSxKKtN8KVBGIRYkezejAFLsIy1pzIDGLB1BSK\nxHwMzo1UX/2+st/vnl1HrZGCXcKj//lTjcMR6WwN/n0mNYmdMuahGCCJ0ltG\na8xeS4HBzCPS64GUBjSsqGTPwJ9oUEhIVIN/pt6U7gdOoa6DBLcj/Nc6MafM\nvJ0J\r\n=jWVW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a461f6b9120827a65ed980dcaae3ff77d0581d82","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.e75deb854.0","@material/rtl":"6.0.0-canary.e75deb854.0","@material/base":"6.0.0-canary.e75deb854.0","@material/theme":"6.0.0-canary.e75deb854.0","@material/animation":"6.0.0-canary.e75deb854.0","@material/typography":"6.0.0-canary.e75deb854.0","@material/feature-targeting":"6.0.0-canary.e75deb854.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.e75deb854.0_1584742530800_0.7023822044583561","host":"s3://npm-registry-packages"}},"6.0.0-canary.2cc6966f6.0":{"name":"@material/floating-label","version":"6.0.0-canary.2cc6966f6.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.2cc6966f6.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2520854da11cc5b3a78d31ffa5d553d3f923bf06","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.2cc6966f6.0.tgz","fileCount":34,"integrity":"sha512-1XDda6zl4PoZSeM+6VLx1STEf0ucQIb/7zC5erDPBxV0LsHu4ML0yCHQUBl6FACXC1Pvf9IEmXNuqoqlBXePXg==","signatures":[{"sig":"MEQCIEzrsyhTUmDs6lC1AoqjdJZUVwFM3n7Bpivsw0cd47mYAiAylouiQw1DDRMqwRKNVpdwyJxmS5QPB6iM5scJTSkRFg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192340,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeelTjCRA9TVsSAnZWagAAEcsP/1ugIqKZc1j1G9L5TaEC\nsRQr9+0GMCaU3szcqh9A9/TQFUj5JT71eJRrx/iT2XCzXebZJEv4gKcLHPOy\nv57XaqpgJcG5P9t3s98bMrH5snk9GEXC4ZB7hJ+sgamezYfxcTJIeeyr1kXC\nHK5l+0bJLcVa/wqjcMLylqtranyVt5JDsdy3htU7brmRNrmuaDXkcSc6wc4l\nVH1LX98Lp6C3hBeP4reHU2O0mTeOZrqD9yQNq+kYS4MnxWLTLH/7dXmOkb/Q\n7/M1xdLBJYUGhgRlHd3H91FfaCaLNnn/+eBzToJSdHid2jUFxbmab0pFQppf\n5rFE62McVpKYWIfMEwJ9QefapXTGL/m86QO6tus8hoE8/5+V+1XVRMNg2/UD\nOGYTltxEWIyWxbsOxhMYSZL4uf0nQJqUumupLvXy6kIHV2vRP/KbIPqUHpbb\nJLW4b7ol6VLqkRiqUbwGIzDRhdnAbpXeCH5YnWSY1tpe6/Pc8bwg4ok4u71n\n5smRqXcerdlgWEqGxXit7Xd37yCLKXnRD9tE4zcw2YbfeXEd/ClBewm7azeM\nTIlaWo+jlwz35NHn3K6N57WmBVN8qTCGFAsisjP9HFPlvjLWhG5Bd+m+NBjR\nyb2ygF6xzyR7/3Ap8c13Qs3n25DpX1AlGUFxEMcfNW/qYWPxTuqCoZpTEaic\nidrG\r\n=D2yO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"4af7a6e31c561afa46ba7b74cb35de52099583ed","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.2cc6966f6.0","@material/rtl":"6.0.0-canary.2cc6966f6.0","@material/base":"6.0.0-canary.2cc6966f6.0","@material/theme":"6.0.0-canary.2cc6966f6.0","@material/animation":"6.0.0-canary.2cc6966f6.0","@material/typography":"6.0.0-canary.2cc6966f6.0","@material/feature-targeting":"6.0.0-canary.2cc6966f6.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.2cc6966f6.0_1585075426768_0.7259968400472663","host":"s3://npm-registry-packages"}},"6.0.0-canary.8707953b6.0":{"name":"@material/floating-label","version":"6.0.0-canary.8707953b6.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.8707953b6.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"325ae21711ba2ce382b9bfe777851e36a6ee2764","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.8707953b6.0.tgz","fileCount":34,"integrity":"sha512-X+oeGkMgfyM3ef0WxR0bCeKHhT2TfMY7etU5ezVMBNjNhbDpb20TEd2axxJ3DoDMqCHzZzvGkF63RSxNITSVaQ==","signatures":[{"sig":"MEUCIAgGyxvzwYj9syVJSWsKtZZd2IdjL3DdsC3aqkmFPU2lAiEArsZrDD4Qb9n1i1CTeR9UbpO3YImDubFMwLYWydtLL/4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192339,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeelW9CRA9TVsSAnZWagAAgAAP/1usxjNKrBXB79xXML9k\nYRq/N+sRqcNpLCXveaHCOlE+HSv8lEkmBUGPzNUffaS+RWEo+MD80ibI9uZH\nAAVun5VN1Uut/+WTfXg94ayOjA/+Ew7Thyny+t+vjE0ga1fS0pzYchIQ24MF\nPzF6sNrF0YqjIQUvSZVCPnz974RtF4SJZ+uce3FoMZ1yfys9RCtr/LCdODuI\nLaxVvModcQYCosBe0zQCGSUaPtGsuY3HbzxXDGEj7DQ8+6YzOpmIbXn4tz5k\nVuUnFkLYU3NKVg9zWYjHSOPC0wSMptWxG0sE6jM9AVBZ00yLHwFv+M3ssT7D\nIL7n2CBoX5k6hWHfYzylH74wMs1zPsdpALUgzKs7FMZik2B3GTzdXUMaH3vd\nC3e0N6k7fTKfz29tdDEP6xxN5dDMyIMIhcJqTTN5aHWFFHGrpRWDTekap+wB\nQafUGTrSw+UmGs9ANiicO62mzUV/BlIAUcVgeuEoSGsmf0g1jtcwNWjEi9eE\nQEGzngXnH8iPeIel8x9886Jx76NAF9wFRaLgFuGWlZkPMliqYzlSGU35cRTx\nJFy9ECYLGLIQ6rxo+vJ7jfjX//AI9FyHymF5oN5b/rqsriDvUyENcm5X36UG\npbiObHhvi5HNnr1VXXBz23fMAeJKu4tjVIXctTKkgGTU7WBt4souS5UNxXU/\nNctV\r\n=Aytf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"595709807214943e737834107d12d3318e69112f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.8707953b6.0","@material/rtl":"6.0.0-canary.8707953b6.0","@material/base":"6.0.0-canary.8707953b6.0","@material/theme":"6.0.0-canary.8707953b6.0","@material/animation":"6.0.0-canary.8707953b6.0","@material/typography":"6.0.0-canary.8707953b6.0","@material/feature-targeting":"6.0.0-canary.8707953b6.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.8707953b6.0_1585075645350_0.5861237454854651","host":"s3://npm-registry-packages"}},"6.0.0-canary.10af6cf39.0":{"name":"@material/floating-label","version":"6.0.0-canary.10af6cf39.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.10af6cf39.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"bc8ef833a1c6627ce5706247728e3cb17ff12da0","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.10af6cf39.0.tgz","fileCount":34,"integrity":"sha512-cRxcvKPvsZN8DVnUyi+L7paxcpqVETjHXpLeYuCHYkO1aC8gKqZCUl+qn0kyd53cuuIUNfu3+yBxrXT9YAPz2Q==","signatures":[{"sig":"MEYCIQD+r1oqml8tqE+fbTjyw3aoC5eYRyG89TxKRrg+CvY4ugIhAM62vMnWp3jDju8baectpu3RLBUiegU8pes0zEdZy7IS","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192339,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJee6B+CRA9TVsSAnZWagAA2o4P/i9SvxBm6ZQ96eGZNEv7\nCrQCfPivcOzW0h1OpF3jV9QGWUEsU9n6XRh+LCzlo+2+W2Bse8ZRsiXAsEZQ\n3J+PTslX+O6AlfbeHx0/IgEtxanSexj4zEB3kWv++mS57ayJBdmjFcCWQWrG\nHEcxQOuSU2Gim+6KEy0HRA75ZuMHsqjRNukrPd9srfLQRwaIc73aToN2vxei\nHCszVjqxk1g+j10OPxRxoaece1yNlG4bVpeSz5Mlem706UtdBmf6cVcu3QDO\n8m+0HtVlIo8PLloDqwaJiiZgA/xNkWIe83AQ6YNFHouvIq6c+TKwbuoG9IDG\ne5tdFPEO0b3LWLVqN9YvTn/HZWrXB8WyMsCWqzleMFomj8jleNPB1RVwlaNZ\n55IEGSWmlmqEz9eU+7xcVYbpao35ZlLXEBaiwRGe14P2JZUwVGWEMuvenzlg\nL6wYfc2Vc3YQNOy5Cs4HX6dFiTjwJJyE2ySurBUW70jpAbdeRVelNGq3XuMH\niU/aemu9mIOhRxOkZ+URf2UM4r93FEjkPbfZgVnGVMZMHgG0xyvQxeRNxdSe\ni3OKRh3CeZ1LOGIMqKz8Sv1cnFIZ5WXl88PLya/Fs9WyUERrKzMwRtnxgvIg\nN/iGPP9BrcA2fID1OZRcw2TBqeNaZnmizH+578pNWmxgrSOxKfFr7WWoYw34\nnsG0\r\n=43uw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d618b0c9ce2ac312ce4b887450bb947ed367e100","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.10af6cf39.0","@material/rtl":"6.0.0-canary.10af6cf39.0","@material/base":"6.0.0-canary.10af6cf39.0","@material/theme":"6.0.0-canary.10af6cf39.0","@material/animation":"6.0.0-canary.10af6cf39.0","@material/typography":"6.0.0-canary.10af6cf39.0","@material/feature-targeting":"6.0.0-canary.10af6cf39.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.10af6cf39.0_1585160317870_0.20591004414677627","host":"s3://npm-registry-packages"}},"6.0.0-canary.7d8f9c8d7.0":{"name":"@material/floating-label","version":"6.0.0-canary.7d8f9c8d7.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.7d8f9c8d7.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"878beb3872e7c30a0f2d64e0e135c1473edddbe3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.7d8f9c8d7.0.tgz","fileCount":34,"integrity":"sha512-FAY0TjAmzaP/h+Ag1+BCvO9pDhjUETrqFZDv20DPc8KBN/fZXiDgkIJNGfjFTY25LpbYwVlapa8ORBd73e9pdw==","signatures":[{"sig":"MEUCIBtRIDujo0cvStVK9JinX21BvrDbzl5XH+FmK51CfZ6fAiEAxf5CVndVBiWMz4fpKhkbkhg47TUY+qbQl+nMt09iESw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192339,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJefkBXCRA9TVsSAnZWagAALV4P/iMiiKOBZkz/FzZ70o2L\nFVBxkx4DOz/Uvb4l16MbpQGG/A1jru46b3MQj9082z3pJeV4lRAzTTewz0ww\nitNS9tGePymLga8kUCQWFuX3mYSSd2tGqH3U/ge7tkCdZ28SNznOIU3my18h\nHcHOKGmNSWTok78DMfIVKU/HBvalrM6E4wcTM/CthzpEt1CoUDaAIVARWLn7\nw2/xFexlsL3aEH/SCXXnnbj7bpROZsgppU15DxIJd34f8er3AFoEATzwzgCf\nL266YW9jgML4zVHZXs5rpqUG8aE/MD8C0mzFskr7tHQn8bknYFh0Dr3/Y1WE\nXeaiOwxCSAY7J/73Gy/hzhgrIrpOvhqdAjBwQGVNDMtC96KFrWQH/EqVvQCs\n+FiPrBx6kvIVRtTgoFHfWiBh6hT8ImC6I3hdkpUzu4YCjgR6L2lkdUtN0W+Z\ne0OEGhSoaFU0IBB95b2uX7LoKBohKjS9PrgBszHwO/QksYWQxTf+avzRHcfl\nqQb8T3OF9XM+87cGQv4I0g3n8yOofCKfKUHJXCSQEtn0OLhkWWD6yY9hqwNy\nMraUfA91EEy4SJFr8Fdpu+M03UCXEmeZJjRH5QOtv5iNLn+SgpQ05MuzOrB/\n8QI01ZM3escKRYxwcDnwCUi6LvM2rOCjvgYW/lENjbGNRbruSbeN3neUJUe8\nKmGT\r\n=+sey\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"764519b823414bee993cab6845b42f5b60f03c1d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.7d8f9c8d7.0","@material/rtl":"6.0.0-canary.7d8f9c8d7.0","@material/base":"6.0.0-canary.7d8f9c8d7.0","@material/theme":"6.0.0-canary.7d8f9c8d7.0","@material/animation":"6.0.0-canary.7d8f9c8d7.0","@material/typography":"6.0.0-canary.7d8f9c8d7.0","@material/feature-targeting":"6.0.0-canary.7d8f9c8d7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.7d8f9c8d7.0_1585332310796_0.017191921314384073","host":"s3://npm-registry-packages"}},"6.0.0-canary.d6315efe2.0":{"name":"@material/floating-label","version":"6.0.0-canary.d6315efe2.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.d6315efe2.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9349dfb8d94cda7d204da2e53eab4d091ff57bb8","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.d6315efe2.0.tgz","fileCount":34,"integrity":"sha512-C1RSPsSGOvBe8PMOzxK1KzGqG9bma3DMVEckJPPpeIYkSFYLMFM7EK/DmTWRJq/cDY7WCoj0ijQCj1GZWe9FNQ==","signatures":[{"sig":"MEQCIB6cbaGvOsl413HXdwb53ZkSBZqRw/szZca2G4jv+vasAiAio8d/Uk8/6SYiSEQl5zRQoiUy1phfTyA26+49ADUH6w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192339,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeflp6CRA9TVsSAnZWagAAK68QAKQhfU5pgZVJZdEZCMzB\nS2VtlHVPWxPpORZaYEsJ4CYHrlGGPmE6RTIn6NVXe1IiatXSJQj/1r/x9oY3\nbTEvY1LQvokm69smqgTs983Mbgq0XtIztc60xElB6dTLYcEIeW+M0wH740di\ne2bGEYCKigVI70rDrMki43tvGXIlu3r4wQgE/fFsCZbk43iayuuMgYw8mGzz\nbsc0Xj5mOTNAs5fXa1krxMs40m8/Muk1susE/E2WTdWCKgzi2Y6MgEgKqBJk\nHM6rhegbsI8ODg/mIQ5DjK50l0ThcuRtHvL7ud2tIpxl/t31X5YR5m4AXexe\nKXGbnS+i3zQjtqgdbejBR5KRqcCrOnZTU0gMRWt3EGE03yievjQAjqUMBmgF\nf7NPUw94JvSe2Xph14eDd1nlyUBr7ZJ2dSuD5D6JOGJdsnT5yYj43wbLM5OI\nLI0KDHFlvsORX+kW6lI9sGdprBShxumayQF3iu6btTq7GqRT5AfsPBx/18/2\n9um+zdzUWPpQRC5td7QwOZKRShmZKdRky3PujXm0quksH0R9Kb7qDehp+OAS\nODFwr/1No/5jZ4LLQ6brUwzsIMc+ILIys5qgvlZ+8pbOaKGAcKD+I3Ssen4e\nmH0TnSkEjBS9XOfGXHuWHlRHf4QD9jPfpkPV7zXLbcuwBuHlbMkoelue7RpT\nKp2f\r\n=rD15\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"87fcfa262498dee051bef9a0a8e8b8f39869e6a0","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.d6315efe2.0","@material/rtl":"6.0.0-canary.d6315efe2.0","@material/base":"6.0.0-canary.d6315efe2.0","@material/theme":"6.0.0-canary.d6315efe2.0","@material/animation":"6.0.0-canary.d6315efe2.0","@material/typography":"6.0.0-canary.d6315efe2.0","@material/feature-targeting":"6.0.0-canary.d6315efe2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.d6315efe2.0_1585339001584_0.1384901610661562","host":"s3://npm-registry-packages"}},"6.0.0-canary.a3016368d.0":{"name":"@material/floating-label","version":"6.0.0-canary.a3016368d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.a3016368d.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c175059fce3ce71c43dfa37343d2d6d5ed945220","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.a3016368d.0.tgz","fileCount":34,"integrity":"sha512-CvddR0aSm4uy/ZF7yqJxFPRrQzISslQEz5qjqLzwzd6SGrGcznWLWBI4d9DQ/t46pgLI79ZLZhHetYHsjKnxiQ==","signatures":[{"sig":"MEYCIQCS/i5tKHRGvl3eOO1n8kzfuG7kfE8YKCEBVbzOUDRfxwIhAM3lV2SFKBLyh4+qDMcrlsapjSYh1rIhVvYB8t1AHxDV","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192339,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJefm31CRA9TVsSAnZWagAAmLYQAKLWk5gLzPhFV7B6yyaO\nijvU4jh1Crnl96vUeF8/oY0gY6wmGnCWWgaS5ivYNI7/WeQt/DvynNPWg8ju\nIB4NTquTtSptXWAhZozYqr69xrrcJ+lQEgNQdIVl6SYW36wZ4TdCihmjaFW8\n5drVzm9qkm8UizquSPczKXaNkddwlrJ6nfuyIX2ok15U8XrN/Lx0z35EqgIj\nBGVUtQbP8wziYIvSN09jcD/SZbu6ZE6+dSUmsQqnGpFygDnQHzmNnjMolMhz\n5tSH9cMrPf5gSrMNxGSgoqXD7cj0PgPLfABbFadPyhBgtwGt0qmOM+ou0Nh4\nAufSTFDXbWnaI0oUHJF+tik27puF974ds5TiknTCwEVv1nb8zXm1YdNEJaV1\nIHcG7eA8dwUhHWpusSCcRi0akm16HRP4roXfiLfD06KGs7n//fb5Fr8ZeaRd\nik8gxnSJGxMqSxovWPidbcrRN1Ykhk+YEHvgwA7bB9vN6sXgT+/s+9YE3S6U\nIYPeV1u+4iMXBfInjUJxDvFj4N6k9oPCaeveoG4zPLTgzth0FFkqJCSuIcMi\nAM0gtNrGrIXfC+v5FdhhjWoa0D6CBEkLMm38ZdRhe8u/1dr346Sxab0AKXRY\nmzk2FasZrBe5yWBTUfvY28e34Dd+s5ctbgcS8nBoL2W5bPMnjvaBJIp2D/QM\nTShm\r\n=YmSG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e41b28d8c25aa5e36e88910a1404e7a0730c5d2d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.a3016368d.0","@material/rtl":"6.0.0-canary.a3016368d.0","@material/base":"6.0.0-canary.a3016368d.0","@material/theme":"6.0.0-canary.a3016368d.0","@material/animation":"6.0.0-canary.a3016368d.0","@material/typography":"6.0.0-canary.a3016368d.0","@material/feature-targeting":"6.0.0-canary.a3016368d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.a3016368d.0_1585343989465_0.03719580144653012","host":"s3://npm-registry-packages"}},"6.0.0-canary.4b45b6620.0":{"name":"@material/floating-label","version":"6.0.0-canary.4b45b6620.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.4b45b6620.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"67b19b81062dd46db7b0786442b151c5fcb57fed","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.4b45b6620.0.tgz","fileCount":34,"integrity":"sha512-AgXg8gHnvoZPvoXE9NtDww5S94l2Vgmr0Td60JQ0f6WEXE50EHCaD+NQwYQ7kB14DDlVlBSaQwxl3feJSC5Puw==","signatures":[{"sig":"MEUCIQCoymc8ohMAP4eDY1OiAYRmXjQ5Mgin9G+1Crj/uwwwFAIgHYMC9XPDxNYDJvkPfchSYhEZDKWd6TYOLQ4iu81m29E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192339,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeg2g0CRA9TVsSAnZWagAAOPUP/3toYL6q75OZlssoLfVZ\nt0oLAQXY6jZsDu/lnj7LX6XymvVPDAUCfi+msBqOI9QaUrUUQeOM184ntzWl\nPfx8WZoFV8gdj4wrkuJIoWIcgPRsiZPXHzZWkuQfpeHrwp45STSL/Dff9/9X\nNqLy5iJX6usyacnqVkEDo6Zamx975PjqbUKflqQrg3/VW9t6c8K0FdzQcYPG\nPo8i2hKhchQjpjkyLUXSyaRuDAYltpCpIBiQYN53BtuTF9WfTbQtoT+wzWSr\nVMVVDjZ11KfLuj+6hStgC6iqrV1IgHP+tuob5EZge/gd1VlPOastyOEfkbHF\nNNw6TdRXyrIEutBUCRZ+E2ENG/sE8hbwHg79pxRlmRXq4oEOXeErwsBhvW2a\njKQjvNb61CKC3pMIbUZ3EZIeNqe9AW/5gYe9uudRekGYTPk1rHNH0KtJR5iI\nAdODIXM2qc/Qmm4/gV4ZiFY8aALJgG/l2VMT9Gz5OMVfRjs4URu7RfAEmLtT\nx2M7tC0+6TiyHRHYr7Ea2T8Y4Hy1QmgKN8kJTERNOuHqSd+NkUxizAPXgNxk\ngfXRg2YRBcZVj5sRekPEJZxw0gAbGCinpybBo2sgjExnfwqUqEPbvZ1/ECUv\nmy0NJ384fD6C1jgUoDZO4Iy4/tKZqWJVCEpc2WV1aujme94kWyB0m5z2LjEH\njQmn\r\n=pgwq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"9d49d0fd4e563f312e9b2a25d111cf5753591eac","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.4b45b6620.0","@material/rtl":"6.0.0-canary.4b45b6620.0","@material/base":"6.0.0-canary.4b45b6620.0","@material/theme":"6.0.0-canary.4b45b6620.0","@material/animation":"6.0.0-canary.4b45b6620.0","@material/typography":"6.0.0-canary.4b45b6620.0","@material/feature-targeting":"6.0.0-canary.4b45b6620.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.4b45b6620.0_1585670196069_0.7939861942542981","host":"s3://npm-registry-packages"}},"6.0.0-canary.e84b9c8.0":{"name":"@material/floating-label","version":"6.0.0-canary.e84b9c8.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.e84b9c8.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6f1db51538da0cb3b0996a2fc0f1ac391ace26dc","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.e84b9c8.0.tgz","fileCount":34,"integrity":"sha512-GCuIDe+7q3HEvcGB1bsjPAOsz34CRDctFtsy4XojhCOfU4RYyaz/3H4ZbpENkxR4120JjQ23+G0SiiTNpDvtqg==","signatures":[{"sig":"MEQCIGlCj2VACA7VIoGCpz3mS06Y0k3iSYdyO2ueQN2lQhiVAiA7W7cjObqec5JUiNu/j2M/ploK8HyDq9bKK66+IWW14w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192426,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJehMetCRA9TVsSAnZWagAAv38P/2E4GvdMgsj/IndlxalH\nQ/uOPgeohSiGHaWJt7k2AIpN0iyjPbWnVu/lNLkxSXtmJcot4kRB1snsPD9U\nzTuDdZqtsTopRXeFEybkdWayHAdFE46gNG1oOCTCVxUya0w5rDnZMCgZ7GUh\n+gHSsVJpMoFw4flyzaabRiAEXKCfDe1dmKSAttjQH8R2tESeuBsyOqCv2ri1\nI8MHUVYVX2a9WkXMfnZiRjksUUyrxLRss9KgdjwHhePnLmwWcDk0taoZhY8m\nZZY2GX9GAtTDohSuMvL7YsxnuVuB8NKgDLn89KIQuCcrCmDnPLgd58HUCfVj\ntlhvpS+O1bz2IUggnSlUnbKaxo7KnHdg+2irAd9+F/DvW63ErIeXtwoga3Wc\nd8xUiHmlmxXPXAXk1qkSt7Ustth8FVx9dRGYxyMd/wecL6ejX0hJ3gs95a1d\nxTUzRgru0U0f44B7hfREseBMt9O3zSePthSnP3vNlY32maC/Ty8YK9M4Hh40\n7Hf8IZTSRosjSw6pJ0txI0xFuUM1KWktaTCGeADH/pxM2vqw4L9uXJNYYRPP\njHxTteHcGQ/70hQnDfowMV0FpsWNRa9jJDs8D5alfykWaud5FAfhW1aJB0Zq\nov2BnmCyfkSwioJB9mlbts3pEX1Uby9zDH1JSRWiKZIn/XRo1vuFn9zveG0g\nAQPC\r\n=We2Y\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8c119e9b02d2718e7b4df7fb72c1724650583b0c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.e84b9c8.0","@material/rtl":"6.0.0-canary.e84b9c8.0","@material/base":"6.0.0-canary.e84b9c8.0","@material/theme":"6.0.0-canary.e84b9c8.0","@material/animation":"6.0.0-canary.e84b9c8.0","@material/typography":"6.0.0-canary.e84b9c8.0","@material/feature-targeting":"6.0.0-canary.e84b9c8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.e84b9c8.0_1585760173218_0.7469381202233387","host":"s3://npm-registry-packages"}},"6.0.0-canary.e33c49e.0":{"name":"@material/floating-label","version":"6.0.0-canary.e33c49e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.e33c49e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"46d496f2a5e130c874d7f0ecbcf872dcc5e9d963","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.e33c49e.0.tgz","fileCount":34,"integrity":"sha512-4T4inqq4kUwkCljzbjnglA17q2Z23CJ4nIoa0t7RfvmBuaGn2ilyZJH7SqM++ton8QycM3gCQqNdJw6JPG9ImQ==","signatures":[{"sig":"MEUCIQDo4C8DfaLb3nFS7l/q9fCa5S8xAn6uASmbhPzeCRVa4wIgXVFpUBe7RmYxCBfTXXwwu6ZpmQ5B37cXck2URFX8jPk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192365,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJehS1LCRA9TVsSAnZWagAA4QcQAI8HSD9HWfUa1SIGUqhJ\nATFkef/umW+C8N/mZHbVfeHEQAEe7sv2XABXvTfo0VZ9/L7fIW/WrzyEOOPn\n27LzNvRacqa+l7lhus9UHuUvhRb/HddF4lMX+Au5auQrPJduKld6NswsG3hh\nMDVKEN4e6oWHqnK9pBUs8BXY5/wB0L3J/am+9wkP5gPH9mtHErTWwSlh94Gw\nC1mVSifZft83TeyW1+iQj/bmXxPZcNhH2vos8XVv8yFyz8gyXDVgVG9FS9SJ\nwolbpga2l3DLgZdxaVAYHqyi8PzAo90t2hBzbw6Im0pU6HsXdawym4Wp3kIy\n45YPFnE8xWozxVuq7Gwap/w1NT5F0rmzWf5i1ZjnZN2EvRdcB7zS9C0L6baH\n/hJwB8VB5mQP0VjEKB4UrrgstLK1BvLH+rbhfhVXc13TE3oMrxmtSMhC8L/P\nhG/cNOIZP4987ovZc6xB+krT/L7I1iQETw7jLPnsf8Q5v7T1ewa9XTA3Ruyu\nwPyjCBdd31SHvhRQvEoBCFrizDAPumOiRuY+7RGzGOxh9SC1P3AOATQfO+of\njRUDCztOk5UwmZ3Uq9pNDRk/HE8Yqck17XNebNRUD6996tZHOHeCUvFvhDFy\nWtLNYe50VbFr6RZyVQRds6KwxCQ/ucoJ1xDfSJwQXshiufQ2zNwy4UicgjMP\nN79N\r\n=G9qg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e369357845cadf1687509d31fac95d3131a90718","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.e33c49e.0","@material/rtl":"6.0.0-canary.e33c49e.0","@material/base":"6.0.0-canary.e33c49e.0","@material/theme":"6.0.0-canary.e33c49e.0","@material/animation":"6.0.0-canary.e33c49e.0","@material/typography":"6.0.0-canary.e33c49e.0","@material/feature-targeting":"6.0.0-canary.e33c49e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.e33c49e.0_1585786186705_0.34921368415971377","host":"s3://npm-registry-packages"}},"6.0.0-canary.f1f8e60.0":{"name":"@material/floating-label","version":"6.0.0-canary.f1f8e60.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.f1f8e60.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e1e8e7ead1b77f2c7962cae23c40228ffd473c5c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.f1f8e60.0.tgz","fileCount":34,"integrity":"sha512-Kny0rqwd7Q7wAzunpCLc0a8hRpA9G3OFipJDLjUf48kXuRNHgO03y/NDXrvh7V5paJC7ZxwqQjUytmroI26b1A==","signatures":[{"sig":"MEUCIAoGB2yFJdWK+6x1W4q3di665A6eiLz3yaA9e9iiP0rNAiEA1+x05kwo80sSed7do1rxZLFsO9qwPvTwNQxpgynEbQ0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192212,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJehjmECRA9TVsSAnZWagAAhoAQAJkTT3UC2raYzTZRqUyF\nZQibvkzSn5AUwnleHT7Hb+5M8VZAudSD4G18G2w1GjYBDz1q97TnWWLIcDGM\nPUHgqgKics3ffNsHocc5pBq782c+CHw4mIe22fK4R9Tv/JdT1ihy3V9X9WVk\najfm8FE6cTA25XI1HYUrgJtXC0PQFpPsX4PdJfYW6f7apGTCsI4N2nBvzwzH\ndZ4+CLLrZ6WlaXmACzeTYEouUz73W3+4reNk2OkpOlLz2fePkhwp/BSuEgJJ\nOOOsQ3qTXgFg/csDf+eC838MPlyh3kfebMnk8BMrtM7KNn4O8/3kplxIvHnO\nBVkbdcJPGJ8KyUXftQLD6s05+Z9IqFb+wdvrmpyN6xgG9kN/lH4kuEYOo1vG\nf0iKzGWb9jtEMyXVsC0Sn3Yq1pOjIk49fKwyb1iqe+9g1M9gc+aUbYXV73bg\n+px1pcidnZfSe+kgvrKqMX+uxbCSr3Sie+EZomh0+znV+00o8gH4TqXPd9wv\nsarvnB/1Iz//D1xaCNOfwQJVXjIPpZ6iTsgpOLObSKMH8HeQr7yYz0xILMbC\ngkkaFSXGsTd2PhORSCzmj7cV9H0D6gQMZjDFeL2UfKH32vSU8gN7mlIzFoda\nmFb47DVzCSWKwk8xPajHYTGVazrERtM3iF09LeupJPr1olvMIHKM5iLL39sH\nBjao\r\n=1eCS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"aa365c532331b10b868579dbf1fa4335e9499185","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.f1f8e60.0","@material/rtl":"6.0.0-canary.f1f8e60.0","@material/base":"6.0.0-canary.f1f8e60.0","@material/theme":"6.0.0-canary.f1f8e60.0","@material/animation":"6.0.0-canary.f1f8e60.0","@material/typography":"6.0.0-canary.f1f8e60.0","@material/feature-targeting":"6.0.0-canary.f1f8e60.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.f1f8e60.0_1585854852003_0.8521117587744764","host":"s3://npm-registry-packages"}},"6.0.0-canary.1e17c49b3.0":{"name":"@material/floating-label","version":"6.0.0-canary.1e17c49b3.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.1e17c49b3.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1b90d861b44f9331b7cc3f93a5aec3c476a5bfba","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.1e17c49b3.0.tgz","fileCount":34,"integrity":"sha512-pVhvtzRIqWWwcO10bkFiikyBPmFfXOm39gXV6hYHOguxnQDo+VtXC/95WInLey7mXpk36BT9ixeXREDfhNowfg==","signatures":[{"sig":"MEYCIQDCsQpw3T1TluduYBWGiGAD8dmRSYk2rejrcumD3m/9WwIhAJkDJxs037JkkEYcQ8d0dsFMY6WJglyVja3x9X865lIP","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192339,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeh3qmCRA9TVsSAnZWagAAu+YQAKA8WknSVQGHqHGFXx0l\nKKGW/q0mqPrjNeyTBwSvpvDAhmcbX964OXCxXo03wkF+jrIGDlzH5ng+FpRE\nK1oke2jgNXSHRI3e0HdIMBwv4Tnrl4c+FQDxvIE2z+OZ6r2A7hPNVnRQ3usM\nR6xAzjLLsaxUStMBpvadKzEvpel/hDpXBpFZBcDKWHbaETPpuTuVrtNSPksU\n4LL55RhsfS/ybgkPJnLrv51oLNzD0SaLOfta5+mqM5BRyL8Rqa7xoDyK4BkC\nyZBYGiXw5PwrsF6iAw4klqRnIylmDAnh2b77WdEITFM92i6rsgDApuSPCLTh\n9uf/3N1KxuFqWKUs557SIN6Sge39Ln15Gw323IyDrEK88UYx5indlctlrsom\nv3mCeaxI+ue535e2XBFkm4BypEYrO9d4sECTWxMoxFgrq7L+0hO+IjzYqCRC\nwICD8mGZLtEnVgtd2yItBXgxq4kosi6Dx+jHFgy6ke8jkv1IY6lGep2KVurb\nGHHY0YjgeV5S28u2ZyZQAZ1x9xn+Kc5qP6X8P7idcWoPxK4NxpWzVM9n3LDn\nsVmsU8Kothl4x2+Ldb3B296O25+NCcjs1Wl3IWo+d6x23u0LCbXcw3997eB4\ngd63qudBJslQvIlabJpbQK1AlxaK30+TEp6Vtc6BFHlY6k/VEDz13Qga1vKv\nU2OE\r\n=mxuQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"08bf363eac26d705e8c4b0bcda91042b9c73f82e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.1e17c49b3.0","@material/rtl":"6.0.0-canary.1e17c49b3.0","@material/base":"6.0.0-canary.1e17c49b3.0","@material/theme":"6.0.0-canary.1e17c49b3.0","@material/animation":"6.0.0-canary.1e17c49b3.0","@material/typography":"6.0.0-canary.1e17c49b3.0","@material/feature-targeting":"6.0.0-canary.1e17c49b3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.1e17c49b3.0_1585937062131_0.5476788054135953","host":"s3://npm-registry-packages"}},"6.0.0-canary.6a40ef217.0":{"name":"@material/floating-label","version":"6.0.0-canary.6a40ef217.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.6a40ef217.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"85190abc767758e6b60b8cff6eab25dbbe785bbd","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.6a40ef217.0.tgz","fileCount":34,"integrity":"sha512-qc/BE6UTKV1zh5aC3HOMD37OU1oqEHA8g0v6ZTMgyepqP2Y5VSI3/Tdza+804WIXBFlZvbGZyZRZA70HDC9Hgg==","signatures":[{"sig":"MEUCIETRfKnajKsVRTDoLAgZwq5MqEXL8TrMMuesbru1dVeuAiEAjvR/IE3KL39Fl9gi415LncdT7aguOTDxuby7hF5xJHg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192339,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeh42JCRA9TVsSAnZWagAA9SAP/2a55ZjEwKhVAZWJQBCe\ny2RkMrLzwIhVXi4XqEPSwgb6/4Tw+5OLx1JboUlczERefM6DEMyHYAZhHf0i\naEUC+00DFUi3Z7FLjTxUtuv2wg9dCDx0n8B1eUTQrxRkkStdMmFBNH5AYHlA\n7yN6a4RAFCkbqxUINLcoDFUDUp7B/N8NRct9vZJoDA1jBnpoa5fID/YbmUPt\nr5KS5p9r/LSb7Ctt2uYqYQYJgrq7chKSBtVeQo22m3ASsw+ly+5W3gZjorWf\n8HQH3BSiIkx0tSvVfXNa3UiZmhk/JqchgtXKjOo+Z7+tahXbKuX7gEt7Wt6I\ntNviSmqgeqoivFD56mwRNXKVJLE6m9/GpgHLOhVVGB12xG7pspl8H1u1Pd8l\nm24nIeNjfLbVpgSkMXKn+COmj/mZs9z8Lde3HTp8UQDiJUh+Ceo3/3fUv36g\n266xw9JIefK6MWPiUnWG91FUMkaM64lnbz7j/E8UCbQYfJAhkD8xdNmNYPQY\nPQz2PTKIaJILTjzy00fZYwuuJhWG+tXEWr8JhZpzaMpUfv9elMEuqcT8GVlO\n74HbPuKXNL7bjb7dyN3bmu4WD0I3Y9N2CNDfl+TaqhvHeZLA2yZptHqg+oC/\nHW3jnE34FMiJfRYhe7osmONoA14W6nJkBbgNC9eKirRilh1569BiGJHJHmKh\nL124\r\n=WD4I\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"94e553cfa7e3fa8977ae7bd2ff7df4021f815787","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.6a40ef217.0","@material/rtl":"6.0.0-canary.6a40ef217.0","@material/base":"6.0.0-canary.6a40ef217.0","@material/theme":"6.0.0-canary.6a40ef217.0","@material/animation":"6.0.0-canary.6a40ef217.0","@material/typography":"6.0.0-canary.6a40ef217.0","@material/feature-targeting":"6.0.0-canary.6a40ef217.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.6a40ef217.0_1585941896849_0.40903047197721065","host":"s3://npm-registry-packages"}},"6.0.0-canary.5f24faacb.0":{"name":"@material/floating-label","version":"6.0.0-canary.5f24faacb.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.5f24faacb.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"68018fbee750bfbffe7d2b1c64f20414afa3b0de","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.5f24faacb.0.tgz","fileCount":34,"integrity":"sha512-IcZ2dU+5sJvKoSomhLl24AU6PRyi1F28SjYM+hShgG/UB56c+XuKK3mUBTdhgimz4OPCFA1LYBb4TafyjgcnWA==","signatures":[{"sig":"MEUCIGoDo5DFIcAmoMVgdzQmFSVNt1SVbmmkGWSk4Fj9kGvqAiEA6S77XdeZROyIveBygi8KJAppThLCk4jDyOuXwZ4SOR4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192339,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeje+cCRA9TVsSAnZWagAA4BwP/ihYq8avuZXRPMF86b/q\nguD130lPDMOHEapOsexXIhiVH9ji7P3GdqZtAeCUwIshA9xIOeloXWpuMT4y\nywq/pU5x61x0Y3CAG85+mL30NBImtNtIGINJZ6yuhskVph1lrnCC5waV4I2W\nJZOc9l05w2w5fQlqf+YqvVs7oXWhBT/P1xU+12AVPRTz9PZ6wnXBw1NQLKN+\nmy3pGpGRQQmUBBtO8EiIS8k0LWyHnjNn/aagDrOdMJbSFNjVeKdJriTDvLIb\nzuB6fCg4vNAVLxwvAweeguXfeJFCMpqYp8sWj2RZ8AvCLuOa67E6ekZ1GhRK\n+ZbSRaSol1v6lw3kQ9RL7lEJZiS9C4d4k361Qikugz5eloMaZZmZd+RjKLeE\nOyIW7wpTQJV6qy1kX38iNeTyMgUYDN/GyLVtEr96z75LBvxLePGKovTjuFED\nENx4gabZhyfeeElPDJNmQqkY70OyemSiaRqxEblzT+WZp8cmflLkV4Y+4fZ+\nuAl7Cnr5Ih4+BAkaP3YEz4C6pIGf7H8SNmWoL29xmd8WfIaNni+fdg3Yen4H\nLZPz+YE6goj+/7WEdfaLKeaLKxuI7X1uNyH9SiSI0LN3DvjJoL4NMXVrbPbP\nyBRCpW9eQHn2kVVHX2tWMi58TfZ2HUPWiQbGwMIJsxNEZuIWjT12Q8C+Lg8y\naXQi\r\n=c/K/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2c7c3d8feb6b7bb5281c1144c43a06f3ca963316","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.5f24faacb.0","@material/rtl":"6.0.0-canary.5f24faacb.0","@material/base":"6.0.0-canary.5f24faacb.0","@material/theme":"6.0.0-canary.5f24faacb.0","@material/animation":"6.0.0-canary.5f24faacb.0","@material/typography":"6.0.0-canary.5f24faacb.0","@material/feature-targeting":"6.0.0-canary.5f24faacb.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.5f24faacb.0_1586360219566_0.37277985617149034","host":"s3://npm-registry-packages"}},"6.0.0-canary.82fa986b9.0":{"name":"@material/floating-label","version":"6.0.0-canary.82fa986b9.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.82fa986b9.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5d9b65807eca1f001f6d9047d5147447324f4164","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.82fa986b9.0.tgz","fileCount":34,"integrity":"sha512-HiCMvpdk/sDFBunVtd4+Ax5m8UcQ2RWDFyJ90rWZxpLqIvmAkL8k1tB1pV4Gac47V+rTcJKPC0c5vmN7KjtLQw==","signatures":[{"sig":"MEUCIEpGgdIDwsRkHkwj63Hy6pAlYyj2jtA78k6o4L7yOtr7AiEA8iA3BFB6noE2bmVZ7r7wAHgY9J2QUXuQc3S4js66VI8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192339,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJejfDICRA9TVsSAnZWagAAuX8P/AlwC9wyk1AiB2ZO5/D2\nsDJJGy0OiGIsR5G1AlTLovW6+L9SFIuh8/CtjtL+btLnxkzZRrDdsgxs5BfR\n9aUSmnWkejxdX7UlnftZ3RKUQEkzHKgwXN38rHPXm2C7U3FLkmJz9XiyDL9Y\nyLww17LRC4ZRNT40+uNyuXLDtG7O6Xn51emLrC+FlSv0IlJH7J3+zPS7pC1R\ncBLTmzY+gAtLnQi+ILA67iv3QBb2Jokc/aXtin0UVvosLyVPJve9DR9whzdc\n2UwxoghEaC5Wg+yK0Oa/8DABqk0NK0ZPlukr/8cKWjmlYqmVpMVN1m7VNN4O\nae0bxnX0oTORK1TMfmXrOkjJ+iIByKIsLO4L5f/3Zup/JzDJZxOCJuamtZ3z\nT4js3VJQywSEIvoWt/cARz9vxhgNnTB3RcwyZczqUMjAx73cc85BLyt7UBvg\nSJZUTFqPM/Th9eLj/VS/8mk5AUCSktj1q6dxMmKvlW7l/SPxJMstihgyJlIw\nAnAUCFM18KH++G1sBurBaQIJ6PkDMZXGYt9mSc00LINNIj+gX8cyF2CMToHE\nEVxlfFgJKXACGVGvMnjhfaNsA9RIQFP/jailRdxcU8QpRzQx85j6pkoiyexE\n3+o6b6RfgNY0Rpfub2wz4XacbBmqcO4Jd8brmiRMxprU/8Jsk1I1+5vNnN+Q\nrlKJ\r\n=rAyi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"4fd9bd21072735eb447e594a5fade5eb1e846831","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.19.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.82fa986b9.0","@material/rtl":"6.0.0-canary.82fa986b9.0","@material/base":"6.0.0-canary.82fa986b9.0","@material/theme":"6.0.0-canary.82fa986b9.0","@material/animation":"6.0.0-canary.82fa986b9.0","@material/typography":"6.0.0-canary.82fa986b9.0","@material/feature-targeting":"6.0.0-canary.82fa986b9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.82fa986b9.0_1586360520324_0.49098163958234586","host":"s3://npm-registry-packages"}},"6.0.0-canary.9930d9cc5.0":{"name":"@material/floating-label","version":"6.0.0-canary.9930d9cc5.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.9930d9cc5.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"15cb4c7161828bea6c93445d03ce07cfda680115","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.9930d9cc5.0.tgz","fileCount":34,"integrity":"sha512-CtOhuVseyhkkI3l2M/k7ns1EPIpVTJ6LK5AJBO/yZ4ZssPV4a+xmgcKwHSMhn+G4XrvVInTiq+/GaHgfyThUVA==","signatures":[{"sig":"MEQCIBLPb3joRfPl3Fp1FFhbcjOAt4NNvmTeo2rbLRfJbtzAAiBINIhZMFvJF48cSPB/b6f23EU0kIHeT0h8POgODuWDpQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192339,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJejibeCRA9TVsSAnZWagAAGqwP/ioXhS99PEg71rCzRowt\nzGfDbOhu72vkJ1cK3CkL2RM8dWxgc8VDVhjoyLJs6UnppxUnnJvM0woGC0l0\nbqsIYT7Jl31qLU8h7qaUe+2OCmY7ZiucOFqIb3mYd8n4HMXRtU91wmvJUjNS\n0z7iWucQb0HxwYRBCK8TXHsxnD7tET9jcqZ+z7mwPz07sTdlZ7RbPsKuoJ0y\n0TzVhoOWnFUX7+6ViA4C3Kbi4p1WbzCfM1QGGja9LlAvhOBPKVIB3zrD6zCy\naAhyamb3Bwl5ed+DUyuw2rRZ6Deuq9fSTgUMAabFjXngDgJ4fVEd59fuA2D5\nwjAOg3rZ2+IwG+eCBDBNfaiNHajay4vAr+dV9NFpDJajaLt4tvUKaDIFxzN1\nNUSsF39oKKW7eoXpdPfP0uzA5xaudArU5Y8Xgn7smZEnLm0YXg2dYvhwa8x4\nwysVbxHBLdb2H9heWNIuP9hynCzev0eO4gjYbTESssof/PPKU/JpSiMzlHyO\ninNe3bHg8O8EJNhuyQHQS8WyX3Nh0tw1OuldPc+TZJoGiqRnm21Wv5DROOMC\n9Oj0RMhWvNEDzANC+BU5QpjtmgX2bhGa4RYKzy3mje01//BoVTJjuAqTZmsj\nljZ8V+TR+6ujPoo4wFJB1Y1mXNANWx0svoophU+UR702q0008txx+xKpU8PG\n4a0v\r\n=RhCj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a0382987a27373aa348015a5e2529f301f638d57","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.9930d9cc5.0","@material/rtl":"6.0.0-canary.9930d9cc5.0","@material/base":"6.0.0-canary.9930d9cc5.0","@material/theme":"6.0.0-canary.9930d9cc5.0","@material/animation":"6.0.0-canary.9930d9cc5.0","@material/typography":"6.0.0-canary.9930d9cc5.0","@material/feature-targeting":"6.0.0-canary.9930d9cc5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.9930d9cc5.0_1586374365764_0.8778647449657089","host":"s3://npm-registry-packages"}},"6.0.0-canary.6601d24af.0":{"name":"@material/floating-label","version":"6.0.0-canary.6601d24af.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.6601d24af.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7f60a4bfd759ea00f6ba089f6499be3226f9fc97","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.6601d24af.0.tgz","fileCount":34,"integrity":"sha512-fFobzfWNfPz/z6rrb2PzI+fpf3hHedtnCwjJfzd3fIsNkVknnp5K7TUfkFDYr+tiTICkzRdHlxha/QWNBtB3AA==","signatures":[{"sig":"MEYCIQDLpjq07dzsgH6hX18HAAULKxnkPD1dfhttLNpxELVl9AIhAIPNupp3Zw9p4MoXdKBZExv++CxpOd1bIqOjlmJQalXZ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192339,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJejmyTCRA9TVsSAnZWagAAU2MP/2Lg0cftaFajQU1wEXub\nGKUp5nvnuIFOVi3onAxo5zqAnE8815U9d727c6rh5dTsSE28Mcgd+cTNz++w\nkL5zJnAxGRiKY3DWTzJAylDBrYgaPGYh6RRKrw+pFbqw2jT53prRQdW1Cy6M\nNPfNls+b6ToJ5Ho7mRlOSdcHQp67OjEBNCK88pAY40GoLcNI6kIunQADHdCJ\nvAn1gEe73BihdtX7h5F5muuT4CJDjvLqiW/lZFg0wsBxO3m6UbKsk8ZOWu2k\nGJs+zBR4co+5ZqZKF7Coj6NdA48yKOmUi7vJ51+tyUBq2M7/Blx0gmce3vSg\nj9ivfBu+Ln6Lg9xHjcqllv7suu6s6JRQm4f4tkLf+oUQdqJs1eVQb+cNUowS\n2j7glh43nn55Wbfj2VDhMmC0Rd67Ed1gHP1lVm8y1g97x/+uZPLjw6I/XOwZ\nKyfKFAG1ZFZo+t80YoGZmtruZ8g8UM0gvb6BSZ3A7Wg9Nmu+biK8dQDaHgBC\nKcbKjiYOuUofRWJG4uoMJGPLOToYCKgSGc1lx1mfFW1J7SbhUur4LsXpJR/i\nM0xK3n5SElGIZk71OFR/0OTtln4f8TVoD6+pss6IPBSwiSD2PxT/RLLRphCk\niGH0/8df9Nz12aOnGOXcjentURYP+tvG3/9w8GEJcx4FxklAso2oJFbGEr23\nbvWz\r\n=w7RK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f22a45db8a22981a17395184998a94e6a32944c9","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.6601d24af.0","@material/rtl":"6.0.0-canary.6601d24af.0","@material/base":"6.0.0-canary.6601d24af.0","@material/theme":"6.0.0-canary.6601d24af.0","@material/animation":"6.0.0-canary.6601d24af.0","@material/typography":"6.0.0-canary.6601d24af.0","@material/feature-targeting":"6.0.0-canary.6601d24af.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.6601d24af.0_1586392210840_0.7931031886100977","host":"s3://npm-registry-packages"}},"6.0.0-canary.05f5e1583.0":{"name":"@material/floating-label","version":"6.0.0-canary.05f5e1583.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.05f5e1583.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2526eb53e4819eafbbc1691f2bc6bb7a5cf0ab16","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.05f5e1583.0.tgz","fileCount":34,"integrity":"sha512-n6AH6Juj4+1Ji4VssT5wfuRJXnGagX+KdFMMemO67PcI4KDPybTEZotL48DyjwAAU96qTkNBh5dCeQI6saBl5g==","signatures":[{"sig":"MEYCIQCoECc9Z423o5fxXzL1JKGGetRTSiJR8+egtRQqE5wi4AIhAID+bZzJLYJ73iHxo/rIhYnKDAKxwlJ/2N3ggMlf0oAw","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192339,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJejnCoCRA9TVsSAnZWagAA/9sQAJzUOlgvVCVKHuYwjnXW\ndjGSJk1u96s1Kbh7osgdO+HcizQKi1oiNrtzA2wXzpeeu77d3gSp0sMYvQ0D\n75e+RVMqZFbzwCYYj6lMNiZzhL0JuoabmDUtfA1bdEiSqJt9a6n4++oX0eKp\nVf0SYa2fqmnvhqwTKw4E7DuAs9CseNb3ayabIGX7Phz22OZ4n01Ou7x51fzW\n3+w9nnylpLkJCkA+x+wgWZL2AK4iT/FIqNgplBEWcPqwUP3pETF8uKQHjQgI\ndBDq8a7wTfKkkcTjxs07p7Q7OTfQzCjy/rlwT51zgxNIooZSnsrXMgkZmmmP\nxIfHFkKA7n6eklIZVSjSjd5AyPKEip9pLx2EjvIf+h8DzvbngKTVLQPZ9O05\n4qaS7IYw2mSoPc5xUjDvUd+EmF4i1oQBAqGet9Jo6ilmuyoLhY6ulOXPHJyI\nKo0x7mof3D3cp2qFtQs7MEPhUgoUJ6K7DM4Xtbx0Nu+mFhg/jqdt0tolvYct\nVR/PCSikshWVblU2GQbewS6hQ7q1hLqQj71Zkq8mkwgOj+rKAeIn9Hv97pOc\nOM3/GbjkSLWU2PqmfWw7D5qocBFOckvTRzYbqc1mty0qDmDjPzNlN6s/u+Ve\nM8AZlJ4LyNwVldFpkGu96mR/s7UrfoAh06HTb+qAFOqHJhuFvOaQGZ9qSejV\nv8O/\r\n=QdIm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"413c1908165c032ac95dc5456e70978d3994b6d5","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.05f5e1583.0","@material/rtl":"6.0.0-canary.05f5e1583.0","@material/base":"6.0.0-canary.05f5e1583.0","@material/theme":"6.0.0-canary.05f5e1583.0","@material/animation":"6.0.0-canary.05f5e1583.0","@material/typography":"6.0.0-canary.05f5e1583.0","@material/feature-targeting":"6.0.0-canary.05f5e1583.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.05f5e1583.0_1586393256163_0.025122253125219984","host":"s3://npm-registry-packages"}},"6.0.0-canary.bce00e186.0":{"name":"@material/floating-label","version":"6.0.0-canary.bce00e186.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.bce00e186.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a64b24be7a2119c1a18e3e263a1d4566bb91fbe7","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.bce00e186.0.tgz","fileCount":34,"integrity":"sha512-5wNPCEue/bjHSxpH0ay7KuiOCbKEDZO2xI54h/DSq1XJCzkc6LsyqJln7qwd/eEYiXgDv9igYOkqmIyDijoDKw==","signatures":[{"sig":"MEYCIQDlr5O0qMznENd8wkjO38rIZdXlUmSKzIBAKrYIVaKf6gIhAKi5RiFBzEHqze0aq/uwuxAqyU++sDxXzsQa7cqD5jFR","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192339,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJejz3sCRA9TVsSAnZWagAA8z4P/jRuSRWkXxbUSH0gcZlx\nteVBIP63cV/T2Wl/Tc6Gtw3DtkPmgNJGJqzXMf9wiX63fldGfydfeHeSh4HU\nD9pEYczOyTp8h+wSXt7rICp4xGtevRvur5wN18n8hASxs2F/UQQGyZk1tRDb\nPEg9sI1qJncyNfU0GV2bRR9zNpYJRgUWYfDoNV0iExynI5AOOSNxYSBFkzrj\nOZT6YhIaYc8Fn4QFDTUgAYK+YKL4yv9zxRC/DQSd7zPZC7di4OVk2YtIFKLv\nNYMCcarbQkZNAmnO71STgEP/ygcgPY1I7A8fbipuzbsrirETTiw4951O0qER\n2L04atFMJRPh9mh4G+uLXsgPPuuZVErZS+M5l4Ujgt28xw9KcRCIXiud2UwM\neLZAAX9nlSvhHXHME0CJQOKHjpB2MZQWyzmHJSUNGcUP5QCo4ZfTEk9ZUd1O\n4nNtE+XAzKSe0G1rGhNgq0rFW3e1x6OQu37GQKEeKRcBlZzNXuqpX9DaBGNo\nAPSEKIoO6JpdaC4IdFwoWVjZT5jhUAiz+sZg5Phhln886xM+jwNiHc6e4s/x\nEZCP3LXNyJz567mj4dtj+2pBs9Qe3jy+mad1j3pWIs8LPQ5a47ngZz3srujH\nos/drJ5LOtXNPqqNRXDemwDcIdePuZ+cdkM9SYO6E/PHsSBdk1Ge/Fwo13As\n6bn0\r\n=y9Q1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"36e6ce5271637d131432d915870da208d16bef74","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.bce00e186.0","@material/rtl":"6.0.0-canary.bce00e186.0","@material/base":"6.0.0-canary.bce00e186.0","@material/theme":"6.0.0-canary.bce00e186.0","@material/animation":"6.0.0-canary.bce00e186.0","@material/typography":"6.0.0-canary.bce00e186.0","@material/feature-targeting":"6.0.0-canary.bce00e186.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.bce00e186.0_1586445797444_0.3169404785019927","host":"s3://npm-registry-packages"}},"6.0.0-canary.927fa902c.0":{"name":"@material/floating-label","version":"6.0.0-canary.927fa902c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.927fa902c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f8a80885fa79a350e8edb7e2cc1d945e16b15678","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.927fa902c.0.tgz","fileCount":34,"integrity":"sha512-wSyd8DAsF+M8JPZyDD9OwaXHd/x7V0a0Q5yZ/Bs/Z+Mptx2nFV1jYMvpwyISTm6jFKzGaUiYdcWCQOzS9USp4w==","signatures":[{"sig":"MEQCIFfAoIOl+BHGJ2t9RB3rdKTKSe0b80zO6BWv3FEuVSDOAiAepacP6ib4IJY+ID7x+MTXnHXLGz3AlpUfZ0QIlXbGxg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192339,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJej22YCRA9TVsSAnZWagAARlIP/1wENUAaQ8x5JH7T9BBB\nueiXE3P3Oxr3VzBJMswBCzwqU2ZvI3zDDQZj+V0oWn2dvbs2FYrqhIDMSgrF\nMQY3n6BOlO/s0smxKT+AqWMKAeZwvhnkR3grSQOWNPSfdbbdU6JviiiyqXeB\nMusehWpKmjFqcyCUFg2itMlNc7WN95X3RysSogfA4xaBtaDumDEf5zYBQSzK\n46iZNGZtYSULvbei7LnnaJN+ewvoUDsQRU9SmEZbB0Xyk5DWy1GOhNmRNAYQ\n/c7c9zzcPEoyP+TgK5fF0vELujhYLg/b4KaTjcSI6i5QRjMQ7t3CSS8Mg8Uc\n856h5EzUvcSJtMnyA6VMWBcpRFfHtfZW/1yEPuJZqt6VwTqm4AeV4jRcvgpq\nVOXkPHKtO4qYrxpViEgrDaJmyOwAR2ogenYXjdiB96JNF4U9j2WYuAkkxJ2T\nhpSB3xwRbXBUJaOCIJbVo/dLP+FjY4Sn5gIsFjGVBKd0hJyHGkS+pjbnzupi\nhFnbNL+YdCDC3xjX+5mp4KgywQosB0s0yuRMmnhcHHBa17qU3N48SNiNKblx\nJXaRvj16B/gddPRIaa0jG87CrEx4obAILK8stgGG37M5PSc5QAkau8MGA6V9\nwMwPrF/FDjHbMH9K2UbNOHXZtT3pv9WNr6BP2Z/+AnLiplI5bnTdz5+wGD9Y\naYrc\r\n=VZR8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"6993aa2a4786dba507ed6b641b4c059925b7ddfc","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.927fa902c.0","@material/rtl":"6.0.0-canary.927fa902c.0","@material/base":"6.0.0-canary.927fa902c.0","@material/theme":"6.0.0-canary.927fa902c.0","@material/animation":"6.0.0-canary.927fa902c.0","@material/typography":"6.0.0-canary.927fa902c.0","@material/feature-targeting":"6.0.0-canary.927fa902c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.927fa902c.0_1586458008078_0.1685108433409448","host":"s3://npm-registry-packages"}},"6.0.0-canary.eb28b6ecc.0":{"name":"@material/floating-label","version":"6.0.0-canary.eb28b6ecc.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.eb28b6ecc.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5583b21c621c094fe9028034841726e821b3b60a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.eb28b6ecc.0.tgz","fileCount":34,"integrity":"sha512-nbkODnz6UqerhwAH5nsRGInDk95rq1D9D9TrUpJ4dboHt+o3OtDefxZmCioSf9CK5YmTM89ocBHFHV0Oa5hQ4A==","signatures":[{"sig":"MEQCIH8uOHnOMEPIQxHv4jbMJVzLgZXZsMF/tkGKAopTLmv+AiBo9jwF5Yb/ds402a9CUQV3hDSnC83+x70g+4wJu/n+OA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192339,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJekMmGCRA9TVsSAnZWagAAvJEP/3Aetehz4Qhl7xfNxmHg\nUTDWGyE2mPGDEkITHywmK5W0iW9OKUS1spoB3qx+xGs3ADNMxpIwbaMsG1bX\n3Q8qm8vSJpN0A2DLX2hJJlTTzJyyA4kpSmtpa/BYLYa+yT4wtHskeDLFQOOH\n/8/CDcc+XeyPtJyzbd/s5D2yxsIMqNFDUg9u5oh2FVTdxqHYYStFPj3JUSvS\njwJCpQ+1gMbgsGB/Eo/p0C4Tr/Hr7e8EO8pa1SorNNavLsSdBG0p8U69hOWA\nYp6TZ/X6CrgRqpFEPRwWgFc5EWxXhEVB4E6v71SBvnHNE4OOw7uvsLf0iQXi\nLTjJeFa3kNsoX1iGFOQGBlA9/oyyok0Gp6rSGuIDFWtTHBHtJVQpioBxrLKU\nOYs0Bb+a8/6RS9QVAJr0E4Jh7QUG/Pd1W3CTzKeE9umA559/DwI9Q52UzGhx\npdkSIaORobPhzcpjF8qbzT3/5GKIUlsHSAr6fVTPgfOMwctoUsEY0PoA7+rN\ngft/29D379t/XqgUhzGM/IoSzdNcanMA94me2BHVVi3xYaKt33BbDBg8ki4S\nyKKjprLbMhmUOihfUuXCrqZjlH4StQkLKnEIUE+HGs+XZSEbSm6PbHsuUt+5\nOGWXkwxwWI60HjvBxrItfqPD2Sm7dKmQQfq7mI5cFEzN9ewGJHanGTO+R9Hx\ngsoe\r\n=Mhtd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"14b97cf99132f4a85a978c1799a668eae031d75e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.eb28b6ecc.0","@material/rtl":"6.0.0-canary.eb28b6ecc.0","@material/base":"6.0.0-canary.eb28b6ecc.0","@material/theme":"6.0.0-canary.eb28b6ecc.0","@material/animation":"6.0.0-canary.eb28b6ecc.0","@material/typography":"6.0.0-canary.eb28b6ecc.0","@material/feature-targeting":"6.0.0-canary.eb28b6ecc.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.eb28b6ecc.0_1586547078504_0.5330437025179369","host":"s3://npm-registry-packages"}},"6.0.0-canary.816a43b42.0":{"name":"@material/floating-label","version":"6.0.0-canary.816a43b42.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.816a43b42.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"395b9c5d51fc943da52727a351b9ae7509c93633","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.816a43b42.0.tgz","fileCount":34,"integrity":"sha512-j7RnrCXEmgUw186m1ORHv98RH+aT/MMZiAEScMltZtQsrmk2xnmSjplStnhBCswqZSR3/P8ElFvdCWgpXsS5gw==","signatures":[{"sig":"MEUCIDdAeXVonc5pslVzTG+yUm4D2fz+G1o4XhWCysnCLpjvAiEAgw9rGEckGOC0RtOi3eXfKE9SPzf9kzAbMJDOXvy21WY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192339,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJekNyvCRA9TVsSAnZWagAA+UwP/0LRfA/6wl95pZ/kxIko\nfrpdyVWaFQjA9lM3QvhLYkQN3cAvTxTDINTMs9c0s0yepioLAIeQowUi851t\nVuKUKfG4hypwS71Dlr8rjYeBvIsbyXWAbVWPE+V/WG3Z0JF2upe+Vp39Y90V\nUBtvcjT6zR7kiq0tGfeb6jVJwbjcpmVodloJsdE4UzdTgb5c6+K1+pu/Iil1\nZCr8/XPqm/0EFcIbM2N1FR0YHV/irvINEzkEBhLJUK7O8g7Msm3b9nQxXiNb\nvzvdoi3zYlc+5/ItCyiyWOTN6Yce2CydW8CqqwUGXigt9q4CwpZXlchTDZdg\ndPkTGIETdukfF2JZcSPkC4IPfdHm70Z9XqU5krIhyjmHVpcRPmSwDzGCGJAY\nvW250KNt0pJNrZYV7NfCNhsJ3PqxxBV1euFDpUsMY2Rq/yl9RiyuQEzuvda/\nTJgvToLOmvJ5BIAHTnKrSaqEc2nGm2xo3xgI8nFOXzJIcaQlM/rT7Zz+8W+r\nZw1iZM/GDgH0tUgKVu2VVX1fWkOxxm/QKqimkzLPwCzwrypCPZ1OXWE9vBFi\nWMSpa0wlVbvcc6XmkzF8z2+gEUpk9oo5IqC6NOLeDpxaBni8uvJGIlbyJRo/\n5PXcuKZdMU9GM95hfyE52ihOgP/JwLDzSig3USqoYkVpDeXHqnxuL3GmRRg6\nyqiS\r\n=p9/B\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"55d118d08a4432484dfc732189dae38773d1f437","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.0","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.816a43b42.0","@material/rtl":"6.0.0-canary.816a43b42.0","@material/base":"6.0.0-canary.816a43b42.0","@material/theme":"6.0.0-canary.816a43b42.0","@material/animation":"6.0.0-canary.816a43b42.0","@material/typography":"6.0.0-canary.816a43b42.0","@material/feature-targeting":"6.0.0-canary.816a43b42.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.816a43b42.0_1586551982615_0.9776127048447232","host":"s3://npm-registry-packages"}},"6.0.0-canary.008c4d319.0":{"name":"@material/floating-label","version":"6.0.0-canary.008c4d319.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.008c4d319.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"0ea8db7ed0f1b2c5992c62215816b5ad9f1bd265","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.008c4d319.0.tgz","fileCount":34,"integrity":"sha512-snSvedSPPKNyqdzVtiklbMoRzs8tNevE0c4gl7APGbk9nZBjis5zEVbj9lfl5ZbJHHbmR38/5ow7UsOXRVBt1Q==","signatures":[{"sig":"MEQCIAjzueyXXOBeG1fhEwRF0BFevbQAGbKORRqGVL3ztPU9AiAJZ0fEAkGBAGALR+a2ywOMe50lYgsvlaw3zyjAWnixQQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192339,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJelJSLCRA9TVsSAnZWagAAFW0QAJWqz9lh1ibVelt6XJ2c\nJqPSnYud8Kmbm6S2n5+PrEI4WMWk+fRSr5lLKzpJQfkYamC/2ggKEBJGfLWF\nHatFAutLsTYJu3n0M/wENa3HoRZXj2I9rYXgeuiDdu18ZVq39wv5PkWUFqNa\nyuLLVtMoDuSYCt9cjqpBB2+V4uaNY5qonMMHSrZ9DGN1x5ntg8iwj+n7RJK9\nw0kVSmcXdMvi3iuoEpcZgLixJrku1OhtI91dgLzXqfVC3Xw6KqGEUZq+ZH15\nJ3TVWV0pqTq1IRof/jLg+qbsSZ8yOFamvtAutevQrHsgjAR0uydmH41bWPz7\n+TFLJ6/koTFUPBb38wiW1wXc63CdmBMwbwtu6FLLaElSwFURpd2Jp/GrniJK\nwo3hy6c7C50dYQ0TIFvovBC3Whb2YmX5Ux+2Yy7/1faBX+40vmSeFJNQAHZo\n4s3VDTT0ovL2m8LUtxHynrOACqddTVLR2Oy8m120Uo6EektTlu4W7mhxt8lC\n6U/qirBDWBH7V8BZ/1SMm7jX+2FL3nB149ogMyxvcEz60cKhKcNADjFBm1HH\nrACxQ/iPBjulYtJNytevkqinTX/zgIb+sZFFwPcGZ1qtcmu/QH5PdCF7eG6Z\nT8L1bkF5BK1p6ZLuEVut+JCf0tHI2hnWv5/7tMgRSP+krWUIkwvWEdOtwdPd\n84ND\r\n=2uJA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"cf7ff62c921da3167d96b5f7cc7f07ac2af41a19","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.008c4d319.0","@material/rtl":"6.0.0-canary.008c4d319.0","@material/base":"6.0.0-canary.008c4d319.0","@material/theme":"6.0.0-canary.008c4d319.0","@material/animation":"6.0.0-canary.008c4d319.0","@material/typography":"6.0.0-canary.008c4d319.0","@material/feature-targeting":"6.0.0-canary.008c4d319.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.008c4d319.0_1586795658906_0.5453344959854283","host":"s3://npm-registry-packages"}},"6.0.0-canary.cbb3f28ca.0":{"name":"@material/floating-label","version":"6.0.0-canary.cbb3f28ca.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.cbb3f28ca.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"94963c29c8e47eb70e84c8d70c32df936dee5ab6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.cbb3f28ca.0.tgz","fileCount":34,"integrity":"sha512-vEjJGluusqJz+m+7mjc4bQTVEQjNK6micNIfDKYduGYCkLLEKbCIZ3WeOasVWmxptOFku4kCnAOXCG7rRmmnQQ==","signatures":[{"sig":"MEYCIQDYCU0vv3HO/W6iuiWMT7D1/BoqmZzlqF2jvnzgS/Kh9gIhAIWfkk83uTNOkNg07eRr+fx/QiC69EG3Wl/qGh/qW5zu","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192339,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJelUTICRA9TVsSAnZWagAAR+sQAJ7rpwXz2HXbLzBQU0mZ\n2TuRbeQqjlZ7K5ctaTlAy+Bj2Cbxg+yUw0zBmyzv+hgQAvj0WJUkuG/P6QL3\nBfgQ5+/Bhq14EYgcsWkYH3xXNSLWh1pq0qEuk9HxemGd+xQQFwpZhLf05OTe\nEJzQYefcmCbakgULpXJxOsmjuf+kKaxhsL9t5RD87IqSUbISFI3yqGDTi9A3\n7Dpu8exzCw7ZgF39VKBncuOFLj/w2xO3s2VwBy5nMmnv5SV4JFP+ZfUin/3u\nuwslGmrywpB8KTWtKELnr/jdw3D04prnEW88kGKVp8xqEwN/T4WHzUJSaS41\no0ZIKpbPwHrVfu9n3serXQ/Tb4AyggrbP4Vise7N/4BeXBHJuiSt7foVP1V1\ntNBjmu67s9tw/gvJtV394rNclbdGyquXMISUnMl2qiysMBhC1hz8d37cH57Y\nLBMx0FIgFdQbEBocOOf7B/fZ5UanmFaThiuLPcalSTOKAKLkZEbR848R3itp\nwMiOnTV1lqHPU5b3XHWt2BQjwcvSkykpW1vR13X0T2gJtX74VnTtnXZbmN4C\nfTj64HZrFRARn3GBfuyzn3KMOqMx3v2JRBIBztxIY46NRsfNQLPI0wdx6KZL\nKFytIimG6ujugYaKejTWVx9VtR7l1CAmsrxGyDURh/LfTPsITr7PIbyJDZu0\nx3Qh\r\n=Xtz+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b6cb89b18de9f28799535d82c5ebc759433a5307","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.cbb3f28ca.0","@material/rtl":"6.0.0-canary.cbb3f28ca.0","@material/base":"6.0.0-canary.cbb3f28ca.0","@material/theme":"6.0.0-canary.cbb3f28ca.0","@material/animation":"6.0.0-canary.cbb3f28ca.0","@material/typography":"6.0.0-canary.cbb3f28ca.0","@material/feature-targeting":"6.0.0-canary.cbb3f28ca.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.cbb3f28ca.0_1586840775959_0.6776158622370392","host":"s3://npm-registry-packages"}},"6.0.0-canary.f172b0f90.0":{"name":"@material/floating-label","version":"6.0.0-canary.f172b0f90.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.f172b0f90.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e8f1191eedeca48543021434a09cd177491fc90a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.f172b0f90.0.tgz","fileCount":34,"integrity":"sha512-V3wvA4F8qFl4cd/lp3O/FOEmaA9fYbnuV2oHalj8uHt/VHjAJ/e3PZsV1DFf6ESzPHAZMF3eu8dnyWjKyyedcQ==","signatures":[{"sig":"MEUCIQDnhdm3k3D4D3zc6SxMpuL90hDrA8xYf1nAEGHtQ37B9wIgENW9TTTm4O5A5wOXfVE+Vdzey7kYBjf/JdtV6831dL0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192339,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJelkLyCRA9TVsSAnZWagAAGeQQAJmFkT2zJqatWN5Edr4q\nIv5yxTrBRyV4zQFJGFyv+gZXkupcYZHzgqWMVvtoD4E64IcNcr2KDOjqtxxo\nRZV+9rx3thdeqWssSwU8wnHnMgDgrLRvfpt0I1ARkeqw7IgEyR0q/voigSXh\nAnQveeLNQpsZ39Vf28kAH+RChp7JCa9b/cHVmfdUzGE5WDuiWoLJoztusSff\nkMRfga5Ur1ZXB8J6LXgaheKMvn2CzQK5PCnoOUDQ44gdqq3yVa54os/2L939\noeGGDlpH9N9OSbg2l5AVQOpa0ePt9vwg11jj9/duu+S9zosPqLGY9mSc9Qk7\nWcdnmYHP9irpj3OSp7Dzfhi6zYBlDLvKvIgZYJ9UnYJ9CqkXkMtFX/Fsl8qV\n672NK9SKZmg+80Xp4+FqPe7TOhqNl/jXkb+Z0/Q/fevYePhu2U93wMhEOxSQ\nVZWbpP/lqXiBDE+V+N+eCEP11zUc2s21LFj8/Eu2MMU2C1zhYwZiITSc94AF\n9vyc4zqkCogIn/YXmp6ONzfzaHj04DnJAHHTKi6VC3Ep2qC1WMPv9B/JQRlJ\nMTRKX7yNrPD2FA07GL8gT+8xwiVlAUwqPuIU4e8RDwaX4pBFKIG1EhUUPO6C\n2wWszGSzOHHnSThm9nNkZBJZ2/Kjb7vd722MGL+MDbllGmv+6ZK/kUidH2Hd\ntjjm\r\n=UIXc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"eaad6fe33949c536d515e1177cbadf504619cfda","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.f172b0f90.0","@material/rtl":"6.0.0-canary.f172b0f90.0","@material/base":"6.0.0-canary.f172b0f90.0","@material/theme":"6.0.0-canary.f172b0f90.0","@material/animation":"6.0.0-canary.f172b0f90.0","@material/typography":"6.0.0-canary.f172b0f90.0","@material/feature-targeting":"6.0.0-canary.f172b0f90.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.f172b0f90.0_1586905841903_0.3785870128151938","host":"s3://npm-registry-packages"}},"6.0.0-canary.c02642273.0":{"name":"@material/floating-label","version":"6.0.0-canary.c02642273.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.c02642273.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d783f03df5ec881b2a9e9cc08bac2584c3359f92","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.c02642273.0.tgz","fileCount":34,"integrity":"sha512-FxEIIJKiod9EOhy0MeTzxI+PlxLEoCAJYSuNpm4EzX/98R7R0mtLZb2BTgwhafhjSantn9NCcJZ4DVGR9eoSuQ==","signatures":[{"sig":"MEYCIQDvVYqW9s6+jKWeSS3hWOnNXJDAvYZNS/PHMKDGOv4dVgIhAI5+IDRF634Kzgo4Q8GhBUbb0YY1mPDw9GNjsrQDL2ax","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192339,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJelzOoCRA9TVsSAnZWagAADfcQAKH3uFAg+4Oaun6EEnSg\nu0jXjWENOQkCsbdreCZIa6je8vNs/T4vjEe8mXtgrTZ//tAL3cfnvOvTBQvc\nm0UHnDjaILMikdyqehrCZc+FKCEoVpYJb0x6+yyQQOCfgnHOL/JDMkPqcXml\nv6IRc1pPWSQyPNVj2QAIpxcHEq6RsvYQCBb3CXmGMvjUx/bLUNx6xBa0cHwu\nBi9+fKDG0LpVIvLogU2AoVu5qO0/uuD8zffcyyjMoDPV2XH0URZzmnHdqA/0\ngfrNUplD1/qmeJi6adGMZVw/r1NpNd7pDEA6P43zfTZVLj0YDcA67ghYp/g1\nmHQ6XUwBezug/tggE/JDwHw4t9Zwhzsl8inxzlz8AVbP0dMAivytojLUtsuF\nWBgEhppGahHRDPMOyHzl8rnpDQKozjGhb5ud2D0sv6VAoHlVc+IJAftQf+p8\nokOEryY02Mmy8SFGt4n4GRpha29KQRlA2eqQp8+W0tf2PBvRWo0WB5EEHwFy\ntZV/ohhwR3+pq9UFcE7LLQ4jeyGrRum8gxecNd2iJWkZ1QgBOpsd9U4XN+vV\nBwD6j8X4buU6SEka4f8WqPQp/yVmTG0EIjzRq/B5+4d9x3hFU5x5ZaU7yY83\niyB9GZbsNSdeMZZSnbi2j7P5tFBR9HN2qq6kttEAYwvhdF+q28iMK7mWFzry\nFkA6\r\n=KzNU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b648ba2f886a5d6cb78a9dbdb435d18b5f600bf5","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.c02642273.0","@material/rtl":"6.0.0-canary.c02642273.0","@material/base":"6.0.0-canary.c02642273.0","@material/theme":"6.0.0-canary.c02642273.0","@material/animation":"6.0.0-canary.c02642273.0","@material/typography":"6.0.0-canary.c02642273.0","@material/feature-targeting":"6.0.0-canary.c02642273.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.c02642273.0_1586967463430_0.221358574309088","host":"s3://npm-registry-packages"}},"6.0.0-canary.8a299b568.0":{"name":"@material/floating-label","version":"6.0.0-canary.8a299b568.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.8a299b568.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"afbf13e6cf75d7aafacee9aeeb9c4674755aa9d2","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.8a299b568.0.tgz","fileCount":34,"integrity":"sha512-pC1Cy0dZvYUYm0HeEkfT1EA18AeXIyjX1ruCN/5SQIm/M1nJlie3yTqSu2Syb2za1FiqlCN0rAQuQaxERUX9YA==","signatures":[{"sig":"MEUCIAHkW2rAkD5bo1RG5hx/N0BzjcEPe67iDa2c+/G+dOwCAiEAxGCS5a+9fFxlrZzuCjbnWfquI43+tzW03uAFeXbixwA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192339,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJel44YCRA9TVsSAnZWagAA0TcQAKUATPpC4BCC/EWnSjUB\nfzKm8rdobVu1slUIb5e2VIS/PzmFhuiXAmGn8jTWICuMeOk94qKXMhFhYQQg\ngJE/J3eo9+ueECNZSkLk0BQKd28y++/eFXoUUQ0C8Du8VEd5bAIfvj6K8pLp\nhnT07UIGYFuzH86gcwasxDCCIi/6yP8jusolk2R1n0+hkOc0kxkNZEKIfxn7\nkF86s9PwP57rZCh82Rasi/mcjPqOvjZJJ/Qys14ahH2UXLAfwQz7WLXzsU0q\nsPIKwUwUHcM+f4wORl7jUB3Eyw5kZoHcQgRoZmqrk/6BwKz3kLqGJrKJznmt\n+PKWnyPtIrTWIdHKkkCEU3WoyAelLlv4enMvI8Sj2LZla5liNTeXveKwJVA+\n8KWaMmRt/kOeWo56+S9P/nXCw0Ol01kTcNopRaoIhQW9THf1fjWQKB85di5C\neSpx/mndVduo2zrQ4DWTc4lM2iFLMtWeC0s1UfbkT+xkSGWmGCSYFOEi+zzN\nCfMbsJXVwvk3qgPQBlEhHjq8cSqtZ82tpVhtGHyFx6b2ewTxf6vqrsjv85X3\nsxbIUxcOrWqZd4Uk1qQCLIXKWnORUupdej7NSeMtd/xCB5VMuCdHFEmi+4KA\n1WSsHnt0Bz/KSZV663Qs+js6AXueb5E6kLCqzJ4cjLmnw3kYWQ05Miy5B6OE\nC0+O\r\n=SSLM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1cce57afe783f6d0ee960b6d55080fccc7424cb6","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.8a299b568.0","@material/rtl":"6.0.0-canary.8a299b568.0","@material/base":"6.0.0-canary.8a299b568.0","@material/theme":"6.0.0-canary.8a299b568.0","@material/animation":"6.0.0-canary.8a299b568.0","@material/typography":"6.0.0-canary.8a299b568.0","@material/feature-targeting":"6.0.0-canary.8a299b568.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.8a299b568.0_1586990616035_0.6147539781282243","host":"s3://npm-registry-packages"}},"6.0.0-canary.490fbdc09.0":{"name":"@material/floating-label","version":"6.0.0-canary.490fbdc09.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.490fbdc09.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1b997d952fabab5f7245283b134ec2580c3583e0","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.490fbdc09.0.tgz","fileCount":34,"integrity":"sha512-l7wMZlZmCky8onBARPboRHttUoLK4QFeJpVJ5Op2Jk4594Xa5vuiOMYKtQvQiv3CHwjdMq7GhU2kN34PZHqzcQ==","signatures":[{"sig":"MEUCIFpWjv7H+jAMvtEVNnOna98LW4+Vg178SjKlx/mpuPyuAiEA6YhO02m3GzLjTegHk2rsyd3kHofhrXY2ngg1QP5Xw50=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192339,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJel/RiCRA9TVsSAnZWagAA6+4P/1t0Ob8PUr1l4y+Q5BnU\n9f4I3hnoNOIcqQFyisD1lBtp2lqJac23HiSPhwM1d1nM28B7B0ZmSuqAVddJ\nb1HIw3eYg5ZBijP/rub1Cdb/sXgVzwp8q+jEG27bRMkwQNLEMi8nEM9X59h9\nOplyhgG/wYY/zZGCMUCoEb/rTYmW7jSwT6nOas8ypQNzzFsZTsmdMLKijH55\nWdQSTCJKKTBw2bOFVyzLn4O5OI0olurZjSNySWSTwX7BDeh2soCg2RIOt7/A\nPgpCGpK0Ql6OIC0LTH7/TjPJyzxjSpDzDTpg7ansM0h5BuFxV/fxmttXc+Ag\nUZ57KOtlrm1hUztzQDSzcheZX34Nrwi5nGbsNG20k4rDeNdXmzr/ozZuCV6f\nANsI/GKDWrpKYu+oV36mCSiA6Le6p8dT7mWlwh+S6Rk5QScH39veiHfCvETU\ncf+im0flnTBJRLfoaVW8+LyVKscvYMvpszNX4hJioa3L/Ae/dZQMvQs/vT7w\nzsRKL6IlylGPPLnYDvD1tr/8ojLJ7ObzhEj9HKUglbqnnjAAAwA+N0IoKj+w\nIOxAP9dVXzbf+rl9/nuZOjpknPLR9XdKg240ACg9VMUlQww1lIekUAtpJiY2\nPPKxVRtiyqbOEw6eGl1Qxd7iRvpiHKzEH24j4cyVlD2ofykPQ2B4puVq0bTB\npL1M\r\n=GvnA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"20bba7dcc3290528bf225184ac976a3b486ccc00","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.490fbdc09.0","@material/rtl":"6.0.0-canary.490fbdc09.0","@material/base":"6.0.0-canary.490fbdc09.0","@material/theme":"6.0.0-canary.490fbdc09.0","@material/animation":"6.0.0-canary.490fbdc09.0","@material/typography":"6.0.0-canary.490fbdc09.0","@material/feature-targeting":"6.0.0-canary.490fbdc09.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.490fbdc09.0_1587016801692_0.6562795218030775","host":"s3://npm-registry-packages"}},"6.0.0-canary.f838c6e55.0":{"name":"@material/floating-label","version":"6.0.0-canary.f838c6e55.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.f838c6e55.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5466efe8c3c4934ff15b04bdb609afc652196baa","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.f838c6e55.0.tgz","fileCount":34,"integrity":"sha512-Gtn3yqXUDY5AgQDaunXzmLeRkJOcKrQRvW8GJbK6NuTBYBrGBpF12FaPpMGHmjeqxlpJ8hgwJH5OV64Z+7eBvg==","signatures":[{"sig":"MEUCIQDFFk870yporCmZtcyx5p+e+6PvyXKCMuJAEzGgbCpuYAIgQTBeKr3MFXQmL+DtJSWXf4YxjeDn6/Fd7SLCjaA7c80=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192339,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJemGs3CRA9TVsSAnZWagAAq+wP+wSn35Ip6ThlVuV7SFzW\n22bj6CRVK4nZdF5uyz6lV1SEir/2UfUt030KnmhyYyKzTAvimUQjBPOGcVOB\nrwHknwNQQtRUjKE6ALalfRmnF3E50MHw58zyW1GIyJ/rHIKjf2YOebDBxb14\nxFKXfwIjp+dVvOkvt+NaSVVsxO0a8DHJAqwcWoKEt7NRuKit3mEhW71s3a9e\nz0KOExJNNU+Epn/37xlwtSlKRbASMXC+S4YiS0iWfyDGBZANzEZSHpXr3v1F\n+onPUK4vkqs/SBxzPTIxhaf1L0HarCOOSM3o/UX8FFv3AFdmaMPY46VFkq2j\nhJP+s2bID3f/tmT3QM4S9+XCxKXSptWQQMpi4tRLaxJRFodsHwVfQf9a2IFR\neNnZ2x5XgX6T7pl6QSSHGgXuQdLK+//mMsBGNJ4nPfhZtTpl6TKODIPMVDR9\nt3kiKVV5v7uSAPK1Be2V0fmnptYjUX5qVoTnyd6zE0Zbk10mfsVn2IQsTYgk\ns8Rhhsnbse4tU/fKwyda7oVJ0rumIYgG8xetFgLZUhjhVt13EGA+YSjmR9T9\njmoE0wsR14VGPOrGjMr6F3I/HgK89/NdPRRSeJ25xEV2HhBVnXYlJudg7LJI\nsolb/poFHsaCwGOQH4FfPtRk1rrtk1YwT83wNHuhG3PC3A/cSBWHz/Ipmu2Y\nFQyN\r\n=aDNq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"4088837a2a2d0b4af544090557a8266202e13a8c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.f838c6e55.0","@material/rtl":"6.0.0-canary.f838c6e55.0","@material/base":"6.0.0-canary.f838c6e55.0","@material/theme":"6.0.0-canary.f838c6e55.0","@material/animation":"6.0.0-canary.f838c6e55.0","@material/typography":"6.0.0-canary.f838c6e55.0","@material/feature-targeting":"6.0.0-canary.f838c6e55.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.f838c6e55.0_1587047223128_0.7713549056340125","host":"s3://npm-registry-packages"}},"6.0.0-canary.ce6cb7024.0":{"name":"@material/floating-label","version":"6.0.0-canary.ce6cb7024.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.ce6cb7024.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b22e55949a4fe20c0c5438aaa44f490853e0fc37","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.ce6cb7024.0.tgz","fileCount":34,"integrity":"sha512-AwxVdJbasoGYzF5UX9KSTeeyB44AloRlY7o2rBk0b9cjeMGv4wT6uJu0z+l5DPTTddfKauef5wRFEFDY+Abu2w==","signatures":[{"sig":"MEYCIQCibd5nS7v8TkZRGn/aCcW2gvGrewsJVwi5xZPWht/yPwIhAKbkL7tQ/chNF8GPDOXzxUGQ7WxSBD26rDBQOEXDRQRD","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192339,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJemJOiCRA9TVsSAnZWagAA6/YP/0SeP1vAMn8a8gBP91a9\ndux+LuXX/MyXAwRGSv+NrROwOxV9rIAscQJvKswbbpe8hAB359Z/8Nfrtzug\npb3zrKhuPcqOm0fzh5ZxLP5izd4Kdwbby2S6cROpw93p3+S4gCx3qzoqbOXR\nFQdDNL9Oha1vmE9f1x8uP3LPwPMa6BG55RuBxqP8CQH58ocLzQFrPfXFIcfD\nSMhbX7H1s4nKDb5v8igCSgAiCbci/dpycSQEC8enLz52tGk0XN/Ctbs5Ebbf\nolxuoCy7N8Fb1V+g6KDIVII5/f2wa+D/8Z6epNYf6xJhCz3OSp7qNi6HgHz0\nwi2TxJEKhCJUBjQpmgPSm2UHfmrsVAwsSJVzMvzqwfxpA74GW9puETXqbHlY\n6AvLTc54LBBWJPE2PuwHoGcfgeryHYtGi/qWfXMiW0ihSi+aYK5tR67Skby+\n1i45oSEgMOAWcUwMhCBJ5gKRPRpeIkhWft0sQPlD/bSSrylHcyvSiglH7djS\nRc8Duubw5lfiBsmIPyCNa3zfEhqpF03paaLq3E1Y09AEHJzIClTf4C6fGi7H\nnAAjkGR1bYPy07cPzjliua7HXXwgddlEqzF5M9MYVz/YDmBX6FbtJJkA4h8c\nyUp2bxgVlf7lzfKN9uolHFYcYwO1Dy5cfUFzHVcKRpC0nliPWM0txQrWIwxb\nbSaH\r\n=GXVI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"50c11d42dccdf93592bf97e9211f34d95983996a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.ce6cb7024.0","@material/rtl":"6.0.0-canary.ce6cb7024.0","@material/base":"6.0.0-canary.ce6cb7024.0","@material/theme":"6.0.0-canary.ce6cb7024.0","@material/animation":"6.0.0-canary.ce6cb7024.0","@material/typography":"6.0.0-canary.ce6cb7024.0","@material/feature-targeting":"6.0.0-canary.ce6cb7024.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.ce6cb7024.0_1587057569646_0.07790100950703716","host":"s3://npm-registry-packages"}},"6.0.0-canary.0ab62a65b.0":{"name":"@material/floating-label","version":"6.0.0-canary.0ab62a65b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.0ab62a65b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2c2792b977796f433853b470bf7fca87f8c72f01","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.0ab62a65b.0.tgz","fileCount":34,"integrity":"sha512-O0r6NEQ9nE7bcdncr+B6SowZLpz3l9Y4BDHpzjBqgVzdW648nvsNCktsYH5JpzZb+zfDWqRgSQ70XxtzVg28Xg==","signatures":[{"sig":"MEQCIHHqyzEi9qHUXiDXihCbhY9Ssi593Z46cb0MDCa51mB5AiAtktK+BWZzfze/ApL9dxYv3jo+HnqszNr6pG6fbZY/Eg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":192339,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJemKn3CRA9TVsSAnZWagAA7qEP/REdxZYt2J+cqYop9pVi\n4tQD2y0Mn5AFzNRKIv/QtzcmJtomTGfhRD6+VqpmEmJi+O9j+62jDWCTpxXb\nUn0yCZwRhf4WdWqed4sTXcMo2jHX+jrDjFrnP6a+7GFGemqRaaCV9xBTuBhl\ndAEBpJWbxwRrlL+JlRxaaTB1HjUaTkK10RkI2EqFbhC/ljH2a3m4wADGyi5K\nwmEeWICKn0TSzSKLQjLw1DOVHqLiZZ4e8K0kfTM1ahJHNN+p00B67HuUCAxO\nxy6zm1+YYQm3p9VlhwRWlHyERYyk0TvPBNPpi0mjpevdm6EK3YWJqX902EjR\nXWekldUo9KlrYk1dS8UMOtFKfxd/7FssmKYVWpIvu0BIileo16tpLTVCMBVh\nx4V/bnxOjCYQ1bP4bbjoQ+HOykOFDYQtpO/o8QMViDwUcY+dsH2HOSkDwSau\n3nmO0Yknj/A/Dovn2hcj24cENlBJpuzA+CfN2ja7Qi3kGgyQg1ugJhR82HzU\nFw72lJEmlOqNUKaHr9KNKExlmATJGPJORTjEpvmsJH68IyhbvsOcKXa6fFQ7\n17R7UpaxFw05Zy2RA2xBr5NICHeCTjw5dTcIwlLtHx4KrKmmRYJJreNuSWBc\nVXt4qCAvsmEH4pFXmnhmNgAvDP2YMIgv5hqoFaliaRrvD2APCWVooJogpM5g\nwPdh\r\n=2Qgy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f8890ca1119e1fc3b197f172b8273c05b5fba35d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.0ab62a65b.0","@material/rtl":"6.0.0-canary.0ab62a65b.0","@material/base":"6.0.0-canary.0ab62a65b.0","@material/theme":"6.0.0-canary.0ab62a65b.0","@material/animation":"6.0.0-canary.0ab62a65b.0","@material/typography":"6.0.0-canary.0ab62a65b.0","@material/feature-targeting":"6.0.0-canary.0ab62a65b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.0ab62a65b.0_1587063287163_0.7203605606143952","host":"s3://npm-registry-packages"}},"6.0.0-canary.ca61b656f.0":{"name":"@material/floating-label","version":"6.0.0-canary.ca61b656f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.ca61b656f.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"76c7976b7d6dd21a93a43210e4d1585814c2e261","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.ca61b656f.0.tgz","fileCount":34,"integrity":"sha512-9STLREXmq2Bee6o7rfyl45wMgxSqlBoEeEY2xCclSwR/jUomEz3DyrZQVrKze4ddFb9g4/pjVXiLSq2R4KPutg==","signatures":[{"sig":"MEUCIB8lhDLp9imnky9qzocxY+qQQWF2bx0gSBfBbwWP/r31AiEAm2ds3vjbD0mTKB/b9BWYovo7CnHYe25f3zc76cIqMxs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":194497,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJemLlVCRA9TVsSAnZWagAAxcQP/0EZcs0FcnhIwczB/Qr4\nZDQE5K9QUk5OJrbNynOy5cxoJB95RpaVgm0GC5zqMBPYjli0DJqpP5bPk9mX\nlaKT6dCKThW2ugSFRdm/RWP1JCyiA2Tc/ZU4mqst0sf0CQXLUDS+KtmYHnvT\nOHsOs0kz2+Ahm86H1ybY8xzFF1K8WDaxC5mnJuI3xLRSAzWgPpwQkxbv+MlN\nSoa80+IkxeBj+IJDdejjgSCDxvjs0z+zBERzLtzyihM3XIXo6+/RzLygfSPG\nMFBO7T51UMFHnvne785n21/+ZuNiCYKjqhBby94RpW8iOhJBo0DpTuGoInwh\n95iV83gM8nhplQH7A2u9tq0QcSQsPws8Y5esDfhDCfIwJF5a/BhPsqHKIvo5\nM1K+SR5neKTkZhdI6HstZeJEXrvCo/uJW5Q+UnSJ3mOdb16LmUsp+uGm15gM\nvDcFiahzSXYtQtxKaDg9+KjudnvuHxeFt+LRGzA1ccIdZLJF+jLY895fiLXf\nenbbQnQBnYuh7xpfArtgFJjiV/WSCDgbg/H6vMLUwEQ72CDuqeZqPRYJld0Z\nlYLG7gzlIug8ih3BfpgHF23jFPnKuXl+PuESSbnYrkk1NTX/46dRJXZdLLcz\nOCaWCTNtUOhzj3YFUjCbbTEbqhcjybmGtoczEOPJewgzzz6OpH5g6rJjdUOg\nkcMQ\r\n=264+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"967c93bd4843f43b3821bebc6113ab9c73533ac0","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.ca61b656f.0","@material/rtl":"6.0.0-canary.ca61b656f.0","@material/base":"6.0.0-canary.ca61b656f.0","@material/theme":"6.0.0-canary.ca61b656f.0","@material/animation":"6.0.0-canary.ca61b656f.0","@material/typography":"6.0.0-canary.ca61b656f.0","@material/feature-targeting":"6.0.0-canary.ca61b656f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.ca61b656f.0_1587067220496_0.3476679729896315","host":"s3://npm-registry-packages"}},"6.0.0-canary.45a6615e3.0":{"name":"@material/floating-label","version":"6.0.0-canary.45a6615e3.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.45a6615e3.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"47e2e219f02cb091aedcf49b4988c438ffcb04a0","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.45a6615e3.0.tgz","fileCount":34,"integrity":"sha512-g2Lgwu10OtMvZtM/POBXL+sMXdNq85DCOJldllkkK02z/Y3spPosNXmYAt4e9K/M1kgGYPabzyrr3XoGnWhTIQ==","signatures":[{"sig":"MEYCIQCZrOi8IuQFE015Z6e2G3wqT8W2ywozdS+TDMeNCtQiNQIhALYyDLSlyhVZUKCf6JZsX/YCl5U9FBiNUmII2PoPtj3a","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":194497,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJemMEJCRA9TVsSAnZWagAA4TAP/iNQg7bWB/fm5gT4GAwH\ntH1int1SRkZReGi/J4OUO/uFCC3CrSa9cCmjaV/UWYnjNRzoGA/S4eh5tDtX\n8tzTrzqmT+UUVgR29omyn/GtSwV9VhFFQ19BfNKcAoOTYAlA4KMfaKw3lqAN\nYBYFmVIGe0oBwK5Z1dF0LAAo8lhRxyNXp6eGDe5j68ifIQRSkDrSc81irlqQ\nSQCSsizIZS3+nws9LTTV9QG7lDw0+nDAqhDfCZlcZOhRF7HiCoBiSm6WLQMw\nk97dwx4M9BL2HznOFb5DLHQubIlTHSDlzV4M7zZPPjGEs+yUu41VNz6PUR08\n3CoxfSwVCbDF6W7FDnbDfxuBwiFcqZhbaXYifdY6T9PKGUYJnES1Ed4Cw9uc\nUivwPDBalgjgtbpygG6mRLCXhP8aFw6o2AonPGMZZD7+Nhjkko1p8ZfyzYrN\nPr6eDeTVVr66j36Mh4+S946U97ecLdQdPZoqjfBJPjmXxJHcNwAskozVApdn\nEJNCc98bkdJ6nher+kcxyjFFNyoLSyA+C/sSQGKxgj1/DTtUbtGz7g4nn5i/\no2DtzvDd5ufrmQ547HTu8vUipB6awE6kNqHg4ycrTmV2VgC7aXDQwwIEO9U+\n46+UCvMM40UFtAqTxDv8xRk3pU0yO8XAb1H3SKuYRSyuLfv2BQyPQjZNEPlA\nqr3s\r\n=FDkm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"0ad3ae693731b43b2c055b2fd649a42e03abd2a5","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.45a6615e3.0","@material/rtl":"6.0.0-canary.45a6615e3.0","@material/base":"6.0.0-canary.45a6615e3.0","@material/theme":"6.0.0-canary.45a6615e3.0","@material/animation":"6.0.0-canary.45a6615e3.0","@material/typography":"6.0.0-canary.45a6615e3.0","@material/feature-targeting":"6.0.0-canary.45a6615e3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.45a6615e3.0_1587069193284_0.7707505725817463","host":"s3://npm-registry-packages"}},"6.0.0-canary.4b04cdb0f.0":{"name":"@material/floating-label","version":"6.0.0-canary.4b04cdb0f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.4b04cdb0f.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"04bb63028494fc5d72a3203ba28a89da9105da9c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.4b04cdb0f.0.tgz","fileCount":34,"integrity":"sha512-NvgozRhWgIqlwswbcaPpYwEKu2NtO9f6gf9GZ1qUmmujdF2VRUXeJyLT5DP93w2CX0DU1Ok1zykRfVUy2hHsbw==","signatures":[{"sig":"MEUCIEKX0k6ePRswdgCVCqQSQRPuWX0a2LDgQklWC3RbqGyCAiEAq9ctrTy/gGcx+jz2Z3Z8NL13RKr1budmLDAHk7ZvNps=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":194497,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJemepFCRA9TVsSAnZWagAALI0P/RRu+A/RLMeriu8TZWah\nSql7pS+zojJVek/nj4mJlIEDnH+vLpMxXD4fiuVQnuTDx/vIV2+3xY2wtwjk\nAAMYVQA+A+dKJnGTmY/XY4Nxzn3oPIc3ftALh1XHckR6TnpJWz5sIgR5XZWo\nALrRsMJ5YTOdFyGgpaQeB9MOuYk+W8u+X4xhW8e4M/xJGYtFnJBLw5gWpzrZ\nXCu4aqiNNtJ+KjiwmldaoX8viTdH+DUYWQ5TACbFZAi62RCOX3BnJAUcjgf+\n9veJ+BbHCGT5D8N07W9TKRtRhhkgnUkkLDQmHsc2053tkIQjTV3tktewIVPd\nrRiTrQDLelgNKOo5hNVIfSjA8rCBFhlsytk0YThI5QUBEmAuUG656v6w7Emn\njPIUbrhRqZjrKPsw9CP2dEua+zqFCDQTvpyja0Or2IEqnEB1IHTH30s4kTtl\nUidOXdI9uK4F0VhImILBjiqo0i0n5PHGygLs9nXjRVP3ljS2BpYmtWmUg3jf\n0IQr4/imPumfiKVezPM/PA+Aa71TQoyw+/3QkIjRkjLZLa3rO9E/Pu02zkWB\naThvFasvp+G8nqNh5W0Qe2/K3DY2FgKo+KRuJypUb3iihRm4z4hT/fStnXwp\nNknbz00uJ+i5SMLVcXfqtK1Usvs+knoxaGH2Ul3lBJOsoAYbhGY8FPRXsvCb\nzCY6\r\n=OPYP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"bedcd48d2eb94c37211fc93847852f5261655559","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.4b04cdb0f.0","@material/rtl":"6.0.0-canary.4b04cdb0f.0","@material/base":"6.0.0-canary.4b04cdb0f.0","@material/theme":"6.0.0-canary.4b04cdb0f.0","@material/animation":"6.0.0-canary.4b04cdb0f.0","@material/typography":"6.0.0-canary.4b04cdb0f.0","@material/feature-targeting":"6.0.0-canary.4b04cdb0f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.4b04cdb0f.0_1587145284955_0.8255854612972384","host":"s3://npm-registry-packages"}},"6.0.0-canary.b273afa93.0":{"name":"@material/floating-label","version":"6.0.0-canary.b273afa93.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.b273afa93.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9497d451aa702e4d73a0039fd1fb9561e0f0c5ca","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.b273afa93.0.tgz","fileCount":34,"integrity":"sha512-m+Zcdf1xTJaV3Juk/t70FsX7FPtO6PYYi1F3jy1RQdjeam4ICtPMXIlNahU57bAOkGLg3xIZOSMgWRGi+KLJBA==","signatures":[{"sig":"MEUCIQC0AlB2E3kyHWS5yNM5/bq+WGnpXRC9T25GjOLnX5lZmwIgcDRQ157z2DmQLuzZSSITwyQsFr9I8yHmFbCmgITmbfo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":194497,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJemjWyCRA9TVsSAnZWagAANeQP/1eKL7OxslYOzvr6dYgw\nlRVNjYQFDczcyHXJwxfPq19j/TzOlhN1nl4HShw/dZgD9R9enzy631kysxKU\nOOS7YD+lrJZq8vTXDbbx9/Tfvlu4rOBYTwQeSFQqccFQlhDHOuHOkWOVNbvR\nTMP1Dl5kRZ6CAScFrSe9aUjmR/q6g3nAy7BkaCiDVaoJ9+owsp0+3jsN1Asw\n35S8vKS/cLwvQB5ILeWKi/a/NopRN52eIqsRGdF6nqI4MrJN83ksEamMgTsJ\nwNyf5wysoe6TC+aYifedNAoXdO+vIj5ciIm3VXpza53RQlgzptMY45JDxWIa\nmcfnNdWexX6PzQAmvUKpr9Syiai8f3xOvHhIrKyXhwFIQ0f2a89LfPgNt/5I\nksQda9lFDEuFC17r8prydg6BdUUyAtPZwrBL+SLpyynwmBhUguVdDHai6gMV\n79CNWzUrTvh7HJCnHFBsfKYu7kkYTWDi0x4uysJxinuu/RlqnxIsMZfcDAVR\nmANjarwJ7m8FCfE1sHrXR7bmWM2RVht45CV4CPAxBf8WP/KHh0rqm5NapMNd\nDZtd+7Y5vlAkJIAicIaKa+LM4mKUypPblLsQzErdKw7QKYowxicBuAf5XiX2\nNsqlLImIoeHN+PhzoZFxPFiISuPoUs+duJVOLbE1XA6fUG6dCnZhwBXV9KGf\nQCqb\r\n=9/ZG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"446d7bb0e65fdc3259b7b9025c6c058731ff02c6","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.b273afa93.0","@material/rtl":"6.0.0-canary.b273afa93.0","@material/base":"6.0.0-canary.b273afa93.0","@material/theme":"6.0.0-canary.b273afa93.0","@material/animation":"6.0.0-canary.b273afa93.0","@material/typography":"6.0.0-canary.b273afa93.0","@material/feature-targeting":"6.0.0-canary.b273afa93.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.b273afa93.0_1587164594333_0.13686256363168625","host":"s3://npm-registry-packages"}},"6.0.0-canary.b70bc601e.0":{"name":"@material/floating-label","version":"6.0.0-canary.b70bc601e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.b70bc601e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"538e433556c5a792ee3bb00d7edd696e3a48d0ec","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.b70bc601e.0.tgz","fileCount":34,"integrity":"sha512-4CAUq/o/e1paJQ8Z4GBdVx9rio+RPHX9DAXywv7JZHwWHnM5hfd/QjhkuKyZijh3utkSH2rG1cPH2hDJw/34BA==","signatures":[{"sig":"MEUCIQCbtUea7jmuJXHpk9E68hn4maJZlmtNJg5brVxF55duNwIgfP0LcibWjGfH72aMuTCqTxUbcJWj/7R+GP1pn/ugF9E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":195465,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJemjoNCRA9TVsSAnZWagAAZ68QAJdQWtb56JRpAiMCDe9j\nCT8Bzk9HN16tJUoxnrxtszlxG4SeCJDkWE9nSSigxuHf9IGbDaXn/ADB2aYN\nTZckSiRfu/7ZymbZYrjyhFqJAJ+3x/FLRJ2VcAWiRO0MAefR9hgX7j8SMBE3\nUkmIWMES21kLwySahoME16Bn/Lt1OnVOJPS04njmT1PXjtcyERG3zj70E+D+\nviINIlT9n0zk3acIzCF2G1zbPOzZWTqVY8LgAWNfBYIsePywUxEiOStjQ9oo\nXUCDiW7Pp5NOFraANYMS7Uh/ObxHG97rexRh2jAlLCNBFKBobakXYx5LNvEr\nDqW5RTUjhS1yQYOrfG7EZ6x8MJwZqDMheT/kHd+S1i6UEwj8ucqjOt7AqMVW\npJHLFKKzL67/MqXTILhe7D5g1PgTWn6wYsdk+HlXCbHGqzRaqEu4cKkKoHfH\nEsuQXXfk7Jqssv+8yzblaYHC9uFHvw9OHkpJx8+Pha0IYzK6jeunjWS+mZV5\nFsIPhpxjjcMg9p+4LMT1ELPGFAGZSxho36cONI14jhBPq/FhXBSzlTWxVSzH\n7hLsKTFyduwlkC6efTqLJGmnVbq9L8eeog+CrycmvzZt/DefMLVRwajxi8sS\nuE64ukdN/73COsWHB5vNIro3Rz3NHJbojFpG+Hy9i41B4/B0mgiHbLE0nuXN\nw8V+\r\n=Sop4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"90c3468e59a65aab424bb59d4e91a4d522fca3d3","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.b70bc601e.0","@material/rtl":"6.0.0-canary.b70bc601e.0","@material/base":"6.0.0-canary.b70bc601e.0","@material/theme":"6.0.0-canary.b70bc601e.0","@material/animation":"6.0.0-canary.b70bc601e.0","@material/typography":"6.0.0-canary.b70bc601e.0","@material/feature-targeting":"6.0.0-canary.b70bc601e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.b70bc601e.0_1587165709246_0.058120800055323496","host":"s3://npm-registry-packages"}},"6.0.0-canary.c4b4bba96.0":{"name":"@material/floating-label","version":"6.0.0-canary.c4b4bba96.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.c4b4bba96.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"97b7631eabfc91413a483e53ba033caa9062e105","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.c4b4bba96.0.tgz","fileCount":34,"integrity":"sha512-2TX6DLMUwrlgaMIJGoVY+BQ7QqoxMI0el6b+tz3LzBQXLdGLRA4EL4pDOEZ1l2s59B0sHH4kbMLPWIZmPNBtXg==","signatures":[{"sig":"MEUCIE1OI98pwm1XIkhLb+XRRlPkl17yIlYdsVv3xS19G2JZAiEAvxFm/UgjWu2/coh45VIPSSk+486s9unIFYKFXCasjJE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":195465,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJemkdJCRA9TVsSAnZWagAA7+EP/2/MqEu8ntCr3sI7l1iM\n+YAtJxjWy3Dc17hHEHvh6gfThc6ewMrV4RWxCJ4YFjzBtbBOHfmHWCcQFDjN\no3ntUUdrWXvYJrVILciFSfUySczat+NxV1ayYdCfi6rKQrEq0bu4YdXxi4a/\ntIXofy1tPz5C9QBAjUhx9DtwGaAsgrQNYGe5DhTv4AD8d5vO5cEOmlpK5dLx\nqRFto7I3BO3BTXygNVGkmyp18O+6mttAfICuGVNw8HdHWjgWqXbZ7e5BRC3h\njMw6LGUYhWIfsumq5QDC/7wkgJ/+/vxqHnb+RnpM6ar5tVbERVfSgMkLeNZw\nHK4Re/snP6on8wyW0j7K78dyAcdVcV6dR5raGDZCsFY+kHsnF1J9uhda2saF\nDTgHjMqb/2P4JDYpCY7bOo+GAcK28JoWtTNW64/EJNNAnz9O+8JR5MYQy8BS\nV+Q3Q0YvX2/17V+F7JSgJodGG4fVnqh8zF9IwwVgXQ8wPniwtDb4lyMuUvs8\nLTwDF4ia6RkfLED94k6yBByYweLGMsvSjcLcn0rLEqdLLp7jDfqb5M8daLSW\nBD+E/D9TdkvotsqtucN5OP1VMOoXkz00s0w43G+LNmqiWNYp7dgvqsSXP2x3\nLcV+tgxheHXW8oAJMOfmgOelQUpP6zxqhh3Eu5M/bOBaY5G3x0BNeFq5eEdw\nxXXq\r\n=qDPs\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ee02a718dbd2e86f9ea056b6199c1664c5abe70c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.c4b4bba96.0","@material/rtl":"6.0.0-canary.c4b4bba96.0","@material/base":"6.0.0-canary.c4b4bba96.0","@material/theme":"6.0.0-canary.c4b4bba96.0","@material/animation":"6.0.0-canary.c4b4bba96.0","@material/typography":"6.0.0-canary.c4b4bba96.0","@material/feature-targeting":"6.0.0-canary.c4b4bba96.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.c4b4bba96.0_1587169096749_0.05362873487232167","host":"s3://npm-registry-packages"}},"6.0.0-canary.6c1ebc721.0":{"name":"@material/floating-label","version":"6.0.0-canary.6c1ebc721.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.6c1ebc721.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"fa25394e74f1f25c82ff7523bb6b03d1788cb872","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.6c1ebc721.0.tgz","fileCount":34,"integrity":"sha512-lvlFj0O1+xGgI9D+LCa73MuDrlipMGsueJQDumLZeKoo7LwIn4u3KsnYptaueUQGExl1IHoK4W5G6/y3o9iADA==","signatures":[{"sig":"MEUCIQDLIGOs0WYlwtmXPUyNxqjHlb7QgcfGVCD8tKL9vBaFqwIgA8S+REoPLNaK0B6ZkJgPDOW9XYsaFlXCX788cyWX140=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":195465,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJenf7yCRA9TVsSAnZWagAA+bAP/3AZ9WLSQz9prymgPZch\ndWeCoGnj9vy1YjF9dCUmrnV/uZk5gBt67Gcj1EULPmg2bYgc+3PjR52UPlng\naoNoVhJ7XSSIocQhB3+ETuO6H8GOI+nzpJBHIctJjjogXelWN0kX4arHF4tl\nKP//Seke2RYzIfM4VIRCE9xzkfrqYMJNMO9RdHU7YOw1ZQRGRVZeUljzN1rW\nUGL79vyCZAnXm2L5pK25lztXVMeprfaL9G2jf88wb9+0jdaqPsTSShXcWS5V\nIabfWfpLdzWMAwnl7eKXtncvQZ/Lx5fi8nCq2+GxjahOOegIY7drpPAOK7pW\nj50Ytzv0CHZoCpZS5dL2NzricUT2bWLIkXpE8fQvtjyUWeVDgzOC/Wpg4eAS\ndPAjFyDvHsMZGeApQxueANJLV7hUW3r90+I1O/VLBD2UIDlVYlWFFpmBbtwa\n2xK2v9Sj2tPoiSdh3/WnBUAvKb6r43mfeHOrFycWy9Q1nBasfhtZWk/x2DpG\n2M+pbIownh/zdlcS1vyY1CAkwO01OJe99XXs9yFqr0tiNx9jsaIMA0nnc543\nSHgWJWBfHu8HqkK9pvZEaAwjkfeJLtAaLK42L/nYz9wGuzORl0vCcwIp0XPr\nPQ+gMmZWn3/BgiCSyKxu/mDsOZQUnxOHZAbRnP++NAFkMoDUWK+SWlVY/Qqg\nc80G\r\n=+U2X\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b1a71b1e525edb460d6fa48e392b09267db9d2a5","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.6c1ebc721.0","@material/rtl":"6.0.0-canary.6c1ebc721.0","@material/base":"6.0.0-canary.6c1ebc721.0","@material/theme":"6.0.0-canary.6c1ebc721.0","@material/animation":"6.0.0-canary.6c1ebc721.0","@material/typography":"6.0.0-canary.6c1ebc721.0","@material/feature-targeting":"6.0.0-canary.6c1ebc721.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.6c1ebc721.0_1587412722251_0.8765900094627266","host":"s3://npm-registry-packages"}},"6.0.0-canary.9cff4318f.0":{"name":"@material/floating-label","version":"6.0.0-canary.9cff4318f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.9cff4318f.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"25d3c2fb0e78e439b878e7ecdf7ecd0b0b3144f9","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.9cff4318f.0.tgz","fileCount":34,"integrity":"sha512-p7mhEBi1zvM2A0FgMM+v7r7aiAOxUViwgOfQN+79EaZkOM1fuVrNdjxfDZakmAfkTYvl7cjNbIF2XbhhgsHzXQ==","signatures":[{"sig":"MEUCIDn0KW7Vn/c/EBOpBgNpqzkE1KcrurJxaxLaLI1P0prBAiEA5Nd6IzEmaMsOo8womXD8b2pu7E39rKnTmpgact51CAY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":195465,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJengx2CRA9TVsSAnZWagAAJTIQAJHj5owtmf/4c+V2slpi\nQMPjyjS0RfH9y90Mowcaz6r2v7u4ecQtckB0NLl8gF9JJ3YhgkhxstaAK6gc\nFJbbMrYzY09X69xPBdyrUN98d+ShRlu/sJFRzQMh7wmJQb8jddbWikDxNm5M\nxJKWbrPvEg1YUHXFLqK8c38nkZzxvXmdNz3SLEZSNpiDag+VC/IIKJHmN2ZH\n8oPM6dHztYa8kCd8yZEi/Mcp/82HDYutBdr7utH8UutT1JDeTiPoEJKKCG8A\noFT/+C3TvXnhGkGTtmRKsmyN5Pdk+7Geze0y/yK2J0U2M1UuZEopUH+3hTxs\nsZK0P7i9GQB5zhR14eF1RVfWHwHea1ONyJq7nGA7ACVmrb9ZS6cFicugxOAM\nNLYjRZnXvuP9hiNfYmubFs2hvlDB+/bXrJkZyuF1A6rguUoNJPlqwXIKzrqu\nxSuok0nQMq2kzTPv2zF20yAjnezzmXcI9I45h0eFtJZrQiv53y4qKNzbSBpU\ndFRJ8vl3O2Xagea3bBE9mJ2TCdgXqEBvbqokoKk/fQrlAHoTm6CNWvcPHa4e\n0vOhlHmVj8LQ157VhDLEFYTep5GaCtjgikrXzdHyoGNwEjKwo35rOKop3+c9\nWPOdoaNID4bFZGp3jcMRxWJ76xyPQuwTywCRJa8rrxcQwqadt3Dg0s66Yghd\npUxi\r\n=Lbts\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"0ff1f177754c259b5b0021494616e96f7b6e0d8d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.9cff4318f.0","@material/rtl":"6.0.0-canary.9cff4318f.0","@material/base":"6.0.0-canary.9cff4318f.0","@material/theme":"6.0.0-canary.9cff4318f.0","@material/animation":"6.0.0-canary.9cff4318f.0","@material/typography":"6.0.0-canary.9cff4318f.0","@material/feature-targeting":"6.0.0-canary.9cff4318f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.9cff4318f.0_1587416182089_0.5015080573792545","host":"s3://npm-registry-packages"}},"6.0.0-canary.7b4482402.0":{"name":"@material/floating-label","version":"6.0.0-canary.7b4482402.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.7b4482402.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"0721edba0806ab5624f36d7b5d1477e50d1292ec","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.7b4482402.0.tgz","fileCount":34,"integrity":"sha512-Pw5/UHBr7dgMyPZCeNKScyu1LW5Rg4cZx6MdDBdtrYxUjqlEZVj9oniWBsyeMu0ELgWNm8sShPYXKTfQIDce3w==","signatures":[{"sig":"MEUCICxof0jXTz63JCikRxoPNym2MPaCI0bFv5WIoNYWug4NAiEAxwC0u6dHTtJt6FC6yXaQnjyyUnkpjfIVZTvb7PRpNJE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":195465,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeniA2CRA9TVsSAnZWagAAccgP/Atu8uUeqHMiN7nUU+V3\nAHW4QD/+suRzfSQihjdOkQq1ocUAQ37hPZOKURgWa1EuMjfxMVvszMLtrFIl\nTMVe3hJmbnGAXz/Nwg9QO32QtuZJ51jiVW19BbUHTkdv38N1Ki39FzAf1wRz\ne8f87RNthutBw1AtpA/kmkjxVucve2x70s99uAyZK6qr9BkZatnmVqG2WFqt\n1qFjtQBf6MojcexxLzVdma4LOS5O5H0AWao8ONDcKi8aat8x3zXz8uZ7DRIi\nyThHLNs9HJR5xxC4QLx9dDh4aYpBhzcrMGz1MtYanVirDRXxw8GwxVAU/+if\nqJ+pzrHYXJZPJ5PALmOvfOIpoG6NwNJLUDNjVCc7XNa9mqk3urihpmXssqk9\nTxvdnzu6AOlWVMwa7iCzWbtDHPRW/zEHlTcv6wYl+pKvz+pv1gJzgd+1Q2J8\noROa+UWf9aHHiuQFhKLVBm7cY3ouPMmL7NfbEH0KkjBRCVuVOioyUgcxkYZ5\nGEPlCmajyrHeMX9pPoc/OZFok3nRwWTE9Zot5U2EFAVJsZqXVGxJlweaq9T3\n1QYIxW+VXKupd5agb+B9lN++fUb1a21xT8NCaWY47eKVV5hj3F0zZ9fv/kaU\nr8w2qqqTzet3S7HOgEzf0jxqIXfqoqlVX2CHoi7cZLK8YOwz66p5/C4S8OWz\nPR1K\r\n=bMIM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c25f7586d29e2c5a6d3c289197d47b826d499cdf","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.7b4482402.0","@material/rtl":"6.0.0-canary.7b4482402.0","@material/base":"6.0.0-canary.7b4482402.0","@material/theme":"6.0.0-canary.7b4482402.0","@material/animation":"6.0.0-canary.7b4482402.0","@material/typography":"6.0.0-canary.7b4482402.0","@material/feature-targeting":"6.0.0-canary.7b4482402.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.7b4482402.0_1587421237605_0.25117781769738134","host":"s3://npm-registry-packages"}},"6.0.0-canary.deda86d8c.0":{"name":"@material/floating-label","version":"6.0.0-canary.deda86d8c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.deda86d8c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1eb060c8decaa84f54f3f0d159abfa6af02bbc15","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.deda86d8c.0.tgz","fileCount":34,"integrity":"sha512-NTJ121S4sCl5cPmcQdLIaeqeVKh9DqlcbghYviZfcqWqBvNDAmwTz0dUm5zsuOEWg8UoltUdZ1zh6AB34GvzVA==","signatures":[{"sig":"MEUCIFs74yG4LVMBMbA0EcMn/fIgV9Ig/1cSwJKW8p3ZWDKlAiEArXN2jah7G9rGdixYAiurdDa0UGuLEoaNaUCsAdWsZLM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":195465,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJenkkkCRA9TVsSAnZWagAAxmsQAIgt++JmWFYluUxFftTd\nWgg1STX7toF9ZNuwFWmob0PujFLdtAhU0BdS7JkFBobBrHQXiY+TSL/g5/jv\nR48Mz8f9fMwW1HDW6BaQNM6uJqHz8Jf14BOC+Lg020jo54a15/UrEpW5xCVz\nRgHuToGE7lMPa0Fn1kcKfTu03RY/v5gENkmXwYVxpY9L5vrhGpcogZaf+cgs\nZez7DzXQrANNdNxpZN9mVloc8h0dtI0vMOsLNypd5uLeu96fF9GJ1YPAENip\nuvs/188MYolCJRCbXGbynX9DbGavcQ9GoVVObtVEwXDv1CmiceoP9XtlICq0\nVzB3NBXDwnBLm5sjw5y3MajXwrWxBk8WXVr0H0MOc3ZzLpgakB8Tk1aLlW9w\nu/yw1PaZZ0hfeAQu9qTdFdW/65qPZDuoxASCU5+IMo18FMW7pETiKgV6wT1N\nQFa8OjPNflBuu2/PplsjHaYj0MbNXmRMDv3WALpls8mxqzjhYnRWrXfNMKcs\nCrvTqBLugKM/OV9Azb1DEL7CQAB7NemE6dg6CjBIX/3FOKUmuLqzwdY7i8oE\n7fWulGcpZ1z4dXPVA/RZvlhMpVyTjENHZLzzkZ1pvuap/DY+nAlU08xcdNiz\nLg85tVgYSOJt6efdHDF2zUnXnBN83S7NkEjBsIn0BJ4/zX1ECDPvBXLtMpy+\ngCmM\r\n=9mru\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7bea6ac56136246274e77c281cf8c66e2ef3e6ca","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.deda86d8c.0","@material/rtl":"6.0.0-canary.deda86d8c.0","@material/base":"6.0.0-canary.deda86d8c.0","@material/theme":"6.0.0-canary.deda86d8c.0","@material/animation":"6.0.0-canary.deda86d8c.0","@material/typography":"6.0.0-canary.deda86d8c.0","@material/feature-targeting":"6.0.0-canary.deda86d8c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.deda86d8c.0_1587431715495_0.23146689420730815","host":"s3://npm-registry-packages"}},"6.0.0-canary.d10412cb2.0":{"name":"@material/floating-label","version":"6.0.0-canary.d10412cb2.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.d10412cb2.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a6b6102fcf26e5df32ade75e292430d29613c7f6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.d10412cb2.0.tgz","fileCount":34,"integrity":"sha512-eDkxCaQQ97hMJFQAdfyORTDx7W/9tyXLNaU2ig4ISA4I1OBudKU6soOPWdFwnmudyMG0tVAhQ2/Ym8KN6px0NA==","signatures":[{"sig":"MEUCIDdKEeGbwQ+hvO0JvcfVxBcTGkb6AAT/byAFJnSThlBzAiEA2bdsFTmPk8j6Ev0RR6sULvCLoP/Y1zSksU/1ceB6yfA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":195465,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJenzkJCRA9TVsSAnZWagAAUnUP/RbMASXOTIthLQo/H/Jg\nMRNEsXzbAMGCoV4PUXM3KEt4IYILWeNKTWk6bQhMRpzGIv2CM2u4A9CP2H9S\n/6g01Av2IXAI4tlsDN7AkJBt7+OwOLNicknKMeAxxr0y8QgORBGRS0dX3Tbo\nmYffks33TiHFVHcMG1sYQflt7DFngbA2Fxc5GhKcUrnI3mQLXY3NJ0h31nGX\nMDcd2C2Z1U+b9NAQwLdK+M+8gL2wz88eDCnBq0OgBmbaOjwg/8acISwgW92X\nycElGj+MTyaatSrHYxi6GGtFjKkbUCYTJa/Gd6wHGtdx+6AKA6YYdJWBP4hV\nCcaEqx0bgs1tn4rMDiLeZQ5qE8ypHRRDJwC8lhQcDEl7TchNfNjAucWBSwlk\nFY0FO28HsGIB9ZWeaLXc8bHXX4+AI8vtWBuRxs9/ZzC2oUt35rVChx96T2yN\n+wjHQkv5+hrk8FUdQdMrFLamaU4PFk9NbJYYvgWNpa9p0aRU35j8AA9LEXZ7\njBVRh1UTM+4H8Au2810++utlHh9u6vic4aaPegHQ7OrTXNj86TU36ieD60g0\nL/XFwJf3gV9rRekcqW/TSmF48Q896wPTc/gLQ0m5yw7OBJ6pYmflu75ElnrQ\nY172+8M7Ik0maSIVwcLYJrYlKOLvR/Ye85kub4cXMckDQXv37fyR3uuEcKgi\nSIW+\r\n=M0O9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a2946b5762e597bce2d8e4e72f321bf4934e4543","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.d10412cb2.0","@material/rtl":"6.0.0-canary.d10412cb2.0","@material/base":"6.0.0-canary.d10412cb2.0","@material/theme":"6.0.0-canary.d10412cb2.0","@material/animation":"6.0.0-canary.d10412cb2.0","@material/typography":"6.0.0-canary.d10412cb2.0","@material/feature-targeting":"6.0.0-canary.d10412cb2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.d10412cb2.0_1587493128719_0.6334120156840992","host":"s3://npm-registry-packages"}},"6.0.0-canary.c141801d5.0":{"name":"@material/floating-label","version":"6.0.0-canary.c141801d5.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.c141801d5.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d07ed6d7a148c8a4de8b5145af0642537b55822e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.c141801d5.0.tgz","fileCount":34,"integrity":"sha512-X8fGsqgaS24+GSan06dwaNTOfZe0CpSXYyEZruSKvSJQFUcyNT07a8wwLLsiXb1NNWx4++K6JHPFF8p40MEVGw==","signatures":[{"sig":"MEYCIQDDPhq01Fj6ggFr78Nls0czARoj3mzxarUpJ04hksLChQIhANjV28ZAfAo1/N4cWgc756/18vd28m1m7ot5y8f01hU1","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":195788,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJen0ydCRA9TVsSAnZWagAAxm8P/iSglKTTzxGOpMvELA8Q\nB3RY1B2mKL1G0kH/P268gSzqEhLlmIv7t+3uWaVfUpNDqFTbC+X0JgUYrude\nyaWOFDg3sy5a6Iri9a6g5jSqE6z5UdtiFZn/XUEVW4njjCSLoWFtWcVphMlO\nIZGvJmfYQ7iUoxfGpiMk/J47zMnTFJQUp1B+g0hPFDoCTx3Ipk2/rwChdnMU\npNcfnK9d0YKCNCbVbE+wGT5CN4m7LLO90MNFID6CFNmn3k36+5dc3Wmq51Ko\nr0Ht3irYQ0c/+Yc4j2mZQYexS8oGkdmmGXNo6mIqY+p5xkM/1a4j6e3+J2M2\n53VAQBNY+f+sGLHiU2yYq91kvmI5N7ISqfz6hhyQB7oQwR9gBfVlOBLAYzXx\neJDHsndFRhjftdr9/5uRzAwqjsFzPdfZNi+Xe0PAI0P5k+xDTBTIEwLKtRXv\nF0dV8obhmWz2wtL0pEaPpovffVnBnMn8XvqkALRj2TZ8lNLKRXlt8lTJ9gRw\nE5ZMuWXuyfAWer7KLIsLhnTwOos+bIjBkeQzbzF2NHlSyEfe2ElLjatu60dd\nFqwDeBWolRf2jh3SCX3SUEkiKIBoFtMZ9VxiQPjQ1X0op/DWqYWxUO1aELZB\neiYV3YbW7vP/yY7DQ/KFeW6iBjxbiFQXjpebF1SZQJVncUQx1sGvxOAoImJN\n+oyl\r\n=uJ4y\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d026173e9bf7440b69f1e3e7e4c1bd60dc5ce6b5","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.c141801d5.0","@material/rtl":"6.0.0-canary.c141801d5.0","@material/base":"6.0.0-canary.c141801d5.0","@material/theme":"6.0.0-canary.c141801d5.0","@material/animation":"6.0.0-canary.c141801d5.0","@material/typography":"6.0.0-canary.c141801d5.0","@material/feature-targeting":"6.0.0-canary.c141801d5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.c141801d5.0_1587498140889_0.22229827410367764","host":"s3://npm-registry-packages"}},"6.0.0-canary.28d10a96e.0":{"name":"@material/floating-label","version":"6.0.0-canary.28d10a96e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0-canary.28d10a96e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"01f4cee58cd1b1734eb2dc370644f955921f6432","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0-canary.28d10a96e.0.tgz","fileCount":34,"integrity":"sha512-Xlg9JNNTiRy8pnnL6sawHOV6gRsxOG/EcQxEhzDju2Rp8MchsMy18zCmGjSYfT4HEohjS6vLd7IKUUcl3HMRPg==","signatures":[{"sig":"MEYCIQDtWm/e6eEYr97nj/Ico2OE5baeRegUxGlvxxr6O7RRpQIhAMckT4OFGmWcW4CAEPzkgr0NFJM6W+2+cW6tntSdpQFb","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":195788,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeoMAnCRA9TVsSAnZWagAAIN8P/A/o5G/GgYnNyI95mozt\nmTtA6HgXzx3Dp0LVOUaSQV4qSHL5Hi146LofF95L4mY/gfBU/KqS83XD9Wa5\n3IO2azc75VK7oPs6TiVYmhK849vOvm5d4SUqUYORnWrTdzfU1RCladhENq3y\n/SWlpdl9zLd77LKYqHr7tM1sfiqE2CatDBJvPE5aqesmxUS1PnZ/VmoB5TMK\nuJ6h1HH28+nG4qd4/5dagqCiJercKFAwaIwFmE7lteZcRpQae1cTRPj0znrG\nt+J0YJpqkC6ZkhTjkz2lZyc4DaySmnm7lxKUs3CSogXhZttWQRM1FYAoSI+Y\n38Fkef4uaNLdm/D/HqqZuLfeXK9EfYEBA/mMvW5OGTumssThV5e13rjT+S3f\nlImC7EWPtTA8jsRdbA9voO1x3zMMmATpYWocceW1zjX3lVKGiaDLeWwMfplH\n0yBSi6GEEJTns66tOBYWYCyFd4F2K08+II8Td1fg2BtYoMyR+Ol+c1IBaSR+\nyDOYBdjv8lL7i0VTIW2rdOL8z2JIfenHYjIiPM36NyAIPD91/yzq7ZbxB5YU\nlMYJ8LTIB/vns2GErLyoAcTKZTCtVSO9usM1sLFMHo+bGKqocz1vxT/L27I0\nne7fRf2gSYO/4wihfZTOGn/W9CtFRtlbHrMkhck0kLNebZXS78d6njoWDEus\nVry8\r\n=RPlE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"20feb77e4dc8d7c73f3549e0dfea4b381106b061","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"6.0.0-canary.28d10a96e.0","@material/rtl":"6.0.0-canary.28d10a96e.0","@material/base":"6.0.0-canary.28d10a96e.0","@material/theme":"6.0.0-canary.28d10a96e.0","@material/animation":"6.0.0-canary.28d10a96e.0","@material/typography":"6.0.0-canary.28d10a96e.0","@material/feature-targeting":"6.0.0-canary.28d10a96e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0-canary.28d10a96e.0_1587593254894_0.9036879865677077","host":"s3://npm-registry-packages"}},"7.0.0-canary.8540808be.0":{"name":"@material/floating-label","version":"7.0.0-canary.8540808be.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.8540808be.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a778ad6b985e2e6d0846a8f62489d8e9461619a1","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.8540808be.0.tgz","fileCount":34,"integrity":"sha512-2dcqOkaTGJBQ2ONUfsqA5c5y0+OL/P83qjXPKGiEYfD+Gn0yQntGvXPsF7cat2hNYtNIbaeC1VD1ReM7vyKbDA==","signatures":[{"sig":"MEUCIAppPMayZ5g37MGJGweH8+ysERyTjRPxYgfSnmSKPFQ9AiEAz+maCXkj7HHIclT+kL+vVwmnB6YEoV/VVqwf1IYke8E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":195788,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeoc/ACRA9TVsSAnZWagAADwMP/2MjmTz2De5gF86bqPvk\nr6JRbJxQ4jFBlhg2U8hfX7zkP11UDFcVa2EBLVr7cfRRry9W/N1vlcD8d8IG\niJE5m+5QP2ODp+HVl89UUQRvbjFxpDDV4DkENRNPW/2J/f0l7rCzgly19h7d\n7rcSDEONdqy+Y9KAbJbenHcvUbEGLcJzKRmZ3O7lfUi6hwH9FOKQ5VANJneh\nq2POKXXkO/Gg50Vs3mDhgDIUKNATqmtXF3Ky0Z8mnjcRpJxdfg0I88SLw569\naa+gRTg0R7z5CAagcJI6+SyMnQpqR1nuJDbogbHhbUlo4amP8hH6vbh5tZKm\n5OgPBgl9JaCcwFA9a1ocul3+E4ZPQEd2CNLh/O/wGzfWe0429AtVNqw8Fd3W\n0yIuji7iQsu965tbHh8dxbfgzetRkm7W215vGZBcgQowT2N5jdwGh5mfD5VV\nC8w97YGMa4FVAHpsnoAjAwn+FJ+phiXSz8wiZDDQX8Y+qtzyJbCdj1SfG912\nnpPUMo0krBhXKdoaMfz1GgdTq6w5dkPEniNJ6QNIgCZFqewcqu6Mtd6vg1kH\npzZHxv0j3srZZQr8jBgsSZjow4kwFvmy8HMv2PmntvrYQ9pbFLalbolQJcz9\neEN0acIyMHOd1mugr7qJEyBPup9Kb4l3zM88aAGHDTeBH4ENs6Y7gD8+wAD8\nXI4E\r\n=J0nH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a99320a8e5b4b718dbbcaeee1ec4fc8feb72b592","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.8540808be.0","@material/rtl":"7.0.0-canary.8540808be.0","@material/base":"7.0.0-canary.8540808be.0","@material/theme":"7.0.0-canary.8540808be.0","@material/animation":"7.0.0-canary.8540808be.0","@material/typography":"7.0.0-canary.8540808be.0","@material/feature-targeting":"7.0.0-canary.8540808be.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.8540808be.0_1587662783550_0.26790451226660017","host":"s3://npm-registry-packages"}},"6.0.0":{"name":"@material/floating-label","version":"6.0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@6.0.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f5d0020c452d2aa4747cbec8e992eb9258498f25","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-6.0.0.tgz","fileCount":33,"integrity":"sha512-hLCsJKAJtVUUcxTbphqn6JZTbkOa3TW5nLgcwcgWqTbjOWOafppnplKELeM+6oDvwg/YDcGSsvuPUOsCMRiXvw==","signatures":[{"sig":"MEYCIQD8oKWfBxwUbnyd7Ro4NF5gv6/pPGAlbcZ1jr0xCpgXgQIhAJFHHmub/CoEKyHzXCruOgoKl3KKR67/bmc4giO0W1r8","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":194959,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeoc/jCRA9TVsSAnZWagAAeJ4P/R1WSHEwFgq7uDELuwSG\nSiO9H/+3x4srbhqK0F5ief8gOjrZRrZqBS8D5kLjWWWVLkkBR42fOCY2hxK9\nNBeEHtKMAT5OaVKkzTj7izujNLPhbVuHVGC3CySTYNGvdvWvD4EZxbpuOsvi\nI5LZhviMz5zmmvOYfW4K3e9LW7oQRh4B2SaD8UeY2VmjtcNPj0X1E2KrR5Oc\nc38pJ2JmktcGGFLz0403cg6DPSr/YwAZpXog7ox7EV2zANdXgvh0U+UVWqxL\n4mdygvTMLrrJgmGlAZyNBEJ64o3hFn2i15L/VKRNZFQNBeD9OSvZ1m724Dl8\nXIpcAWHCS8hVvt+z7Sn/0Pl/B0rbMb37cAS4tut7EGWO9PqcAkWQ6CiprT/8\nAX0P0Hzc/fErFZR4oeF32QtrfYRIgwDw4FO9NtXvrqPQq92p4R61Vqa62pk3\nQvXXDp93OEXDlNhvA1quOJqKETq6et+ddl21CQYh+JUMnW100Fn+f8LsWIl2\nVsqjtSlNT5/oOQQORpPHPwvyn3jyJAlXKxgIuQUlBn027PgGZ5uaFipvOWcJ\nX7rCG6XaSNiwZCXKicXsgVXBXHwKZiCdJr6Za6mfVgX0p1icALIOKLm9RMPE\nsTaqZLA1qxHSjlRhnP8Z8t67jfW3JWia85RDqviPrcj55NcTNPlhbmysegTG\n5SUX\r\n=Bgpj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","gitHead":"8540808be4296e60f1c1d3a637413e433ca7efaa","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"^6.0.0","@material/rtl":"^6.0.0","@material/base":"^6.0.0","@material/theme":"^6.0.0","@material/animation":"^6.0.0","@material/typography":"^6.0.0","@material/feature-targeting":"^6.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/floating-label_6.0.0_1587662818671_0.24828948653745786","host":"s3://npm-registry-packages"}},"7.0.0-canary.2673adb74.0":{"name":"@material/floating-label","version":"7.0.0-canary.2673adb74.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.2673adb74.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"8576b2fe9177dd59bd57209dab38dba89830d348","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.2673adb74.0.tgz","fileCount":34,"integrity":"sha512-q/4CnALpMblT4Jrt5zmAOFuHYUg1kGDTFO7YrmFYQ27KGnXrRMkM1vo2D+mC1ZNjIhDs5yEm6VVjLS9neG2P6w==","signatures":[{"sig":"MEUCIAC8xCKUIrk0D+S8fGkBViqCSFaelrNLGiZFhkjln52UAiEAgUEF9pqSdZm8zYvgJWLHQjR1SFIo00k1D4K+52i+jO4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":195486,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeohqrCRA9TVsSAnZWagAAQsEQAJ32XHKJOqDk+1wyucKQ\nXL7SEaWyNOA8JREPp1lhK8XzZwhygcuWJGwHzkwKruhI/bTFXP0XS48fGrQM\n8J+Q8AM6eKC5Y6ttfigyciZTAa1CjpNjE64bceYfsV2NC+yOg+TxeQI35NwQ\npdnIO4zJ3Ijwqc59bwWP6GfCyML5wZiendautHVB0xUMunZmKy+NilgLcfxz\ns5hUXsFERsjd0iHL706gPrOoipxjmU7KXLtKCN7NTZCmTWVgPrsTWgp1SOjn\nqrx98Pn4a7DMEkpZd82LFxu5sJDVpyvz0ncPzFjBgiI/zUpx+my87IhE1+So\ns9m6KuKmq03osc6mg4uJR/+I3BaA3Vdjo9yabKKs2G6zzoGQFrp67FHGQI30\nj6Dk1lWk7GkRoWrjYpI3xvgiQewrBSxp3pbpXZrVkSq1dIxD6/Tj27sclkvN\nk0dgXLqfOXmRZUP0WZOrUOROfMfIFmlvjgcb0B1ZDi2s/4iXMkBE+9oYmppx\nkSsFYCFiY1Pd6kQPoiL7368IsTbbYFDIn56mPFhHOt6zjaOfCY7cmtfzTwdB\nSc0K25FouvJnGe/lCXI4OTdf4BHR3+0CLn1/mJUkr0QX/TZhdFMqU69XC2Rl\nVP8c/kwpxKWW2mO80Hd58G1UUw6AkK6FhiANwhNGx5fAkYu+EhL2/aL04sP9\n1xmg\r\n=Qg67\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"9cedd1d83d1c7d125a3ed38281072b6e50b57e9a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.2673adb74.0","@material/rtl":"7.0.0-canary.2673adb74.0","@material/base":"7.0.0-canary.2673adb74.0","@material/theme":"7.0.0-canary.2673adb74.0","@material/animation":"7.0.0-canary.2673adb74.0","@material/typography":"7.0.0-canary.2673adb74.0","@material/feature-targeting":"7.0.0-canary.2673adb74.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.2673adb74.0_1587681962389_0.06565708621269484","host":"s3://npm-registry-packages"}},"7.0.0-canary.b10d0d7f1.0":{"name":"@material/floating-label","version":"7.0.0-canary.b10d0d7f1.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.b10d0d7f1.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c4288efa1187756e4dba984f919b656021cd83cb","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.b10d0d7f1.0.tgz","fileCount":34,"integrity":"sha512-AZ0MLd7SOKb76+LcKiERQf7VG/k7S1yL20JJml4RSgNcYO/inJiMU9hmGSugIXj5mloI+dI3451rTwEkEljJiA==","signatures":[{"sig":"MEUCIH2wFN+xGtLhGHM8MX0qqPEsgJ/U7V0mOPh56aBkS4XBAiEA1fUt7A95N2THFek851A1wwnJOYm5lKKS33NACvSabOg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":195486,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeojEICRA9TVsSAnZWagAA2uMP/RrLS3Gl8kVB/PwA8bwY\nHK/YVmiivj9Q2l4iAHm8mDhtHy4a8SnWJgs0scKvNG97CN/N/DgoBTVge2Y/\n8CMOTPjNHYPsWGm2d1tbbuIWbymYRCEhOImjhxDepKuXWURB0rIlbiNNIr5B\nQIA1Hv4zw80eIwcE+mKu5eQuHySOyiKYJFFQKhTg/3yZMKSyaByTF6RNBbBB\nGJLXR4Eqn38A2GfbAu9nhyOEHnozL1UambrQoUPZFsWMP3OjkBpmflAm19RN\nkrWbq5hTYb2QCVg35NHeB/UuL0n6HQZdcvPgcyi+tQAri0nc+ex0wQhf57cI\n65MsiDmTYJMAeJ+7ZAd7nD6ig6V4aSNkzUpb9EyBieUeEiouojtnDZqEcYSt\nyLmzWxIFiASC1CRw6LKy2DT/fsuf8ZifShD9VL8pnuPDMrMbN3wCkdCQ80FI\nh7AccdQGH7RV29w2ZP6+zhlY/fuJOz3doPd3f9CXM8wiN0uy1eMP5jTCV5j3\nKbf65SR7QHtBAr5qpkhbIKqcuGMSCfUR5lAm5aAgzDm9I0myYrmCr9zLuC0J\ni1Y0LA76hxcFli92OC9gOv4GgC/478B/gIKNMrJGqqZiLd4SbTesojMjD/nY\n0WBOe1r4c9Y+UY30AvBTtgHimykSEX7pr0IhS4tqsKOT+B/WDedLbB2sWcco\nVHff\r\n=dWZC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"83fc566b3c065e01bf601ac65cd6d17b634b7872","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.b10d0d7f1.0","@material/rtl":"7.0.0-canary.b10d0d7f1.0","@material/base":"7.0.0-canary.b10d0d7f1.0","@material/theme":"7.0.0-canary.b10d0d7f1.0","@material/animation":"7.0.0-canary.b10d0d7f1.0","@material/typography":"7.0.0-canary.b10d0d7f1.0","@material/feature-targeting":"7.0.0-canary.b10d0d7f1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.b10d0d7f1.0_1587687688284_0.5465465393474938","host":"s3://npm-registry-packages"}},"7.0.0-canary.3bd8c1bac.0":{"name":"@material/floating-label","version":"7.0.0-canary.3bd8c1bac.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.3bd8c1bac.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"44307ad089d78734cff6bac4c438b15b726a49c9","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.3bd8c1bac.0.tgz","fileCount":34,"integrity":"sha512-uNLxUE824ng2qKbh+6Z2smEjVcMx5QLkwa0zMmovOYBUrYauREY2aHb8n68OvMabX/e4tA2LCRWa73zcbjyoPQ==","signatures":[{"sig":"MEQCIACrWc2Jusa2UKLv4fg+vs2TRjv6+ZGHKgZimbvPhdzhAiBdZ6WWsHYJudw0A5YjSiG+gzAHM6A2B4sRGYOmvaM6bQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":195486,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeo1TOCRA9TVsSAnZWagAAP3wP/0+u4YlnXI12bjwwfawv\nk/uiUbB6hvJeXnkcH3lqC8OB7MC8OuazSC6zGlywxnNCAI8wqHCZb/61T9cb\nkpZ5z9yBIpnisIxrF2g1efoKqdr+3Q6w8yTOe4gdnRyZce3jBsH1JJDhL84C\n3cNcFUo8Eqht947zPaNoETAnber1b1tdPJsrGbO+H6WTifimhvFGVc+FOGdp\n5sPXyzczRwWdWwMYbTej0T++HvbkG0ZbEY5BOj0lNS9b4vbGPgXPdMynBqRP\n2lWsEYErotTLnT3+FQpiHTTMvqZWe6jCy0Gae2FBaOUQpldD9KaREpYNS6f6\n/1bvbbckqUZ5uWsX3WTYspCtQqxvLKXnF+np4htFTzGab3Lx6fKg79FmpLPe\nPgxQ3ktErPi93SqdaSafoOG6exocK+9RiCiae5ajvRTnUmPeaDLzR63zCK+4\nx/JjXfh5lhtKKvsYUlM8VY1z/nE9igNDeJOAG0xQWb3yA11uCb3N2UDX5EL8\nRwc3I6BefgOHVHoZyjKMxyjB9wmHpjs4e5nyNCeA6R6U75J0JaGhjnMXJaVQ\nkdsAJyDXf5YrsQyL8xY/XMrQzF8xWVTer7Z2kmE+HLBDebED31LjEfbULr5r\n/dsghmjSRqbNx3YQ018jaUFonN36f/J1gSQgLuGZ6ZNYgOCXA3B/CqIaF86q\n8xnb\r\n=dRMw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c6f324d1b107431694d9112a3e94b90e82718ccb","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.3bd8c1bac.0","@material/rtl":"7.0.0-canary.3bd8c1bac.0","@material/base":"7.0.0-canary.3bd8c1bac.0","@material/theme":"7.0.0-canary.3bd8c1bac.0","@material/animation":"7.0.0-canary.3bd8c1bac.0","@material/typography":"7.0.0-canary.3bd8c1bac.0","@material/feature-targeting":"7.0.0-canary.3bd8c1bac.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.3bd8c1bac.0_1587762382491_0.6598209996152078","host":"s3://npm-registry-packages"}},"7.0.0-canary.b83c8dc22.0":{"name":"@material/floating-label","version":"7.0.0-canary.b83c8dc22.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.b83c8dc22.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"0020a5b6ccd6f56d323cd0f4177bbbf24e22d84c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.b83c8dc22.0.tgz","fileCount":34,"integrity":"sha512-nCfHg847EyjS6ueAng6qoL9ktLpruNVEc7qy5LRwSO8UimgHOfIeyWVmeW8RYaH/JO1kJKUQpbNnieYL2Rmqgg==","signatures":[{"sig":"MEUCICskJI6+J6ygfcYZPxMVB7OJA/ckgIZxshGuNX6iBtR8AiEAlW2CSEgX3VaE5M/WYAwlgBEBaELybauwl6d2fJxqvIw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":195486,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeo1fOCRA9TVsSAnZWagAA50oP/1FrH67t8YY0Svkf1GnE\nuOKXomrf+go1/UmUq8Ae7Djja9a9xkUrr4Z8tFpMtwuB80flntWFZx5c/xDN\nkRevDN0ISQ2GtkxIigT4Xl6W1X/ot6AwJzBHWsysIPcGe2Cp7PpE0VKJD4Fi\nhMy7j5rh4gwc7H7GvDZIOhbwn3rrJVxTBE1FIDPB4SXDDTdn+kX15GPkIDQx\nt37RrkiRfbJ/dAXfj+Orl/ogrHWZaajv093jCEfo6woGhRlYSpXOqWR6b7at\nQlf884h1ZquczNw5yBlaDJSrmvoa8sPVKo9Qy8xef5CGovwFgZRycKDwj0jS\nMIbwouiogI1eimkC5ZyDIa1Cj0gkSgCsD67bAnKlLfRe9bjzkrZsPq5vVEul\ndTQpISNqyBPNWFV0PS6UTJQRiYw7wCqgblXgxUtUZ+YXrfKEOi99nRisegOd\nwQ76VEklJ/T2scj2y0wgAHnlVmQM0bzCJi0O+mEZRaBmhWbEKVO8m/wGoaNn\nyhPz56wSwOfHVFRtOL3sXozzaPVSskEuGsbgL4Kae+1Qezl7oGWjiRN2WiNH\nIkg6I65oz8U0xVY3Gm4CMfFC7MRZEtwi2aCs+TzAFSTvNzNRl7Anab5K8sMs\nUMRRCGzx5Wrlo5L3HmKCnuFLdUjDMWNFQ60mn+aYUS6mxRIWX8rbrMTg7rvD\nX50j\r\n=0c/V\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"92cfe3e927d76c82fa2d8a864bb852b8d19f30e3","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.b83c8dc22.0","@material/rtl":"7.0.0-canary.b83c8dc22.0","@material/base":"7.0.0-canary.b83c8dc22.0","@material/theme":"7.0.0-canary.b83c8dc22.0","@material/animation":"7.0.0-canary.b83c8dc22.0","@material/typography":"7.0.0-canary.b83c8dc22.0","@material/feature-targeting":"7.0.0-canary.b83c8dc22.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.b83c8dc22.0_1587763150135_0.264915305646674","host":"s3://npm-registry-packages"}},"7.0.0-canary.1b3dd846d.0":{"name":"@material/floating-label","version":"7.0.0-canary.1b3dd846d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.1b3dd846d.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"bca505c25478b7772621cd68bb1f7fa854f4e1d6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.1b3dd846d.0.tgz","fileCount":34,"integrity":"sha512-hzK7DM1VLh8dv/A7gvVxBZO+bbW5tawsRe+gsjB1G9W4UN2sSghsr0gcchiEdRGUorcMlrH3KfGKWH3BIBQM8A==","signatures":[{"sig":"MEYCIQDHS3nWKJj4nqb+V9DQ7qtSeHKKauzzFiB5A3vHMTcVnQIhAMh6/h15ssi7xcHZJNqVjpzwn+ZmDpo+qtZ52hgvxL9w","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":195486,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeo4ffCRA9TVsSAnZWagAAXXwP/j65HyvXrDxWYvPfhEDN\nL+dKz5NlCLcckU42jb3YjHrevDO01KjCDleEj68vyAOg0LDGMkTeLJ8I3+iP\nEd/OkLQL3atk+5o4kdGyIF5b/WCKrt+K0cflB8oyDyaEGzyzhDOWj2URVHec\n7WO5lhXuqC1UcFR5QgivCXswOYTHoDW527mWjPZ8n7FHVS8n372G7rzAnHkB\n6HAyLuvAkpwf1NShAZ0jsycK3M8teLMSFIxAmeL/7MSJe8vLwqSmrY2Rh7Eo\nhzNi4MjSnjlBK2JPfo+MQ+J9xhW5LppDUmxv3NPI+0yZ2ImTmH+R0SR194gA\ncEDvaKZj5vIAHwBydDwmEkNUcnLyMXLLOvAB0eEOCqf7H4alzQ2ZtNfxbX4Y\nMTFv/qCu5YaaBN7nu4QAkG1QAUewU9+jG47ZdhO9lJCGey0a4JzQR+zVceqX\nAPhBohlFxYxuhs6POZb3ALbIESl+nsrmdqMCFSLFhKTslRdQCSVxxlzw+vhT\n8IE+lywwgufL5aQESeQQoT/Hn4xZPfN90LobFaQewADGqcxX0No8e48rurSH\nrjYledsITg8zQ4ERi/8xMk0O4H/wJt2N8HxkroIhApnnvdQ7JeuZs0hsrBhy\n+jAkRRWiGxNx4JukJ6b/UJwxMyIV7kTZwH/q0gymL52MnU5Clyw6Lo6BL1th\nGraH\r\n=0M5d\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"370fec5aeb98791d923dc357e46611e61cf6eb0e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.1b3dd846d.0","@material/rtl":"7.0.0-canary.1b3dd846d.0","@material/base":"7.0.0-canary.1b3dd846d.0","@material/theme":"7.0.0-canary.1b3dd846d.0","@material/animation":"7.0.0-canary.1b3dd846d.0","@material/typography":"7.0.0-canary.1b3dd846d.0","@material/feature-targeting":"7.0.0-canary.1b3dd846d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.1b3dd846d.0_1587775454888_0.7329398705257915","host":"s3://npm-registry-packages"}},"7.0.0-canary.29debfea7.0":{"name":"@material/floating-label","version":"7.0.0-canary.29debfea7.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.29debfea7.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"528a29a92c3fef44ccbd76742d53b30132611206","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.29debfea7.0.tgz","fileCount":34,"integrity":"sha512-zNZNBdtNw/OUtcs3mgEiSfk8FDPqaoEaZ/lx66sVWeROMNALlkmsc59QrGeCq0clF0HjFE2NvvIKZQMvBy3NMA==","signatures":[{"sig":"MEUCIQDp96P/zIvnH5Vq0UtLsfSOtlgu7SXGZIvvRX1L2+eHnAIgeNOK4Lg1O0SNaY/YjSFx9Xe+JCTxvq/3eEuzkgmofXk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":195486,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeptDmCRA9TVsSAnZWagAAWZ4P/0qBuQpuIR2q3mm2QkfW\nSsw0WN29bLTu1P0Otyg/Qp+LIMrtzkQDMdGooLuEXWPNT2blJH29jhJdy+HS\n39y/OfCD/k+p2/vpyES+slOPhnVfso86sFKX3/vFtb9eqMGAgaVKg+qctF5m\nAE/KhVyZB/IFe0d2sUGqNGYMbFl124dTSBkMziEpLFt02Uxh0dYxite1HKyw\njPJQsS1Ec7y7c4G/x3XAgCIbagsvXeRgZgrUDU5tsdAfWpuvdRKWf8d1AjlF\nrchc+Pj1Fd9g3cMBWWJdc4esp3Ba+OAnqoDZiQ2z6FT6decTDrX0DOjpOIKb\n0WvMAdLuM43oaUsuUjHZEcCBaoGXNx1jkhlkZFCSQXJLGhKKNoRYsQ97hKYY\n/G3uJbI9thXfaawkcMkUSOGglmy4ahSAfUcKHOVDMm5wv3QQvhXJnQe8OiOb\n2Tutc6cu0gdDjOndxPqSJ9h2b2wlMr30HCOWf1Nt1ZUMnsuiykXnVe3vfELq\nE1PBFYf2HK0yYNj5d5WTIqol8F1d+ydLRxDLCRsKmp6iRTsxuk2g8J68njOI\nIECNirB8bZluGO2E2MsQaSLkLsKyvOYkGZldnkMheZbi8k8kWszzHU6JMZy5\nyiAPbHTO899Gl5wjdZoJ3Fogrr2eqnguNxcqQVx6rMVeeWzKq1yrkQHFCheU\nkXx8\r\n=Re8F\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f121c350e2a52fc59191d5e843358aa3e3926ca2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.29debfea7.0","@material/rtl":"7.0.0-canary.29debfea7.0","@material/base":"7.0.0-canary.29debfea7.0","@material/theme":"7.0.0-canary.29debfea7.0","@material/animation":"7.0.0-canary.29debfea7.0","@material/typography":"7.0.0-canary.29debfea7.0","@material/feature-targeting":"7.0.0-canary.29debfea7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.29debfea7.0_1587990757610_0.823198338582769","host":"s3://npm-registry-packages"}},"7.0.0-canary.28d32f8e0.0":{"name":"@material/floating-label","version":"7.0.0-canary.28d32f8e0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.28d32f8e0.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a2eb37d19844c08bb18b8d34532167c660a6646b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.28d32f8e0.0.tgz","fileCount":34,"integrity":"sha512-TIDH6qbiffPMGNQ6NrZZ17523WPpZEcz844ETlF+dAKGs2hfoARuaQZYnjR/x+EFF3HsmyPxRiB9q+jIX074ew==","signatures":[{"sig":"MEUCIQDdixxM+D1rx4eZfZ5JKjwbkPc5lyyepr7ZxQh8+cvjPgIgEwCamPf2NV3T4k/Q2AIo2PAcFowzOUPH+eCxZTCniTI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":195486,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJepuciCRA9TVsSAnZWagAAmlcQAI28Z/6TSqZrxh2W4FwE\niCcaQ9S0cLEXub4U7r06AsgI/47wklfHW0bIYYHHRQHsMHILmJPTjxJdTvWl\nNifD2TcMU1erXLx7r4XD0eI2ffvCLLbhZ7KeWKMgKDFfYl70UbS+q1XcOTzE\nSptWc2ZPZoOkgHJILk/wnifM7KJPbq5PEq0msyhOJ2jhHfelAPa2GMruDd/l\nYpFRfT5Vd4jh1/C8cvJnHoyjolm6LKP3h2zCz87fMZyLDJWmhyEzNaFKVmoX\nXJMhiqpZPqimtugceuopt3vpF39KMPaG3IOeXsS1ZP2D8VfqfMGJWK/24DCD\nMGx+A8QaseTlIxiIJp457ksUrta/uj0FZBmdHTwUTIAnK4tGrworvhbdoYQR\nGHrsxbnWHnCSmwT8qtO4kAa5WKXiFLm9uIpeVTrEGKfXMyvPXDPsArPTJMJT\nFlsz/JIxkVHjTpgc5SBQq9P+OQrOSzwka40GdWyGX9MNfiYA900Voohe09sJ\nvn/ElCcJaXwSI+9N46IzruRDDu7fFdXzyZPl5e+8iLgx28MVKGspoemYFae5\ny3vVOsGxNd6EEr+QGKMHKT7Vkcy6bBMxuVAkASmI+LaAP5kesbgxqSoWkC0f\nQWKDciZr+991L2qSMRMAqhFB/Eukhl87h0F0+Ispge0kp6jkdRBHv3tDAcl1\nSARJ\r\n=nV3A\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5e2a5c88bb5127200d9f70d65964a419ffe2b123","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.28d32f8e0.0","@material/rtl":"7.0.0-canary.28d32f8e0.0","@material/base":"7.0.0-canary.28d32f8e0.0","@material/theme":"7.0.0-canary.28d32f8e0.0","@material/animation":"7.0.0-canary.28d32f8e0.0","@material/typography":"7.0.0-canary.28d32f8e0.0","@material/feature-targeting":"7.0.0-canary.28d32f8e0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.28d32f8e0.0_1587996450050_0.5133529277769451","host":"s3://npm-registry-packages"}},"7.0.0-canary.af71cfdd6.0":{"name":"@material/floating-label","version":"7.0.0-canary.af71cfdd6.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.af71cfdd6.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9d66080297d839765cdcc1a25a75734514ee8fa4","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.af71cfdd6.0.tgz","fileCount":34,"integrity":"sha512-vUuPTXWWYHSHSklwUMVEjMTD9lIzusX3G1Fp4MIZ8T0uO70XY68Y2/FJJjq7eb3pV6dH3OH60IrdfBB70nEfRQ==","signatures":[{"sig":"MEYCIQDtskCeOIEGY0HhOhBty1olW8Yti6gA8kky8jIWTA/Q6AIhALz/RqT8fzn3jg8l8ijtEy1xmQ10MymcfWLHntC5/poX","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":195486,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeqLmaCRA9TVsSAnZWagAAdGUP/12MxbBWGPvz49V8D5Vx\n6P/cYe9R12TffOXvOfYEVIAN2coPamL0ddM8Mghff7R/Gk/uoktcTQKlWM7Y\n/qwJdhbU6exziJsAWryMR1NKaGJb8vtsgv3k/eMBVRs4/yyr+xchgyt/d4UK\n+ndcGYlc5JDXjbXMvyRToyS82ZJtHCH1JFFJmZxNqwZqwfCP/F8AwFSIQ+yw\ncYLcX7w/buWnxOQ7pSRN/E8suY8CkQ1Zm9jNaFaN1ZC/EDsAGBugnoVD22wP\nyqOu+YjI/3S+SjZP8jQM7XKft+GXfI313QRgPfVt9vh2rRITrX9HmW55M4gc\nfNB2oRHm57KA4pHwl9+nl4MbMMQJng1DHbidLbr9qh0SyzyzUCfE8pQqHnlB\nMEDVSn9h7uq/uhjsf4QCzWfKXUaY1Kd5jyCCJVPmItrHMOi0LPKrskKandos\nmOZP7SpNjAG9r5k+gIrRijW3SDOIBsoIJpAe0Jw5wkeCe5NQkmBvXBlYuFhW\nBBWVRasPaXimmAz9jILKD3u025j0E/FrxVkRlL7PDA7GLl+aRZZFaiekfvfv\n/2Yc80fko/MCrdux4D/E+l8oo8HGDHTuykgAATDGOR3ERzwGPd675KVGCs1X\n7lrc3ZLCTVOtz6igvbFTibli8WlFnyw1n4a5vQ+Dw8qkb7v/EpOzWYxDn1oD\nLlYt\r\n=c9Oj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8ab654dfd65440046211cfc73468f20a57d7fb4c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.af71cfdd6.0","@material/rtl":"7.0.0-canary.af71cfdd6.0","@material/base":"7.0.0-canary.af71cfdd6.0","@material/theme":"7.0.0-canary.af71cfdd6.0","@material/animation":"7.0.0-canary.af71cfdd6.0","@material/typography":"7.0.0-canary.af71cfdd6.0","@material/feature-targeting":"7.0.0-canary.af71cfdd6.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.af71cfdd6.0_1588115866435_0.43745470874845593","host":"s3://npm-registry-packages"}},"7.0.0-canary.99d2fc961.0":{"name":"@material/floating-label","version":"7.0.0-canary.99d2fc961.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.99d2fc961.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"64bf0258b68a186a1f99d91771a0fe5874ff7b1f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.99d2fc961.0.tgz","fileCount":34,"integrity":"sha512-rUskGbUC05crm043C64wda4v8IaogMZqB2SdOp0M9JZdNSlJ8X0mC29vPHLi2r8Rz38YM/LzvRy5mHiTWWm93w==","signatures":[{"sig":"MEUCIB7pohrhAzboE7+WuC816p7XidjGQ0hHP5x6MWg6q9I+AiEA6TA5HxkS2rWjj0BRgnnriJ7OeBugxQF+4YZsVG/LY0w=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":195486,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeqVqHCRA9TVsSAnZWagAAOPIP+gIx9BXX01ngGRkfiRtB\n/18CTv0/VRW9HTGRDuWcGfvNJFwd2raQdpOQAH5vBAJoS0w8qsO/eZSJEGJU\nEGmEnV0IDWUbNkyBBsXh1A/8ZfLYVP260iaQk2SzSPSLCi+N2QLur2X+iJHR\nFPAUOX8BtFZqO/RUC2xK+BhWmnSLnXa/Ok9lY/vSYuR7WsqWG2GMJziPZbDM\nvR4+NN+9fg23lJr+WlPRF/Ek5EhZnT3pcySyBqsfeNth3pAZrAwYUOQZt0ya\nh/xwN7VnnYzlnxSPwmMd8YTpGdlH1J9acXubIwddhxsntYzBfb66VDR9jK2w\n/hjOUCw+K6c/+zUnLbEva4JgMgE/0TO84MnX62x5oZfLuuiQrS6h6wKxdhiJ\nafj7EWzofwU/9drkn4rHgyxPWxNBMvGG1PbrQgzJeLII8+NWSHX/nES6EvOq\ncnhih/EVGf+9KKCn5kRtwXLbIXIznlKcDeRSrQ4I6Jm6Vg8pJgKrQxveIHXJ\nQw1yp14WGDoV+eEyFzPZRx4rT661JCNkULCmGreRbAPcRAhookEMaB4k3LKr\nea5r3Pfi6/9KcntJYsZHnbtY2sqp9amb4Vr7KAtbXT3JMk+3Bh8m/qfxJzw5\n9yCfnCfoUBT9uK52SNQVEPSdLE716Aojefjvemp7byNueFcdHTtFtje4dfy/\nvcNj\r\n=RCR/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"9b1ef36f20c436f96aa47dc90c983832edc5985c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.99d2fc961.0","@material/rtl":"7.0.0-canary.99d2fc961.0","@material/base":"7.0.0-canary.99d2fc961.0","@material/theme":"7.0.0-canary.99d2fc961.0","@material/animation":"7.0.0-canary.99d2fc961.0","@material/typography":"7.0.0-canary.99d2fc961.0","@material/feature-targeting":"7.0.0-canary.99d2fc961.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.99d2fc961.0_1588157062638_0.6505505872978703","host":"s3://npm-registry-packages"}},"7.0.0-canary.0e052b24f.0":{"name":"@material/floating-label","version":"7.0.0-canary.0e052b24f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.0e052b24f.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"810322fdc8e7bccaf82f7b4af8a2a665c8c7e506","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.0e052b24f.0.tgz","fileCount":34,"integrity":"sha512-d4NqPD2lnnvZton2sWr2zR2795TZe6z3g1GCIa1i3pinfHdi4PXjLoZjl/QNz6KNwW+cGbFtKm5TKriWy7bOow==","signatures":[{"sig":"MEUCIQCzINAza7zj7Iy/OmaQv4f9QK2XErB4/jwxYlhShLdNDQIgV/DzbWfV139s3o7mlWp1EH7xCNkN01Gglk/ix6YVzDM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":195486,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeqioUCRA9TVsSAnZWagAAg5UP/jswRvhAPxhNfjkgPd0L\nxepQ7pZ8GtGiBCkRja5p5uQZuCX2ZrT1VLC213E2+mscWPox0k0RgI65T0D6\n+1+DR2u6W3yrDbC4nQPq9uOZYrKTdu26K6ismrQueFRMSwvahak5wLzODWql\nIRBOfwXc1XiikozG4syrtKpXtJnWUHJZ9dzUsEyCekZrMTn8ts0HpAc+F14D\nFYV/Uuguaopc81QgBHlV+CL0fPJrsD7ztxXgxIrVrKqsmxptlg/WOPhtehyx\nOTvko/QrYj8ibgDjjpmOaH1+9xVg5IHQg/TdCSOwLXT7pQTBJKm8f/a/O4wZ\nfUgA4afZnhv+kGQRiZLYx5FSCw8JYnuoanlX3psh50TlE8r1X/vHvJq3aE7U\nhrEgsbjw3jeRFlBqbYADi5AzbgsHmgroWUN91hgftmFakQif2P5rhyWiJi48\nAVfE7DEMIpbySBeo0Hjm3/XXqZF6c9JZ1D0NJXG0n8x7a5SNHBdWhYN/3dPE\nedLogzYyohY2nPhjubOfHccp9fV7hlL8rN5fgpk5n0QGs54jLKDdS8T2dIxt\nHqmVJ6EHGXqdIRThMEfOq3F9wZZaV2uyDlnPrmgOqdaYGsZ02NyULxoFqvTE\n0KdmOhxXlYAh+SXpEYoaznKkQt74N4pq5/8bzWKmZgLebzioV6XhEDza1LjH\ntm6F\r\n=DTM8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"69929564b970323734d16e9588636ff8a645f2ad","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.0e052b24f.0","@material/rtl":"7.0.0-canary.0e052b24f.0","@material/base":"7.0.0-canary.0e052b24f.0","@material/theme":"7.0.0-canary.0e052b24f.0","@material/animation":"7.0.0-canary.0e052b24f.0","@material/typography":"7.0.0-canary.0e052b24f.0","@material/feature-targeting":"7.0.0-canary.0e052b24f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.0e052b24f.0_1588210196015_0.6738290860312524","host":"s3://npm-registry-packages"}},"7.0.0-canary.ff4bc632a.0":{"name":"@material/floating-label","version":"7.0.0-canary.ff4bc632a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.ff4bc632a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e00959a8b370b75c2e08551cb7de48167fbaee45","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.ff4bc632a.0.tgz","fileCount":34,"integrity":"sha512-X5MZNPvxxPRq2WlAvOGMlcwFWTcyugUq79QmLIWGJFlyqmCS0rbtcV1fID/C9vqvl1jdMNVR4ysAk/oypTTggw==","signatures":[{"sig":"MEYCIQDia6rNdI5yD8Kav97snh3j1PdYyjFxcIwyiSrFnaBy2AIhALdOi73XYJCYysGSGZZuOO9Dxm8QbWNG61GWr4FVH+uf","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":195486,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeqowbCRA9TVsSAnZWagAAY8wQAKTkX0HhjAj3fjIFE21d\n7qIRWRgxXD+YPreB4x8WNjdAKjk7uYnaXuUOLidnE8XYr3ANS+o4DUXYsluy\naaA0cjT86hlNs7Xshnp1GULRBZm6Sh2mOGOT936fz1tXgsJGAu1B+mlBOMCy\n5bqkqle4hA2bB5aWkuEguSY91lg6meVEPRtNRqwaoBDYlYSu0WFgVyh3rOjh\nUlOoDr5dxeflAwdWSe2U9HASCjEXuet+VLn9WC6PcSoYvkDNQ98LDcZppqFs\n9UJf55xm7ju/wXPQHfmN2iL2QYSxv5RiXDOE2tgGd3Kqo4ExJgx/c+xEyJmP\nvYMkuC6QDDMvVntwpcEku64ytOIiD3EK3Z5EHIgwDr0YeHJN0tye+L7YORek\n6WAKjL4fRb1/44SPeclpdvXeqYUwULm6C920USILdZikvh5XivJRVOTeWDl9\nfjJ7kMrLPFZnRhOjIKVCMxs23vroZt/KFEWBhcMtuuigR7XTQO9GYFJUg3+Z\noDIkIOqbIMqbcmT9FLWcVCZ/whxuq/DlplBspYr4NNhndWA4ZNuX6S4evEfQ\nrlwq5qeytntts33EhQX1OfkRSlN0EMmgNK8IVk873tXQEiFnLNmkxxlQ4MjC\n5ZCN+pEAdxqhdbyUR3y46COGOx9BZGnP66lPtsbD7rITionUpDiGKWkkp2S9\nTf+T\r\n=7ul7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"bf4456b9aa6b24c3dd166ee7bbf96a700054183e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.ff4bc632a.0","@material/rtl":"7.0.0-canary.ff4bc632a.0","@material/base":"7.0.0-canary.ff4bc632a.0","@material/theme":"7.0.0-canary.ff4bc632a.0","@material/animation":"7.0.0-canary.ff4bc632a.0","@material/typography":"7.0.0-canary.ff4bc632a.0","@material/feature-targeting":"7.0.0-canary.ff4bc632a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.ff4bc632a.0_1588235290895_0.9151980052770547","host":"s3://npm-registry-packages"}},"7.0.0-canary.b0f83d2fd.0":{"name":"@material/floating-label","version":"7.0.0-canary.b0f83d2fd.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.b0f83d2fd.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"cb340b11517afb3303f4c66a07df26f790f5532f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.b0f83d2fd.0.tgz","fileCount":34,"integrity":"sha512-OTV/wWmblHwdEvbNWi5QVcgueCumWCTt4KwAFtmProAyvV3Rp510IOyB2watv5MtkAEvN6avVf3vkVENy0s40Q==","signatures":[{"sig":"MEYCIQC9pybhMb8hLyUjGGqE8P3sLVOhSCNK9JjZsOIK24UhVQIhANKMYbc7JZ3B5nXjU/svos52OFmWV0xtPtM6KYwio9pb","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":195486,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJequGlCRA9TVsSAnZWagAALjIP+wZ9J89IoXx67hczPKP9\nkcvwzzdNvhyEobECweaA6a7mmqMEc6XWBBDKiLf7Hkt7b7YxRDrYm1TSo5FN\nwMyms8npdWkIGx4qp0YVE8yae6fyywhTyFyzIO4ZZ+MsR1vMt4d/KOUG9NyI\nxIuF5M2AggCKk37Kmh5e2W9GyKEFhmNWeOrW0IJUkAwc+jz2Nn90eec53zxO\nbPa/YgR/+XePY76Okn08tuWICc0/Jp6UShno7ZfzJbxnSMCIzOv2P8jksYl2\n41D63MOh5c5LgkYf6yK8HzW1gg07MQDxsCAFu6wyf3JMxu1P2eNS44YYZisx\n0P/L1sSqkrigKYWLe+yJJZ9ca7m4Fxv6peySclQFO5zeGMOx7+p1na0uzDLD\nHnfonxspVHMpJoNoKBwz4XbcNA7u4KyK/8VTxQC8pRbTo8LM5L4fG6UKIfBy\nneoGYZKy+pdCAw/lhKmJlSMJhsaBQpLWzFaC9P9Y7CUGoszd76rtsoXn8RzU\nn0jSv967e2BqMcuT/s8770IZnVTha2f4DlcQS5l+NKc85mSvAO6DTH+72HmR\nzWZWpIkyePYAO9egTe5W8D78kGlzLep7w6Jaj8ijW/L9PFC4falDnhtBAZVT\nZvuSpi0rLcyjyku2pHWEuWLHhRtMmVuWtfs34qFcHmS7mUSDvXtVsVjO+1nC\nSs18\r\n=STxn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a1500073e25d06ecb6fe752169f836de2cc6ba13","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.b0f83d2fd.0","@material/rtl":"7.0.0-canary.b0f83d2fd.0","@material/base":"7.0.0-canary.b0f83d2fd.0","@material/theme":"7.0.0-canary.b0f83d2fd.0","@material/animation":"7.0.0-canary.b0f83d2fd.0","@material/typography":"7.0.0-canary.b0f83d2fd.0","@material/feature-targeting":"7.0.0-canary.b0f83d2fd.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.b0f83d2fd.0_1588257189279_0.15258320194091168","host":"s3://npm-registry-packages"}},"7.0.0-canary.e59906a57.0":{"name":"@material/floating-label","version":"7.0.0-canary.e59906a57.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.e59906a57.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9a522accf47b1e44c076af54c030996afd830be9","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.e59906a57.0.tgz","fileCount":34,"integrity":"sha512-50V8yE3UIlU/7dwdqQHOZQfAyCNN4i6U1e1fIq8aVnSVqmwkoW9gPrlhLsRWqYwFm8imGu7+Ig2FG9XaMFwTdQ==","signatures":[{"sig":"MEQCIC+FORiFIXmj+aObftyRAh+ZLVav+leVGjoV5PVmasqXAiAcl9g56pQjK22bLmIcDPUFLsHnLkOYt+pxhO+kb2TuQQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":195486,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJerENfCRA9TVsSAnZWagAAbA8QAJltZ1xMUFSyEx0Q7XD/\n/CsI/PIYE6hF4lnX15uybyNRzjPeqYELzEu2+e6mP1h8XmF+XpubmmdPq37m\nbSwt6aqjh7ykxczcJ0h/zNhfX3y9T/5yGodhqUkKoCiodmCdY634ra831uj6\nk94JZiaN6R1K/Yn+DHMOlX4mCMAmiyySDitj7oYhEuuR8WVGUJdMSlbIXiHj\nu9k8Xo+64DoNZcguwMv1hCVVypxjlDbQRvFzY3880oEHBSvAWMot6DEnCeuc\nJzMgNYysFIaX8GwWNVDtwuOWmVDnqSxCEWi4sC91JODJ8kKcipJYJdHuFzgm\nDmHBPduBvdAmgQOZLZJFwVG/d+3e3yD6Cc9n7051Sy0OG+owzp/WRIocWxb/\ndxg/3QEO5dwBhAGo7fyqXGNL/+O5hMpYp8hL0LbwAJ9amGqColmXFo/FfSgf\nPdJ/E+3gX0ql+/yPo08FjbFMTOZs8vja+M8DNUHu9TcF+j0pmu/LL4cw4lJs\nRQeIEAEIWsdVlBvMR+aIEF9lmqtxrCd6c0uLkg6xGysFoKwIjBjYl1HrvbWZ\nvqq8fsTqZwoJTZGMY+S3hDXdUE1QMH0WGERxDaOsUDAgpR+ysl5NSHSjmW+Q\nrehTglrPvHlxIlClBAf0NgRduDzf2tml+da/El2rn2dsqg3vhx+tjdhQ3gGY\n56qq\r\n=FyqS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"fc7a5c94d345c5fcd76d4957427c551ed759a1f2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.e59906a57.0","@material/rtl":"7.0.0-canary.e59906a57.0","@material/base":"7.0.0-canary.e59906a57.0","@material/theme":"7.0.0-canary.e59906a57.0","@material/animation":"7.0.0-canary.e59906a57.0","@material/typography":"7.0.0-canary.e59906a57.0","@material/feature-targeting":"7.0.0-canary.e59906a57.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.e59906a57.0_1588347743596_0.0879913740261502","host":"s3://npm-registry-packages"}},"7.0.0-canary.c02712b59.0":{"name":"@material/floating-label","version":"7.0.0-canary.c02712b59.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.c02712b59.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1f1b6a32246cdedbb36671cb81d757dcc6af07f8","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.c02712b59.0.tgz","fileCount":34,"integrity":"sha512-PfgCjFw+aEERdlCCdOETf4+16NiIPLW7Akw9uye/yHbWAfwOheR9yLxVsbugsAKCSufAAijKuG1Rs7fYpF7x9Q==","signatures":[{"sig":"MEUCIQCl2eIaAHV/9DbWbqSsvRcLSIO6Hte83r15p+rFjeFo+wIgbnIn+a/Wae5wTHzH7yH3il31LU/de7d1PdMoTLDLKw4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":195486,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJerGnACRA9TVsSAnZWagAAh6gP/1kJMdmVo/iw/L0XEb4v\nUfctbUhyDDQ73GiJT0YFoqzs2KBJbANE3+0ANv2dz2UsRiJ+WMqxzubUZXkV\ntPaJrr+WEGv+eXaG1819ToGub4c3k9KVfRNnI6kfsalzhfjsmU5TMLBEF0n8\nA2XWzNegSdoPwApDHDK85jdqqEd7+HmjN6RhSKBCd1wyiAxrAIOmRIwNOKE3\n0P+9vQ2PHfpRQsbUcUNGlqvVAhdqdzSbJVLyy2RzWQJh703b1qZYMYnyPArc\nQSBc0D/4m8MRIiCUueCPUg/SNa4ljsk6cGHSyDrmQcqewJLAlBODCyZVAYIs\niTmAKlDRWme46d3O7zAOEhbq5BGNQnwwkUK+/MrhWDrf5Xws4/J+aMikWXRE\nOP39Gj0EG2Un9I9CUyvJPBR0vk3XK4InO0NYTHObU9jLP1JO64w7DMF3h2UF\nmP+sZTGealkJJPLJkdR8gnT9yz1hB/QPajMYq7AiBRAXxlwmFO3/Guhs6Adz\nabBcRTflCP9rBDiTcliUiFPcc5Fj0MuVDRM3MuKkDWwfBVW9/hS2ow/QboGo\nAEKO3JoZ+3C3J2mwffPKwgv+zf56/L38MxtOZQofbEeVfS33aMOzJXRIO2lm\nfzOtpjpWkCG4GQ804mqtBrv94LrUeSjc0ugR3KtTMDWC48gRGHA9MV9rdyqf\nlMW4\r\n=GPfn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ed5da0cff8ae5197cbaf84af0bc924c207d3998f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.c02712b59.0","@material/rtl":"7.0.0-canary.c02712b59.0","@material/base":"7.0.0-canary.c02712b59.0","@material/theme":"7.0.0-canary.c02712b59.0","@material/animation":"7.0.0-canary.c02712b59.0","@material/typography":"7.0.0-canary.c02712b59.0","@material/feature-targeting":"7.0.0-canary.c02712b59.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.c02712b59.0_1588357568050_0.5623809879611705","host":"s3://npm-registry-packages"}},"7.0.0-canary.15d65448e.0":{"name":"@material/floating-label","version":"7.0.0-canary.15d65448e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.15d65448e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"29d792a5fd113439a750f8c2eea8b8a7f7e00bba","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.15d65448e.0.tgz","fileCount":34,"integrity":"sha512-w/EnqAPI4i2pOUVPPczrUMdyEP/qkWIB1Bjy25R7JThReLypR+B3yNF6RcZVMSheA/HvM12NKN4NRZrQfDoaIQ==","signatures":[{"sig":"MEQCIBVay9PEPOtx6mE/ZZWKWe04pPH/l3ofamuf6XEaDsJeAiAObjTDlZO1Uk8vgjlZglrsGBJ1ZciuD279bzKNLo/Y7A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":195486,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJerHcSCRA9TVsSAnZWagAAKoMP/RT9yRox0VZ9Q6lSdIQz\n9H9jiJGxJAmVLsFjMxHcNYxBhOg4eV9dwrR1g56I4BDL3ZG2M++JYvEOcOW6\nF2RbEV6m1xW1PQ5u/dcY6U7Ae/+f0EHxDzcGsSRBEIMvI9LAbp1vFOrbvZlb\nup5Xy9zP+cNO3qHfpODRZTnZ3kuyzDty0tNBCpXgH2iCPiXjY34FQPZHtffE\niGnC2rwTHp49FWCgrp7P29xoTQ8Z42g7hyjW7fbX5vLeePTK7vHetwqv40BW\nwhwouNiA/E+yuKI0gdXO7UDwPdEH6X9CSAq7jtLUduiTEHf4bplgL9bGjWLv\nr1MOeSnLGuTSrNPNUcAsW5Ien0a2pi85O/tzUudU/DWunJSxryQmPvlzucyw\nP0C6JhbdLxQqoi09LRL9KUunnwKvgv+jvbaQpTrb+1/blLXe4avQAtVw1EVc\nM6Vv0Db3Sim3Z6C0On4eKL2nmzCBEYRK5YbXn59B72tuaXcKXeiQy1d11A+s\nZ6VegtR3Sgrx/ZEPEBPChD70V/IATDffTVSD9Ct9A2Fvg+sCnyd9NUvf9cd/\ncUqd0LpwkDWRu+qC7vsbp+arzZF5c8fDOP0FvCuiNAHkS7A6W1Arxr7OBmxj\nMxSPKP0TfEotMkylnb5Dc/sRU5XefYpncvHzh3iwOz42DvB2+nJrEODXI8Z6\nF2a+\r\n=XX3K\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b2e16d6a45e857fdec3838c3c09ee0a1c61d1858","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.15d65448e.0","@material/rtl":"7.0.0-canary.15d65448e.0","@material/base":"7.0.0-canary.15d65448e.0","@material/theme":"7.0.0-canary.15d65448e.0","@material/animation":"7.0.0-canary.15d65448e.0","@material/typography":"7.0.0-canary.15d65448e.0","@material/feature-targeting":"7.0.0-canary.15d65448e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.15d65448e.0_1588360977789_0.36661000640613284","host":"s3://npm-registry-packages"}},"7.0.0-canary.142b1549e.0":{"name":"@material/floating-label","version":"7.0.0-canary.142b1549e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.142b1549e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"18860ee2dbbb7c1881fbb89543fe6c4a7289861a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.142b1549e.0.tgz","fileCount":34,"integrity":"sha512-n5+1+o8mE6/VGCz+zuLSfCXQvOBuAOudEwwUuJ6zM8fFX1zXV2WLuvO+h2e/Zj5w9kruOIMFNRPAB2yGixLG+Q==","signatures":[{"sig":"MEUCICS9Qz4+/OvsJe/5QuNCYmRs9/WPYwwPyFnZRnvCTgyNAiEAtQqNzI8Pa94MPyIkv9nYnT7EytiEve3Lvw8oRFuIiNU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":195486,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJerKRaCRA9TVsSAnZWagAA3ccP/3e6Sl9xCQZI8UYAtzw/\n5omFNxpeBdatzMmEFy9yiTLyyQoAHGYrOLPOnvrgWAtJhanY+r1poj511Sic\niydOOaxTjIDd3O51qsrJT6Q4qsHTSsDP8kmm9tNS/zjzrChCQf83pIzO56mG\nYfUhtl9u0caxinkA+ihaO2f8/c6tnwEWv/yAmh1l5rK7+Lg4vid1rQ7l9rRd\nfzRZg+1SBa1VpybW+l5jPkwf5ps5agPUgYxqT8sYTzWKIzX8ITu68F8+ycMp\nPKYtjt9jvzLw4HSgHGQEt9oTeKxs/HlsNSU+D2Lq1VJlm3P5eijGhOTp/6xn\nmdYgWriTltCkBCt4R2qh22lZM81QsIOGPhE7pyjPrX/Z7Gs4DVcRHEmD1esg\nzDkHCL/QZ2ESn0VTb/G1QNB8u10v9tys7QafnH/wHH8cmLOfO8vrf8ef4ih7\nf64jT+Ett/1nObt1rZsXt2cf5p+FC6DQRNa4PPOktrVl0R0QlGpPeERSb11D\neqLW4HGwTwmtHsaY+LcOsrc3UBYKBw3b8raWWimItj6dT20BBuDjhWFStjoG\nXc7h7Qwa5OZHsj+Z1dQSbxFvZYG4ijPhMKA+J3vz4zbkcm2DKCwQah5AWrMA\nO/HGtv+4vBJFqdSEL4ptcbwTiy+W3Kj/fgxu8O4EYC5sdomjPwE898qHLOYh\nyrc3\r\n=Dl+M\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c43c6e2e74a4352aad7225952aeb9e7154d35751","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.142b1549e.0","@material/rtl":"7.0.0-canary.142b1549e.0","@material/base":"7.0.0-canary.142b1549e.0","@material/theme":"7.0.0-canary.142b1549e.0","@material/animation":"7.0.0-canary.142b1549e.0","@material/typography":"7.0.0-canary.142b1549e.0","@material/feature-targeting":"7.0.0-canary.142b1549e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.142b1549e.0_1588372570538_0.6562137728028725","host":"s3://npm-registry-packages"}},"7.0.0-canary.524b7b812.0":{"name":"@material/floating-label","version":"7.0.0-canary.524b7b812.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.524b7b812.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2ef6671b638fbfc796c1147954d9d794f055e480","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.524b7b812.0.tgz","fileCount":34,"integrity":"sha512-BzFLZMhuoK6K8z4dfxGsZLWEJjwF8fuRmpvuBkwjjfnLTtyPEn0aBC2WUXdaYk/dt3xKOS36kWfl1XhMFNjo9Q==","signatures":[{"sig":"MEQCIEAAYuUbicQgBR6ipq9s0rihszXZZKzVlRNGVWIwRVk2AiArZPVZXkKSuj4eRdi57fRZMtuRm2KcyAuyvDMbuOuWhQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":195486,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJery35CRA9TVsSAnZWagAAResP/jXBhHQH3ONiIkNTpRn2\nIFbHM+PPzLrgPxtpXQJoMKmQHMFrDJ4pnZsSjQ2U3SumfKqbdaqZjKivsAxV\nCEnO/ewmJMUC4V7qFrj08PUGUmm6lpORDiW5F/aQfbSjQztX8lf2d7tcfOXB\nqt9PcwdTHf6zhA9doQDVv+U+K3HXfAOXjGfcali8CtDBd2seKjXGb70m1Dwr\nJMB2f//41bHDHyf8dQrGIenk0Q4eEpZiDLwU5i5gWx/KRVSflxlU/o4qO5GD\n881I15j7eDTbJnIrjtfTlP5f+cGEgBJI8yyvDfTFaI9jompnyUF1vEqrKk9L\nWRzPTMRuYl1EPo1R+BBhbg9d5n27Nn3zL0ym2ohONkxlTu6bjA0YT3LzRUCq\nSKlGAQgAtx91k3TodYsnmiE4fdXkRLBHnA4tDxDJzqy4D0HSOu/9OpL1v/Ct\nAdTpziUlG0DKN5DOWY1xotiDyiwcQfny1Qd9JD2H91bQV0wK1GVy87FAzykQ\nKtaEAZu5e5UWg6+p0FHzWhoPdPsgC1KrlKOlYGNelRpGz4dMN5wUDhSHbI+O\noYrNyyNybScxPfZh53uxf3hoyWyA5HNf9uOwVWGUmSknRdBofkBi1dmSg68r\nVhfsCjOI9chDuiX4eQX33hoodhSNyLNpVC/3DtHr+6LS7xzUHXQRv2moQ7Do\nvBTy\r\n=W0Zk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"82ab8bbdd2373b285c315177e7054a727b38f4a4","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.524b7b812.0","@material/rtl":"7.0.0-canary.524b7b812.0","@material/base":"7.0.0-canary.524b7b812.0","@material/theme":"7.0.0-canary.524b7b812.0","@material/animation":"7.0.0-canary.524b7b812.0","@material/typography":"7.0.0-canary.524b7b812.0","@material/feature-targeting":"7.0.0-canary.524b7b812.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.524b7b812.0_1588538872642_0.592623827383113","host":"s3://npm-registry-packages"}},"7.0.0-canary.bd8ca9678.0":{"name":"@material/floating-label","version":"7.0.0-canary.bd8ca9678.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.bd8ca9678.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"199e9f903d39aeac9f4007d35c4c9f2aa6914b75","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.bd8ca9678.0.tgz","fileCount":34,"integrity":"sha512-HrVIbHgPGmKZ8ezwvQDrwz5s37tdnKHzs+ZUtE9paa+k9tHqjN39e07gUHhQFMNyNAaRyl8VTc54anW4ojpbbg==","signatures":[{"sig":"MEUCIH8nrVobCfOU+V0TXVtIvg3wJR7Y3IcSix7CQLZTVw9LAiEAmcOod9ucLQzelpPuu8v6fxB2AFoMYM3BpwFBevmbOo0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":195486,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJesE6cCRA9TVsSAnZWagAAYE4P/RxDzcXizPEtkCyQF6sD\nBt5lWfZHw9dzNXz0ozFUyO3lvSr6cqxowheghxMwR/iQuMDjcuZjodxiUX0P\n0PPLNYLyYjfDtoA1b+PpK4TfIzqdvBbmiejOxLRqpIbSOMPXyHj+iz3hZtKa\n8PyNzJOvWUl26GQPqxUEULpZ6ethfs8iFzQmzEbY1ZUahxmS5uIQil7dYONu\nLxTsLh1JbXTiL5r6K8LbxDZnXlW01d/zGs6cSWSoNojcqqQpb1+wqRroZ8ZW\nG1uil8b/npQQXDLPml3mJXgSqNKg/3JuxS9SiuUBvz+M1k0Z4JZg+FcXrQSW\nwP0hOMwekmAHWvPMZQFyv5T3OaJZpo9fqYqS1fS5wlh0VHlFbK8zoAo1I/dT\ndFzcd02c5PeywX5ZuP4X9e3pg0cTMiK/cegFrbEqKOo1nZLXT4P7gzPJysVB\nzzBFZEzdxyGlzh1XBzcIJWiEOtEniHE2fbDMTVFZFKbUmF5VIFFb2UrmoSiX\nRLZNFkhuVO8uBhStU2qB41yjatGsJuZN04ktih8RrA7nU806pMsIcH/CjEJA\nzk3E10qyJxUYzsAj62p2yCTwwuz8L7XR0SKBHJR9uH1OdfzQu5EEYN1nHGA+\nwoJRXSihg3xZm6j95Gg1EkVGgCk+3/2QtByXBFonUvXqK9fHQUy81sgwFFkB\nt2xZ\r\n=7KHv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d21e98ae16f9c893bf27272d187617574615c417","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.bd8ca9678.0","@material/rtl":"7.0.0-canary.bd8ca9678.0","@material/base":"7.0.0-canary.bd8ca9678.0","@material/theme":"7.0.0-canary.bd8ca9678.0","@material/animation":"7.0.0-canary.bd8ca9678.0","@material/typography":"7.0.0-canary.bd8ca9678.0","@material/feature-targeting":"7.0.0-canary.bd8ca9678.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.bd8ca9678.0_1588612764080_0.8247154272953947","host":"s3://npm-registry-packages"}},"7.0.0-canary.2553e86fe.0":{"name":"@material/floating-label","version":"7.0.0-canary.2553e86fe.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.2553e86fe.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a28891050e9f7d511ec4d6eb1e6af396222315b1","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.2553e86fe.0.tgz","fileCount":34,"integrity":"sha512-6YaxzkedZqGX0HfEEx/F10I6A82IoktFX7OwuZ80aUb99Gu8HViCVp9WqkSLXuawfosp6WX5z61i9TDy3L6VLA==","signatures":[{"sig":"MEYCIQDGBGtPEd7dBufCpYLnlM1b2Hmt+9MzT6CJ5nkq4fQbZAIhAMAAxKtgos+eSopoq5eNrzEoa6wThfuNREpLOYcd6smZ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":195486,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJesFFjCRA9TVsSAnZWagAAkNEP/1wVxKkzC7JXXalOguRV\nXuP9EV193r1dxqceYwv/GOykR2buhy0WrGv2YANc9D2fiK4rgu2i2anI1p7n\ng7v9C7skInDDf0UAAA5v4XEcM+dGKT25gRB5WyiyB/A8PjyhUY9+IBGNzlOS\nW1GZ5HnMSej6GyneWj2WH3oImFg6D5zgtdOl0/M2D7b8J48dwn1/U+9mzyLk\nepvHK9/EaqGfPxhmGl62dv3E8WkKDnh9SLTCEgwqFRBJsvWEmtLfMdKKE0WL\nsfMBeMHHbr36Apz6jAI+7hCyZCKUNocJ24xMcfk7AdISy2qqmc9hxYCXhCyo\nZ/J5nHIGLpd+1OWtfD1Fk1kNy/8OK2ni7uF2OAT+58VPMBwG+6CtJ9WOu/dq\n5MXeanDczLS3W4OfB7Ej2wdx0gL+T5jJZLFSevbg6ruRDiJWxVvseomolqSS\n1ZezNXPzXAI7qbYtzj8bCf0YfvPdYtHZIhHVfHN0i10a41zKyGWRZKTlWtRK\n1sI46UWRw+oLofWOZYhbmOmlg3xKIvQwklMAYZZ5ObhT56e3xG29U3NvMpHl\njKS/lVztvU3e3WiIatFbXZ5FEPRxA4KJDamzOU9bA0M6YC0IKxirKjD/k3sV\ntWlXMfHDJN+JZ7u36tBIzvX2O8wLcSIT8chI7LOwUMxywWowP2F4EnyGpmzp\npaS6\r\n=yAEa\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"9fa3a214bf3d70eb6522a1f75e622d936e7c0273","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.2553e86fe.0","@material/rtl":"7.0.0-canary.2553e86fe.0","@material/base":"7.0.0-canary.2553e86fe.0","@material/theme":"7.0.0-canary.2553e86fe.0","@material/animation":"7.0.0-canary.2553e86fe.0","@material/typography":"7.0.0-canary.2553e86fe.0","@material/feature-targeting":"7.0.0-canary.2553e86fe.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.2553e86fe.0_1588613474880_0.23467664722856996","host":"s3://npm-registry-packages"}},"7.0.0-canary.03dec929e.0":{"name":"@material/floating-label","version":"7.0.0-canary.03dec929e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.03dec929e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ee5b17672285f50a8d2501b064d1cddbcd192c02","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.03dec929e.0.tgz","fileCount":34,"integrity":"sha512-QjPjoyE2OXKUTZ5Fr/Sf8SCJ8F7phqw20xFd8xgChbLUtISgScYpaWytm+kL9pZhSgkyBXwQEqPVr6Y6a3kkRA==","signatures":[{"sig":"MEUCIQCCtQ8oZE05f6y5Xo0IINImXsuQrKZPM34K0ylId4uDwQIgWvp1diEElxl0uww3+/g5iMORNiapTapwZfYff7dkqjg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":196600,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJesKZ/CRA9TVsSAnZWagAAA5cQAI26kd8ObIryf8Y+VsRi\ndV20wV1cq5WIQMCUP+f4+dGKg1En3kZR6ZmlhmDLPZ8cIBj2IqhGOJeo+d49\nuLltSm7cXUIMECcfq9glVrIViY9LQyVpxClxUc273hB3ebxmjafTGgz2E2Js\nXknNFm2a7RVOcY3Zcd8bkxE+dwRLZ+5iWF3E5TCfaEDNrt965cjaC5islmty\nAF6bwKpZVZl+DNkSd3AuG6QZqubHtb8QtvwozS62MY8pqs95x7UXcu0LGzPS\n6BvRRv4sPVA/810ETlGhNai2M/741UsIQPpAomw2gk8ZCB0MVOEecFVgOPC3\nB05rJUXqNh+4NSJ/fRQ0Gl/TmC3zUBKaYV0hH4V5vUrEFdiW/58dWImbYA8B\nMSz3BUxWQtTjhsEUfvQRXh8wN0Z9PgTR5FuPauinJuXMvyUG9aaeZ/GUV1oh\nv3xCkP0W/en/EyErv57VuY2TwVAXaO9r1Ywnox6Qy5Q5xiimb988X2VlxBVK\nw/9ubAZ50FJuuqncWrc+ZD2CSYYejNmdOGQzSvM8Vt6avJ3pYXM+oIm1W5u6\nUo5/P+sLRh5tnCGyNw3SP/ru9Y6w7AXMPLLWnrckNrDX8w20HIllaeyXJSKv\nnshwMaIb+ymq6lo4BT4IJA/6gZXv5o8XcpiuNjeMobWZapiYuW1+jx1fWbff\n62B8\r\n=S1o8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"976244ee82fa3e080e074d9aa9a254e6428c90f4","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.03dec929e.0","@material/rtl":"7.0.0-canary.03dec929e.0","@material/base":"7.0.0-canary.03dec929e.0","@material/theme":"7.0.0-canary.03dec929e.0","@material/animation":"7.0.0-canary.03dec929e.0","@material/typography":"7.0.0-canary.03dec929e.0","@material/feature-targeting":"7.0.0-canary.03dec929e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.03dec929e.0_1588635262950_0.5395147534710767","host":"s3://npm-registry-packages"}},"7.0.0-canary.d92d8c93e.0":{"name":"@material/floating-label","version":"7.0.0-canary.d92d8c93e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.d92d8c93e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"88d4c6117ba7518dd80936938ceb3577dbe3485e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.d92d8c93e.0.tgz","fileCount":34,"integrity":"sha512-vQyePCoY+jNvXxCMcetl8lObJ9zZKzQv3TzQzKRQfrN0H8TKl9iw+VRhHc59YWQQXMpszXC52ju0NshKOsOR8w==","signatures":[{"sig":"MEQCID0BaUJeXqi7R+/cIGB5+J0nWx4z5G12B59bdtnaqA8JAiAzzpZhqEKLqIE+vqwa8Q5aCFOGp57DJ3vOnR8ErUDnYw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":196600,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJesZt3CRA9TVsSAnZWagAAW7oQAJHbGwjW95Rtegnk12b6\nr1gXcfdLSiQbMBitm/qKJZzMyFF0NCB/LtmitEylIRPEnwJk0FLmI8ZveZnl\nXVrPssQOg2Gifi3fN5se7RaHekWGoPqCnHNa4EDKJR0Kk5w+s8it6wbMJPwU\not4HKX8hyCD6rJ9kek5qCVT1l18U7kVaUaQ6n6GKmTgUuA1uw9Nbbw9ql6QM\nWSbNVSU59C6nnto6/qRdoIUltw9Hyww662+uH0BQK/HsvLAC2KbfbOWNDwPg\nhL9AwzcVj1FlIdY4LHJF35O7PGD8sLph9qksNXsVZMywRqFktpUwMrYWjfPx\nvRF/GQRPm6Q7p/5JnQrAOecOS0hud9jusQxtpRfbRIp6Ey1sNNSMwoWk0JXY\n3UkBTSNDyrKAi96Qdp3sxdQheQAak3JI4uTPRH5iV5J+kN++qGV+LZfer8eT\ngUjIyrUfqsZIs7LXVffeQeilLZ4CIhrkg44rWOfIBF449c3a+qspGpsaxqBD\naaDJACbvOVqKfmaLJ6sZyGAtKPFQqluT3mqJ8LvlRtLC8aHnfLJ4uW3CizUN\npbvyjowk3QjBpldaqc8XY/BMUzYWoU7FFpQul2yFLHR3OxUIote49LLU7d/M\nbAgDCot9dUIboJ15pQ7/Nw+c3F4fOOsollvJT4sG3cswHWm4zpDAxeIKE3CL\nBmUI\r\n=gght\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"0781b5a0f14ce17201271abfff044630d170700d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.d92d8c93e.0","@material/rtl":"7.0.0-canary.d92d8c93e.0","@material/base":"7.0.0-canary.d92d8c93e.0","@material/theme":"7.0.0-canary.d92d8c93e.0","@material/animation":"7.0.0-canary.d92d8c93e.0","@material/typography":"7.0.0-canary.d92d8c93e.0","@material/feature-targeting":"7.0.0-canary.d92d8c93e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.d92d8c93e.0_1588697974998_0.8657628569252287","host":"s3://npm-registry-packages"}},"7.0.0-canary.09f591967.0":{"name":"@material/floating-label","version":"7.0.0-canary.09f591967.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.09f591967.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e43dc3f6dcd106cba9ca73c6a894af155dc69e1e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.09f591967.0.tgz","fileCount":34,"integrity":"sha512-XHTzD1lYzbJ1czRZsuLODVgIufGsfJwnTjY0Lbsd61HYChpdacuf0yzA09UX7PdhyUBRvPau7nZKP5FMoEPaKA==","signatures":[{"sig":"MEQCIEc+tdFpzrYa7u1HZuXXovBBcZWomf1UFF4xygaxO+fzAiBSbFtZJibzcTZnedrUEfjb4mfM+rv6ApZcM808StCsBQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":196600,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJesdTtCRA9TVsSAnZWagAA0sIP/297VDQTZt68tsCSEJ+W\nkgbawQuEADVGvXn6CubVXzGiwQB2PMaS5cPUcUY/QthRxtuMbY4LV7vtM/ez\ne/Gp4XbSZVdvSL2I0lC/XgW/USo1Qlbog3Kv5jdFlpXn5mrU8AFX7oOpe5r7\nlO4ZMbz8hJBIFj6iOqi7YKZ0bx3N8jFcrM21hFEWxbCZET7vrMIYz2pFN1TK\neWQy9QH4eqzvewxcpvuVopyIlZP0PgHto3t59v90RmdP4HOs63M+ldkfpZX2\nFNk5r0XM/NpOmotEQIgAtGCsSyAMnyHZ+pah1QrWhq+RjHKnkaSANJhvIRla\nbDh10MMV7Tmf3MPsvR0oRE8U3O3QIWB00C1U3oVeSbIurT4gDtGZIY8UgxDW\nO1Oj83H8CG+zpHH1XJC84L/iPXX1f8L07T1InETtR2tGGlPXcouNAVEQ6Q3X\n2X2Y2H9uufqO1v+SyFlPB1rGZcKeXDm/79OeLYzAoC+a07wL7BwkWpBOc7kI\n11pt6+Mi37tPEJGHzHuOCMTV8fLzjYauhrEcl2+KlnqnvJicEEEopOD45pkt\n0NJbIuQkmUXa0GAFtywGu0k/317Il3lXR4az7S+vnNygTpeafBxHYGg5BI+v\nhIz8bJZFmc7Su5pb8gRlELtj0ZKK5UZ30j96CFwCXkecIfKz6fvM//e45bkI\nFEmG\r\n=oMb0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b1c5f494b8c0fe5f6f9710e50d51e2736a01b227","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.09f591967.0","@material/rtl":"7.0.0-canary.09f591967.0","@material/base":"7.0.0-canary.09f591967.0","@material/theme":"7.0.0-canary.09f591967.0","@material/animation":"7.0.0-canary.09f591967.0","@material/typography":"7.0.0-canary.09f591967.0","@material/feature-targeting":"7.0.0-canary.09f591967.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.09f591967.0_1588712685367_0.8507770287610619","host":"s3://npm-registry-packages"}},"7.0.0-canary.3846ce311.0":{"name":"@material/floating-label","version":"7.0.0-canary.3846ce311.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.3846ce311.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"98ce01254e59572c9f8fd352c995bee3e23855fb","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.3846ce311.0.tgz","fileCount":34,"integrity":"sha512-kZZscXScySk/f83u5LNLEh9ey4Y3c5on/el79fvDXpPTmYjk3RlO22xSvP/wbKMvfqbL+zKUMk3SRo+xKmWMEw==","signatures":[{"sig":"MEUCIASOUnaJHhsaEU2H99cty1UwCDVEllVVkwmrXVkLW/ydAiEAyk6BSfdpCBXUaJmnFytqfqzmkmfVHHrXRJC3ZdWRW7k=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":196600,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJessUtCRA9TVsSAnZWagAAa1QP/ikAJsurr5kthkiwe50f\nYeVa7o0QStQRo8aydr5HNK4iHrG0kwhWX/jH/xU1TYkmWQRR1C7hKNn+gyhb\nnZO/RhNrf4TfzLeCMidkClYDkh/2sswPjaBC/VNmCO0Yit4qKtbN/umQ5clx\nzU/i4klXXjxY/I5w2N/pcobjTig91bU2OGHAL1zXFNqclAtDkObNkqe6tlvZ\nUP+BrbUyLmKeZATfF36Q+5DpTIJ5Z7BWQMHSdo1DqolzReWEOOE4eLxSn0Oi\ni8evX17F8RcMJvgDyDhLWvdswYDxbkmMjoR6dagyravA/wGBURyzfMmd6AIJ\ncuNDNV1mGnr1nLpwvCDmjioEMOYkBw/jM1ukI+7+bp2oYcZoO0AQQnvpmfL7\nPCgrBoNfa3rE/yZhNB1NQWWqfq4mu9+YUPDwTty8um3Cppi49VZViV4kbyfu\nYE9Ma+xd3z5shqIaNgFQeCYJJdvMqqiBQ6IKPacQWMSb1SHIkDCJp3lAIBK6\nX4PjK/EHCEvSWraMUWV304Yjt/npS0FXssS8mYx32YbrhNqRyJVszRqMkJfd\njMK4YkzzAUwzt5RXW2D2NSgUjMPNwTDVa6h9gJLv0Pwgr8KojFGDvLVqghak\nsr2DnNwdef0kIrOUAuO2uefMvMN6GfxdjVapttZ2Tj3GILRvUtuol61bfje8\nnASp\r\n=IRuz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"80b3806d13f75bd5b77443c9e504fd6468a5820b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.3846ce311.0","@material/rtl":"7.0.0-canary.3846ce311.0","@material/base":"7.0.0-canary.3846ce311.0","@material/theme":"7.0.0-canary.3846ce311.0","@material/animation":"7.0.0-canary.3846ce311.0","@material/typography":"7.0.0-canary.3846ce311.0","@material/feature-targeting":"7.0.0-canary.3846ce311.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.3846ce311.0_1588774188750_0.4375880931931073","host":"s3://npm-registry-packages"}},"7.0.0-canary.ed7f32463.0":{"name":"@material/floating-label","version":"7.0.0-canary.ed7f32463.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.ed7f32463.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9d89eb1dd788a991b029ef1295a96d7e0d6c3ae6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.ed7f32463.0.tgz","fileCount":34,"integrity":"sha512-RAm66X3OnUpEpLE0Uz7cuR6DfQgCgtT0KZKmPL3Br3rA3iIAzYVopRs0ULAWLEKL49Qmry2YD5kVdem2PAhqrQ==","signatures":[{"sig":"MEUCICNSP5mWoWYPxsuF4HCbcLdNZIrg0vSWoW+0wgbUamm2AiEA+GD+eqV2GTFx51h7Cy5Yb4XsT8IeTDANuAMiFFd0h6E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":196600,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJesuDvCRA9TVsSAnZWagAAPUUP/3dDTquafv1Dd/cM8Ao9\nz439MPpMhl1LpOQ+a4FF4m/upHiOCiW+dfFoxRSQ53JtYxAg6qILhlRlhqY1\nF9qUyKJt872w6JSRQdoOz18kgJX3dWRPoPdYS05ZjLp/sIE9C/LjZCbH99n5\nV7Y3sXAML3ZeRnWlgwl+5tMm+td9tyl9HcK63GWuNvLvVEXb8m0fPPD1G74g\nXyt4fqJCetBQ2SUudDAdw3tf2Vv3abGWxT3X5lFz7wNMHmXOp74DpMqheeNy\ndIz/MdiRZZwg6CtCrVY+Eq8usJwTJjeaAf2cRhnS/Xx7UhHf0G+nPn4KddWE\n/HhK9EGnXkwFqtvxB9ivUVvt+yRtqKY1VAd1Xa4Q9c8bKMFqtfIoH546jVMC\nM8ptgtbjsgthBgHhBXdA+o4tciKjxz+QutUxXD/+HJgoq66IKlN+t8doWeNB\nkXZTmwELEFo9WxwPmxdshBY+trzK8yOdnwJzs1bqLw1vpuoT5xcCAPE4U0xl\nJmChj+BnggE61UjmTgMMChX1QuYK04wc8K1RJv160hR5okitKc8EHMYkOvfu\nfvy5689HSWMy6SdnaY3X88IdjMzSDqrSkrD0qMK+H7/dQW/uhgWm9x1vmji9\nsQYxiUcpvC4j+J9eZekfK5PuGMDRRHVOyb03xcEZEyzOZjjquQggfc2ErqBp\nxJlw\r\n=yYk5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"84dc461d7b4d6f61ef286fa2ade4f3d05018af62","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.ed7f32463.0","@material/rtl":"7.0.0-canary.ed7f32463.0","@material/base":"7.0.0-canary.ed7f32463.0","@material/theme":"7.0.0-canary.ed7f32463.0","@material/animation":"7.0.0-canary.ed7f32463.0","@material/typography":"7.0.0-canary.ed7f32463.0","@material/feature-targeting":"7.0.0-canary.ed7f32463.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.ed7f32463.0_1588781295431_0.5317780104090857","host":"s3://npm-registry-packages"}},"7.0.0-canary.8135cc085.0":{"name":"@material/floating-label","version":"7.0.0-canary.8135cc085.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.8135cc085.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"590a0d5bbd32332d56b3ca07ab8dfbb10c16e035","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.8135cc085.0.tgz","fileCount":34,"integrity":"sha512-Tt5S7Ao6i8VXdWbvStnH3eck+ZSZ0MSNtxQ+ZjcpTt60sRtUHafBd9U1oAcWtngLm/CG8wlN77vRFqgQ+U7OoQ==","signatures":[{"sig":"MEQCIBniw5vFHkV5JjW7xpZEJSv1UaKzPtRz5BH/aOsvTXwPAiBJ3JQ1GAZ43LRi2bUKZ7/6SE91r9oH0HnR6QCWsaIA5A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":196600,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJesxYuCRA9TVsSAnZWagAALkEP/ArFwK5Q1Zadgv3xMGPe\nogU6rnZWAVx+NDyU+yRaD8Xm/BCajxfm9qR5HfbZP1hvS9VThUygvSGrhDsJ\nk+Jz0VXTDE+zKAwmrlwpPDR78OGDIkx28n7UuIE7LBwRAYYNTWP1tbLmGSbt\nOZdlgXwW/+M4fgmTF7z451nI3wr//YtAEinpsmyjMsj5Xp7ie7kx/FRqkrRY\nH5mEgfSgaKxln4rBksXD/5YHMqCotHLcuebIHGAWXnYBGuq0YZmboN0VpYwT\nan9zqNloBOhQVxozWnYrB6vvDp2/UheC2W97iniZKqk8qatdqSDTmQ0D+AVN\nGJzeJgzrfWDkgE+3xFazvfX/fLrag6RhHCzPu8VwVq7Ga5E2q0LEw+6Xop74\nwU560y6CWTgLy7XWSWXK183tbfh8tZs+Rwk2vgnoQ+WCBrNsfmYJOm0+G0OH\n7bqp8vA6aApWU33iefs+lba0dqzmHuQFd1eJrAvf7WrTrMxSIOEcB7Ub28ul\nEeDqSk2AqJkxoEkmVugeNrEWxYv0//Nc1ZwmupsLMDHjykrFSlVmdYDWLBoP\nAStLz1Ge521u0bbjcAJVzU1/1eizD4mYoHkKJ1cWHZARVf9g5/kwYhBgyLF5\nIXumkshFFFxDW8DOr1faGNZzmqRKewIjFUabDlNuZhTypkEeniqi1cPVHeRu\noKik\r\n=yJPT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"56422959574aba25d1461d4e7ebd168437ebf9a5","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.8135cc085.0","@material/rtl":"7.0.0-canary.8135cc085.0","@material/base":"7.0.0-canary.8135cc085.0","@material/theme":"7.0.0-canary.8135cc085.0","@material/animation":"7.0.0-canary.8135cc085.0","@material/typography":"7.0.0-canary.8135cc085.0","@material/feature-targeting":"7.0.0-canary.8135cc085.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.8135cc085.0_1588794926016_0.743679186711399","host":"s3://npm-registry-packages"}},"7.0.0-canary.deb212de4.0":{"name":"@material/floating-label","version":"7.0.0-canary.deb212de4.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.deb212de4.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"742b259f406a25eaa9f9820199acc22260b4575d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.deb212de4.0.tgz","fileCount":34,"integrity":"sha512-JNz+8v/wdWC3RIZAAHJc2cXi9X1uHM28oQMyFJU1MiPVI9AF9atqxqLEQYQUajqGPcXVCsd4XdhM6iFzsejhbQ==","signatures":[{"sig":"MEUCIQCFec0S/F5cK9obqFwRe5v4tjvBWO0N1ppifTAVetAR4QIgEkNcYII62WMvnZB3M1fTzPjMl6HmssA5yt1+/pxguwg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":196600,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeszfWCRA9TVsSAnZWagAABoMP/j3YfiAO037Ah8d17JZX\nIQp+1xBtB1XtYuoTPa1bFq2iRQE+5jsEUQNLC/rPMjV021P1nBRIt63cZYhx\nAEZu5CLg4Iit3bgBhDbMAaXE0wODAnQxtVZtlFtSuEeSitCNvqhke/cqpX70\n4/T2hpaBwkM5XH0r76heqJIo4l97SOlBFDLA5cLvu0pp2FhFb9ix+DNCKHN3\n/uog9582iSkYaTab0CskPJgc/ZkIT75PwgZFXvETllQ1iv19iH70UweXQoDB\nugsb07EFjhzLNF7THGsy5EmjZ9j/ldzB1Oct+kqHw1oK8CkSgUXHQ7DOyKjS\nvKp+3OKW6i3UHcn1CFXg0zsVkKu1x6mq6jFBWs1CYF9vzoss3deZYOL/h/CN\nS9h42J+lSCO/1oh2WUH6H/6ytv3+sH7AppMamrd+lD3COuq/i2XGNcSBDuzo\nwu2DJnV8n/2EW5QHtiwDsZAHqFNuJ/zPlgzh7KUfaO6fLQNgisa5Q7mrs7tt\nZ5B8HNtFHRcWe7DW5yvxFW63UJ3BClc1GxYT0VecTMzJM7ILUfYc71+A/Lel\nKetxSZkDSswxbRb9OM0tBqbuUEwSd7b/ZFH1WdTaCPqzvSVBVh3blHk+0NQg\nqajFkcEaT6v2haiaf/oRt3Vo8jwR6oxYYHa6leWQCL/O5jDViHsLBhmZQMNQ\nu+G6\r\n=RqXQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"fe9c146f82589e5f1c471dbb4986ed6b3a7caf54","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.deb212de4.0","@material/rtl":"7.0.0-canary.deb212de4.0","@material/base":"7.0.0-canary.deb212de4.0","@material/theme":"7.0.0-canary.deb212de4.0","@material/animation":"7.0.0-canary.deb212de4.0","@material/typography":"7.0.0-canary.deb212de4.0","@material/feature-targeting":"7.0.0-canary.deb212de4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.deb212de4.0_1588803541711_0.7330802943290493","host":"s3://npm-registry-packages"}},"7.0.0-canary.f83e00898.0":{"name":"@material/floating-label","version":"7.0.0-canary.f83e00898.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.f83e00898.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"738f8327cc397537581c20fafb9f78ec86af9aa5","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.f83e00898.0.tgz","fileCount":34,"integrity":"sha512-ni2rfc0nXRRxFlHse31k+ma5o5ExkaubPd8EkaytIll84stICJsdX/hHOQWmoheBsMDPlV2ERWqRFMQhzypjlQ==","signatures":[{"sig":"MEUCIQCR+cytCjBwsaIINf4NPPC5MD/qF3AszVNsKwMzmBv5JQIgVVOmdREr6hnjeGaD9UqrgGeTy60iZROQ59ssTcRznRQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":196600,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJetDwrCRA9TVsSAnZWagAArAsQAJTUqgp6cIP0ND4PUCwK\ngbhqavKaQ0iG2Glvt0lf5qZcWzlLtrxWMiXzB2SfOcya/WpPr95p4uCYv1kt\nvLRkuFrKe8KWpMxtGQvx90R1RhbES5cTrC1l55O7HDYOTSjZK4wNd9vPf0pF\njNqq0iblrrF2OuDOqUzQF7KurQfDxTyVNKx3+G/80BVOh8xm4j737oJ1lT5E\nCN+14IuVclSQQhOMhkZevqTaAKeIY5ZpWjdOV4zTghKmeYjZN7QRU6AgpPZL\n668y3niiQhWihmemn9ZEzNHWschMxoe1ypm5znUZqPJajwLzesFDO6rmxgib\nufuspn7y9f2Ngn7ExHn1kXLTOBRb2XTkPAZNF2aUB02ZbvdT74cDEJXPybr3\nBzeA+ERNOpavB6i2qyOpH/kVkDsv9QnlyyuMTWyD15jHRgOBp8w4xO5Pdos6\nRGIoI5SGoetOl+F5GqBPSnDZB8mNk0gsyjCYpxCQX7sKyPF0VJLr2OHW8V8y\n6or5CZeu+1kq/stJlBFvaVBKornK1KK0WZMNcVf4/noz0wPISUVX/n1eJE2P\n2NMxxH05ifcKkmKKM7Zdl0qE42cvLL0wsLZrmDY88HK7DPiv36GvnA1ZVbu6\nIg//rR/gkEnLX8dtOuJfc97gGyGfuRpkkGn5iveVEHfz/2S2xn0H3YOX6wjs\nZlcE\r\n=fHVT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"02060afc2f5dcb762e9083970f865f1c714a38f3","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.f83e00898.0","@material/rtl":"7.0.0-canary.f83e00898.0","@material/base":"7.0.0-canary.f83e00898.0","@material/theme":"7.0.0-canary.f83e00898.0","@material/animation":"7.0.0-canary.f83e00898.0","@material/typography":"7.0.0-canary.f83e00898.0","@material/feature-targeting":"7.0.0-canary.f83e00898.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.f83e00898.0_1588870187110_0.816024677389481","host":"s3://npm-registry-packages"}},"7.0.0-canary.047e6b337.0":{"name":"@material/floating-label","version":"7.0.0-canary.047e6b337.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.047e6b337.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5d83a43f062d9dbc6794cc0b07bbb5d5e294e341","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.047e6b337.0.tgz","fileCount":34,"integrity":"sha512-OPXMWJqnBhWf091Bm5MfuzgfA9dI6o6Un4OvD/HvsjLlrPkw4IUjm379v5Ifm3dyUUAvmbOeviyHofdIH47xGQ==","signatures":[{"sig":"MEQCIHM1gxZxa33ky5mkii4wCB8k7l5rjjXX+QzawMVzkgL3AiBff32jfiGQwlyyMFEhx04aC1lO3C7LftdPVrflO88gag==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":204678,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJetac2CRA9TVsSAnZWagAA1f4P/RxcoKg/FYug930LKxy0\nRg5JggAGx5OtDbyMuz9w7XqR9DyZ9qYvQnyRtUjLug7z/eVYe9wtl3NmPtjZ\nG8dNYE64OdT/+f7siYCQziWZzix++MNwz/IO3IuFgeTVKGfw2+amJWWq0vG0\nmBIb2/CWSzd5Oo4e8Qs42z/zP/kl9kK/5Pa7BdFKOztsxT2WJ0ZvS0N3pbOd\nOrnVF0Tkej0S+rvnLRZwrcC1sCYz+RcPo2EHshGqTlGNvHWqVisDQMhdMN2M\nARFtREnjeRvwGjOQiT+mgAv2T6IznNn8xB3ri+Sjb4roJnUVB38jHdnBCGbc\nMk5Yibp0QBl/5XBvaabZmmEYD50RVQdg1Wl1Cjm2FsG8AvLkUafZj/UBHQpG\nxQr79RDEzBf3acDGJl50hZSokYSBDhARd7QeBQDm69tcHwf8BW9lEdgcLyuQ\nFpygJB4wp9unuApGxoIWwGofbSXXNGtJFrC9gojinfazWyeLrVBZN4nxDRaw\nXfqX8ILG91ZKU3MoAQe414VmCnbw1cJIa5FEsj5ErqsxI1/9DRrT4bQ/ZPdc\nA2M2I7wjNvbIEZxj+mInpOKsNJuXmv1ukA5OF66WKU8xp9ROAB+4FowjR7Sd\n+Y+wcgrABpsSaRSB4CpZxnqwAlZzAaKH45DiFx/G8IBX8SOSSnZNu7sOHTYy\n5Uk6\r\n=y6ov\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2be3b5993e14d0bddf55fdb157837e5593ca217a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.047e6b337.0","@material/rtl":"7.0.0-canary.047e6b337.0","@material/base":"7.0.0-canary.047e6b337.0","@material/theme":"7.0.0-canary.047e6b337.0","@material/animation":"7.0.0-canary.047e6b337.0","@material/typography":"7.0.0-canary.047e6b337.0","@material/feature-targeting":"7.0.0-canary.047e6b337.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.047e6b337.0_1588963126190_0.09481415682871108","host":"s3://npm-registry-packages"}},"7.0.0-canary.119e21426.0":{"name":"@material/floating-label","version":"7.0.0-canary.119e21426.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.119e21426.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f68138be1b98eef82e5375b4f8dc1fff9e700dc0","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.119e21426.0.tgz","fileCount":34,"integrity":"sha512-M1kO3wSmah0ydrHfI7HtAKcgn4e03hVf++BSKHyj4Sp4+81shJ2SP+vWszdFKy4LAIGQHHCgSvOjY29hGux8BA==","signatures":[{"sig":"MEUCIQDC0gcFH0m7dON/yMHb5KvI9uyCZnBerwGahz09MN0C4QIgDSQtooROmXDn4vt9Um1eIgAxKx7Vd92/RFskmKOeApg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":204678,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJetb+ECRA9TVsSAnZWagAAuMYQAKFh573ekRaVDe1AauH4\nx06gpmiNzXsYWrZll6zVIJKSoKz4MzTOvjWYnBO7KbUgH/EWkDSKEb0dQHFy\nuoC5294uk1RFtHaOotKKHvo4aM81pIudJrlSxBpaRBT3gCvrVbOZrrFA5csQ\nvmvOGKmwX2gB2qWNgb77D3sZhalsYNII4W/fDk/B8RrFXvvd/lS9z/tfc4KH\njk6QahaBz2n+ZdLof2PtRbyx3FpcpMH5HOHtIzPzG2jlw37dQQ8z77zA99Hv\nCDsH6utfIPy7GmMRygNiT1rqbiM0IKRzV+1mR/w8Yoqpqdf2dvVfdNwC9TtE\nwUBK+syd5+oq97dHIjmf9P81Yft2wnmZYiheB9PzdyTExg5yQ9UelGbKoc05\nQPz56lrFx3KylLBiMZs1JiILvWW5BuLBcmaWHQn3hR/ZcSOM6Z432/2OdJAd\nZqT8LplVo9V6+VDzszkgAwjbIQhjrvq3sRBzDnMP3kBNeEIAM//nXAfInxft\ne0lsbJqHMB5GGV4KsxjGw3+L8/pAfXCMwlcFnswTgY9XTpeEC5t3eoLJ7U50\nqZP3iYL1GrfEnT8nkEoWYShEApF3NRvE7mR8xQm7EKIvrJI4cg2MMUqTwI1g\nT5VPL2ypwzKmNVtvCTOwaeHF8/rmutJkz1mtUHifcbxu3Y8/mpzf57pR7oUQ\nzw78\r\n=EC3i\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"693ba4159b1a25af6955ffb1ce0555d7a989aba9","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.119e21426.0","@material/rtl":"7.0.0-canary.119e21426.0","@material/base":"7.0.0-canary.119e21426.0","@material/theme":"7.0.0-canary.119e21426.0","@material/animation":"7.0.0-canary.119e21426.0","@material/typography":"7.0.0-canary.119e21426.0","@material/feature-targeting":"7.0.0-canary.119e21426.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.119e21426.0_1588969348125_0.9781956479571885","host":"s3://npm-registry-packages"}},"7.0.0-canary.2f052d824.0":{"name":"@material/floating-label","version":"7.0.0-canary.2f052d824.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.2f052d824.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"508acfd9f53b2901682dec31c15ec5227953692c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.2f052d824.0.tgz","fileCount":34,"integrity":"sha512-vrrmI9wiqDyNx7Rb4esNmoH8rsv3eU9W+1yk48vxbxwmvs9dMVFSmWRA2w8eHk76me10PVCWZH2Ncu2T3dXE6Q==","signatures":[{"sig":"MEYCIQC/+TnhF+PadUWfQQQ9cDs55rvSBC7ryfLrkwjItD67HgIhALOudNaRdzm032MoSjRXaxi2KaWWhCab0BakM2XpqSZ8","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":204678,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJetcohCRA9TVsSAnZWagAAYOMQAJzEJPMqyB3n4NiEu/P4\npTkNgq/+tA3aEe80p9Qe1URQScOeKRqwM4zjJruLpduG1W5vyhIncMSmS+TX\nVr0rINPOSusCKEmH7YuFXfmPP0DXGMogddroIFcDMAbtm9fc/9WgbG4lEe4q\nDx9hCicn7sG2zD5XJEESJJBwpN4LV0MTesMtgseMwfeQXaOqkaGAIF+PIJ0J\nkrW+ifqjtZeDf6FhXC5AUc4EIQOFPX6VyhDvU8VA0q6Nx+qk+TSd1OYpolKl\nZ5EiigS6x50Zq7F49zPu7v4V9bl+B9aen7DWSJo8K9dpARQH81Ft9ppgeliN\nwf21aBwEvc5tsKgTpzXF6WJngADG1uEud7NRC+M9dLwI6JCJRAS+Aalz3pP3\njRp1jcMR0Ea8mv2L6aPTgqob1V/Bd9+dZvXpfqDW0IiziP3g1aw4OQARXo2N\nQrhG9NBSndq3O9sLtswUYCaPGU3qaf8gaEc+C2BNAKN5CdV/GH8Ed8xLBDnP\nhG+T+nmS273tDiMYPkHz7Hcz27zF/UxIUOXj8HujM2DgOBgFqcFXXe4vCZAv\njmzS5388cAZIv3c/5Eihq8CXaKoSk3ivauEucbHPqk1tophLlaqCiHOxcLUN\njbm3eO1fSImcApyxgAxHUkmYk385XCI9/XyJbz7O1MqQtX556nBRGPrx9ME+\nbJSH\r\n=HeBD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e3bfb78e98db35607ba75f333490d9693f14e844","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.2f052d824.0","@material/rtl":"7.0.0-canary.2f052d824.0","@material/base":"7.0.0-canary.2f052d824.0","@material/theme":"7.0.0-canary.2f052d824.0","@material/animation":"7.0.0-canary.2f052d824.0","@material/typography":"7.0.0-canary.2f052d824.0","@material/feature-targeting":"7.0.0-canary.2f052d824.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.2f052d824.0_1588972065276_0.6178556034574911","host":"s3://npm-registry-packages"}},"7.0.0-canary.e84444387.0":{"name":"@material/floating-label","version":"7.0.0-canary.e84444387.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.e84444387.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"cc2a0ca979e1fd1e2879a927527f98313b3ab13f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.e84444387.0.tgz","fileCount":34,"integrity":"sha512-Hh77CRlwiPULh6ntf/FhhVZIBA2EoYwhoZrQ5RgeXCnlKjkdpIKKIRSByQVOc4YUTwdX4cjBh3RnM32ECAd1Vg==","signatures":[{"sig":"MEYCIQDFs7uOVtjPQ/0571RPxEpvrHzGkO0nGPbGI6tfauUIqAIhAJwp6+XPSeIH2Z1Xvd4nU3QJTbElH2zEYjmH1WrHBL/8","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":204678,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJetc/JCRA9TVsSAnZWagAAHBwP/0kVvfa6CYG+ofpFo+ZN\nIIIHy59DXlKGTFMYE/+5MIkojd20BtkkHBitlIEY/O/YPBLoHW1zzGkHS1cO\nV1YH8qIsWTF1vPJm2yQ5rMhUaSft6FZeyExePOKLiHi5qv1epw3zrzEzmvhE\n+ivPPfQlMs9FKcOU+TeJvrSqL+5FGWM09a/NxD9mGjnPlvONDRXB7TwIQAZs\nN8Fry0x5giYC8Kl0pbmNGiuHCCFHdspkGylgnK5E48eNXVw599Lc2ZWpZNY/\nl7tCYDsqifwF9sRW1S74vN6GPUlcopKyNfHJRRgPt5o1iBqV101ff+cu5VSa\n1Gv3DV1h9MOqmk0dXwhn6DgG450gfLCFte8MclJkhFBgAcprRuKkW6/8IGQK\nbbFVhWbr7sVtB4FRKgVW8RkkLVdf7+SFF1/nwaAwiiNrw/FBYdJWx4c3SaPw\nk8jj4RP9D6LfVAtYuAhf8lACnFLUnvXZ5Dw9sMPs1m+aoWAcEySXuVkRrBKG\nQ3ZlN2aHsHgkFpOkn/8cUv6rr8LoV8c4bilWviIidw5TGRzMS4JUds4hX74b\n5Bqx3T2E1av2XJGgV0YmsLBX3uQXDxhT5vyb0rk+dolWSf1qEY7k0tVdoBCR\ncyysnNRnQCsrlv5Pr0edqpVDU9tJPntoqNMyGAs0ufOzIM4QXF5lRJWCHKZM\nKavO\r\n=iC9z\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"35f59683bcff8d7b2e79ea4f582488d0d86b0b97","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.e84444387.0","@material/rtl":"7.0.0-canary.e84444387.0","@material/base":"7.0.0-canary.e84444387.0","@material/theme":"7.0.0-canary.e84444387.0","@material/animation":"7.0.0-canary.e84444387.0","@material/typography":"7.0.0-canary.e84444387.0","@material/feature-targeting":"7.0.0-canary.e84444387.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.e84444387.0_1588973513325_0.630835169534494","host":"s3://npm-registry-packages"}},"7.0.0-canary.893eb1876.0":{"name":"@material/floating-label","version":"7.0.0-canary.893eb1876.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.893eb1876.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"412b6d2421b036680644759c0bd8cb87f0091c66","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.893eb1876.0.tgz","fileCount":34,"integrity":"sha512-0aIb5pQUIDzbMWs5awLfsy1zhNVc9k9BC2cTykdo0oeFCkUuuvjv5YXsU3OoMcr5LRId20YAdX9Qb0VaX5Khkg==","signatures":[{"sig":"MEUCIAc0H08m+BNOa8Kfk6IOp7BnVhvQlwlAvHVfuGWz6h3yAiEAsNtPxH3J6JimqZYm2V/3h2yDJB9/0syl5evkKedBdFc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":204678,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeuV2LCRA9TVsSAnZWagAAdwoP/iLotnn9ZhBIlP2AVxF2\nJJM+99AoK7adoXq+Zvf+o0p59QpVGC0FRrrd4zS6zn4v+Q6WWLPMaNQ2fsW2\nwDI1+kZ4r+YWyuupLmL03upreetIbbhdCCQ9I08o4kO19Djq8k5luHuah+/r\nm8JONvxK0E7xxO3YpYosSzYIc1YcmOn27vp72BYBLKss1NYfqzbR1tjRWLTT\nKSLh1HgFePjBSB2FvFpuuif4Q4IhmrDMRmTRvhq+mOf1tgw0xI/CYiAxrHSe\nNS6xYUR9yL4FZ1gNdzzFNjOq11ZBPYV26FHXw80XD7tk2hNAgPJc3M+wbnWq\n4eOj/8kKVeud4AIj9cbuZHZ38bVkPjoOlePR9oo8GhSeIeYGSSNtMItnr+9P\n44l7HaffiSiB0N1EcKGPbMq1RFIJ2B5RnWmdc95U5jLcewqGAplTSDJpPCtp\n/75cyX0CrYjhNIOxjTrmcbg4Y4yVwAVXSUtmPFHECsJ9wQSxAxjzPp/MKNkV\nATwYC8CqyFp3C8L6HFvV+g/9DxOqupwTcqcYkWJIsj7jg7qMl2aj/RqD1g9a\nDHjS1jERBTr/iwbliJOYb4bYJgZeGHMa4F7bIGFdV/++7xyO/linZSvUWsJN\nuLpfD3KdjxXglbUhcaZNiHJ5/ni4ZnraX9EvxLqVlJv160PWa4zLvW1daqrq\nQcUp\r\n=1ubu\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"4bf9fb733753ef4cba5683a95a2f2a71a743a68e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.893eb1876.0","@material/rtl":"7.0.0-canary.893eb1876.0","@material/base":"7.0.0-canary.893eb1876.0","@material/theme":"7.0.0-canary.893eb1876.0","@material/animation":"7.0.0-canary.893eb1876.0","@material/typography":"7.0.0-canary.893eb1876.0","@material/feature-targeting":"7.0.0-canary.893eb1876.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.893eb1876.0_1589206410655_0.8087957378398418","host":"s3://npm-registry-packages"}},"7.0.0-canary.a5aeb3001.0":{"name":"@material/floating-label","version":"7.0.0-canary.a5aeb3001.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.a5aeb3001.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"63f454bb400f8d42d716d7615ae9b3c218950426","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.a5aeb3001.0.tgz","fileCount":34,"integrity":"sha512-JJlVjoTrJhhJlfPKXg/kG01vLTBSLw40uuUMq5l1SyiiVxiCibdS8v0hLVHxy7VxL5S+mN5Wh0hT8VwgM11bsg==","signatures":[{"sig":"MEUCIAlFA2df8+77eZzpOQ3AQW7ngjUTtWswPur/Y4qbuz5YAiEAvurEuECxMui0GDA9QbgVNHO2FDvDiEAr2o+t2ssdsag=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":204678,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeuWFMCRA9TVsSAnZWagAACU8P/0aJ4VgPsPUpHTBzttim\nv/Klc6r4oszHNQQzxF6biNQzYhSjg8Yi39ICgJZxJ+XSqOW37Z0TJ8/rdWX7\nF/+HOwVNh6H3SWTNk9I48hZzhJ4invwaMc+xRnEWDqnhbhCskaGKXsuL6cJb\nuULJ6TFQdQMPVZhddkwJl0r3pnfACMQrktwFYei2sRHbTzZKCb0D4HFUheS9\naoK6gPznE3b5h7ibj5D6Jo69u8cVbSbwY17/2/ZtljshAlrpd/1cJFmpH3AU\n7uVffvKlcgMVyHEhGq4EDVqg9WVPIrMsGmdZNokIyKQ27BB2UL2TaQv2AVEC\ncFfOpGrrIxYh5kDdkfytihlmjqgORcVLCCvmCOyBxYXCkmkd5rUl2iAjnJQw\naZjvf5tC+Kh2kNslCsK9FhTN/8Blj9x0MMvDRLxejEz+laslTC1JJBt1U2dK\nuI/XC2b/zT5z9Vv65UQ7UX3/5c3ZHyiTjPpkM3ezhwTZh9VGmnwUJjW9ThL6\nY05As3rgQFTXM0GBOWo/D+iMr3OtmHdbnb+4NUoGQBeA1GQMp+FK8iFav3IO\nc5C6oKjm8B8TU70i3cT41EUHZXevqV2/ViCQSWqnfmI7AIQEWGZr60jLhS+3\nEqrlPAVAZNLW7txfXiwZ/2kxcuc5Ocb9GnY2OGrOf7/qHewrQIxI3T2qRSlC\nyD14\r\n=P19O\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"01ce640dffe32b7838dec108ffb4d0c40d3e7bc1","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.a5aeb3001.0","@material/rtl":"7.0.0-canary.a5aeb3001.0","@material/base":"7.0.0-canary.a5aeb3001.0","@material/theme":"7.0.0-canary.a5aeb3001.0","@material/animation":"7.0.0-canary.a5aeb3001.0","@material/typography":"7.0.0-canary.a5aeb3001.0","@material/feature-targeting":"7.0.0-canary.a5aeb3001.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.a5aeb3001.0_1589207372441_0.3378150412641516","host":"s3://npm-registry-packages"}},"7.0.0-canary.610c68d97.0":{"name":"@material/floating-label","version":"7.0.0-canary.610c68d97.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.610c68d97.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6fb85c0c2ccbfdd2d159b862708ede5399c16db0","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.610c68d97.0.tgz","fileCount":34,"integrity":"sha512-DXNHC2xzjLlrlbT9zBwZ9/VJFehK1TNpR8D+VXwdXTuBfw6V7gX1Iom7wtaYTlz+BHV/lV32QI1BvyoG5C3QPw==","signatures":[{"sig":"MEUCICKgSCsuvqof60s+Dtsq/9jGP9Ef+WwmNGTW7+bbXL9bAiEArzn/cFT1gQBrBSeHZYW+c/i3u/p2VUlmlmLpMw2paiI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":204678,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeuahlCRA9TVsSAnZWagAA440P/000k6CQ7Rg3fgay8vQD\nDFakqgd6gOZq4e+dipwOWO/CO3i9d/wL5Hu9hFbhZM+cYw8IvXG4k98gEGoL\nY/Q3rtZNRxeQIHB/0+za3is9Sd7R7sTd3JiO06KT9jWQfQeESvxHuOQOSnUo\nL1f1SqNB3lbGD4XOXCO9onw7QOvycgxehuCcstRQCGgxTBsp0QUOuzEwTw0G\nSg03FHghBlaH+Sd4Z0WX5Rp5zEPUL0mSUE3vM3KkqsvPP6rOE88lRu4BImK6\nIh/uVhSXST2s0Q+2hGL6Hct8TstEjvOBmNwfs0Us2Wtgo/Bn+muoHQ4h5CkP\niEquZVqR5GoFoyqslvyhR0mAX4qB6c621JylMbFrvViwKSJFUxjfKpeGNXyJ\nM6fbuT0WuCd6k9+PmYOQRDuieo7jwxxF+mdX/V8YXapGt4r8qndOHCf5rqdZ\nOLHLy/THcuwgO6r89xaTJdZgHlSIyy8VmTBbsc3Xf5D7k4MmlCbvIIqeyK3N\nxOP/3VEj6ozY8dCKoMXczWHM5tT8c8rnPsungWHE0j3vefRLPEDDWLEKST6S\n+uHjOEmX/IctgIDhkRipLR+F3F14wAD31qwGugH2+yjxByFkC+gmtBquKNhW\nri+U3ryEIu2eW/nKoUHZ9nmd/Vu5w8JkLB+2/z0z9SMg6G8RgDVpWAHRBZCH\nqogG\r\n=3FFu\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ac4b0339093446110cc551732ef34ba30b4f4a49","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.610c68d97.0","@material/rtl":"7.0.0-canary.610c68d97.0","@material/base":"7.0.0-canary.610c68d97.0","@material/theme":"7.0.0-canary.610c68d97.0","@material/animation":"7.0.0-canary.610c68d97.0","@material/typography":"7.0.0-canary.610c68d97.0","@material/feature-targeting":"7.0.0-canary.610c68d97.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.610c68d97.0_1589225573511_0.4123128517491519","host":"s3://npm-registry-packages"}},"7.0.0-canary.ed52af767.0":{"name":"@material/floating-label","version":"7.0.0-canary.ed52af767.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.ed52af767.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a1a99305d83c48d05103ae5d304f0ea14c16821b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.ed52af767.0.tgz","fileCount":34,"integrity":"sha512-1vQX1U58XtkxfNp4DhQAn8qOAAogGYJ72XVn67yLpgLFKOTxXo6w876nJeG5vdgoBU98K1CC9sFw42xanfrvBg==","signatures":[{"sig":"MEUCIQCKZmCAppL+w6CNt4l6izporL1hAPMrp62y3T9KiaiJ8QIgajhrjFM+oZ95dxhH824/uKyfYigfhiFmvl/qUfgarVk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":204678,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeubU4CRA9TVsSAnZWagAAkdcQAJMerq3rBFbFJTeetFT0\nsZALDUAHwSGxb2BhXoNeR5kbVgdVBBNry2DuhvMq7uS9kT32q/6+C1Pu5gdT\nMbaI3Fvm0g8+KNoEtO1ni3CTER1oAK3rVF4aPh1VEQlUbuCI5J4/Puad2Wvl\nOxjOkZ1Wva8bJ+unOcTkzkloel+UQb8qV7BEU7RUq+67B96LOi57xkss/ywD\n5emX2E1ARnkDNlfLQQiwgrJ/8kIjbdeu/wPa9s73VOk/NW1KPydyrWb2A4ZM\n7Osaj5Vt/38uUozAzaphHUe37bydUj7ca4zCF/QFeFbLZ3fj3X3Qph+lL7Sc\nMwypMkfAwat1JTbsO+3jQvphV6QWhlidOXHf7VslUHqnSGkYzbdzxIHj3p1M\nTcyiXOGLmLqa5i1O3BMewDZltvrZ6bzkAt9QnmZhXMFgcCERqG0o+rEoGm5k\nrTLwkHOKYaShlaj/WGrApaD16Vi+JREfC55BWUgVxU+DFVCTMizxtbi3Xq8p\nIaPr63zyjM2I3xYfG2kxme4HiAnGJzJGPRh/SdfN8blTPUthkLEAfxmx64Ie\nWGZ84aHr2tjS7fI6A1T//ToQHiKmoNiTD/LuLLe/SwkgTL6oWhXSdiXO3yDn\nkSaoBRkK2UqRlJHIQhfhO8vRenRLuMjbKbLOXtXtH7MQKmtxmV/gp5qXcpX3\nxlov\r\n=NI5e\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"06b24ff740d1a29e8764ec98f735b6fef77dc5dc","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.ed52af767.0","@material/rtl":"7.0.0-canary.ed52af767.0","@material/base":"7.0.0-canary.ed52af767.0","@material/theme":"7.0.0-canary.ed52af767.0","@material/animation":"7.0.0-canary.ed52af767.0","@material/typography":"7.0.0-canary.ed52af767.0","@material/feature-targeting":"7.0.0-canary.ed52af767.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.ed52af767.0_1589228855456_0.9253990044364886","host":"s3://npm-registry-packages"}},"7.0.0-canary.058cfd23c.0":{"name":"@material/floating-label","version":"7.0.0-canary.058cfd23c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.058cfd23c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5e4e2454334cb91eb8b399b8cd3d28becc4cdff3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.058cfd23c.0.tgz","fileCount":34,"integrity":"sha512-88RgfO2TrislpZ+vwN1TgRwIcnc+k/QXvtnjrZOyxKmdzSAUwIqYBMWpSuKwS3iBWqzqg1cVsRjNdWAapMLkew==","signatures":[{"sig":"MEQCIBDPiubT2la8PbJD55N57yUlatif1xs/79GGN9XqWvRrAiA20NLZh8kSBT+mvXlxk34uzRDQZbiUJZ9rpIj3IxC9gA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":204678,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeucLCCRA9TVsSAnZWagAASnkP/0P8KKj4DlMUcAa+GGil\njAgrxi/2HCCRfwQCR3bZAI+1jBpcmyNuPgXxb9dIpdZANDzmqG78l0nniJvF\nzREOZOg6U0tpWMPV6Nhlgku0ByZe5OWodhu3/lnP1+zmkDMpnAAHG/eeoz35\nTIIS9IfapLbv4E3pLhIl7UT408JbQzK3Wqcbi6Dmw9hnVTimyXrTe5hVw0TK\nHWRrX1dFBJSQ87S/QmXDDxXc/yT0NiXcIaKVTT8J5yFnbj8KGU8RKz0wOlVH\nTBdJIxKvt/XIoIeQsCcJiipAPMbR8CT7RlGssWowyGcWmPG78UDC9KR3/06c\nRTFwnxy/nk//Blaey4q5Bq3miYW11IZQkthqUnLUASdTOoRJXrDBHJhzsW+i\nQxq/XLO1oB3ek71GBZRIzt2+PsTkZAIAKy/7UJZEkOcckt2HOnnfBIEnKqZZ\nI+6OLBlW49iDfaHGTAsjaUXB0/Z7Z/rux5CfiD5reYm195T/Gf8UDWbprNnT\nnNfU5583mhWg7VoCOqxVyGl4HkIphPOvI+re1ypY4zq8Ag7A+BpkFXa4pfgP\n7umwcLQlmlDgreg4fP2HW3gWE+DOpvh+YaG8NTDmlJSZyaW8Po7uNAta+Mxw\nug82n7OAtuyxkNaW/rd2v8PsFfZdovRM0p6x6hnnUNd8QwJZeYme2Vk/G/cr\ny5Kx\r\n=JE/N\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e012af26b00c720a751210639bef8379d1085234","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.058cfd23c.0","@material/rtl":"7.0.0-canary.058cfd23c.0","@material/base":"7.0.0-canary.058cfd23c.0","@material/theme":"7.0.0-canary.058cfd23c.0","@material/animation":"7.0.0-canary.058cfd23c.0","@material/typography":"7.0.0-canary.058cfd23c.0","@material/feature-targeting":"7.0.0-canary.058cfd23c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.058cfd23c.0_1589232321575_0.16420327109096533","host":"s3://npm-registry-packages"}},"7.0.0-canary.0a371b4fe.0":{"name":"@material/floating-label","version":"7.0.0-canary.0a371b4fe.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.0a371b4fe.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d4958ec4465faa7576068cafd31c6657120c54f5","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.0a371b4fe.0.tgz","fileCount":34,"integrity":"sha512-b2rZ6+RqcWaLkfe8G7cKH4epDrPAi1AVmoSjIKRu+vR1BKY7vb5zAh9V2oXuQfmcpK+/Gwz5K4KGcd8fB4nAQw==","signatures":[{"sig":"MEUCIHugJUc5EcQza6P3xT0F/CYPqK/YC8u8thcyomx9ADU9AiEAzgoSbhlHVvpxm3eu3miEhmRNxJH401WZMzn48Hxzb5o=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":204678,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeuy7JCRA9TVsSAnZWagAAR+MQAI107aMDr45aJeew/Z8i\nyLf7XpRWfk4p3c4M95Q3hZs2K34UPBBpP9l8PEYOs3Qxv76XSbW9g7PYLxzM\nBxa5Km+2dIFgH0wmsmO9qSEbD2ffzfsldbuCrdMK4eLHGGo12FSSCo7LoqM/\nMJGnX8jQhT2Iz6cVu9zzmmFgbfdWrGWgwXt0BJfuVP4783B+aJvKZKLcoPDd\nRTPx9QxXyL3BpnwyD1mSzSO+8z2+RvNJxJEijHPaH0qO7q1wryUwi/lzr/Tr\nSyPFvnThnStoVASSMTTSYq3nMsXptTR52BEsM4bduQ7QUscuD7YG2vWCE45C\n9+2hNlSFPmV0QhY5SCIvSWtXvjaR8FmBiFFtADwp9FOWxrgL/z4lWciaLt2F\nbMwezBrkDDC2mPBijVrkcyeqLh8oc9Nh5M88fKYN+RswxUJwu7N/cdS3Tuvt\nKG5Y7HPOB5nbzEqq4NwTw7iOY90fFt719J4/iHDJxlth4YfBvNYGynKF8xIy\nIYlVMDIgNLqGeomJqJAOZRJ7UwRMW8hGzt9rvSdzqZE1cnM0HoL+yZESgzs/\nyCAE2tYMdHeU+FNdUNJVWm04OwLqiZqG71zE8b6pQUnBQHFvSJU987aT43KX\n7YetftQoDwM53T5CA+RkdDkevUMHI9+jtTSedoEMainfKxhs3gK6IHtSwXy4\neFvH\r\n=iZTc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c3c5efa159a3a5dd1da72a8e4e94015fb7984f7b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.0a371b4fe.0","@material/rtl":"7.0.0-canary.0a371b4fe.0","@material/base":"7.0.0-canary.0a371b4fe.0","@material/theme":"7.0.0-canary.0a371b4fe.0","@material/animation":"7.0.0-canary.0a371b4fe.0","@material/typography":"7.0.0-canary.0a371b4fe.0","@material/feature-targeting":"7.0.0-canary.0a371b4fe.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.0a371b4fe.0_1589325513247_0.9256773828275215","host":"s3://npm-registry-packages"}},"7.0.0-canary.2139200b3.0":{"name":"@material/floating-label","version":"7.0.0-canary.2139200b3.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.2139200b3.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f5d711de4a59e53b2ea83837ef7153ea8f92f4a9","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.2139200b3.0.tgz","fileCount":34,"integrity":"sha512-0/5+lIC/Fz3xm0xPz/CI3537ArpdoNO7Gnc/ZC7bNSlZmOGVGWjCt9MkTrtJSWj3cnhl/HlpxgIy1cf26HvpEw==","signatures":[{"sig":"MEUCIQDDd1My/njOd4gQ4K+Sd6vfRAAXzeg64VXMB0EgoEPI6gIgICeJErV+wah4c4N6nru9nEpMC5uKFCTZWeDKM3Q+zRM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":204678,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJevAiLCRA9TVsSAnZWagAAhIwP/2GMhJLD+29GvXuAKi0U\nb3MPVHQlM2oNwDbsth02mLekjtGqRjs4Avq6oUrtT8wsvRe+9fsKvrzNgbOV\noofgKx/s7FLeBfTNIme2/RjdrnSWIC9b6j/w4NWQkVXDa/stX6H8DyX3zHsb\n0WRYzCslzMw8TzUKCjaDUwGx70/V2CfB7a69YAcV8RIDUOGBxDOMDWLEsfUF\naDN5YQeJ0uyTB44vNYMSIfRdQMdZOv5gKJ5MOmw3ZregZmPCMCSnJnY41H/s\nypqAhE0BO/g0rM7OKwVPa/1bgwHrzBH/O+BLxei6V5conEuavRnHAJ/NF8b1\nx26O3VN+OJcGdP3e2PJkOgeXTxYp9+le7WWmxXwHmFwdE6ZvvhzhxvqUU6ru\n1puoZCIl6LgLuCYHs2HB5rUM/K23kz3PbIdTeho7uHSP7hbDJwAGxdfULCd5\nLf4wcxlDkdnYWz5IbZdySrE+6BprvlME8qJN4ORdk2TT2gJNucwTmH9F9AOA\n6Y7q6ursuT6Kcr+SwUUuAFX9zba9Vz2Jq1moO8XrSVW+XfQXfptCnZcahxj+\nZszpVkTIF2NQjCR3byQqAWLJQCpI1VfA3Va9Rz1ATy3PXMegnNXqOe/2Tixa\nUUOtCHGZ48lzLTdRJaQrMhV9Xr4z4d4dESbuQH9TBRa4TWpc+M6gZUzj1KVU\nz1Dx\r\n=fm1G\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"42c214d2b2b544f76002d71be276eb747a69d9d6","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.2139200b3.0","@material/rtl":"7.0.0-canary.2139200b3.0","@material/base":"7.0.0-canary.2139200b3.0","@material/theme":"7.0.0-canary.2139200b3.0","@material/animation":"7.0.0-canary.2139200b3.0","@material/typography":"7.0.0-canary.2139200b3.0","@material/feature-targeting":"7.0.0-canary.2139200b3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.2139200b3.0_1589381258988_0.27811259586129333","host":"s3://npm-registry-packages"}},"7.0.0-canary.744d751a0.0":{"name":"@material/floating-label","version":"7.0.0-canary.744d751a0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.744d751a0.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ee08dd92eaba7fc6a437a8a500b956dccd8b2b34","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.744d751a0.0.tgz","fileCount":34,"integrity":"sha512-mEQ7v9xa607LqcSPACj48IUz9tEaHexMS14H9w+fhiLgscVkCtKbQqBsAwziJkuVrpwrQRi0vE3KpD01y9dhfg==","signatures":[{"sig":"MEUCIQCj8sb4XUSOUIU3uobSQgKWl38jHYxkNIYUpZVJCvFBJQIgfzJqDNtVchkUxDmVQZejAQBp1ar2L6fD0qmGDWrKNOY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":204678,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJevMxcCRA9TVsSAnZWagAASFcP/ifl3P3RXcFoKYxkgIyV\ni90KCIpXh+XQx63Jyl5WQgfBbLW8tJRDINBJk6G0Xi7DAExEh2+P7IAamleS\n8BkiG3RAPjpy76v6lSBHX6WV3kIqaK3RIgpmw9Z+tdR7tyTlGKjUt8PgCDZC\ndh5oYH9z17EgYCbJZKFPusNdIpnVYRLqnZkR1NiERGq/5Qx+fX26TcKarHa1\nwHBmykyBl0PH+mfmHZ+1ng67wODYRX8q5hNmDkOinsp0qIzc1dyfwfXFRTuo\nkQbMo8V6qtO/y5343fSU8AdjVT8FczLoxjvTh2FAnCuUI5WBkYlq1m/Wl2b+\nCeRux609VELiqkcWt2Hwj7eVa9JptsOV4Cf1+RfQ8hZJQ+oDi2FFfYU/6QgB\nwTlJYOM6FH31gQcya3TFMrpTlx96hVeYKKMls2dPA1AGPltbcECvSQ3eALxa\nBGLD20fz9vjhHL0e52qXgLSTLhCjC5MNbR/cMgF8eo/lztWupOp1eJlw1d+M\nEFUVbHjWo/14Pk5Pxy+vXI/XOkLallfE7TLFs/twXKiSfLMuwGYnPuY363tY\nb/tc+42BH2r/csSU1CUIoUW3Mzwf40iKhix/dkDvmrKRnEKtVX1dosKYnqr6\nonUqU8cmDfbITTynExy7aqiCnwpEF0mkE66Cv358DlyO+j1pUYPzIuiJkrlu\nrPxY\r\n=7eH0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"afc5bacf5330bcdbe874e652a8d6df5e4a35e7c8","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.744d751a0.0","@material/rtl":"7.0.0-canary.744d751a0.0","@material/base":"7.0.0-canary.744d751a0.0","@material/theme":"7.0.0-canary.744d751a0.0","@material/animation":"7.0.0-canary.744d751a0.0","@material/typography":"7.0.0-canary.744d751a0.0","@material/feature-targeting":"7.0.0-canary.744d751a0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.744d751a0.0_1589431387566_0.2601967382895898","host":"s3://npm-registry-packages"}},"7.0.0-canary.ad0c0c103.0":{"name":"@material/floating-label","version":"7.0.0-canary.ad0c0c103.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.ad0c0c103.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3c1dc95f1558ed7816e8d64f21175318a67ef64f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.ad0c0c103.0.tgz","fileCount":34,"integrity":"sha512-6fPbILYL8jIxtJkgNLY6OKN9l0fy9V0Mq0j+1fRKr9rG2JfN/RicuKEImtsYgeb/kcH79Gpl/5VAiw9+PLChAw==","signatures":[{"sig":"MEQCIHuiCCNr7MliITsLT2SYYI/H+fl7XDbsKp8ixmZwiw7nAiAQ271wVdEx27RhttX1eE07KW5KZ7P6tFKyy5MltELnlw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":204678,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJevVsCCRA9TVsSAnZWagAAVQoP/RXsfwkME8mPTXVwLW7L\n7CdBhttrS1YPe4Vny9W/wp8DFE6CglXq3UHI3xZCDuuGdS6aLaa+sZTOj6Tu\n5VKsl9nTxJXPQhuMz5YtTXH0R5gRtlGUwbnSLO3LWyKtGNUKmeEIMYEvN7Vr\nRHTFtbwlYMaIL5wtNgNdU0yvytzpmm75VVqnp/qrhD+t2MI7Oe+eT5fEgp39\n9FqkygMmXpa4pPMHu9PhRRjOAE6/9tPDxKcULcbT6zxroE/G8YBxXqS3GMhj\ns4sg6WoqN8VHDmO9GMVi0Y22Ye2WZKq/dkz72J+aKLGjP/a1R9m0p/9mS2bv\nZD1jUF3LKJWL4uxKVpAKpk1YYLv/nF4POL/EmxqGRjLoJQO/iGIYdH7afF1W\nzwmHb6KTztk2DyU7BWMQ4gKCLIFFPYrazmSZUbXaMeoMNQkhME1JNUn3HhFP\nlzDyzVksgN+HgKAcfEEkpKUmZ5Tu9CqJLga3gTf16D1bQhWARkgOF/jkslPN\nBE06JlXUN/fTmU1QHoNc2B3UkVKNdvjAzapSzTZf6YOmMFRdMqyh7reY5ccw\na4GgZlLJnj4x5IOVnbAZEK+MWoVl26Z0cQ9xz+IdQ6jplB8slOyplYo3cP1b\nMEPphvV3+xLxH8s7/D+PsTAGzAh8LzD/zDtD5dP5FWtvHfczzs1gnNgXGoZA\nrSku\r\n=bgLx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"76a0fe161f579d30f0d739918fe09f5f4eef04c0","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.ad0c0c103.0","@material/rtl":"7.0.0-canary.ad0c0c103.0","@material/base":"7.0.0-canary.ad0c0c103.0","@material/theme":"7.0.0-canary.ad0c0c103.0","@material/animation":"7.0.0-canary.ad0c0c103.0","@material/typography":"7.0.0-canary.ad0c0c103.0","@material/feature-targeting":"7.0.0-canary.ad0c0c103.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.ad0c0c103.0_1589467906574_0.4103363213463487","host":"s3://npm-registry-packages"}},"7.0.0-canary.fd8f8f2b7.0":{"name":"@material/floating-label","version":"7.0.0-canary.fd8f8f2b7.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.fd8f8f2b7.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"eb88055ad5cd4537655d184489526fd3d91e22a1","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.fd8f8f2b7.0.tgz","fileCount":34,"integrity":"sha512-uZFop850FPJq+IhI5Fn6sep8vu4K+LFsiuQQxQsiftn8WyYkt3QS6LAwaSOVL4ACOnjJL5wCrggu+D5VsTqPjQ==","signatures":[{"sig":"MEUCIEfMwX6lZbH3lNuwlOkhADqb76rpkY90vPeRSM1vLcjjAiEAkvXU0z8ZotZRBTEpeBpKh8hOgw7opOVyYAP+ZgvApNk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":204678,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJewsuzCRA9TVsSAnZWagAAyt4P/1DMS1DMAdfRsLqgX//N\nzltpnTBlXy3jMdjRzGaPv1/SbLmpsxzW8Tsz2zNMxh1JdH1fFsbpGQQo7znn\nmra2jm+nTt1WYpXuloNbB6asJkJw6OcZ9MmwLfyx6StO47rHA2tE5zk+ACEv\npH0YQu7HN/GETb68bft8o5szugHtRcZ3aZtsYEbd6sbaI8CEwPtXpi2wvvVU\n6QTLCAXCTV0qgF7Tt6UKzvvX5/fRJ5b7BSom2c6dXuo4BZ6ipZsUzCDvJbUJ\nD0dagwKaiWjbC8W/TTO0NWJoCRRdMIU5K1q+PH6auDGlzUAtwpWkpVcJfO0K\nZs/mmjegYozFbRB6hnxVBAiEoB9s4L35Sc39v7DFjHam04zIOlAm3wbW9MFD\n9PbN7jaNxrGxFEUmnfsPnJSMUhpFVQ70yYbe81rAuX9a2BeSUqVzGgD21fw0\nSruz/oaHhY5BPFmCGhOekFVn5eTIhPrlRMYvZM/E5pSdEbz+cEtr8dSW36Bg\nFwATGw5CQCX407oGYAecnUu9GIxOouHVPbAClooqGfahhB6+Yiw7Ms8S15fk\nyswJucpzx07WmNANSfR5D7JOttPeOcqs0k58qCOKr51x5GWmAe7wEJgqPYbF\nhgwiklgwER+02XsO6sdLi2VcHtTJmHDInYrn7BvziFEa4YVkdl8M+FEQWvbh\ncv+/\r\n=zOMp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"30fbf3d1582cc530b978714ab043f92bea7c4b83","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.fd8f8f2b7.0","@material/rtl":"7.0.0-canary.fd8f8f2b7.0","@material/base":"7.0.0-canary.fd8f8f2b7.0","@material/theme":"7.0.0-canary.fd8f8f2b7.0","@material/animation":"7.0.0-canary.fd8f8f2b7.0","@material/typography":"7.0.0-canary.fd8f8f2b7.0","@material/feature-targeting":"7.0.0-canary.fd8f8f2b7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.fd8f8f2b7.0_1589824435150_0.15390887854314417","host":"s3://npm-registry-packages"}},"7.0.0-canary.730920fbb.0":{"name":"@material/floating-label","version":"7.0.0-canary.730920fbb.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.730920fbb.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"fbe38bec0828e1497bfd805d15a0d43c9761aae1","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.730920fbb.0.tgz","fileCount":34,"integrity":"sha512-hqyBppKvoMe0at4rsUJWyX4KnPTmvLW7Hu4z3HvY0YM1blC9MHQM5gu3tl0W/uvMku3LqM7gwIruj9j1slgEDQ==","signatures":[{"sig":"MEYCIQD3mN0m6UaN1AhkemPak9OBm6dJbvgz3GJyOsA+jiu4GQIhANyCsk7D5JikQ5vXliruC43mY2SGCW3oi7E9e7FKnTB8","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":204678,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJewuWbCRA9TVsSAnZWagAAeqMP/2q0BTSec0R/KSRAZtQe\nwqEz71GTNa7uDaAmdhoTLIM7+yJx+aUBRX4G95JAq+ZhPVKwcNpr6nUEq80u\nMhjCLw0skI3LsRp6J30ZY/1PGqlrxTMsxKvPetVozjUmQhwMRWjqkoS5nTCK\ns1eAFctMNlnPphGxEUrTX1U+uBRciLa6fHmP5k5WOMby8ox21sMJ0fbLqTqu\nPsrCgmJyHaco/F6XPYQ3QX0DxrLbLqff2/zH9wvMEp0pBMcZ2yWF85wPfl50\n1eVFk6ehk6IQMtx2wyJd5mpow1C525+3s/sXpJ0EiZnPH6RDyMcJ+eF+BE3u\nBGs12AANO0vrl5HVET+p9SeOW6r7PG0y7YawNPEs6IAxOlIKkqAp1zMtrH83\n7KLlwF1IPeuJ+8HIIc/oU1YAcwMs8IrAMsyc7yTLFI9rxovJJGIxcyqpsydR\nyp4k5OjmhdBKQmhklSZ3RH8JUx/jBVc++Bw5KcpO4qVyAdGtA4CChvGej2oe\njP/P3z0ZfZ5MVozVcEDaH05/GxQIFFOQ0pAxGIHGmwda1oG2unWMznf4lRfZ\nteHKrTUeEoN6kX6VRsxShi+QAZeaouwGtNV1foll56Gtcz6FTIdgZa8cspWK\n9T5IatboeuSXoZk2HFbuvC3kUzsHLi7wnbNdPFe2fPutqUdtJh9Jz2wk8F+c\n0ZXq\r\n=1Sdk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1acee01a3bcc1944050bcc6a38a1846c507db43b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.730920fbb.0","@material/rtl":"7.0.0-canary.730920fbb.0","@material/base":"7.0.0-canary.730920fbb.0","@material/theme":"7.0.0-canary.730920fbb.0","@material/animation":"7.0.0-canary.730920fbb.0","@material/typography":"7.0.0-canary.730920fbb.0","@material/feature-targeting":"7.0.0-canary.730920fbb.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.730920fbb.0_1589831067141_0.6524137169693454","host":"s3://npm-registry-packages"}},"7.0.0-canary.bcdad99bb.0":{"name":"@material/floating-label","version":"7.0.0-canary.bcdad99bb.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.bcdad99bb.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"066a5db88670c10c77b4fa184a9ed1e2e94bdf8b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.bcdad99bb.0.tgz","fileCount":34,"integrity":"sha512-S9oz9jN3l4pdmA0lTGz+3JnUIdI43XdpmNY43Y9hmWGW+eFLPGI5sK2HOBTTBuLjJCEqfZWS0kZZgqsayPLm1g==","signatures":[{"sig":"MEUCIFQOgRHGnv8/plRop4Q6tk9BstLIPwyckZ8UFz1dzQYYAiEApiInv5MFzVw2trTqSJKnyTjHNxeeoPZJJi2sKoRo9/k=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":204678,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJew0/9CRA9TVsSAnZWagAAuckP/00LF5vaptSAsBApEoEg\nXQ2OzwhVLOEKBDCzT77pg2+8BaeQrhBfNbx8CY97rlrp8pvA4Ip8snRF5fYC\ntUS2QGRF7lNbS28ZfcJHbvSbtYjZmboe3gRqYKBD2OvlsU5LNxIT6YJvZDpA\nWezaHpn8MdIdeSTKOxIMHsCdYJk8qOjGa55N2pAwFz3SDeQi302QUUYQT3cW\nT/pPlGDnBz4uxJhVMWxodj8OEAZuMk+WX01U5Xxa9Aq0WLNipg8Ybt1MNER0\nTv67X3cj2YtgyqYebKqZeyX63f1fb1/ehpWhmIDLPuhENfGK+cAX+nHHRfYi\nGBFgsCD7Ssiy7QZzb8I3GvjPNVHpr1ZN8KkV3raARPCWa3JlV37G838twCfT\nVcc39QI0umadorK52Lu84PbMRJYFbZxMA70jDolevOIDr9YTC5DTH/0UirNS\nR0bPXlgijsun+ihinscDSTWikaa4yuSjt/Y2/eUeAXT520HIOrvQaEsgcvoJ\nTsFa08iuFhFc/fFJpGGa/ycW7dzEKyBh/qFCdnr41hI5euW+F5vF12CGtXrc\n1BFD8FF97Dd9e0ijXxJwJr8aTQQssHSBDuckRP8HNQKRHfbqJOMS0WGZHQ+U\neLL6ApaDR8lWjhSQtGTiZBvluLNh+jyqxinfcl4vfQkUFfydlpEthXQ/Ml15\n39yF\r\n=9Vpv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"33c3545075b4fec07083bb484fdd7245d0b243a2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.bcdad99bb.0","@material/rtl":"7.0.0-canary.bcdad99bb.0","@material/base":"7.0.0-canary.bcdad99bb.0","@material/theme":"7.0.0-canary.bcdad99bb.0","@material/animation":"7.0.0-canary.bcdad99bb.0","@material/typography":"7.0.0-canary.bcdad99bb.0","@material/feature-targeting":"7.0.0-canary.bcdad99bb.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.bcdad99bb.0_1589858300646_0.985366410460351","host":"s3://npm-registry-packages"}},"7.0.0-canary.4497b86ed.0":{"name":"@material/floating-label","version":"7.0.0-canary.4497b86ed.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.4497b86ed.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f65d06419d2fa08a3b91b62fde0f7483fe78ce7b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.4497b86ed.0.tgz","fileCount":34,"integrity":"sha512-Wj7zeuo0asqyu0ihEZY35AEluBbBeUZj7NCDSEvDxpOrQsJI0AN/zJcGf3NM1EPcrQRflg4Ka37oFz1l5h9hlQ==","signatures":[{"sig":"MEUCIQCL+HYyabj4s2tdBLMAtGqPObB8SY/FzNeDG4td3SxD5gIgSH4Vs2yoY7cZsybxPjmTYtqvpWjpgieg1xn53RqcaI0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":204678,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJew1eoCRA9TVsSAnZWagAA/2cQAI84TYgmuKtXX2e8TP1q\nlIdLYZFdhw0A/DZsjvp/pAwRZ0q/cKkDedNpof+9H5xahRGk/8s96BDled7a\nPp8jbAY2D9nLHliqwuM2YopARXZzSUAhmBiiJSGg1Es1XjYgjXjLQCudq5Zs\nSG3OIwG0qGkYkynwUeCXS7OhYhoQMeB/SHIvH2YacSbow3ajRo+RzZs671jZ\n+Lsr+Mkayc9TU1h1YCyQgkeK641ovLEbblpWaskpPgs/uwMu5BwHA8w+Nse4\nFOvX4DBrIK8fdkcSp0wM43z8I0MoYcL2YtJ6fXaL5hKlQ/c7kYARdBus6TOj\nl1ilGTkJEbu4Sq+/JOcIotlIiv6bV5+xb/HS/K24bcgs5jrRfI450oNXaWew\nxFXFd/4wsgaE/TDz6vzBYUKD7Bj+ums2v+KhD2VTgn14LT1LCvlss2bYHEho\nHVOOMSluTFRu7JVkvm5NHpcTu1UF+q4ueWDZcMxFC9bNckEejYXxM+U45gqa\nKnYbQ2T5Pl58MjMKKCntFdgnv5HZBlD1fpkncJqfnv5QWAEvBsvEFQm0ZECR\noCC65dT4RBaSXVzc7mGXLjJjFhZWlJNzYvrI4qGCZOCv2s9ZRQL2uyDyCKw1\nUS13hQO+Fj8hLfVvG2Taj1Q+fJSEIDaCggv1XVxS+t0892vW89IgVTKizj7r\nygzI\r\n=3MkE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7ffe8b9fd24f52b80e2fa6a7007881da7c29f885","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.4497b86ed.0","@material/rtl":"7.0.0-canary.4497b86ed.0","@material/base":"7.0.0-canary.4497b86ed.0","@material/theme":"7.0.0-canary.4497b86ed.0","@material/animation":"7.0.0-canary.4497b86ed.0","@material/typography":"7.0.0-canary.4497b86ed.0","@material/feature-targeting":"7.0.0-canary.4497b86ed.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.4497b86ed.0_1589860263817_0.6781047597352754","host":"s3://npm-registry-packages"}},"7.0.0-canary.2e60575da.0":{"name":"@material/floating-label","version":"7.0.0-canary.2e60575da.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.2e60575da.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"511f2ca5ec21d4954ddcaabeecd19c25a3111efc","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.2e60575da.0.tgz","fileCount":34,"integrity":"sha512-+OuKcttOxEcmWx3G4iJxlsp14y/1IjaH7j1m0YerdacPxZqw8T9txCIErJbl0pEzN3/vHa2svuF6VTpm5UEGoA==","signatures":[{"sig":"MEYCIQDPb2fvOm1F7NZa8+i1aaxUp61oUDGLWZVRd7B5MYn3SgIhAKR3dIkg3dzlCyXfaVeTb333g4F+pAGA4Q0K248FzJ3z","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":204678,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJexATHCRA9TVsSAnZWagAAcUUP/Ajo6ZuZ6cGDd7uWo5RR\nR7wvlWI8H5Uek7fRUH3sgvEX3oyguviEsCOiHuClooJXOWCSzSW4Y4hFzRq8\nI6EMwMp9oK6ZlqV/9VSctkPpdUpA6/j5GotoBp+vxHDoZqXSGpSxGYxCQh6z\nzS8TkGqlFoOFHBzl9E/NoStXXCJkxlOa1qcKWCXrxviAxAVSUAWEMj0LflLK\n1S+UIH0G5vuATpqiyr/8r6tDLd0A1Lhv8pVCHkxt/HWQMmX3C1L37Z8yQtQi\n1aZ4a3NqPxgmcS3A+iCToMOL/L5J68Ec4IjLpoATUucDJd8oztHYa8HHUtoU\nMoLj+ZjEu0uRpM69Hitw1vT+3yPJZN4BUIo6wbtkZUVFPb9efgZmKJY5eQM2\nzE9sdZzZ76Zf6+5ks77i7Gg1Itd+Vmui1NQz0iUEkcB9e0OCQbQJXwGbCJZ9\nOrRRTaRdC7N1H+ptJk1Hz8+rCFe/JlSR7RxH03tcKNCOfsWFis3+V+uGgvJ6\ntsJIkceLR6Ky+D+LRi4ztpeEOTnBYmhp01BeHMue6XfqhxYeGn6p/WU8WhPD\nB6qvv+7MJ6FuiFhAEOxDTm5qrh3Uy5qXpSfFvyhHzGk5dIG+jRnBnPVcNrKS\n7t/OgbLOg0M6X7yWqFR5udeMZHP3GvenHCP76AA29deYKZ+H1y4LOOlMvnU+\nw6Ed\r\n=nY58\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a4b6f1d5a01445ae9c14845614630907beaad190","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.2e60575da.0","@material/rtl":"7.0.0-canary.2e60575da.0","@material/base":"7.0.0-canary.2e60575da.0","@material/theme":"7.0.0-canary.2e60575da.0","@material/animation":"7.0.0-canary.2e60575da.0","@material/typography":"7.0.0-canary.2e60575da.0","@material/feature-targeting":"7.0.0-canary.2e60575da.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.2e60575da.0_1589904582786_0.4070971774970795","host":"s3://npm-registry-packages"}},"7.0.0-canary.e3eacefcc.0":{"name":"@material/floating-label","version":"7.0.0-canary.e3eacefcc.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.e3eacefcc.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7edbca03dba4314243882f0f2dad7cfb816b294d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.e3eacefcc.0.tgz","fileCount":34,"integrity":"sha512-BgM9KQ9WMPwYe3VM/OL7nG5mqokL3OmCl6+mWn2bxC4UMtRXrVGLjE82xhVJBPmShxLSMTSaq4+JXWUzHzWsfQ==","signatures":[{"sig":"MEUCIQCL21Bv7d8+f7tnTE+UKxIrbOC35FI7poT3illflgwuqgIgS6E1UGvNWKX3Z37r1BAlcBxlsZMbtuH9+8UPGKpRqTg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":204678,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJexBmUCRA9TVsSAnZWagAAlTUP/ivmA9ro2810hU0OE6NQ\nzo/xIXn2z5qcjKDspVoHZDtEJxLXY7YvTGeXl4QnrmoNX/EZ9OYAH6l7nLSE\nhpjWoQXYvVwmxiLcOR6kacb1F7pfmsJ8JQcj+EWHkdXNdNiHn7lBCHYGSnFg\nG8nKc/CiQzRsvSVKsDXWKFhsn+KPwLHodG+s4hOmfnzbyIdlLf05Mh5bgA4I\nlzNGxABR8TUN6RPaR/n28ekHMgPEI+r8oZuY0DAu/G6DVQAWQx/UUlMdq6I8\nUPhC/NMedKWGsezO33+GbdAKGDpKHKFftgS2mEkMS3td/8tN3rE6iI4ZXzIH\nXBrcI76+Vja1dkK3mVumE8V8y/wIZ0bMQsR8yOWCZxlz3OUfiZCkFbnUJ0Jc\nDp2/MUtdp06l9Krqdzd1Ld4UXeDwTvne5Ri7kFTVXH2wlFVXqRtbabuzdze8\nz95nJrvh97/RPeIH2TptxEzxTM1TW0bzWMAtVoHJ8XMtz+U8gvnFJsmmQSyD\nAbSwEtfhZGDgrFwPiumaNJM55iYyk95GP/paKlxBEegUGW2DGursXgfKYNx/\nOtQDKcHqaCiGA3ZgYaTTGqE6j3XKO0ZYvFP/5M/ef6Pu+3c2gtka7gx4A3so\n3dhAIQ8L6hpM0UxPYPWzra5p2zJYa9wHfjMQi0moXY/mWoQgLIIiC4MfPtYk\nE1ir\r\n=UEce\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a80846c07f1b98212ba692bf027c2003093d0180","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.e3eacefcc.0","@material/rtl":"7.0.0-canary.e3eacefcc.0","@material/base":"7.0.0-canary.e3eacefcc.0","@material/theme":"7.0.0-canary.e3eacefcc.0","@material/animation":"7.0.0-canary.e3eacefcc.0","@material/typography":"7.0.0-canary.e3eacefcc.0","@material/feature-targeting":"7.0.0-canary.e3eacefcc.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.e3eacefcc.0_1589909908282_0.5467482037185512","host":"s3://npm-registry-packages"}},"7.0.0-canary.b065a4d2b.0":{"name":"@material/floating-label","version":"7.0.0-canary.b065a4d2b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.b065a4d2b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6e7c674727c7f1a5065a41afed1af1bd28fe6898","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.b065a4d2b.0.tgz","fileCount":34,"integrity":"sha512-Ub3c6aonFg0gbcmcgIJMVBuR+ozQIZ19K45wkz0lgHH4WUULj3eQ5P5+q1lwCqM9jFjQdhyEeFBfQCuAQEbXLw==","signatures":[{"sig":"MEQCIBqPmZGT0PVY96VgtjmN8IUGlmPIBi0k26Tmg9ILFw3oAiAe1k3FuTsO3dy+wjfS0uUPu5MQtTiaD78Ob76BKpF4WA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":204678,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJexUCSCRA9TVsSAnZWagAABrgQAJDLinxQhKfHAtNTuBmD\nLTNvd88BzBRjcnp+BfqMm1frx+c6/BMvkiTxgP6dp1qm47itLLAY9IVK4NZ4\n+5stP6OerO63bvJpaQN5EvkRGJZOsT8oF6+MrshlF5IUoiscSO7CQb08Gm9w\nV7nDZ9sk+DkaA4xM/8QBRFY9kUOO+jAtwYh9CuZBC4cnNkfiPLC1VsfpI3XP\nOR31Ijc1WX5JVOc85bueSW+3A8L9l5RH9zJwJr6pl1Q+/k1ahvwPOF9og+XU\nN/m7V15jBkeQTlJs8ho47ap1ruR3scKx7CjnF/I/4jZuU9mjKS8hEfBqFR+K\nDovoh2QsRTIQQ/sMNvb6aj4OrbIrBGppM01DzMZsmjRSkJ2B19unwQvCfL+E\nD6H/yoGCrXZbmQylsIQNY8Q36p6ZJmKHQIsUY4mY1b101eu776jeJ7axhCvm\nh8JkArL/FnTRpLVLSYBbf0ObXB3dKPFb1eNKDbCI6KQCpn+faKZNOPjMSBrA\nuEPGsvCfZTF+L8jh9HThf1CR9HvbovFOSREi9pp54fGzbDW285LMuiNFby/8\n5nONagXqmmbvbZ53/+cyEj4W+/8cf8AHWRa/cps22sJ8zD2WZj1H9r8YGk6n\n5a5sNjbSNcpRZduoB+njahodJ8qBjzAzanF585Qss4cnpfJlkTSOvluAoNKX\nO/eJ\r\n=5SkU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7de80cb2ccfd67196d7be3fd614cebb9cd73499f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.b065a4d2b.0","@material/rtl":"7.0.0-canary.b065a4d2b.0","@material/base":"7.0.0-canary.b065a4d2b.0","@material/theme":"7.0.0-canary.b065a4d2b.0","@material/animation":"7.0.0-canary.b065a4d2b.0","@material/typography":"7.0.0-canary.b065a4d2b.0","@material/feature-targeting":"7.0.0-canary.b065a4d2b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.b065a4d2b.0_1589985426532_0.8080389517912625","host":"s3://npm-registry-packages"}},"7.0.0-canary.4ebce8d78.0":{"name":"@material/floating-label","version":"7.0.0-canary.4ebce8d78.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.4ebce8d78.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"814818b599e84b90e1ddec5963dcf0f76cd8048d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.4ebce8d78.0.tgz","fileCount":34,"integrity":"sha512-n7FZdZbUjqHo73vv4BIjNxrolQTZ9cGqfDxo3Rs/ORTJwvLP8BprfcBy0v/j8XVvJgB9BVCSzQ33mSimzxQI0w==","signatures":[{"sig":"MEUCIFMs18FV2Hl+8bLxfas33MBZUOFs1UKgNqu/vLfkAIO4AiEA4vpv+XBaFGaYek4YmuBzIYd15brtUEcEUTKXLE7zHNY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":204678,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJexZgpCRA9TVsSAnZWagAAvLsP/jKnIZeHOHoV47n23lOi\ndxhwWQH7VKb5WRiR3SeLCTQ8odYz+TbH5oRf1OYgKrTzhJUIibmmmtg+oGwt\nSFBpoOptF6WNFJC3V9L1hE6KZPvEP4aPeOmNQjDx+NRvaFk1ApRrE3ly9Krv\nawsh9cERN5QK6EORAWqnHgIfHBRj1UWjNZVGlUYBmrM2rN+f78EogWjn9DKs\nxj+2LDKBK5+16YQOb62ZGU8/fwGCCIRGjKrwHB3VUxl5XCKuRFNO+e6C8oyj\n7oQ9UlMgQLI4G9RaTQYfojE054E0qGu3nhp3X8QewHzf7iQniZkKl6XUKm9i\nwKLeukHAXP8ZrCWjYO6s5ggcg2o9j41nDsDC6XYB+yGTcBTWnBsbrJDaKQP9\n5BoRK3QH/dyMqASs2NbspIwIwWs/FafHulLUTGyuPlZOqLYkCKLm2ZwArqlR\nbE+UzZ+X1y1qoYJ/3pPt3uRplgWi0CqmpEWmdYf45s8rtm76MV0ThWIkf3Sd\nrZQshWATTZhbwy8av+YM+xIg+EZXCz/c4e2sECr4bkOdTzQF+n/0gsyeeVcF\nM77IhZ47BmoC99RWyU66vmu8fdY6AP3gGv5eU7k/eX2ZDK0kmOHfRQYtUwKF\nCInQJfqEVtD+7nY+j66Xnl+Tdnd4aCXPuf7/u2XBhZYwjq4uZQuz8eQ+XKNl\nC6Mv\r\n=z+O3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d7cc6c4aec24377070d4417765fa102dcd7c7e0b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.4ebce8d78.0","@material/rtl":"7.0.0-canary.4ebce8d78.0","@material/base":"7.0.0-canary.4ebce8d78.0","@material/theme":"7.0.0-canary.4ebce8d78.0","@material/animation":"7.0.0-canary.4ebce8d78.0","@material/typography":"7.0.0-canary.4ebce8d78.0","@material/feature-targeting":"7.0.0-canary.4ebce8d78.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.4ebce8d78.0_1590007849313_0.44307170250969263","host":"s3://npm-registry-packages"}},"7.0.0-canary.b0fdca492.0":{"name":"@material/floating-label","version":"7.0.0-canary.b0fdca492.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.b0fdca492.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3bc1da7099008fbcfcc0bde65fe7451fa2dde85d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.b0fdca492.0.tgz","fileCount":34,"integrity":"sha512-uwUUqinGa9rNXsEDwkggpTkqHbrHL4xTViYAn27jW9hgOKdsWFdx1i0bqbOflCvuK/1aAxMaaUGIxO3joq2Hug==","signatures":[{"sig":"MEUCIDb20ehC/zz0y35jCdRKmCptyU7v+mEUAVOlYLp7smPHAiEA8ZoApm7xaHjxwbNkQCx2CTIcaRHRyLWjz5AS07VVj2c=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":204678,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJexbcsCRA9TVsSAnZWagAALZkP/3b5kpih+qm+uAdQc7q4\nNhpsvZVmL5dRRlIYdVkxzeFGM8pQMrR6nBf6GvfmdRzjlZkdaRgrYZ7xyNhg\nNKOfK/dS+oZH4C/avlcBDwh6J1lXs+NwsqQ5TL1ZkAMOnEWxzEM8NV7IbFwS\nC8lRAsy4TXz1EZwtHfzwe/6+2IAf00QldRd5cE79shBOPNFUX2bwZ2odb8dp\nGTPmpbuSkG8bU76WPa7anW1Qx28l4Bh2K4qvndrL6r2UNot8nXmgfksXpHVj\nAtweyKSAW0R3c3U9NCPF1pdPAxHmL2P+FDm9ZYE4IEU3/MVv0Oj+MVFvwB7p\ntdEIPn/ljMaCuIJe214l6YpqlQblgjrhYbigRftlJi8edx2CjW476fxWEOKX\nmgIiCuhCitF5LaiDBD8qK8NzqAJFajDYarlKAWtwUy0HyQVQUfug5S+bBK36\nq1gDtzOTBGiDy0Gd3KD+hImo2Ps2qJLq1XWepy7GyYvsc/uIQAz1PpBXjDJZ\ndQtckOv6Ww/QiIzHdSITUzMs5zHcmab/rKmwBvbLZEykuYng8l1VoY72sPeS\nFTpVPbCt8v2pHZl709sLNCCOcsPBReNUkAA7cxmkCFzCiFAM4OpZxFRT4h2G\nJLNd9ERwg3T/4o4FSfSnDtIwPVZcjhcQppS320+FLQrM3orT20JU4G/8jGZf\nOmfY\r\n=bW3B\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"590e5f052548986555dab713a1bcd253b6dcd01a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.b0fdca492.0","@material/rtl":"7.0.0-canary.b0fdca492.0","@material/base":"7.0.0-canary.b0fdca492.0","@material/theme":"7.0.0-canary.b0fdca492.0","@material/animation":"7.0.0-canary.b0fdca492.0","@material/typography":"7.0.0-canary.b0fdca492.0","@material/feature-targeting":"7.0.0-canary.b0fdca492.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.b0fdca492.0_1590015788104_0.8943665567559642","host":"s3://npm-registry-packages"}},"7.0.0-canary.c67667e8e.0":{"name":"@material/floating-label","version":"7.0.0-canary.c67667e8e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.c67667e8e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"854e7abf45f76b2ca095149e65d39c048cf1e3f1","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.c67667e8e.0.tgz","fileCount":34,"integrity":"sha512-EStKGxjmfGoDgFG27XUYswH8aZc70sJZeWSbaXIMoFotp0wunusYeswSAWYqe1YyflX+J2tTNFmP31ewn+QOPg==","signatures":[{"sig":"MEUCID8fer/qHBTMD/7Hhzo8lv7rf+CPrAtxmr/BG/u1C6QiAiEAiznY8l6ok9DwSr5VOMrUX/FDAEGl5o6JW/hNQjL8/u8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":204678,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJexoxzCRA9TVsSAnZWagAA36kP/0Da5ZvXR1VeusfBM+SJ\nK2Nqyi0TIaUQ/OV9iQodL0fJPsgjwixjbJDdzQcGG4zOCOw6UwhhpKE+/LG3\nRk9YmKLfOL1cRiOLwAHeYjBpz2z7GAXeAfYPfm4gfF5gf9lMzrSf2vwpbN5o\n7NhQ5KIE1aOAjrkI5UNbOc8PusGMLgjS4nHT//qrKFYuuwL3+mqnnBI9kvvR\n2cVpIAUT5cCuAhddVD7DrVn3E9eX03LOIwFtOgoaf3OenxXOHVshYBBE+4qT\nZJ1piU9BFyL+apwIufGoiKAn4XKLSzqOQ91rM+pPiJd3Uh3BSITocf8A/rFs\n08QqBNgKSzehW1SAh4+bXIHbXYzPHHhytYdSassUzXBuymyFfkxKIkzKep6+\nR/WSUVaHvOZDUxiv5RQcJMbhi3u/E8LbYgpmUb/BC1SNiqUR0R/yV5YxEAqV\nPyplhJRTxexYg6K/i1g+WGP8l81fVvGzsVlHuvoIdG52+Z6+K/8GHM5+7O14\nzrMwDTnlCiMTWLYOCgu3IbgMFVqqGbU1Kh2RrctICAeKVT6lImah9kKDsr0i\nLR/Q8Qo0Njs37Ga1BubOWhVhUgVCQXB4PafU2VNG5jFcM/ztgGgLgZH3yrh5\ndlqxkk+z/DEhb4tABCoTxeEv6EsFqGY26sF7za/x6n0uH7EN2hd/HnkUMGiW\nit3+\r\n=HNN/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"405f1e85ef85a7cfb12bdcba9816d716433463d5","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.c67667e8e.0","@material/rtl":"7.0.0-canary.c67667e8e.0","@material/base":"7.0.0-canary.c67667e8e.0","@material/theme":"7.0.0-canary.c67667e8e.0","@material/animation":"7.0.0-canary.c67667e8e.0","@material/typography":"7.0.0-canary.c67667e8e.0","@material/feature-targeting":"7.0.0-canary.c67667e8e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.c67667e8e.0_1590070387419_0.929323654058634","host":"s3://npm-registry-packages"}},"7.0.0-canary.62b5f37db.0":{"name":"@material/floating-label","version":"7.0.0-canary.62b5f37db.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.62b5f37db.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1d40e6f408afd42592bce770aed4e984aa9fcb66","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.62b5f37db.0.tgz","fileCount":34,"integrity":"sha512-KpSlecly95O1V8DKU68ZiVmhJh0WlkOD4E3jWPa7TsA4Hvf+diydiHrGQt5c0E0ry5E04yRRPbvgGxUSGLCxTg==","signatures":[{"sig":"MEYCIQCvlvaKgVNZVQYDQbGs+Yy18kLnKuI9q7tPkiuxIVGBYgIhAJ03Y0gZJR1bVzOrr0FFhgb+lWWY2JZfpEPcIots75e/","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":206412,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJexq86CRA9TVsSAnZWagAAXjIP/3TlQfBbxWg6wehLVxvJ\nbYlbQ2RtIhAYhZJ3vl6kg6W9I/BzGzbloomzoMrcMqEjY9+CpApcM7JqQTQD\nH26Cnvup6vDKIU4u+azDepVYe2Lx0lu5QvbVILFtHj+unR8IZqsJNzNQkytP\nqJveG6BuZe2eWORBD3th5tVgNeCduWy9ZfX9Yt4doeYDSjOqqOdEFLm7hR3p\nAP7XKBjwKt3cVP7dyXyAJiV/KfkEgKBtemd0EzGa1ysdDK73XGx4QzfgFAbq\nWHt2CIFM8/nZQdyPktJScL911OfSdVCJrruOvg5GF9Jv2e2kV1Yd1lvfFznR\nmh1r+zqpIVkR8q1pxmVK0rEMMfoOnfdJ3vAy9/A1lxreCWhkgDiPXKeipfVb\nbcx8h3or9vbFAwrayGiAPYwIgl263O79Qcy7JmE8JXtJ4Y9vitoYVOi5fuYX\nmZQgQaJwVtnGN5VNf3odAYMHY1MqWS6oFrDPExKRAEhWkWIM+Jd1qo7q6o6J\nCbvQ7h6FXM8ENnN03ujU0kLNNquUEb94XO17YGApmehdphuOe7nUEFp9T/8n\nFeLchNxGc92bHDRDbCK9aW7PJf7JrpIQH+ykwHqcfbxsH5gCI024bfp3ymue\nwQ9kIGWMbV6qgUQ+VPSImds20wYQhuzNlNp/0N6vJo+7nJzgNUfClXS9jRwU\nh9a3\r\n=eNIE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"62c869c9d490fcd3f25cd87f251a83b273e32736","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.62b5f37db.0","@material/rtl":"7.0.0-canary.62b5f37db.0","@material/base":"7.0.0-canary.62b5f37db.0","@material/theme":"7.0.0-canary.62b5f37db.0","@material/animation":"7.0.0-canary.62b5f37db.0","@material/typography":"7.0.0-canary.62b5f37db.0","@material/feature-targeting":"7.0.0-canary.62b5f37db.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.62b5f37db.0_1590079289750_0.5699098096324164","host":"s3://npm-registry-packages"}},"7.0.0-canary.2e218dbf8.0":{"name":"@material/floating-label","version":"7.0.0-canary.2e218dbf8.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.2e218dbf8.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b8f948498ebce9ff014c706cd1a2b94e21e30f25","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.2e218dbf8.0.tgz","fileCount":34,"integrity":"sha512-zR6Oa6NBzJ2dWvzF5ILiJpVHEr641Kvd8QG4W9RaaXVKIEt3Vcou6iEj+kKOWajJC+OP6N/olydDyz4PjAnokQ==","signatures":[{"sig":"MEQCIH+gk70HNqvO5G2+t/9wnZDU2fxnXKNfoTGS5R0aQ8YUAiAyeuipoWb1V2LG3H/kd1WZKDSJM13MLtCE6iHTcfbbnA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":206412,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJexrQeCRA9TVsSAnZWagAAxewP/AmI6AiVvGys7J3RGLPd\ng8hE9Asy0s4bt+OCTk7j/5/4RayQLlZSqjfN3tc077Al+y+p3+69m38qiewm\nNFvoXiM+IO/cPDpzVHHhHMBIhVnKUnhnxts7p3i/9WJDYKaEe5E3I+uKJqij\nynRdNi6JzwHhZppfdA+Um7N/tyfgdFOm/ghIQhmvJQFsyyB5OHTjA7hxABar\nd7iydM3c9jerN3rQDTXpwryUwTUT9Ytu1US61Py46J5F3FplninukcQ1rJUv\nxcx56iBuJF9NTosdv3V3iQLqkpyRTwC74rlebrFzEPkcJb6PZlSjknKuhggw\nMIoWtfHWcv28ifJch7AzXhft2Xh9rX2Er362Qtqi9jYwSr3LfGWjg7xPThb2\nyWeLFkzH4BQbJ++eTdpRkHqJTfQkixvH/2pSYpj7208xQXBfIXzrMkyHOzj9\nwHatbkuxWjLuc7P99fuUr3oUvMcPAGkrAqp0I7QWMQbUKIA68ptNln03DC2I\nuryeNvrDy0rLOJhrALC+i6c4lpXYPe7oizMR4NSs7j6mHq3NrzdJKUTB+4dz\nIEAFVRUIw9vjTO9H2fDeCVESk9bO7Al2ZaTg0eGUgzOAyO83xiBwAhg27jVT\n/HS5J3cFN7A8OZAoa7pU7yyaO9SHwLXWFXH+LOFvBDPA9II/venaGP6XUW3Y\nh38a\r\n=+bgN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f9b76f9144a233e7569877ab8f0dbbb1be555055","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.2e218dbf8.0","@material/rtl":"7.0.0-canary.2e218dbf8.0","@material/base":"7.0.0-canary.2e218dbf8.0","@material/theme":"7.0.0-canary.2e218dbf8.0","@material/animation":"7.0.0-canary.2e218dbf8.0","@material/typography":"7.0.0-canary.2e218dbf8.0","@material/feature-targeting":"7.0.0-canary.2e218dbf8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.2e218dbf8.0_1590080541732_0.483162458902767","host":"s3://npm-registry-packages"}},"7.0.0-canary.7fd792bb9.0":{"name":"@material/floating-label","version":"7.0.0-canary.7fd792bb9.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.7fd792bb9.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"93c5b6f16e93c96b260fa5652b79b42930a295a6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.7fd792bb9.0.tgz","fileCount":34,"integrity":"sha512-M7i9O80n0Hgs+p+eotnngjMJ+yMGrjWnIjhw6BFqYWeU+M/qleOhB2Ix4O4WgnzUQaWuSrAXdA6gBZJQ900LXA==","signatures":[{"sig":"MEYCIQCbZV0J+i4K9Ogqe3balcokzrwbQDIVBuvmjHwxJWp9xgIhAPnhZrsI+bEFSPn/vg/QItF0hbNIxREsyH9Tju0WyllU","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":206412,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJexrb9CRA9TVsSAnZWagAAChQP/iXr8eqaUlojytnwaYD0\nRoKS7MKwt2LR4aPO2y40E3X7kkdGiodbNFZKHlEl/0IzUjUIoHJ/JyFouFtP\nD5vYgTLXTiD3Hzvq0rECEUm0r1ueGWHFKkOLSqs831hgT+4ZZtwo5w/IgZrq\n8p5bwZe8nNgsdfyeSOd8doMFU3GpLnU5YmYkeId13qYUHHoWfRzX7VWuDu/+\nXRN/dk+oqwCxztpB7bWWc5kOJObj68Z6xQj5rMWpRgahoT0I7cFAouiNQmk0\nOe5jcw5Ft8SaeGgFPSMpR3EhZ86ebMSDqPKActlreSDWi/lr4jHhBrviQEai\n+vKJ9TEhZTzdfbKdgBD1hcvcJsw6BYF6yf/CG9OUz6OGlmvzuEuk2d1Z0vCZ\nR3fqEJ+XiB2OBw0HFH2hzVZA0Rtiw7SnDqxiBJaebVL6pqADiEyQ+oXPl6N6\nW2LjbCQzcGOBLwF4oVvMILKCrhPAhP/vYRaOoLJSabR5eVF5mbx7HQqlMtf8\n11NTW1bm0f0iblhdqRDfY4yFS4jDUrNyIsYcRFDP01njCaibnFUJ2QpwVV9l\nHBRMbTk/kKUaKHET6Sp/7nz2XCcFmV9Hlts36RZ/6BL+/b23YVCKdtxzKKZp\ncpKjs4xx+aDLnOnCDWbwhRScYAkRm+lMvhJ4wd4HOe0Hu3lWbU6gy2ISCdx2\nQKI4\r\n=zRYn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d5ce4b5e7914675090d101b10f10374783326ede","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.7fd792bb9.0","@material/rtl":"7.0.0-canary.7fd792bb9.0","@material/base":"7.0.0-canary.7fd792bb9.0","@material/theme":"7.0.0-canary.7fd792bb9.0","@material/animation":"7.0.0-canary.7fd792bb9.0","@material/typography":"7.0.0-canary.7fd792bb9.0","@material/feature-targeting":"7.0.0-canary.7fd792bb9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.7fd792bb9.0_1590081277137_0.4138882415338996","host":"s3://npm-registry-packages"}},"7.0.0-canary.a66493cd8.0":{"name":"@material/floating-label","version":"7.0.0-canary.a66493cd8.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.a66493cd8.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1a185fb7c9f4bbdfc9ccda2cd55b4db6446f36ff","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.a66493cd8.0.tgz","fileCount":34,"integrity":"sha512-x3SVVSFD1tfVw0WCv290+NzDbqsxO3HjouPP1WfVteFfgC5/G7K+Y4q2HYWIz8mThlQumFafyZDgYQaWv9lz5w==","signatures":[{"sig":"MEUCIQDC7Jkwyv6wbGF2wav/2xDxDzgsT0VMYNVwW0jNC+kcRQIgMY0kK2K3WqN7Vh3Rb6PZaJcPKxgnqlRHL4ysoHorAzA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":206412,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJexrfkCRA9TVsSAnZWagAA2mMP+QDCn7ay1cZ4+zBezEg8\ng0MAeZ1x3qmKtDlq+q4rdI7i8GOpxYBAxeOE7q/xGPQWfG3b+i9Y0eAEgL5b\n+u9OYoyB26LlbU+0ubTlZafHHDG7+LUPXzo0RD+PY1eNU6LSVm8CmLzuu/JG\nk6J+boijIRQA6h7Zs+ivUCh3eFm8htW8z5MFbKx7BAe4aDwnIXV4M11798gx\n7EVF9MF43u6+gAoUEogcLmikZ6bj1w0CCFZ/YkO31G/m1ylLTvNt3qGBi2vK\nKUoavZWTaPkDqFpacrZLzBcjshSIbky9KvsbTq9FJagXRXsY/d6n5B1LnhXJ\ni0AzyheEb9dH47fFgP4XS4vgsGoUOevn8jBY06ICgSta5hFZRs8YdJR9XvzG\n5XrMWlgUghrV+AuDi1h87ZFFL9QQD+VsxdfUH3n7CpXxc7Nw5wc4GAo3m5Sr\njUmG+i4sDghr6Qg2YSU01VptxwnxAv12P7bWq8uOaNfBTxKq0zovaxlafXgR\nNle4XSBvSHD0yNdeznq76FJwUlPIx2mdGAtIus0za6ZpitxYCl+CnblHAqBv\n65g4p540C7xWi5qBrI5fFkay8KtM8gt/qTg5g5eQUirrfXAriJP7YVNC08BE\nFV4PsrSogPjTBl0pEWWIxb4lI337Zjf5jjoE8iuMIVtI/zcJyYyzzApUmOpp\nXyuq\r\n=7val\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a14e3cae1fdb42680777a9a6b5706060924d68b5","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.a66493cd8.0","@material/rtl":"7.0.0-canary.a66493cd8.0","@material/base":"7.0.0-canary.a66493cd8.0","@material/theme":"7.0.0-canary.a66493cd8.0","@material/animation":"7.0.0-canary.a66493cd8.0","@material/typography":"7.0.0-canary.a66493cd8.0","@material/feature-targeting":"7.0.0-canary.a66493cd8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.a66493cd8.0_1590081508509_0.5081814038852541","host":"s3://npm-registry-packages"}},"7.0.0-canary.da05f66e1.0":{"name":"@material/floating-label","version":"7.0.0-canary.da05f66e1.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.da05f66e1.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"83c121efdc36ec4166b9f13ac01c4e3e00b83ecb","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.da05f66e1.0.tgz","fileCount":34,"integrity":"sha512-h+mtx5iHJANdtGShz1Eacp3iy8Q7IL7WXVPNGzuOQcP/DHgCqvGyd5ZLHRBpFsLSUgPYOBRbs1SIxiyZ5p8Feg==","signatures":[{"sig":"MEUCIQD+fhik5rgD3Gkqf7lIvDTQPfxd4Wmp08/iT7GiOQdLDwIgVB8IJulMDs/FjmsVZxY3ZIOSIHklRct0pBGLAFbeiUo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":206412,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJexrhDCRA9TVsSAnZWagAAvEgP/RvWM0q9TlidOsXx+dOU\nzR1gOjHlUlwIBXOunBmH3tQfaHFqvoR7EJheQfCLbec1dUrYRiE46gU/EnQQ\nToNBOsy0JfEd00wqD/p71m6zw/LVxAhWNfCg2ci4LJsCsq9Ork8zV82/OjYR\nxg8aIc4qH0+h6hXiH7pxfMZI+DeyzV3fQmoGKKixHOUDVUJMGue1pQxVD4af\nYk+mjLYDnhQ1adMv6C5pSF53HKYr0hPJ7fFPuRPrAtNl2T+UcypYQZdMpjnY\n9FXxAirUA25S8S8NvoYfhzR7LNJ1tqvR+xZvHTpQ2vzTbSHpxnEaowJwMRn/\nbHY62fAnlvdhzq6SK39MqfBvu0nLKw0vyhPKSyUi2QF5EMqSgpZ2rGEsA+0m\ncMtLWQhKg2ISGQ9s7HFQtosln0XnWVk0ZbvfEDAuYj1aSdLtMLrlNJoEv3ON\nTPse7dxVx6Dmz+xMpjO/IZt/7SGa1gMB/Jlj2LmsmUmHvVZMNv/FJpm4BOeM\nMTtuuJVSV8f/llw2z9wZpggvfYndUtW4+6UpsSp1yTkVvNZ1xIqgWWliKDY8\n4eOlSfXG+9ewpHAafqUuHpbmVTobLM1yLR2M+Tjjp8V+n+yPnL+FkgvhJk9Z\nnTbMmKQ8N6LQl6o5j4440e2jPaSc9e1ay3/3Eyiv5EoMo+tmB0eoWsyR4FBR\nrlhZ\r\n=h6nd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"97f495e74f33645d8f066a4be88eaba95700a4e3","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.da05f66e1.0","@material/rtl":"7.0.0-canary.da05f66e1.0","@material/base":"7.0.0-canary.da05f66e1.0","@material/theme":"7.0.0-canary.da05f66e1.0","@material/animation":"7.0.0-canary.da05f66e1.0","@material/typography":"7.0.0-canary.da05f66e1.0","@material/feature-targeting":"7.0.0-canary.da05f66e1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.da05f66e1.0_1590081603054_0.8657824675802235","host":"s3://npm-registry-packages"}},"7.0.0-canary.740860e78.0":{"name":"@material/floating-label","version":"7.0.0-canary.740860e78.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.740860e78.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4e0c789c66a2c3086bddc2a78ad5bda8fb57cd63","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.740860e78.0.tgz","fileCount":34,"integrity":"sha512-cCsulgqhC+zywCupCSzK93/IaebF917fVMCTWPAgtXZlO+OeyAaQYpR8aqqOi07VQoxgbhiz8gCBFN7zqOYqzg==","signatures":[{"sig":"MEUCIBnbOTiWGDNT/NoYF233aIR0W3sDx/G2Pi6CIXhcu3Q0AiEA4+TJXN9A17hoaypi97bjDSEt1tbATO543zbEC1sJGFg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":206412,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJexrnhCRA9TVsSAnZWagAARlkP/A1LfPeqzZwdLrPoK4dQ\ndXjrSxtQwNrZMwnOmFSmfMshpR3tA1bhpf/F7Xbr/iTuLHEZbJW6Pw37JkgV\nf7uoWvF/LzI6x0Y6KA9lQVFPrYbL19q7UWKvL2e1PkEj+LFObHZFozZUScDQ\nq9AArSWqVXuKJNNhkwOeJZSeCuu5qi003ElwvnMH5Ns9eSIR9j7rD28UR4n+\n1pvknVLdLbk7V6vrRVP7MRkm6cS5UTiReZgHpah7cclhH10TpSJbpjcXlHJv\ncM+LQDLAf2NTNlmHj2uhc7ejwXsoA9ezW6nmxArMHlN+LfiG0vmaTRSm60cN\np397rB5+q3fMSHrT3jGY0wAhVP7d+7BGvwSEelCEz6oUie5mWTfmx96Xa55x\n07Xoozy0VDmGNBizxe/TmGlvqhmojVIjKnbEOAkDDWSn7toBRYuHi4TWsthy\nKc1fzoUtAOQ6KhW2GkqyouJ1/5wkJmDiif09DD3rPmaGw1rQPh4L8SMcGVix\nTXnAna42lgYbF48tFBLUM94P/ji1aUkhV+GRx05BKSxT6fFQ1s7mgR7bk0pr\nCibz0pNDZ9bTmyzYEn5qRWql7VG7Wq4caTTL2pOaeHLgaT0aYoy7Fi1GJcrb\nOlrDYZptQNzZT43OGODHz1NiR/EDGMhisMDhE7eNaMukgfC2YJ4QYmXcW3SP\nL6z1\r\n=8fQa\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2319c23e86ed8e7ed27865b711bb6ea6970b98dc","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.740860e78.0","@material/rtl":"7.0.0-canary.740860e78.0","@material/base":"7.0.0-canary.740860e78.0","@material/theme":"7.0.0-canary.740860e78.0","@material/animation":"7.0.0-canary.740860e78.0","@material/typography":"7.0.0-canary.740860e78.0","@material/feature-targeting":"7.0.0-canary.740860e78.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.740860e78.0_1590082017413_0.1159084613273571","host":"s3://npm-registry-packages"}},"7.0.0-canary.5cea2610f.0":{"name":"@material/floating-label","version":"7.0.0-canary.5cea2610f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.5cea2610f.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f48535eccbf98f1da9dc803e5f78aa1f3f458321","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.5cea2610f.0.tgz","fileCount":34,"integrity":"sha512-YdxByVGtq8//hCOF/YRS+2DmK12OsNA+DXBiUqJSEc9AVpws3ZSEaAUaNw9Aw2ZEQXqD7FYlBWgsY2ebbzi2og==","signatures":[{"sig":"MEQCIFfXg2TNHMicfiqFxgFR++l2ZyLQNfhCJOTXGEANX+rDAiBhXWOumT/KkUZlYopgbOdn5nuxZS0ZBJGe6qeNMDRHuA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":206558,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJexrpeCRA9TVsSAnZWagAASY8P/3MRy4vouoE0m0TjBhQk\nf2NgNNRiOtBktBpddW9r3K3lTE7UTp9YL3FgUdsPUkKUxVURIElTabg4oqCk\nAMvCtdclAuwzjUeg6G8DplqE2N6f7yFoJBJKjXeR9Ty8QDbbuYQd7FCnAoko\n3Obt7QCYZRxfjEbtcbH+jzgy44RANATWxl2MHThOA/0Gre8lOUNf0ex0hKTy\nP/qLLzl75WRqqqzs4EIWU4HqnU0DGKvKT9SCsqT8B/0jPBrTx53TmDyVg763\nmrD/ZDh90frHnJckasfzuPABmYQw/03O3qEojIhXn8vn3RdZJdadvtcqTrXd\nEmHihFPgLVDovBSG9y4ywR3cnsS5TVJLMIwFW9cEp3ZiRigc4PZJZH+2YJur\nGa60l88H7b6f5pcEt6MeP/jLmVNRNBITvtU6XdlZgw9rsRAHVG6+9P8icm9U\nbjmGKgtY5+UzMAbGcJywUNjP+knOlCGjGbqOwMGne9tj7BQ09xrGAEsXSceu\nhc06z9/tJVnzt6yacR02w+mc+Fp/t4gU4seT8iZ0GEq00Fwa9RV9/ZovoW//\n4hfNhJWFbwciXDqQVK8SC0z7OWjKsCV7jO/e8nYEhBFuY5QTKOluF+6HgiUW\nde3Z8TlkO3ndWMbHnd0g5DrLayPCvSQsNzM7VMAkT8voITKK+xzr61C1PUup\nC98u\r\n=+dl3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"647d4356b68bdae8879ed7384b0ed1ba4e1954dd","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.5cea2610f.0","@material/rtl":"7.0.0-canary.5cea2610f.0","@material/base":"7.0.0-canary.5cea2610f.0","@material/theme":"7.0.0-canary.5cea2610f.0","@material/animation":"7.0.0-canary.5cea2610f.0","@material/typography":"7.0.0-canary.5cea2610f.0","@material/feature-targeting":"7.0.0-canary.5cea2610f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.5cea2610f.0_1590082141524_0.5288838379174117","host":"s3://npm-registry-packages"}},"7.0.0-canary.cf7747ef7.0":{"name":"@material/floating-label","version":"7.0.0-canary.cf7747ef7.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.cf7747ef7.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5e9de5a8dd1374734eab93c8c2bf84738cc5fead","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.cf7747ef7.0.tgz","fileCount":34,"integrity":"sha512-5N+uGr3xjKCQrnBVTQjyPCWIYdceXJTaqX3fGaD5p5/3Cea2uq8x3vN6g7CQGudOeFNnRzXf5GZP2rf2OpNntA==","signatures":[{"sig":"MEQCIGI+j9eSYmciWWR5JL+lD+Sar1gnT8JC9XAYeUcJkbjoAiA7CfwnUbBvK48Lry/P15S2N5Fmv07Oe/WG54NqmUqPqA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":206412,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJexrp3CRA9TVsSAnZWagAAmakP/A3Ro9RVbNUtlPjeUWAU\ntNN1mtdtu6ZkcZDgSwmHX+H3tpAAY/qnG7/w+WSp68KarE95LTXpdaQimyxn\nQe0nYn0bWIRyPGmGmoIkR77PMc1pUFJjaPPMRTo+8KDXG9WKW/6RrxxAI8HH\nHsZzm78v2gigmZJBniwutmuOhz+bIjUPFc7cwNnZx1eJPRIzOYGX28SbYz4k\nIwRJuA2KCfNs7MA1/dUrgBmcIE9DZ2yHXQIzj3zChgYt19IPyP8xFPHn1Kpz\n/3jjXqPFCwQcuTl+pQt2TVDLAJXdMqfzgoKBzSKxfE2lNcF+9by2NtqChZR4\noUZuP0bwbGccIVTOqVVxBf/azx7TmXHybVxPN7rxtAyx2SkCMWkHSQrmD7q8\n5/eEENGOfFyVUewS7y0lz8v9rHHSkaIxERCqVoBrvuyIW9FpCOul8RyucTHH\nac7wejr/UF0sQIpFt9MnNqqOjCn6OWgGy2ovF04dC7ycaT7HBNiV9ku9eFxq\nivHJMC3ifu93tADjagQ+qVfeL9m1oB/mPDugsN0xrfGiGH18zQJIf1iCRdg0\nWrTdJyPeIghHF+zRDPA8MbbkARQt0i2v8W2hHQVfSz+SlpjG1ojCNnVeaCJP\n3lFnsNnOrphGRHSKwTSf0nXvTohIKL+agvAVq25GmCeNqmZRIbLlsbA4hJ/6\nzuw0\r\n=p4iP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"12d3ae46d64646ae020ede8b9ce88abc7efd384f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.cf7747ef7.0","@material/rtl":"7.0.0-canary.cf7747ef7.0","@material/base":"7.0.0-canary.cf7747ef7.0","@material/theme":"7.0.0-canary.cf7747ef7.0","@material/animation":"7.0.0-canary.cf7747ef7.0","@material/typography":"7.0.0-canary.cf7747ef7.0","@material/feature-targeting":"7.0.0-canary.cf7747ef7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.cf7747ef7.0_1590082166523_0.8812657714402596","host":"s3://npm-registry-packages"}},"7.0.0-canary.862d0d7bc.0":{"name":"@material/floating-label","version":"7.0.0-canary.862d0d7bc.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.862d0d7bc.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d352502c8a480335faad9c469bf94300f65eddc9","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.862d0d7bc.0.tgz","fileCount":34,"integrity":"sha512-WAXMdFU2L2QpiFc/WzOB0+Rw5woFGH6R8LL75F4JHJ6TWqnXSRgu+dCegPo8JCRe9Kd+suq7WfrebbXlkFO1Zw==","signatures":[{"sig":"MEUCICD58AvvY+L8L13T4oWQRDUeU0H9XGW9Hou9689fA6sqAiEA7E9EhMiXaGabABvXSHD4Jzq0j4EiTG1GypMTu3ONk14=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":206558,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJexrsXCRA9TVsSAnZWagAAw6QP/jsz7K+ft6STX6ssBRlE\nfB4vPjbEBZX+GRrQpZXiY2keWBjnnDbH2AffgRQM2hOJVNxO/l67z//xgwo2\nn8gyE3nF6+z9PSR0vC69psSXnCFAZsRXiQ5TSxtfENqXQ0Eh8qxvG+yCMnk0\nQ3u+Y4Jl/JrPeIYYKaOueKDevvH8UF4yo5qZu3pKktJ6nsoSbcRR/HhQtuOi\n5skGJgK214PXgyPO2OfoCdh/8lkpOL4Ca2TxSh0KfyYQoKGYTZC1sbwtvXcr\nVZNLPgpTOeBOrfq8zuUJO5MnSthJXN7IOWj+m7UJHPOlSngTdn6nQP0yhkLu\nfd+e669NZAbimKDCfuuaLyPP1mftS9dVRL7HDAm2x3xMk/wpEu20fLSQbFvD\nxplsKnkALnyKotp8WVsqshP6ilYtFjGopowphES8BnYKKVXsot5DA2uy9fM9\nnwT34r3gGtZZzxwA1RYWSU1Cc+hud2TI6t3LzIKC3XsT4QO8Xi8Oys3TNMxX\nXzoNnEZ+n0VNSjD/HNOwLoiOe7mJTXEQNCNwb/Gn8aQvaPdPAfqoCm2QufjC\nbwa/8KfWP7vblGfJdWelaDvoM80gmNqMXKJFSUAR3mGUHu5Ashngmfcx+vFE\n6Gv9lCQ+dGDTPmBj9fkizSgqREz5k2nWD4ngEI+/fjQa/o9yDy2FTyc2uAW8\ncAQe\r\n=JLcl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"534ebaefbbb3a8abf3be3e2e13c05f86a5461127","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.862d0d7bc.0","@material/rtl":"7.0.0-canary.862d0d7bc.0","@material/base":"7.0.0-canary.862d0d7bc.0","@material/theme":"7.0.0-canary.862d0d7bc.0","@material/animation":"7.0.0-canary.862d0d7bc.0","@material/typography":"7.0.0-canary.862d0d7bc.0","@material/feature-targeting":"7.0.0-canary.862d0d7bc.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.862d0d7bc.0_1590082326756_0.615732945877848","host":"s3://npm-registry-packages"}},"7.0.0-canary.0008c8a91.0":{"name":"@material/floating-label","version":"7.0.0-canary.0008c8a91.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.0008c8a91.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"eda3374261c4fee0ee5d3fe8b31a9107c0041f9a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.0008c8a91.0.tgz","fileCount":34,"integrity":"sha512-s6PQjrz85fRRFzJezRXv1Za+P0RcO7iJr+2/O/Zl3mN461IviDwU0aZKONwN3YYPWbw2dmw6QWp/jT5J29gcfA==","signatures":[{"sig":"MEYCIQCOql4FLGFPFc3azORQzhePLvNzDldgyqg/T15HVO0y+gIhAOcDqz0fxJWP4fMnKA3M4TYe+UuG+YNQpCi973fFxARI","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":206558,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJexteGCRA9TVsSAnZWagAAw6wP/3ajjGi0gTVP7139+Z/9\nfnlm3BKhAlVjjEdx4AhQlCQo6Zgc00zsxCsVu4UyDMJweS8IQOh+G7Ly0I6q\nhV+loN8bUXHyO/CI5QA9Y4lLtN7S42Ktj7EMXJkVqsnIuc6QqBoNCG0Tx3jh\nSC8T4IPjanVQ3EtQiH62mKxRZbjI8j/rMXgB7fj6iztK8no4EBkI1nfNej4T\ngt3wUVTDUew35e35roGRUa7XB1pp68I3a+wQyxgHNbqNYGtWFVCN70KhyFPE\n5K5xvQxJUGeCfKe/Bz4aVrokvsInBH/HURZQ52w0QmWIBDH6H6K3V590Jkcw\nPK3Ff7LYGa11bl5mj2DiM/emtmKozBg8Q2u+sRuKm6gBTn5LVrB8N69uDgPK\ntwgAebGzO665Z/Os5XFjwi81kSGOOSTqbLSdoh65e8ChEVnN5eaIUwUfybRk\nhJLnd2nQhD6R9yiHI79GRQO4cK8rNbp2Afl0+BZL+3DNQ7xVh67ygG695Bn1\n8pQUpk0TeuiKGFJjHYL4aLvkqAvldxKVrn5ToOU4rEF/p/RZPkZXyPGocNhR\nEAHfOUUbFwYzIenKDcqJYol9Qy+Ja+HH3Z9uvAYT7tQLbnf5szkpB6IMyHCf\ncsBOVxCG3FpqmzE45PBkKFAu5/RFVrrO8mtQ0v3v+hB/R8h2ZxZ3eCsRHXsG\nUt3D\r\n=tWjF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5bafcd3cd9f6f60ca813af30e2b0a8974de09ec8","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.0008c8a91.0","@material/rtl":"7.0.0-canary.0008c8a91.0","@material/base":"7.0.0-canary.0008c8a91.0","@material/theme":"7.0.0-canary.0008c8a91.0","@material/animation":"7.0.0-canary.0008c8a91.0","@material/typography":"7.0.0-canary.0008c8a91.0","@material/feature-targeting":"7.0.0-canary.0008c8a91.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.0008c8a91.0_1590089605636_0.3597548027192057","host":"s3://npm-registry-packages"}},"7.0.0-canary.541638fa2.0":{"name":"@material/floating-label","version":"7.0.0-canary.541638fa2.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.541638fa2.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f899ba799065bd076543659f8691956461853e5b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.541638fa2.0.tgz","fileCount":34,"integrity":"sha512-Xge37b+tpMvNw/P+2AuqQ1DVBOAN9nP1RuZ1i+/Q+lDiKYUPLcF/AT+47+RCM54K5j42Wt/wmeM29rkAp0mxJA==","signatures":[{"sig":"MEUCIAW7EqDniI7tMunPZbVnIjru3dZMslySj9fcYKoY7R/2AiEA8WvQ/l7D3AxfHEaSNb4k+Uald4cFcKOnm6TockeyGnU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":206558,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJextsICRA9TVsSAnZWagAAeKwP/RJkJX+i4MpIyw8nt3yi\nuUxMFgN8N4VEo7B13KJIw6YItF2uKb6at3fGjxuNz805W7EHupEudh8bpAQb\n5W1BNDDpzeGw7tK7ZnjSjxxQkS4Wz/GDl0sh0WjhCapLAKEb/nevIR+zEjwn\nTHBHuNmwJsVy2G+8/Kh8rP/8ipUxvUWUTiNuDQDirsKL6Z0R4gbPHSZIMemg\nxowBJuJZeRCN7cMXo2dPSkdtgmPHPAS6jVkUCISB31v39UdBRtSt7gVcYXYZ\neraqgqLauKZ6SP4Hc1uDbh4oRgCUabKXvRa34zxQudU7AHq/AO6B4WZjlm4l\nog9eKTVEXWJ/boJ6Yb7cnTSqTvTP2yMzi6MXMu5GNv6wC4k+MkyJQ+q8XgrP\ndU6WFDa0ACsmA6cYC2ngMngm6Q5TTdQn966i5smVoAO0nqMumNcRRd2CTMW4\nw5WHK9fHU1QBQrstnXlxQERjS6qQC3zt+dNowUCRwXFZIlMgvgAgxYeJZu2X\nesbONBf5IUSm5xVqHsLHRLsZ42jUf6/vd4ZKOUEadhx8lLzt4pNOSm/ZWPbr\nD2gwTntudUD3Xw16lfv04Zy8Ka4OUPS7gxPK69tveN3JX/Y+z77upGTCXzZb\n3hFJAlnJCGTzwwYE5ynSDTOCxllCiQVrbgxq/doB3B8uy8Hzt8QdDw+ZSRVt\nPehK\r\n=OT3g\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e9634a8258477402629947671e06d007833e14f2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.541638fa2.0","@material/rtl":"7.0.0-canary.541638fa2.0","@material/base":"7.0.0-canary.541638fa2.0","@material/theme":"7.0.0-canary.541638fa2.0","@material/animation":"7.0.0-canary.541638fa2.0","@material/typography":"7.0.0-canary.541638fa2.0","@material/feature-targeting":"7.0.0-canary.541638fa2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.541638fa2.0_1590090503693_0.8873195110341354","host":"s3://npm-registry-packages"}},"7.0.0-canary.6167cd075.0":{"name":"@material/floating-label","version":"7.0.0-canary.6167cd075.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.6167cd075.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6afbc1838d5c351b56e55a7daa3a0efda478cb93","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.6167cd075.0.tgz","fileCount":34,"integrity":"sha512-PezUGA/QLcUb+AkMfZ9pt7WzjOZYDubSeyapGJAzNCmCoO6cVUeP7Z0t+TXt9kq0/hZIAkLsd/t1LHs4EfzS6A==","signatures":[{"sig":"MEQCIB8cYNjRtkilYdoEmZRMUM/ERsXpX0QG2OBkSOiRxcFiAiAwUokpFVH0tcvnWYAkWAV9BVugf/1d5SvPVE8ilHtIxg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":206558,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJexuLCCRA9TVsSAnZWagAAOD8P/RpHlFkg8hHSEzE9+9jF\nzkRKgi/oQTc+pogcTMPoQjTuf0l/yU84fcBcZUAgmqMDRoqe3uWVeUf2LpeD\nyovjjbbVW0q6JVjUCHmlgm8V6EhNjUR74XJP1iE2GjNWnlX41f+U+XZFvT5m\nsCaIKJgALDm3dRS82KsK5y8VbGxYaxjGe2ePiqwvcOfc55PdWpPU+aEtaFA7\nmZQx14Hw68LHUH0K/4HVbuy56ABcvukh2IiaIpSw2aQggUho0xILAShBbt9H\n/0vnolT6FuNV86fcJJo+L2HQL7kJvlcUh7oPcBppgcpfSqwMTZwKPQQoZqfw\nxX6F2mDUeBK9/OTsdYL0TvQd42LYsWDSgsaTlsS9uXUGIzF84LKUWvdYQcAY\n7zzvkV5x20Fdf0HzPmMKR++LwS49SnpgWBxCAt8dK6/i4H6T/y8AzM4E7Fey\n1YS9ySGETEp3N6nldAI72WhXqQ9TsaGakT/ovWB6qk6FlT0uZabaAhbUjRpR\nzt+wav8ZVvmqBrygWkCRmBZpmIhuhHAS/9lklNXB4U9xYVFGAo/yQLHvwxOg\nggfhnQZZ7LHuIB3qZJPMKSM/9QLaPPqtj6vA1Br3uoAYA4xVK9RZSRdY1Sse\ndPUD0zyvU2WBJNzsV1UHkHMuV8G5uJwiV+HuJzaQFYUmYnQd/7+2xJH9IRD5\n+WfH\r\n=maMJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c86a924ab304fc32e4e6840c7c8962330b6b0fcd","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.6167cd075.0","@material/rtl":"7.0.0-canary.6167cd075.0","@material/base":"7.0.0-canary.6167cd075.0","@material/theme":"7.0.0-canary.6167cd075.0","@material/animation":"7.0.0-canary.6167cd075.0","@material/typography":"7.0.0-canary.6167cd075.0","@material/feature-targeting":"7.0.0-canary.6167cd075.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.6167cd075.0_1590092481645_0.8678058038639616","host":"s3://npm-registry-packages"}},"7.0.0-canary.863ac1b0f.0":{"name":"@material/floating-label","version":"7.0.0-canary.863ac1b0f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.863ac1b0f.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3a485d767699333ee26e6bfa46bb3a85e5cef599","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.863ac1b0f.0.tgz","fileCount":34,"integrity":"sha512-9t7XwfBU7229it7U8vRU3CikBMW4Kop/NWzyiawblkM3iWRMjp9O73FHMEKiUylV91TueCpbroroo6fIjXjRxA==","signatures":[{"sig":"MEQCIHCmTFeoL+4tLT+g/w9EH8hoQhWwQF1WpKozJxl30S/uAiAtRiifZr0+Oop4Qx1mlgN+lko4+/5B+NuDMzsFSeE4QA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":206558,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJexuvICRA9TVsSAnZWagAA/VMP/iHNOOmaejrFL6aqZXeY\nciqmQ9CWsrn3zvRstvUDNE+szhqV+QOXhPcnbtzeCKksTiALnqir5dRvHtop\nTOutmBSgbibc59/WNTM7ATAqx1gK1URF674bJ1mMbB/Ct4pundgDdhHcdQZk\njW9F1LEGJqOt1PxWgDmZu2Jw+uTp5lNcuJGNj4B9k2uDrJM0p5dJ61xH7k5Y\neRk8PyTy+NQ2cqICUA8MXM56r0ZtJ5NxIqGQa/3UifSsT+tnQzMs2jenfz+d\nRMlEA3IC90qlDh1dnM+ZLFVOanIWDOrk/8xRl/EcWg0CYMx7a/Wr62dpu+tn\nhLGpbKcqPu6yEem9ZnZE/Kg50/n8BlTSLaotNXLuMAMOupgzog8bom4pb+lB\nbQxpX2HzrWJOMO3M7JZLoam/9aNQ/FYy8S5nytmwXOxAUkLWqpy2nabWYuip\nJ4+x6km5q1DrcZ/HFAayFaBxUPFrT/kBE+M0kzd1LpNP6bs5sibphSFIAnbk\n+bCSXmlzAeoOWm2eBJvECeqyGmWfwqd70baB22fXwVEGlHTZSayFBICBOUmf\nub9LERa6B45zeap9qn1YiQbpY+yhzVVB1/qHfaZ58HHW5u3/6padeQ5/B92D\n4xm6ekvPAAkA6kgOFenUxXUSElCzAtAe+9ffuc9LYsjly2I/xB2Q6WkOq8ET\n6IOt\r\n=FQaW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c1e7026720dc12f1bd465dc892c8718b429563b6","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.863ac1b0f.0","@material/rtl":"7.0.0-canary.863ac1b0f.0","@material/base":"7.0.0-canary.863ac1b0f.0","@material/theme":"7.0.0-canary.863ac1b0f.0","@material/animation":"7.0.0-canary.863ac1b0f.0","@material/typography":"7.0.0-canary.863ac1b0f.0","@material/feature-targeting":"7.0.0-canary.863ac1b0f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.863ac1b0f.0_1590094791862_0.7987623148692324","host":"s3://npm-registry-packages"}},"7.0.0-canary.d30a214ac.0":{"name":"@material/floating-label","version":"7.0.0-canary.d30a214ac.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.d30a214ac.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"69232d75907843b4264b14cbde00d052f712921d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.d30a214ac.0.tgz","fileCount":34,"integrity":"sha512-YhdJER+uA4wddlcKzSWH4x+Q1lKm+x6G2FsRNBlbEETZFd7FRCNtGBX4eZm8XRNUhTMV8l8J03eQecw5MZdIWg==","signatures":[{"sig":"MEUCIE4gia32WpxpXoR1C2DZQJD8O03EMPkmzSIpCZ6NlqPcAiEAlkFT1iy4W6PFcppD72AyIZVTOz8TjQez0uKesF4XeUI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":206558,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJexuzTCRA9TVsSAnZWagAAZIwP/2W+EX0ROkwOYk6v/k71\niRdLXeQhygHSCwRRS2C1Moy32jDgsKp6rk7GJDvFKmfr+51giZNhIf1kR6Vy\nYk6Xyk29l+k5uduKhW1ysFB4o8dlvdET2mfhucKHoEkp9ZNhSiNWIv4689Ga\n2GYDsGETaKlzILRtIFCRBvpTdUi+MW6NUaFZsHqmlnFhMSbw8Y6AC1LG6zJP\nQhaD5j8zFoSEmrAAMo5oqx84CdhVyzjIPb2Huv7BvmIsn0kFIaPRKX9NX0fX\nX0o6udYyIQ5T3k4lgiPeKhr5RJcGdLaVEw33n/q2cVovrTIOhh3fUzGJn7Y0\novOmj4xRsOyEIvVNay05+zqtqmmHTeULOvlTEkxuQfVLizrYimFQ1RG/TImW\nnX6YZLeLf9GXh6aUrI9Es4FHEwWpk+UKIp5ENBIvZqSW/co4LW0G86FCpotN\nqul9hLohAZO3MJBe/nlJOs3I3dZhcCLVVxQUhgFMNMW3geUqxPu9brUWF7y4\nml34dkhfpXg74xEHpNL9qR728qIMBqDv8J6/Ds4F5v5XTxpY3xHenCS09QW3\nxV6eldaac7i18xsXk+QT6a0Px856WQpVIxcjOfntkDrGS/Ugh61RV8kyM6pN\n2QW5GD01JeiZCvnRNj0C9fPb3sKEcbYFE2CbAt9NcAFogGwB5/qU8XjY1V9I\nFICl\r\n=0fkY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"635c0e7c484f851d2ecb4be825abc36357ffc685","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.d30a214ac.0","@material/rtl":"7.0.0-canary.d30a214ac.0","@material/base":"7.0.0-canary.d30a214ac.0","@material/theme":"7.0.0-canary.d30a214ac.0","@material/animation":"7.0.0-canary.d30a214ac.0","@material/typography":"7.0.0-canary.d30a214ac.0","@material/feature-targeting":"7.0.0-canary.d30a214ac.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.d30a214ac.0_1590095058829_0.09371200997671614","host":"s3://npm-registry-packages"}},"7.0.0-canary.62abbc8d7.0":{"name":"@material/floating-label","version":"7.0.0-canary.62abbc8d7.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.62abbc8d7.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a0e19b4a576e8ecdc69bce2346a583883232139c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.62abbc8d7.0.tgz","fileCount":34,"integrity":"sha512-d4lFFDq3Ey7Id0NYnz6bfNyTk6Jp5pgeGIPoAtVqJ2+8KRCGK2OErUMhkcQTOcBs0lvanojnDTCb916388Kg1Q==","signatures":[{"sig":"MEUCIECpR+t3JDqHd7ZycxWhlqdMuFq6cdt6eOyBPsNdB5JMAiEAhLtpmj6rcGKDdoRMZavLrkJnhyQEJ0JW4uI1drO73IE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":206558,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJexvKaCRA9TVsSAnZWagAAK60P/2yZcuzhb+tcKlY6DvZh\nIj26bmQIc24zfAH15xy4BDy1Z00uAn0B5rzqXgSnmPGRPdbv06xYPwYJMDtU\nFqdCtSMA00/4VM70k4u38uZMyBdX/S/Co3KvmXo3yk9IPtQzf8dO4myXHK8Z\nZnRIxoRVIp51qV/7GZmWBys8jnFRdh7QvLNMtSAiS861kFp0oPw0NJx1zTtw\n5oOpXecMykTJOsMuPJFPXk27eG5p3m+WVIYyQRa3wAh1rxB/3lSkXQThAeiy\n5w3IHLHe1ri8I232m1ZI/jSiRQSgZlyabLeGTtoGBUaQQP3CR560Mpejd/tW\nHwEtT71Y2/oZSEDZAC9hk5i1drAbNvFjUwHcchdrIeELnCJ0PIXTCI7lC2pJ\nx5D6S+urTJDVnnZNcBKlIb+8Wy0euR8Ltl5PaflgvySWmmNbnHTdE28JPdy4\nY91U0wIX7OSKjw0p61b5ikRkUVnSqjVcsWAiUF5oyFICCGIrtcNr4Kt9OWxk\niv2l5yJAdL9e75O31KgtvtNmUz0blBQ7JxKh1nXNWdAoAtyp0e6joDJCccrS\nP4Jir9/5TZ+GBMhA1PohDIvJ9cpUz+GJu8O3OlJ8HJqhj09jwqnYCnwTryqz\n6NV37yr7WL2YRGL9QO3tbAxunRJWM5w42FXWC9dKlZ6tCaeWrKILxxloNvGt\n1pRj\r\n=bPYv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"6758c29e4b065e2aa9cf633b0838c4ebefb9f54c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.62abbc8d7.0","@material/rtl":"7.0.0-canary.62abbc8d7.0","@material/base":"7.0.0-canary.62abbc8d7.0","@material/theme":"7.0.0-canary.62abbc8d7.0","@material/animation":"7.0.0-canary.62abbc8d7.0","@material/typography":"7.0.0-canary.62abbc8d7.0","@material/feature-targeting":"7.0.0-canary.62abbc8d7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.62abbc8d7.0_1590096537509_0.6495299791890912","host":"s3://npm-registry-packages"}},"7.0.0-canary.49bf31d5c.0":{"name":"@material/floating-label","version":"7.0.0-canary.49bf31d5c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.49bf31d5c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"43a2328c1a52930044d04b198cde29b6ea883eac","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.49bf31d5c.0.tgz","fileCount":34,"integrity":"sha512-YuDQJeg9KrS1GdrSydwfgn+BwXrh0lXVeD2CLVaACVtue2OpM+ICad1RSYBObYFsHNx5vAfkaZHhOomsl5QVEg==","signatures":[{"sig":"MEQCIBgdSK3zU+a7Vfu6GQWKQhik0eadZ/4OPL9Mt9X6YDsKAiBD/3ic55mi/e+b0A/ksbPSfJYoTRYP7qUZpJC8iYinlw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":206558,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJexvNkCRA9TVsSAnZWagAAH0IP/jUj4xDCI+qiA9x/pfZl\n5JQkOQs2d4KqbVY9S8O5c1rqxteWrNfLMkcObB3UdN8MNdAHrqpmFE4/BCJv\ne8QcdsOdoTXYgvu4D5sVZA5RmkhrNSdkHqHJ4aW6Z5x7P7kaC4UDYh9X0u2d\nxZT4zZo59dNZ19tvcdw0a+y5XDftKO7mDTddLi1Fj3ZykrejXyxUGwB9mPMu\njd8Qpggtim2SaKB5jz/DBGIZv8cWz5VGHXIiJimvqKX1OMY1t/jrJs+C31UP\nnoVWR2WIYbwwEYvSY3OgdRCx0njmlBWS7CVYQYxnHKsSk/PNwObGVi2hmpnS\npZIvG4sVHSryNSyikcAXUvDCOWSb/ja8sf+sO6T5nhZZ36LiRR86kVFlx0Tp\nXGlsa8eHriJ5+sCRuXYaCAUKjUV16Y8VArB1deaQHMUoS7gkg3W4cdyCTE+u\n6aX8JLhambGbCiLRPFqo0wGFRxK9PfDok2+yWcnSRlQudpOqT7AGjvyHVvnU\nkwjEA9BsHLSC0sCzg9IhbMW2V9zlhCk1GEuyyqgWejEFxzz0WTP9hzqfJ3Pn\nA93ERSrG3CPcRifl1SD13IuR7bOmqTy3jczlidrqavan/5TjGg6ZETRGNYvx\nck45POvePM877x1ps+YP5BggU5/bg4RZgtPIYeDAQTAoL5/qbdjExQeqRN/9\nujFT\r\n=xm27\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"01cd7b0082a754dfb042df35ec48efcd4aa4c52c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.49bf31d5c.0","@material/rtl":"7.0.0-canary.49bf31d5c.0","@material/base":"7.0.0-canary.49bf31d5c.0","@material/theme":"7.0.0-canary.49bf31d5c.0","@material/animation":"7.0.0-canary.49bf31d5c.0","@material/typography":"7.0.0-canary.49bf31d5c.0","@material/feature-targeting":"7.0.0-canary.49bf31d5c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.49bf31d5c.0_1590096740087_0.14276164888854148","host":"s3://npm-registry-packages"}},"7.0.0-canary.8e17857d0.0":{"name":"@material/floating-label","version":"7.0.0-canary.8e17857d0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.8e17857d0.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"dd3006b61d3e9941a9f24d7beb5072e97b211056","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.8e17857d0.0.tgz","fileCount":34,"integrity":"sha512-fqDQzB3WGUZ5X/aEUkf4wYYW5QJBuZHA8EdnLSv5eWGu082Bjq4wXgoyr7qlt+VF6DReYcplLH8uSDhm0IONqA==","signatures":[{"sig":"MEQCIH3r9yzagow6UsO0O17I5if8lJTJWTJQxcXr32IzBbpMAiADUKGamAdkhneTgtnJJfwRxF7MX0f9bygfOSik7Jby0Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":206558,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJexvObCRA9TVsSAnZWagAAh18P/iHeD0UyYXB5k0Pjpxzt\no/q+Yuv92CEvNJoBAjbkTKy+l1Su9lBQ4nhiNBlqxftnYTtrqCz6IDqNCdjv\nzdQtLbJG7XYAOCn4I9Yeuhy14Zk3XinSsE3F9xdt6/PNuA6OGNUqG2m8/Pji\nYshZwlx8oSbqGTl4eb/+ME6kIQg4+WDOcPYGpHNhMbYqKxQS7pxuZ/RtvFoS\nqQU3c4ENhjMXWYtrl7PU5NNfl3YRFcSpyF8njekXv/5Vb1y35d0EmWKHH+1A\nliL0h2U6cShr7wN9WyRwtSJV31vnePwRg2uo3o8Mq5xQ3JtROeh01OiS+4bE\nQtbWbABL0RfruU+FyhECYcjqFtOQI7km4irkDG/Gr1qAcgrrO2hfF5mZbpzI\nffhe4tneCHr7E5Y4bw6poJMjRmrV6Jfd5AbO1B7oFwBxJDW9O1akNzFpzSde\nKuLsx9diiJp7Yr7AGfUPnKpyZfkhWPv+0hEkFyhG8Zu/mel3vmyEqFSNubVa\nRrg8uVj/gGNq8U+aHP/XrstYiUP1oi5WozEVYocn1rFfruNKOpQpo5c+7xVB\n5mUMyQN5GgQiRCgo4xpbg5flS06I1FcG/b6OWjutUZJl1DDBCYfiweSWcXIM\nkuMES5udPvSZ2qFGwDOAGRWT7LSWxZsQZnF6JAC4V98dyXwpaFpCeONYPMO4\nN6zW\r\n=0aHc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"9b03d700366fd287f2ec053c5ef4ccf802ac600f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.8e17857d0.0","@material/rtl":"7.0.0-canary.8e17857d0.0","@material/base":"7.0.0-canary.8e17857d0.0","@material/theme":"7.0.0-canary.8e17857d0.0","@material/animation":"7.0.0-canary.8e17857d0.0","@material/typography":"7.0.0-canary.8e17857d0.0","@material/feature-targeting":"7.0.0-canary.8e17857d0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.8e17857d0.0_1590096794604_0.03261264103774231","host":"s3://npm-registry-packages"}},"7.0.0-canary.c113fc942.0":{"name":"@material/floating-label","version":"7.0.0-canary.c113fc942.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.c113fc942.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"62de6a84c867e0b08d9a30a10a911977be704c30","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.c113fc942.0.tgz","fileCount":34,"integrity":"sha512-qsdTWQM/El7TWWOGFRup/Qm17wB15eAccwrNlDEj+7GA3nhYCsr6vAjEJ2i4ZfnHPZk8VwocEkP5a5/m4ZXkjA==","signatures":[{"sig":"MEQCIFPpM+JjCruYO/1azsn0DE2jX5/Zplkw6yZefG9KaLfVAiBlklRarcMR0Qhqq7H/oLAtttoAe3TXB18MBR79zv3KiQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":206558,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJexwTPCRA9TVsSAnZWagAAf+QP/iAL3VTmZw9CZcuBfV2k\nsDCseTM/XHJoONPUCM4kIOEccQop1AGEnHgsy/4t9tConjz67GyM2BZIAX8j\n5JC3yhE62A8n38JIMTAL70iqtVsU1QRQ4MI1ILbG/5XwGi8gGSEhiaLxPoLA\niFk4kRKLgpakM6R022t+CYs2QGYWJHMoyiRR6cpBKrY5hGcPsVr+0MHBcETF\nxhiWW2RZ40lrEyxRIX8Wowd3L2xERURho+l4z9Ky0KWjgnhEVhPwDdasnh3y\ncLtO9ppvdT/m32Zj5lmzgGHDooeB5Dc/n7kbT1xfYpwkb7aNLAUOMzQtGOri\nP2Cpoc99BN10xzdHftjTftcCLHIL7lwvJdx1olYYoa3WPEIwCmU/IHmXadfD\nUtIh5zy4WtdiTtaWVux3x0hXb+u5xERiKUw8TjZF3w1VYBJc+7w4YaLNWlq1\nmgwzDDGIn8JPBK19VOzas5HlfdQ1cKb25hTHGwLOqgIxJghcX/JIKOx9zg5e\n0AxE/VeJWvFc7uw7XT4cvP0gEkGdq3sinPtBgeJaj8Ag8Qa2JUFFLMEb7Sey\n6s+6zoX/YvEnCxkE6UNPzsUC2KhrJv0/pZbDJ++JCiwIInw5ntuNLhsQ3ieR\n+//HmOhL9no1u61jHELZqhNHaanIR8mAJm7I++mL/j/a6C1SI2aUFX+rQxaF\nH0Cq\r\n=aLhA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"49605d78c19f78dc1b28a35457efd8dd808621e4","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.c113fc942.0","@material/rtl":"7.0.0-canary.c113fc942.0","@material/base":"7.0.0-canary.c113fc942.0","@material/theme":"7.0.0-canary.c113fc942.0","@material/animation":"7.0.0-canary.c113fc942.0","@material/typography":"7.0.0-canary.c113fc942.0","@material/feature-targeting":"7.0.0-canary.c113fc942.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.c113fc942.0_1590101199033_0.3493019611088026","host":"s3://npm-registry-packages"}},"7.0.0-canary.912d9021d.0":{"name":"@material/floating-label","version":"7.0.0-canary.912d9021d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.912d9021d.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"aaa85b043db548249e1f4aa77b183bb4e18cb846","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.912d9021d.0.tgz","fileCount":34,"integrity":"sha512-IWPSL8lrfweb7yTsX0d3lQ9V72sMu+p6Im57V8eBYmB1O1Q4VNcotjo5IKmg56dQq3qMGhUlZdUZr9wCSN9xNg==","signatures":[{"sig":"MEYCIQDaSG1TGV2FSrxqXRcFxhWAeB5eCvroB794jB6xwCHf4gIhAJeGmu+hH+5UzC1jmmaSgvjplgKJnDaOs4vzAA22MV+j","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":206558,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJezWPVCRA9TVsSAnZWagAAAfwP/1rBjdG6UGT0ucC1MDer\nFuijf59F1t5OPTDr59hK+YBtcQ0qAf2aanTLSz8SL/pD3/kZWImB0/t37ELG\nDlIzSAL8uLLgS+sricNfBdcsfdOVNTesEf2Xuus2VknjOXIysAdJ06I8Uf59\nS/S659IjPB34ulIiobNVd51xsawVGCNxg1haxnZWNLWA+dqNVbOMtcM2uzJm\nSzj4+6FpR7tv1cKDZd9piJeAapCkpulMuzjsqcJBSk1tlc7TTqWxniO3WYkM\nP0f19vnv9e4OQjJ7bu6UqTsmydDE6A3qCxVbdLEIqGfRr+BVf5TeuD/SUrwQ\nZ4a1Bq6IMhPAf85FcwHVL+JWO6qslGjLGi8K9eBHonHexSwN2qo+vMHSZBAC\n+GctC65xqf4uQVVlbRn6B7JL+XAvhlOByfFl2hvwJLjbCYzYrWhR390jipBI\nqdg3E4q/i4YUtqsdqqCuFlXwc3sZcdpu5fR1kChmbd2/iGZ1xxVmiT7DWyvi\nKXSaRPxzN+hBWuaFHLvjMw9mGrf6Z6kbHNR64lxRQ/BIcmgaEKg5UjLPG+ab\nwudT/5E0IY1RD7CASJ2bQpMTWPLOgzmUAVk8AGp2qS2gy+wzEwDVTNL3FUjT\n+zgY74O38xWtFMroMF7Uq9E7+16wx/JjiFm99tg/+u5AhD8UKrL6IiFjlfJs\n45g1\r\n=7SFa\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b7080ce5675d8ab69b7f361d040e079511499175","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.912d9021d.0","@material/rtl":"7.0.0-canary.912d9021d.0","@material/base":"7.0.0-canary.912d9021d.0","@material/theme":"7.0.0-canary.912d9021d.0","@material/animation":"7.0.0-canary.912d9021d.0","@material/typography":"7.0.0-canary.912d9021d.0","@material/feature-targeting":"7.0.0-canary.912d9021d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.912d9021d.0_1590518741345_0.30283012233252804","host":"s3://npm-registry-packages"}},"7.0.0-canary.68a2af131.0":{"name":"@material/floating-label","version":"7.0.0-canary.68a2af131.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.68a2af131.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"263c8641b791576cefb97dc6386723eb9f869d73","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.68a2af131.0.tgz","fileCount":34,"integrity":"sha512-nsgP/YA2t7/SgwDS5oJpO+eDFSjb4cU3p/F4092yLqhxWqMrMfo3RlSbXNRqbtYQbSffxWcU+BSUXe1zRxEKcA==","signatures":[{"sig":"MEYCIQCmL+34qcLwLkg0uQoFvrWGCNPEq9OXSGnA9868ublsfAIhANnjgmhXlxaQo16p6+luYADCKKm5ABJIAmYvJ7T48cbr","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":206558,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJezWkHCRA9TVsSAnZWagAAFrwP/jzG7ejitjz6JZOFuuhx\n9Cs0DS6b1uQ3BteC2ACsWhUenC3ki30NqLvMmCpohLWWl+Q8hmXYSnwv72IJ\nUMWW8NkL3Ya1aqg5arCtm5kz2J2TliHNns8+ZXMiox4xG6Rwu9h2XJ5mZX1I\nSULdjURzRIijwIh8NTaAmFNBkeKpCvPRzsKa8vzc/RgXfnxumt9OSg6t54Bs\nV4ixtzJd+mMYyMxfh+KSZFzjQ6dbeVEvIrsIXpOTiuE6pkatsdujESeWYCsJ\n1Vtb8/b7pDClRLOnQ8RdkAlxmctIA9hcyUhG9Llbw64nleKCthxV09pVZVQX\n7yNcu9FCrWST1YFKQaZa1ooAOvjUjE1d4ScNGxMRU97pdjZu9oVnjGhn2ZGG\nOIAqQznSSliTsz+gWJ7Y9zbjLN0yE3OLQslgb0ei7XjsCA98s5ehm0JEG4wb\nYR/MVK+sTiyuDGbi4EnSTPvFAKjA/UZ3pIyJhZpHKgK73I7YhUrIYsyp9LJm\njz1PBQlmDtA1PQyOOJ+9KWZvBvVHLgLpgV+1y22zU+34raeBmocoSajpQBX8\n2cCC1XGv0XTZb9OgiPuot4CgqvY0Rv4B8boeuFk+NDJ1MbWmief2n+qMcbIy\nZTOOxVH2KaHXDtIng5byJAePNNBGqJtYaUC+i8+xGUudDJGnKmqwoNSFp2/K\nwb0C\r\n=gFzB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"9fa697d39bb8f18500434764b1fd608819d2e194","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.68a2af131.0","@material/rtl":"7.0.0-canary.68a2af131.0","@material/base":"7.0.0-canary.68a2af131.0","@material/theme":"7.0.0-canary.68a2af131.0","@material/animation":"7.0.0-canary.68a2af131.0","@material/typography":"7.0.0-canary.68a2af131.0","@material/feature-targeting":"7.0.0-canary.68a2af131.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.68a2af131.0_1590520071021_0.6145199896740925","host":"s3://npm-registry-packages"}},"7.0.0-canary.01de07011.0":{"name":"@material/floating-label","version":"7.0.0-canary.01de07011.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.01de07011.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6472100f9117ef9227850f10299d317c33e6d69e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.01de07011.0.tgz","fileCount":34,"integrity":"sha512-jKeavypkcz3DX1BzbhGJT0ukBL6uAPxg58yxWovn4jU+xfzM08NxUjwO2MmxSgBMuTKTQVHFyLuiQRWCTROrDA==","signatures":[{"sig":"MEYCIQCHrzfmhS9btJkHjIBVNsNJ3Av+yn1JyVu658CZCxsVPwIhAJcjPtwkSg7WmDq6YqCpYALYDKmSVShWmlRMSdgB6SC9","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":206558,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJezXOUCRA9TVsSAnZWagAAGa0P/igBr82JXpGomDo6VakB\nM3ExaCzMGi9whewBPIeIMm4iozoqludqTiU/auhnNqF/eNRzckZhw6uQmCy5\nWd5BDrjkAXypWRkF5YdC163ytFmciffG1sSYlr+GUVKmAXJrGsTLnAL7dg+m\neWprnpytXiv7MuVF1TYD5kQW55OaLeLF6RP5R8YfxWBqnwzYYrlN/GctUw5W\nRcyb4yXKKo+hla0inLA9c8xSZmuE5yTF2Ky3RFtiFdR3Ml1IjRvKn86hZPT4\n4IqqbLsC7lkfpVDhlWxt+S3vWaEgaCg+VP28ldYozJU9aBOvPsXYh2fXoDwb\nBEV0LB/zNgtR1c/7y6hGJfL8gL+csc5YZ30Y1aBGohEXCeQQgR0F3m8KlxK8\nxtreX7i9uYVWUT3khm1RLI2g3ImEcRo/0sNO1ddGRj6Zc4TeKxniu9EM3L9q\nsl6rXR8pTPsgfgL+RoWvuM0eVLQl8ljTQv/DBIzP8G3FdIggGApnxYT33wun\nN3tpLTHWqqSaWDuFo1qd5sy9cIAXjtb5EkNPCal4Sq+kbliVgnC1NfQGxpU7\n5LmPcmzLR/6548JIgohir6uJHl9EbVv6Qq7ikCW67iVRaYV6xOsQiaM0BMlY\nu1kD2eBeOGR3QTxWkLEUu1Yk7JGIrhGcUQX+6gTEl1TZXkVNEMGJiDNDV03N\nNoZB\r\n=gHM3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"58ff4055affa7a1d66e79813fbb147990e5360e1","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.01de07011.0","@material/rtl":"7.0.0-canary.01de07011.0","@material/base":"7.0.0-canary.01de07011.0","@material/theme":"7.0.0-canary.01de07011.0","@material/animation":"7.0.0-canary.01de07011.0","@material/typography":"7.0.0-canary.01de07011.0","@material/feature-targeting":"7.0.0-canary.01de07011.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.01de07011.0_1590522771864_0.916571696560537","host":"s3://npm-registry-packages"}},"7.0.0-canary.51d4535fe.0":{"name":"@material/floating-label","version":"7.0.0-canary.51d4535fe.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.51d4535fe.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5e3d62d79c662e6ef7803a1da43c3501f86fbf6c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.51d4535fe.0.tgz","fileCount":34,"integrity":"sha512-apv5uii21odbHyTkDK+NV6a7oMdflQ9iNOp5RR708LlHv0kxliRfWvAL/tDBb3IuELNKLJ0SXEPA7Cg7BqernA==","signatures":[{"sig":"MEQCIF2jRegeBwdPOsDE+MwrN0thzdIcOrvWIIMyRhRTruv2AiBP3zD2JmU8iR3cps9sxpKmZ3N76W/cb8mAz+etAAjWag==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":206021,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJezYudCRA9TVsSAnZWagAAqzYP/jmB1a9haDfz3kBoHF1W\nio8Oh5EGtGrTGRGXl17sxVsGgaRLjJZCuKVkhLZHsbeSdXr579X6pxvrIOdy\nUnXHAPOx+Z/SMx76ZDLWPF/pCIDKFFi9RePIGRXPkOjdcQ+VwUCtVGp4+ZN3\ntK2peOk2uo+nC1v4UfmLaUIfwswDMhruJ37IjQLVoUSzfZ4fMcs8sslJWDyP\nZIUfDer1rT8Kc7noeHwZHoRm2CTnjMbsWqzQJjvyJU92v1mJldFqMFDCHiGm\nnVVqszJfSz6sCbTSZoDG9HPeHmaU3OaQDdnFqs02gr659L127nJXBSyZsKZ6\naKs4aikmxcH1bBdQKP9znF2cV3nMQvvdwQGkbIqGF60Lwf5WcACavcLbyOvy\nJQkmdObHBXawzPENfIdhZHBxhmjvEGLSye2svDvGGYW5artS4kWhc3j9NKZK\nRpfCG/FvKZCiytTaLWoeCJeBl7AZ8bpQzml3W3QQ2pe1M0ZuI32ZyMaxqYDg\niUiRNJM2w+4W/Bir4fApeC4TKGJHa8WJ+61Jd5alBgafqs+fo1j+GA9AXcZj\nnEm5j1FBNsWDlhQ6MIXg9vq7LWbJ4uAQqAYi99uKBcbyte93nsdry7SWxm4A\nGqfQwNvmCViBP4f8cvWbUhbsa5uuIao3yc9l/iZq/Iob5zvqFzCs/H2zPegF\nYmhS\r\n=Wtvc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2ea346ccbcf8fe2cc90f893a510a194ad4f67356","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.51d4535fe.0","@material/rtl":"7.0.0-canary.51d4535fe.0","@material/base":"7.0.0-canary.51d4535fe.0","@material/theme":"7.0.0-canary.51d4535fe.0","@material/animation":"7.0.0-canary.51d4535fe.0","@material/typography":"7.0.0-canary.51d4535fe.0","@material/feature-targeting":"7.0.0-canary.51d4535fe.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.51d4535fe.0_1590528924870_0.6161157305761764","host":"s3://npm-registry-packages"}},"7.0.0-canary.b86d826b7.0":{"name":"@material/floating-label","version":"7.0.0-canary.b86d826b7.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.b86d826b7.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5cf4f9629724b127062d92321da6ff0bdf157e44","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.b86d826b7.0.tgz","fileCount":34,"integrity":"sha512-Roj/rIl9EmbE6nXqpb8Lv9FWG8dtbGB0cZ0SwBkP6kfbq5sJJEk/wfd2pvSvSr5oMvkg5z2wjG0fy1Nm/cI/Yw==","signatures":[{"sig":"MEUCIERSxKsMlnVeSTUEkbp+tIuHEQIWqTVtJ1S3MvwshotmAiEAzJeRpXly2CI7ztVU/auD1r+rm4Bw5ylvpGFoiq0HWKU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":206021,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJezZSnCRA9TVsSAnZWagAAw/EP/2TMLSwjuiNORbsb8ACz\nFCM9LozczxrKIxmOkgM/zLJhqsFcbjXorIRF8wzJQkFG/ugu2k8JQSKC40MT\nDVXS7+7+Q7pYa/f1Us+ylveOO2zzggk291kAILcgATGCMmR04H4R+me1ODzO\nO5pRAH4ZGMaMWJ/AmD5EsbsmQpQPoCzecIMiSkRBGDyB9fxfeA4PGFqIEUb8\nJuyWEUgkwriPdJFdgo5Q5uJ8hr6ZUthxuRBtskPOf7CaP9SUFOsePm6SjbSo\n+NBNA7jykeUC0X9GL9++EoXwq3CE3mSobbTz1DSoHwABNu1VtGds5LTtFvg7\nkODtOAtcDn3dD/o/MUvEDU5XhYnJEHHtPedwvH2wyI2wonn0EQbFWjNmsh44\n46BxY/MQ8uGX1hoDkn1Fk4BL0dnoRV0KgX3b2KyTIzS6Gg+SkZPq5MBO1I6A\nEskOcjhmJI8lUFPlUpDeUD9I4TqprhDfPhzUhZ6agcqptxHoK7WvO31Mv+5o\nJNhxjOOkqD+KinmRUfeo4fSceiDlMWkuOQLum7Xe740hBd8mLcfps81PUMaa\nDL01KZawC3ioAB38qzM3q4jNnaFVzoVxn0S7gyGAkPMnrd62VkjwcTL6pwP0\nnRDP9UuEQuZxXGqZxA5HVonxjhRdbYUQme1KY+BFPYviy0dkdhgBKLgjN791\nasdr\r\n=UY86\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2b22865938bbce871e6d1ce8ce0129227142073c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.b86d826b7.0","@material/rtl":"7.0.0-canary.b86d826b7.0","@material/base":"7.0.0-canary.b86d826b7.0","@material/theme":"7.0.0-canary.b86d826b7.0","@material/animation":"7.0.0-canary.b86d826b7.0","@material/typography":"7.0.0-canary.b86d826b7.0","@material/feature-targeting":"7.0.0-canary.b86d826b7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.b86d826b7.0_1590531239470_0.25104514200945527","host":"s3://npm-registry-packages"}},"7.0.0-canary.d91794c7e.0":{"name":"@material/floating-label","version":"7.0.0-canary.d91794c7e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.d91794c7e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"aef88b029146d37945d5825894132beb4e4a80df","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.d91794c7e.0.tgz","fileCount":34,"integrity":"sha512-noqYemRZjjLClbe2hhPscaB+IQJUurcdui/zJ9ich2kVcQNA+ApURfJF4G8yyqBmZs33t3leo5P6neVfQ9HZEQ==","signatures":[{"sig":"MEQCIHe8+kSQRpyQqyXMHC5nBjVUtU7JVmqzra9cnyUednRHAiApOtY/yURunWmfeYBlDROtB0MVTKZ9EK2r/qJQ/ID3Yw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":206021,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJezaxfCRA9TVsSAnZWagAAruMQAJS35YWaV+2YNzeXoVCb\nKRTGS7x4q/0PwKDR8IZf744DBtmG3xo339a7lr5TDWY0gHFck1EOAhzQl7hZ\nRshBY4jmNhB1AfQ7OMD9WvtkC2t7EpQCo00qr+XBXNWJvBfp6AGzfUzxz3eY\ninhzS/PfNWlNxwfqg9Woxpck1FW7bkBEkAwPbSo3qva3/FqIkkDs9ElvFruT\nohCPW0dMOvBivubGOAcN5ltpZIN8rIjxgZh6iVghxxqNfkYlPCYJw5Qnh/P6\nd9XKTtTxiLYmdNnudweJOSPf83Rb2cVmD5F/y9h6ZbJ1BYDlQeNGwE9996uf\nGGwchLYX2Xlyj5QO6ceF6egXtp2M7zSjDSBROf1xpj9D1kGBBOMuyPpbpOUh\niLLCaJbkSDccn2sByxTGZQuNVZHlSkyV/GtKgkXYHT3KwhfokKKXihbuF4pp\nLnLtcUjg5tg8SeJzDEMKWzWUlGUlrrsCOw+P6/YBkVCByCT/f8hn0ss7XN1c\nVizZhoTKlwAZBMwSZWWJco2EoCvI1fN1zK6lpXYSHWSGuz5JPd6RkVUjZVMT\n2Ff0m1wvxHsoe2q5hPS1YfW9egcYTvyTwGBw8JxtUybVxWTB0463bu1q8lAF\nDkQwZEzOhRYL6tq/cnpbHQ6p98wTXRQ3CTlSXjFq7ZoTJGK0Dmx3++dFube3\n2ip9\r\n=6+1y\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f931cc9789364ca07cac4a17cef0a225bf43c168","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.d91794c7e.0","@material/rtl":"7.0.0-canary.d91794c7e.0","@material/base":"7.0.0-canary.d91794c7e.0","@material/theme":"7.0.0-canary.d91794c7e.0","@material/animation":"7.0.0-canary.d91794c7e.0","@material/typography":"7.0.0-canary.d91794c7e.0","@material/feature-targeting":"7.0.0-canary.d91794c7e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.d91794c7e.0_1590537311322_0.07995044339435298","host":"s3://npm-registry-packages"}},"7.0.0-canary.8c6d7e076.0":{"name":"@material/floating-label","version":"7.0.0-canary.8c6d7e076.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.8c6d7e076.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e974b3d4aba27ae61645dbc2392c8a564c23f0aa","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.8c6d7e076.0.tgz","fileCount":34,"integrity":"sha512-Vo74nriDBHfEq6VoS7iK4iB9kpVVivTWw3+v3414iUmtcN8UcuyQFSD2zX4UemrKbyYO9Km1d7eSJBRYfGF1Tg==","signatures":[{"sig":"MEUCIBnv4skZ9bUp9MTw4OgbC1yZAoQ/4MfJk3hPO1ukCF+dAiEAy/mYMAGjRhx+7kjyF7atQuVp7B7yMAYFCca5xsTKDyI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":205123,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJezriYCRA9TVsSAnZWagAANTEP/1QG/mtCseZz6LpXw4Z1\naM6utn32aYpFeGwKB3GZWRPlRiEqCrP6oGSVlsdtpXZvNBc1iE+GPgp9frPi\nPnuVKRJYbU8Q2o0Voo+kkRigDfNYUKkHgf+PL/kSp30CBUz4usnwFcdDMOKX\ngV+ymcZv4qxHDuL8cgeo5uwbUZzIIbbrvUnnoOkFqXaAaL+L48wZbWft0xUa\nmkP9kBTFqHo3dFTRQh2Z07WLhuwf91x80Do/fFxyQJD7V0g336/tlPlkuwAC\nGYgJ91oYgF2roBWbiJ/3b4K+g8dRPD47NviKdIgW3CCCRWfQZ4wLwoiC2IDY\nU/PZApkmR6+kqV4LxsInwnJngSOzvsnVrIYO6Y+BnRYh4ZE7A3Fef05SKVns\nS7AdUIFdp2gjoxFLDvP6IlU8qtVrndoOPuwWh1Uzuhr15EGLJEnQuWLYs0Ab\nWD108Lo+hQ5f1Cx6K22AkMMSlqxxIXzlxLSyJt78JTmvUVCJ/412pRQUv/qB\nZr7wr/2vFxFfZvIirQohP8UjR7zL4WovVu2W3azK4jf76qgtT2ssGugzY05A\nLMvbXMMdmjzqVf5Y1s4noUxWS+/M8Pg48SZtyuxsPB+mNBBedAynIoNXptrp\nrq5YJxhAOTfSK9EWbH1A8C6rnuLtYiyZXbuSpwy20wFNw4s7KrMqDdwp5Cpu\naOO2\r\n=61SB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ca2efa9bf20bd3fd24c7f6ff263721fea798614d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.8c6d7e076.0","@material/rtl":"7.0.0-canary.8c6d7e076.0","@material/base":"7.0.0-canary.8c6d7e076.0","@material/theme":"7.0.0-canary.8c6d7e076.0","@material/animation":"7.0.0-canary.8c6d7e076.0","@material/typography":"7.0.0-canary.8c6d7e076.0","@material/feature-targeting":"7.0.0-canary.8c6d7e076.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.8c6d7e076.0_1590605975576_0.08310214977404984","host":"s3://npm-registry-packages"}},"7.0.0-canary.5b5f62f93.0":{"name":"@material/floating-label","version":"7.0.0-canary.5b5f62f93.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.5b5f62f93.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e9809b68e5f4d914178dcfd33712b90771baf972","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.5b5f62f93.0.tgz","fileCount":34,"integrity":"sha512-GomIh/fSiBckhVGGzq5lyYDZcAoEvIdB2pzy6G+2hGrYcRBqkvTmoU6lUQU9uq5VampNCqnKMvvbl7rZh0aerg==","signatures":[{"sig":"MEQCICFfoIIqHyh/x0rxr5g3ankuREKGYYA7grgHv4GGMSKHAiArwTngruu2dx5i+Re0qQEb/EJRH8+noy3vl+GtjJrKRA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":204855,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJezryJCRA9TVsSAnZWagAAnuwP/A2Ttm83DIrzTaqP1z4v\nuWfomxHfzdV8RnFD4I/StRvvZ5Mmc7skt3Sn3hfIlkDPJgo+f9bWHCANgRnQ\nrRnXrtiGx1ylKDzgIVnKlNAtW2B6AzA2VY2LzvQHFmoGKNvgm6oxy9u1JyBe\n36YKnumfqcRQQMH3fXkfGf5xRMQ3l+CGwR++bBvGoZ0wNg8FyL2OYhJqwNlh\nPCFYyPxpXHVbmhCjPoNqwEEBQaV1ZoD8QJoH0vmcFPWo9HgkW2xxBZb57IQK\ncyLxvFiOaCabxC8zNAQwFpv6tnjnsRAG1goAdGNSgAnHRbnBeO+NG5wD39wC\noO5wY1gbZx1sW259rEW+hQ/l70WpwBfeKmj7We101IoUFRoomwkMymh6uvEF\nhmEUQVwhq1MGWBnOkKZ5zSogtUPCFtVxFAVOkOELlOwpWroAFthAR965qyWy\nyGcvF8M7aPtTnDRLF8DkPrLxuFh0jwWGerzh0Kt+22F96MY7Rhd07gTzcmdL\nuOfo03LeUUiXNWRTvUcethb5ZQMs52Vx2d+QMaZgyj8YRLbTpePHGxtQ8UXF\nPUjwKKC3aSSgz2dc1mTotcLwgXFabG6/xzv+1TpQ6WmFsDuEW0BDQuwPnbUg\n8z86AMNgK6UmG4+DWHq34rdng7/f8uBK8ybTlUTOdyYY6/kK9OMgmUdjTt0g\nwyAY\r\n=Q2Vq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"bdb576423b0f8020c453a5473bae420ee287c240","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.5b5f62f93.0","@material/rtl":"7.0.0-canary.5b5f62f93.0","@material/base":"7.0.0-canary.5b5f62f93.0","@material/theme":"7.0.0-canary.5b5f62f93.0","@material/animation":"7.0.0-canary.5b5f62f93.0","@material/typography":"7.0.0-canary.5b5f62f93.0","@material/feature-targeting":"7.0.0-canary.5b5f62f93.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.5b5f62f93.0_1590606984580_0.8902054999073661","host":"s3://npm-registry-packages"}},"7.0.0-canary.d9972abb1.0":{"name":"@material/floating-label","version":"7.0.0-canary.d9972abb1.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.d9972abb1.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3d484b28bca0c2892efe4ae2e10c1598967b2e6d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.d9972abb1.0.tgz","fileCount":34,"integrity":"sha512-3JdHJ0WeLeBeiQ3dBALUp8bjX4ZoQPFdDQrmJmXa8MPIarAQmmT3v20DCQEOa8f/E9UDFUOvFPAJSEKGUBMJKg==","signatures":[{"sig":"MEUCIGlxA4u5NschHBhhG03Ru9s2kaxxrUVMX2oCzGm+lmIjAiEAh+TykBRanOsv2BPKlV0qYUHFdmrUlrhwdwMnA8s5J54=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":204855,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJezsuyCRA9TVsSAnZWagAAHi8P/RlsCkj8bWSwt3v74fTD\njua1KKzbb2iE+C9SiwzQg+qtHQy5nQseXd6AM3Z5uPu2VbAZkIZVUHs0YXr4\nLa0p7aWznBs/bPJuxKDLMf+8cCtOm3PozsRxSPTuadKlb+kkYT91qOIjWZTi\nRz3RbVjS6vxqsHOTvS5Fj62mq+ADWn68x2IpWebA7n3XeXTjrFt/CPSVzgjp\nmyuHDzysfQs253m0A9FqTmkCSjS3ryfVA7Rct9xolPNida5xhePNQC9AGbKc\nPnnQjejNyrjClKZ4MZO/QDYA0367YR7OOhkkAIRgAOzXGiiEUUKZ+QXtzthS\nse9ncGbLDxE0xsgs0RdhsmADFHTmu2m3Mq+UdLPFnlZlR9PljS7NjrEBZMSU\nuGcEShvx5cVFqiOLqFpgQ2HDS7Xx4wp7SXp8PbjA31VINmxXxBQ/mnPO2jXY\npQX3QKDnhptW1fjoB+cOK7J880gJDtpEVf4OSvpAUpQsABbKu/ZEVDYrl+9E\nOC9qPQPucve+mHHxjKRuBo+N4ZPnd0CDEkYZuHorxa82w91ch/BbUE1nz23G\n8YnMderMeTXu4Ehh22w8ZMT+ZvEIxvrF/Ai2/JZfHVL8lTQLjidHJJkd8EY9\nxB5oGO08+RZse6rh9aSIFlbZkTQZJLkYRZrV3YWZXX64dVkZ0JdXtv75wzMq\nfyC2\r\n=cdc9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3db449915645c45b366327c8152342a34f1e10e2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.d9972abb1.0","@material/rtl":"7.0.0-canary.d9972abb1.0","@material/base":"7.0.0-canary.d9972abb1.0","@material/theme":"7.0.0-canary.d9972abb1.0","@material/animation":"7.0.0-canary.d9972abb1.0","@material/typography":"7.0.0-canary.d9972abb1.0","@material/feature-targeting":"7.0.0-canary.d9972abb1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.d9972abb1.0_1590610865925_0.037234213110205916","host":"s3://npm-registry-packages"}},"7.0.0-canary.6556eda2b.0":{"name":"@material/floating-label","version":"7.0.0-canary.6556eda2b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.6556eda2b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d5bd5338cdca3989da8321e03b0ae12d44c0e62a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.6556eda2b.0.tgz","fileCount":34,"integrity":"sha512-qGv0xrgU8CDAAxbk2InM2oC5xPdog7S+M1dUh6nQRYKTd27ltVWUum2PqSqVtHcdTHS683360/rMoxl49MEnuA==","signatures":[{"sig":"MEUCIG/f8tGifzJB1xZUU1LwnUXTV6GyjbnETyGcutiywwjWAiEAq+LhOXO5mVKgUqnv1X5DV/BhuvWwxCbUI2bsOyHbjpI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":204855,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJezs3YCRA9TVsSAnZWagAAYWEP/3koy14ur//vFcMN4VK9\nU/gBOOPfGZLmRpsyEyVHDPfoh8nO87vW+EBG3ZFTtptE3/NIPZnbKvR8NcGE\nEflZfzmE2dnUWGx5ogvtqHH169aMtN91/TMaEsd1BBww+L3OCSXXtwtt2fR9\nb0HWQwWeMNqGrD1cuUqs/rtcujrUxVRHnck9YrgBS/MaM1YhyXYZ2ShPc7yJ\na6b3GYw2mfoye7c0DZXEJ/FLF607vujnfB80fhRLnZ2txPO/LIb3No2LTinV\nibLffnruiucbXN/WdHEbjDrlKQdRZW1J0ZeqE4HunXwk0hWl3mO9YTahtULA\nSbrR1Lym0JYHUWOhC29f06PIa4hpext7OPD0hRMCZ1QKZvPgypZGGNYf5Jfj\n+qdyjwY8/z00F1MfTV4MmXnCYiP0pqV0Zc52eq5QZeYQFfLhi94tJKRPnkq+\nJxjruAjtc0zAjoEAjLC6byu4M07tKotZf+RgekAfnG93j/dcafwebL1JkWZg\nSyFH+/X44aoXvF9NzVzWT2FiC460Qv3Lg7ts+eelOQwhfjvhIpWaLLehWnCK\nz8xL16bDxXBfD1re5wwcsGYZqR3y1aA/fi49bJy3aZnzhrEnjFR3Bfqf5DHP\nFF8X0Nl91NaUizh7y7RyqETi9D4GZXaqpvnlI7Y10sbhNXNW5e7bsyNaaRbB\nMzEq\r\n=w7vj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"504ec59b4b401d057e70ba4bd1bbef2f87218204","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.6556eda2b.0","@material/rtl":"7.0.0-canary.6556eda2b.0","@material/base":"7.0.0-canary.6556eda2b.0","@material/theme":"7.0.0-canary.6556eda2b.0","@material/animation":"7.0.0-canary.6556eda2b.0","@material/typography":"7.0.0-canary.6556eda2b.0","@material/feature-targeting":"7.0.0-canary.6556eda2b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.6556eda2b.0_1590611416110_0.29767968768318087","host":"s3://npm-registry-packages"}},"7.0.0-canary.32aa23641.0":{"name":"@material/floating-label","version":"7.0.0-canary.32aa23641.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.32aa23641.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c9360c9eae2746c3b703253031e3a566d359df27","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.32aa23641.0.tgz","fileCount":34,"integrity":"sha512-QUBYJZLo0edaCzTxg3tL2Hfwfai5oqe9+M+99XmFXhumQnHiceZXFpbDbwwPyx+7L8UJnuPQl/s7YJ6CmX8fnw==","signatures":[{"sig":"MEUCIQDCK+BHIiDjYkP/W/5UblAoZB0nSNEMzAgKB9Y6MXxB+wIgd3AnJvp5kmWy2dN36nV6fVU/KiMyyYNh7A0uo6macT8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":204855,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJezt3YCRA9TVsSAnZWagAAjFYP+QEhQCG5cS0gnPwY2P9l\nDJSA5PWFk0mYrGtM8BVyEODS+lOjcwHZme+LR0nwyqI2KzqwoX7N/LUrR9B0\nTuo/Ba39VGreGKZqLzUOEvzEI0u8jwddtue4HW0oIYzP8lLFhKDzjFQOf35+\nOOn/0VSGeTUL8Np6kUL/ME9SozOuJ7trSqWSw6hQt4C3P8zEFcHEb50eiXMQ\nK0vXyJilOknVlL/uIZG034phq4RB3+Vpky0AHB+RmSW+d16wt+Smr3aJmhYE\nw4XBDWaRD91I4Dh+RYsL/c7FtjPPMGOkZCz0YYbqK3cq/N6OZeOagaeKBw3w\naOX8N8LFtQHq9VqfwoZN+LDBGmL2gs6eJfJmcA/wPbjquFX0aaDSYSm3pNCX\ny2MkoaTAD19iA9HCDnAoFRfIh3FBU/zvxx6jaI8zA68uQh85PJbj8HDYh79i\nJ8XmSeGy7r8TES9l/0ula3pJrr6pJeUlwQdVVIGxQNvHEzIByoFNVTOxx06N\nYkr7TQ1HmXvQcF/QY8swnpOE8ekclXPWMaYE4iNSUbCPsULIguP64d31E+YL\nGGhfYzmL+2YqZpJ6feQN6S/Zb8PenDBqkRhuezNu74OOWwZKvijbaf/3CTbU\nY1H5covCLGLfysD/0P9YonDQ5VQ+3nFrmvKw6I1VWtRiKh6cqzOFRzOwY3VB\nVIVZ\r\n=YDAB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"4cc39075dabda7fb76257a3403f0bde13084b87b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.32aa23641.0","@material/rtl":"7.0.0-canary.32aa23641.0","@material/base":"7.0.0-canary.32aa23641.0","@material/theme":"7.0.0-canary.32aa23641.0","@material/animation":"7.0.0-canary.32aa23641.0","@material/typography":"7.0.0-canary.32aa23641.0","@material/feature-targeting":"7.0.0-canary.32aa23641.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.32aa23641.0_1590615512324_0.6898907649581378","host":"s3://npm-registry-packages"}},"7.0.0-canary.654934dfa.0":{"name":"@material/floating-label","version":"7.0.0-canary.654934dfa.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.654934dfa.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f9b4c917b8d59a7bf04c84eff3cca6b065453471","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.654934dfa.0.tgz","fileCount":34,"integrity":"sha512-Rvc8HUY5oT9Lcb0cf1DYj7N+MI2vWm3EQnaes2FMitpo+bBeWzJxWlse8wfMsNZyDxYoFx3A8HZ3ojtJmr0YNQ==","signatures":[{"sig":"MEYCIQChWQoZCWNz9PZdC86invNQ4M33Ro5NJksT3O+bVykSwwIhAModafWtN4l88E+IwrfDf9tC9B+pNNQGfxakUCAyNDhJ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":204855,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJezwe4CRA9TVsSAnZWagAAW5oP/2PCfclKz7lVc/B6zDEl\n5mZA4aMzfs4RVokI2ii5IhoLO/gPyPhm5iqQFqaksJqSEQYGFtp3WYfYHTrY\nEXpfrRqr96p+lgO0yeFmvOiryezmlTIz+MSPXTlUUw6fyhI7NVPUsInCNFYh\nrH7P6IBgN5uDEKYTzyG2eY8kzXLzHxKigAO5ckYQhWPmhBkNFYoWXAiY3FXO\n6N4FjfVs5nsv6dsodlv4irMvWmMD+cqv+pVSjk9c85FRTnUd+31vAT4mj13O\n8njGTEYI8cEo2Uy7hycmv4OPNVuB9Ms9r1YpFRpXv9VpLB79BwCb0j4EIkwQ\nKmX8Zo8e6RpzoyNS6rBzE21otLcKqp2DAydcsdirugM/QPxifkb9k4pADt5B\nJ2K6BE5BOyelg6fgRM6Pip7U910LQofZc+12vWrOCMcP7LWMAuoTdRqUbIDi\nIv7rfO2srA0jLN34nxT4BgjVh+CTsj+GOiDHoEydgH18P0E1u/k0NWuob2oa\nFC/Kb7hpWLgYSFyVCPLuvZh6niYzV4Cq3RYiQMNhMNcrX8Na3Fl8TucDOhhB\nkICXjfriKBFoO2+WCPAxhYfLkYOx2bRcZlGYocrmZNoTPQb6Cd4Y6HnHsFSj\nRio9DPXLA5GKsKGNQV9xz2y0H91b7ERpl1vlG9D641DT0GbINXuy7uPeuqRC\nxfVY\r\n=eCk/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"99e56121d157a5a30949b826c0d521a365a1ae59","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.654934dfa.0","@material/rtl":"7.0.0-canary.654934dfa.0","@material/base":"7.0.0-canary.654934dfa.0","@material/theme":"7.0.0-canary.654934dfa.0","@material/animation":"7.0.0-canary.654934dfa.0","@material/typography":"7.0.0-canary.654934dfa.0","@material/feature-targeting":"7.0.0-canary.654934dfa.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.654934dfa.0_1590626231563_0.5887971023780243","host":"s3://npm-registry-packages"}},"7.0.0-canary.41910b8b8.0":{"name":"@material/floating-label","version":"7.0.0-canary.41910b8b8.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.41910b8b8.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2c43e9ee8f1204725508d7b4f8b5b051ed6ece0d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.41910b8b8.0.tgz","fileCount":34,"integrity":"sha512-Xrp6Ll7fyLoUp+odbKbAAk7zFpU3FkZAFfEIM4yyW2BGytSnJLEcOTmZUhVgsYBrd9qhRx88rpYOElg+Mz570Q==","signatures":[{"sig":"MEUCIQDqqT2rvWmjDpBqgWYPq1CnZmdoJZ4HCMWipSh1A2k8SQIgdSWKs0+CJzlCw03OUjxt8fwoUfCwxIIj5bD4WXK4jzY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":204855,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJezwsXCRA9TVsSAnZWagAAFq8P/j6zAPq83fiALtfj/3TL\nvPvojw+mtEyuV9kYsf4n6NBGQrED3TwOEWF1aktxr3R5vxlE6Ujk3C7wGiCW\n5cVSWaFYlR5rNSiOtfzpdrCIq3Ype7pnd97eCIhcYEUFlHc9nJUqTrfIlBQQ\nO1qjq74jvGusI3zrJ2Pei8xFEXrgcaW6f77Ptu+UGEgrtVz35yhwscfXFBIn\nix1q+JUqGcclbqxTcOA9fdZoLKMd1iMz9P3YOy8duqpjpF/nAYNcOgpoZlhi\nh+DOBsKO+dJU3drw/bbCSCNG4fbTWZDcescNSM5brh/02hzrWMOmepkzdivi\ns0c6Wanz0hTTOgrsvLirF37YOeN8DwV33PTVk4ZsMgwsLxJSFFW1GXySpIj1\ngEYpLbfuOz3cQMY2xi/IJ0u9FlQ9POrV6jMLTzsjlJV/FcOFekA4/RtrmyU+\nn+5e8jQE7U90Wn8BMUB8nGwBiLYrfq78JTRhg+IGTot8Uskm+SOO9leban+4\nvlvFgDRlKeaCWn1DogWnnZhjexFPuaDy3MozVLAq2mR2edXGB1Wn5X4LKnb+\nkOqpcCO5/cgwdzmruSQaSqLri2ax5hpRgz4HF+gFZHlL0nH8PsWJ3thXlQGo\n/7FBQwzWqSdZhD84u7Da5q8lS7m9oe31TA/oHLmSRhbPz1UF5HopkgZlAiMW\nJuSA\r\n=ngU0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"14656d5f31e9a410c15eaf9b47530d57a5901add","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.41910b8b8.0","@material/rtl":"7.0.0-canary.41910b8b8.0","@material/base":"7.0.0-canary.41910b8b8.0","@material/theme":"7.0.0-canary.41910b8b8.0","@material/animation":"7.0.0-canary.41910b8b8.0","@material/typography":"7.0.0-canary.41910b8b8.0","@material/feature-targeting":"7.0.0-canary.41910b8b8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.41910b8b8.0_1590627095248_0.3824021805284379","host":"s3://npm-registry-packages"}},"7.0.0-canary.d66d22bf9.0":{"name":"@material/floating-label","version":"7.0.0-canary.d66d22bf9.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.d66d22bf9.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a17d83b61e4bc1088646b5eb22870d7a8e1b1423","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.d66d22bf9.0.tgz","fileCount":34,"integrity":"sha512-0mAwsQq/VZZ02C9Sgwe6MVn0tYqYtl+gP3dlWOkZrzNETfN7YSgOmY+gdE1dxbZMr6kJst77hPBU6DPKnGyWAw==","signatures":[{"sig":"MEQCIHRkjUZLyX4LyQec/oWBXi4Bo8CYdLZ2uIxXqqDJzpl4AiB820JkOtM4u92iiDTzdIGivsl5VxEQRLeWkOYWLn1XKw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":204855,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe0Bc7CRA9TVsSAnZWagAAVpsQAIuN5qDl97kBeF0HCAse\nQCDdzFCov8OF9Xe5kgVAgeyDTAOzyV4t5cf9gsIczng1hpnrJsFllusL2sZ8\n9HiOMDAEsvNFSxgVOknJ3b5B1YixblwmiOk8luEyIgHfA/UeO4sRymXXovpy\njUqZdTO6V8A/tHIWs2PmT0gofWyzlibC11Z9JdokAsvbd7fw6L0X3MRdWPVU\ncn757drT0hZcTsYozb9IemXSVLKgYf+6Rji782kV24UhXCRC+6Fa/0ZJAh9K\nM8Y/f3qR4EJ1JYXCcUtDJxGD1kPEv2ycnm3IJHGRP27lP9D8dX9lX3YGNWlK\nOaD9vXpwX3kWsLtRk/92IBb6T3rhBevGMrMG8I2QX/ghaqRxW2750WBDHoui\nO9Hnxm4sAGawnT5QYcgT83rpSHw9mgjNU5c5fSckiKVdRtCgrNX/hk4fSTTz\nsHev2eVz3uxQXPKuNOviG/RcQ3tnQARC881grLAOEioWGQhZITiioc9Sq5ZY\n1mzvObdo+OMHxlhzPB1js3auvdKhky7v5nzxwjTf0EUd9cowwvEoFbfZpV6l\nJAXEoOG2hBwcC0v8QNNjlH8ynBDn5qmDERyfq/JNnW2iFRbFF4KAuQEhCUym\nejxULpoDq461Iw2N3+R9WHeP9nHlqoFr7jP6bYPCpaajO59rIyHkCrQRxlJ8\nFwB2\r\n=tVhZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"cc182def4daea4d871df41985e6d893429174b3f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.d66d22bf9.0","@material/rtl":"7.0.0-canary.d66d22bf9.0","@material/base":"7.0.0-canary.d66d22bf9.0","@material/theme":"7.0.0-canary.d66d22bf9.0","@material/animation":"7.0.0-canary.d66d22bf9.0","@material/typography":"7.0.0-canary.d66d22bf9.0","@material/feature-targeting":"7.0.0-canary.d66d22bf9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.d66d22bf9.0_1590695739353_0.690135851638104","host":"s3://npm-registry-packages"}},"7.0.0-canary.8904f3cbe.0":{"name":"@material/floating-label","version":"7.0.0-canary.8904f3cbe.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.8904f3cbe.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3b4eb8927ce0ea12de73c4eb89b6d6f85ed6fb22","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.8904f3cbe.0.tgz","fileCount":34,"integrity":"sha512-o6gfxI+UssNHIFoOPcS6kRMKxzl5xlrQM1fTZkTd6Yr/qN0fxXbTnLUQQefOiaOm1c9NGVCt6thFu0H2sySXVA==","signatures":[{"sig":"MEYCIQDUOAeSyZQh3+Li4TlBimNcWkwmdbf/7QpNHEzNsfZWlgIhAKdpkmq/i8N2Yo59AAhG2B/98Eu9Pp7BytPK/yxPQk5X","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":204855,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe0T1eCRA9TVsSAnZWagAAZ7IP+wXTfRhuDUxJTRp6aFAC\nFga3veoJzp1NU/74ogUrA4FDuhmPDZEMG0N6cH+Ai4Uqd9IwEUCyqtbDpJ0+\nrVg7dhj0deNy8OprrGS4bHQfUqI7d140yB8BAjALZpLqch+3Qo5avZtKpb6J\n7L0Vc5NWhwWFUiHgoohZLHkY3SVTulAlDBgn6SZRANzM/p14RbDgfxPlTC+T\naeGPlr796lzBkCCfpO4SawHT6rukTLXMqEgUXtLxC1sdqe3AtLv9qmNskVQv\ndBgHEpuS/0Q7kS8pwfa1JKkpmv/c3m+2Oj5HtZne5U7H1J/mCNIHygZgQ9Ac\nw85j5S6hdaZ9tuYjfhA51upFn5rPkdB7vT+ZATyCcZOB0d2MhWU5v40581/J\nl4PyQY2UndFFi9aDcdNGYoxf05XjPtixdjfEzAeH0vQWNaIiGxBfZyHswMty\n8IkqpjJO0G7CN2jtYFBProQJhYHWI93dvX2P5rTxO2DjtwSZDhqpi7zsILOK\nnxjEeo5CYP0r7W4jG0Qe03eXuA74Gxq8RyUQRFXANxT6ppni2nQwRDvaM3Fc\nH+N9tAIOEDHCpuwbh6jh8Q5p3uKLmN6iuLjqd9rfF7oyKgJH0Lb103p6Ov0n\n/KKHEZNi7fQwMRN3KYygueceqgyqvLi87uzLyM+fA3W74kPDeJ0T1Dmt1kgt\npSEV\r\n=Rcq7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f78dc612af1ed0ba397842886fe5bc41e32f181e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.8904f3cbe.0","@material/rtl":"7.0.0-canary.8904f3cbe.0","@material/base":"7.0.0-canary.8904f3cbe.0","@material/theme":"7.0.0-canary.8904f3cbe.0","@material/animation":"7.0.0-canary.8904f3cbe.0","@material/typography":"7.0.0-canary.8904f3cbe.0","@material/feature-targeting":"7.0.0-canary.8904f3cbe.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.8904f3cbe.0_1590771038340_0.7807354779645148","host":"s3://npm-registry-packages"}},"7.0.0-canary.51512a4ac.0":{"name":"@material/floating-label","version":"7.0.0-canary.51512a4ac.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.51512a4ac.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"271d039cf4b0f70031ee9417c250a4beb3751c3c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.51512a4ac.0.tgz","fileCount":34,"integrity":"sha512-LKLcQgYZ/owpmSeqD4lj8dJPCxLB04Qh0sYvs1Nl9J4lKYTfWchBQ0DOy+fkEoNqDi7OwSSx0hDhk/jaE6YojA==","signatures":[{"sig":"MEYCIQDU0yIywbWv59hXggP+xfBQfKLkCHiwqq6Scc6P4ddpOQIhAIV7eqRKjHHRs2j+nvYd1Kqa5P/uM8oOAiqz4Y2UAoJL","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212027,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe0V9PCRA9TVsSAnZWagAAKP4P/1ZGlKn31BDfsuyNYJl1\nEDCGKy6UJUVLdje8/bobWGx74/DFjUC6Ly1ufyIfz6ajnBgeG1ZsSeM7uQjQ\nHmJWRekLhUnu1oIww43WZ8skd1GOei2hcBpipBgnYbUDbl9KaQ1I99yZaPec\nxWc5vgfI13v5q1oLxdew0PB+00MJzhigSYDoTjkUTosum9SrYYAEudOgR1xw\nhvHaeoE51/1lQQNqTbQHK51WXP1XmQPS2lrl0+DtsarNkRJsxGCtl1DiIiqm\ntPjcUdlD+wOfcSTfrCcsSwn6T4k9we4nfK5YMln2nKeDmefn/gswJViZeIW+\nBV/dU6K2BbdJoaXpHj1TOumkSpZBOngd6sSKMGGGWlauODI4zR0Hff4PPSaS\n3r2mln1b2lVbPdH5WC+kRBalDtFxGOgI9tZ0livQsAUhEa5hreWy+qE6Bp+B\nK2YXMQmG7ZxOr6/oOMcN0Dfcl4HDFC0paPZvSJRSXbGkLwu64ME7fk4Fdtrz\nJt03lO3U+bLspoDUVeqsCP+RTrkpaSqMOiT2lQtSvab0h9Rpj2+gdHEYbJBM\nVgFfwQnc/xcYsnvHBQv3T5902yqs2ddPQT/+3ecI6DhbyES0EJbE2czMEifx\nKCHKQHFf8PKR9wnJG+S6QI0ePwX/FH3AOdUlSwriwmU2bqtp6s3tNXGFqYLp\nAsLL\r\n=KvNr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d5115fe8118e1e2bc71fc7a491f672b079f281ab","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.51512a4ac.0","@material/rtl":"7.0.0-canary.51512a4ac.0","@material/base":"7.0.0-canary.51512a4ac.0","@material/theme":"7.0.0-canary.51512a4ac.0","@material/animation":"7.0.0-canary.51512a4ac.0","@material/typography":"7.0.0-canary.51512a4ac.0","@material/feature-targeting":"7.0.0-canary.51512a4ac.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.51512a4ac.0_1590779727273_0.9119333984224369","host":"s3://npm-registry-packages"}},"7.0.0-canary.0743288fb.0":{"name":"@material/floating-label","version":"7.0.0-canary.0743288fb.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.0743288fb.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"03a635faee82d4050b11b046c80038dd393e1c7f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.0743288fb.0.tgz","fileCount":34,"integrity":"sha512-kyZpSAIfUL24+KXltOw661Q+Cn0TSrZFllKaUIxEG61Xkdyzowy5gJD0Wallwf4cMnXKtvfEbvSpmmD/me6cdQ==","signatures":[{"sig":"MEYCIQC08TnBQyhRkzhYXI60tVMfHew+kTZ6o/0fEyDqiBYS8wIhAM+gV3L5uGScoukzeP4aJoy66COL5rE0lUAjkKh7oZxg","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212027,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe0WsACRA9TVsSAnZWagAAx98P/3zKyqT6xEvTWpd3z5nw\nuoKJ8mZIKvcl+pTiqVgxDkSJl7vDpqG5hrPRFa9Yf++5TerrwAcQqgv086W7\nZqoewgVyWSY60mvbL5HNGlF0Pk8uB2bXVUNo5G227KKE+vqlD4exrl8rZWi0\ngHud1zfHh16wSRyEis4sSSkkon1Rz1DYLL8ND8YChdhlU3gUqMirwwOj+HSi\nDfpmGSukqxnR3MH2iy6MjXKNJyu7LNg3NbLD1R3kfaSPCsG7Q+BklURuvgnV\nCG2FDOTK0HSBwrXnI/VsgJ3nNm5mAVmsQZjSDoaEQyJJFHBF/duU8e5SGW1e\nEHs6anRGWsowPNbcQyajDKv3b5+ZnsXX7rIlIYPuKWPTs+4BRE0nan028+Z3\n6x92cinLdpP2c/qf0etfmjSJFIV1otwsr2PiGUK5S4UwstWd9y4s6jRSzrQy\nsZ/FI3CA2FgAE1mchblOWhEHcpLSlvn723LSUoDOlj7THGrdM7cNUeVuiBwk\ns9D/JcctSOPpWhsHfBCcl1XRjAi/sm2KWf9PiWpIWGv83REBeuzqE9k7KnxD\nwSuEp8+tYsA/ZMO97I6osh4ZTcd5/0zkksmp6w0bN62dXf0S+ibxbxG08lLF\novrrY0YC5RHvn1J91FL6ZoLQL9Os5bI2K0m52cGB6r+7h44YLmylW2izkxiC\nfOwS\r\n=R13z\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e0c92eea0cf28bf0f2367fb0666eb8592ef2f8c8","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.0743288fb.0","@material/rtl":"7.0.0-canary.0743288fb.0","@material/base":"7.0.0-canary.0743288fb.0","@material/theme":"7.0.0-canary.0743288fb.0","@material/animation":"7.0.0-canary.0743288fb.0","@material/typography":"7.0.0-canary.0743288fb.0","@material/feature-targeting":"7.0.0-canary.0743288fb.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.0743288fb.0_1590782719804_0.4527859976061517","host":"s3://npm-registry-packages"}},"7.0.0-canary.06ef147b5.0":{"name":"@material/floating-label","version":"7.0.0-canary.06ef147b5.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.06ef147b5.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"defe1769739ad96e92ed70a278635319f9af19ef","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.06ef147b5.0.tgz","fileCount":34,"integrity":"sha512-p4I35jtuYVpxubHQyL/wNffVaWEcWSHd4SkenUbJpjCWImU4OyWdNk7HlShM1jLXLj72x5SmqKXtVVSNzvspgw==","signatures":[{"sig":"MEUCIQCf1TYcXHjHdUISFj/lTwWfFEMS1BnWLNXbByJ28PfQ+gIgQgeqqt71uQS2C7+Z8cI8Vo217PRq7SIdGXBLjpbvWro=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212027,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe0XNbCRA9TVsSAnZWagAAJLkQAIW3FffM2HzdAZ9RshOj\nLWya39MgcgezbFtJcLZAwEF10mrfiKnwklz2gukXI3RhwBRXbEJ1tOcvWSo/\nJYwR8OyLGvehM11VMPfuK3A+/EYJOdjm7DCzTYJsXBkkXp7+FG+cS/ZFHkbh\nC8TmDR/pQJ8aqJUk0mSUnv+G8plw9FdPRwQZem4feNcoxAYvEk8L0EMPg/Rq\nj7vzQC3m9Eky7IlIJZekadKs+5dWJUYKa7x2pEu6UrvK3NPvzxO8/iSVXHxB\npja27p9d20iSOmWRTpUzBVg9Hg9BVA+Bo+IA4/0x7dllFWiTUVXV2L2pIQxA\nFiz5bX6G2QazskPThlxjkklc/s2+HZZmCSW9AI5B4BVU/ayn+hcKLALJPfWD\njb4eADhpZexPOQVgUshEJO8jJgitcveJZbFC8OLJem9ytG603iWLKkd2mbcv\n0kfhwPkVeAcCorKl9l8q7TId82zHoyllA0IzTWsaU8vIG704kUrPqOVf6Ire\nffER9SqqGU3nq/dF10NoN3yab7zojJR6ZRTeC2zSxD22D37tHS9O1ftdrD3p\nYTKwkIy9NlmZnjTPjJZ5Id1S8S9YlCvzn2rfxdbjoyVsR2w0dwuZsLoI+YrM\ndc/rs73j0XVY9wJz7iqsfMdlM6Hd7cZp2Aq0Sehy+V9C6c+RkAxJn0e6IFz5\nOORx\r\n=gXdK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"43f043010a4682138cfe1d453ea0460f912fc2ea","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.06ef147b5.0","@material/rtl":"7.0.0-canary.06ef147b5.0","@material/base":"7.0.0-canary.06ef147b5.0","@material/theme":"7.0.0-canary.06ef147b5.0","@material/animation":"7.0.0-canary.06ef147b5.0","@material/typography":"7.0.0-canary.06ef147b5.0","@material/feature-targeting":"7.0.0-canary.06ef147b5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.06ef147b5.0_1590784859099_0.8738219241640792","host":"s3://npm-registry-packages"}},"7.0.0-canary.8073a20a9.0":{"name":"@material/floating-label","version":"7.0.0-canary.8073a20a9.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.8073a20a9.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d586acf1e38fe7316d0e546759a154830c26fa90","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.8073a20a9.0.tgz","fileCount":34,"integrity":"sha512-sFEPthYIHyckHH92Z8cZD6zrvXoesBl+ONn0nbqngmIoN1UmlJE0aZzB8icOl3+wq7ky8W82iN85bgiH18c2cQ==","signatures":[{"sig":"MEYCIQCmp6xr0hYtdUllPI0JlED9aJaFdhZyl1wt4k/+r247DQIhAI+5yCAupGKIw96kr+Ah7eqpeQfYzEUQYshZqOqiT0bp","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212027,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe0Zn/CRA9TVsSAnZWagAACMIP/jwh4MQcQNPj3rXRJq0w\nbNU9rxXXj0iTmpR1qOulZkBdStQn/fdxsJA6goBIFIBcrf3LLPHE1x7rDeec\n0FEc8F2awfh4lIAzIkn/xd9nz/IxMsIrcJ3dzHAqi9giBm2XUS8bN0yGB0mT\nwnOIFiPfVY0BiD/Mcbp718RAqeI6+SBG8rhsB8qmOXK2Pr20uz3HZdNzIvud\noz6Q4O+QepnqPl0RD79G5XvleZrzkVy8rWmnfSY1jpDNPaYDYFDD00v5HKgm\nRlbHU0pwn5TMJ/mBsEgsOZg4XovP5PQvx4tlIJXyPv4WrHfwZOfX6BzinG1L\nNTDFTsIyZM0hzjEq5E1Tu7YDQ6fffHokgsyZ9W9s6H9s2VUUg6l3O1mHNOrf\nDqaN4txjijCqR5iuT/x9lZ5kOTWPY+pRI2Sb7mg3q4GFgAV7hpTMv9LJ+KC3\nO87oy85rqGxYK2nA1Hp2RB+L65vbFDOeoRuxMNIESyId7lEEjNQRoEqc0AEo\nOKWS/3OgNYLqqcV2P4V7xkrtuGIfIxW0c/nZAuBorAkQGm4QfgLfgGdAturJ\n/vyMM3GKcrRIm9ApO2/7fy1ACoKiKZzzLXbk+m4Vm8yCqE34ouTs1Rz0pE4F\nDteWkUZHZ3N8y9EFl2hGWZVXE4u15lYFjZz/83kwLMBOPCLlF5kWYfGTP2nb\n8eZ3\r\n=Lak3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"576fa22ec00234b59b1dc4215b8dd1ae982c7c8b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.8073a20a9.0","@material/rtl":"7.0.0-canary.8073a20a9.0","@material/base":"7.0.0-canary.8073a20a9.0","@material/theme":"7.0.0-canary.8073a20a9.0","@material/animation":"7.0.0-canary.8073a20a9.0","@material/typography":"7.0.0-canary.8073a20a9.0","@material/feature-targeting":"7.0.0-canary.8073a20a9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.8073a20a9.0_1590794750613_0.5530222122706516","host":"s3://npm-registry-packages"}},"7.0.0-canary.72ff42330.0":{"name":"@material/floating-label","version":"7.0.0-canary.72ff42330.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.72ff42330.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"383242e67e1a72308a52c0dca751b1dc21f4be58","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.72ff42330.0.tgz","fileCount":34,"integrity":"sha512-8FgbfWNm47hely6E55AF/l+83vb/Zt0/A4Qhkq553KRqddcPtJ55wR7F/Y1WcSN546m1zmYNOLDUa7NOFSSbzQ==","signatures":[{"sig":"MEQCIGcRkJG7SdTdj7h5Q9FE0FdnoaRJ54nzLRSBvcNCEyp2AiBBzEu5gYfoBblJHp/zhDihi+Col+nOvR+gE11RKkRPqQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212027,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe1TB1CRA9TVsSAnZWagAA5ooP/1tK20tkMCuv6FuQqg8a\nHtKg05fm53HtCl/fznb8IHylJbOOYhfzAyuLXX4uAR/2QKOjb0cKccplgzhu\npg+o8AhxCUZc9DGSBhcyIjsAvga2xfbmJh878CWbdN1PlRdHX1MlxpWVjHJw\nPR7hlYukjvjaGJJeOQ0gpTwmJfzgYVeT/6/5x8ibwgC2Nd3TiDUsX+T9MFUU\ndMTddThT5mFxooT04hj/mXYV4OwQ0YENEcrNBU6LWyjA0+GW1Zuk7luW7ME6\nyHO+96+/Xw+LtW8lZR7TjkN4jNaNhrJBJzBge3yJSn+v/5misgOwmufk8WnI\nkEjVBfkPmlutNY4FqNUASKJrUAbyliQex0wnVAiPd34qgut2r9ADBNbvOgYD\nqbtjAoWykwGioqUgNjNZyF+QJUqVRnH5zyx5kUoUiiX8ZKSv84nxauaHpofx\n+zhBT3KZzM25S/gZA3sJctDTiEPzYTgKUeYm+Po3eavWD4BIbHTCRcwkMY4e\nevmohyu369KrQ0y1g92emnEXNDUyLt8oMw0N/s1MJXqgm5qz726ZKrtEPGD7\nYQUxXUqvo+Zw2vkd+pfZ1BX86/0qp21vBGLR9hb+Ze8juizpZ9D2jra9E1DD\nLIkkg29tplLHy3mUc4eTpnzdD1TE2dPndxDLUvVO7cJrtB6Knk0gktJZuFTt\nYjDO\r\n=FUTu\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"4c820e9d38fc1bae9a502ae78e336f0e8381f432","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.72ff42330.0","@material/rtl":"7.0.0-canary.72ff42330.0","@material/base":"7.0.0-canary.72ff42330.0","@material/theme":"7.0.0-canary.72ff42330.0","@material/animation":"7.0.0-canary.72ff42330.0","@material/typography":"7.0.0-canary.72ff42330.0","@material/feature-targeting":"7.0.0-canary.72ff42330.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.72ff42330.0_1591029876913_0.28595440446183584","host":"s3://npm-registry-packages"}},"7.0.0-canary.9ea52070f.0":{"name":"@material/floating-label","version":"7.0.0-canary.9ea52070f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.9ea52070f.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e5ed1ce778064df2e31acea7d450f2ca798514ca","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.9ea52070f.0.tgz","fileCount":34,"integrity":"sha512-6FycanQn5MiKulGHa+yOH/z7lm4KACDfhFj+n5pOZayNEuQfOsZcrLS+YbZ2MC57WTL5YZQ+hGIXMWCnZGtYpw==","signatures":[{"sig":"MEQCIB9Ks4dUyThE+8zEgShq4sCFModl0iSl9OV3UtE6qx3AAiANuPfmbZLBA+JER9VRsD+4QKqp0NGS/ezE3Z14+LH2ZQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212027,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe1TGQCRA9TVsSAnZWagAAt4IP/iD1vBCV9MRpS5yRYV+K\n9sQ2TUDUVkZjA3Djlf2pz1zddB4vO/RiL9Pzxn+EQA5RM58qZHPvLpUe728o\nTWbH9+sYv/x+qCPUEq0q/gW/OCIejjLfxYo9K0SHOhmpIXE6TZViuYlcBz7A\nZwRjSAf3ENy4VEBoMC6/Ma/2HpK9IeZ66EYbRDsvrTmQ5lEYK65s6sCByIEr\njrc2moY72o2C0wPl34C/LDkFnn1yz3LAbWrDmDy00fGG1t6/wh5YEEtbZsnX\nqswr/xJZs/19WKPPfDaf9GG0b8yhGFltxCvOlBToW1OV9yhJpe4Xi3LsDy/4\nAktrHmr0KMl5tcXzQZkac7M1sJu48QRJZzNfQmy7S6M+5uLWz/ATdwvuAInf\nA4YrMxIEFYSpIdySdhQ694roivsExFmfnQakJpPzjv1s/mh8f3EYXQILgIxz\nbikxAKTw7VFJswE0mBX7NovQ8yUJ3AWzAG7WjLV5sMAM3OB9TezZgDNAYXwo\nNyRiKX9Hsk5kENqhj3kufzPszMEoKgTYHy0chJmHD4hHicis4eS+wXQXuCiN\nH4/OddcxFra4tvYd1mwPF1anGXuCPId7k6V354b+thrvx+0bbRyWspAwBeSg\nIom02ofJHrSNwB+ajUkCpXMycYE1h1MTbHkLPHK3h0cX/ONfsqUh1aR8LQg5\nhZSw\r\n=01ak\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1c7aa3231ba2d87e7abffc33fbc156ee0889131a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.9ea52070f.0","@material/rtl":"7.0.0-canary.9ea52070f.0","@material/base":"7.0.0-canary.9ea52070f.0","@material/theme":"7.0.0-canary.9ea52070f.0","@material/animation":"7.0.0-canary.9ea52070f.0","@material/typography":"7.0.0-canary.9ea52070f.0","@material/feature-targeting":"7.0.0-canary.9ea52070f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.9ea52070f.0_1591030160179_0.14171140553456962","host":"s3://npm-registry-packages"}},"7.0.0-canary.d86ad3b60.0":{"name":"@material/floating-label","version":"7.0.0-canary.d86ad3b60.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.d86ad3b60.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3b7bc7a7a7c507384c61db1367ef86ea2c33ad75","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.d86ad3b60.0.tgz","fileCount":34,"integrity":"sha512-+dmHEC4Vopw16GHrEarcGQI4PXQ7JPlm5mvFWRIu71QFAkOYRCFNL11ZgfmNKxATMTfHSj3coSq2a15RYCfp9A==","signatures":[{"sig":"MEQCICuojnhvATInOQ2Do1toDSr7iEGsrn41/MYLev1Hs523AiA04KQlVRmewdik5/Y5X0z/19aKEBCGADThcKh7f/YCqg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212027,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe1T+UCRA9TVsSAnZWagAA33sP+wcy+N9TgEgoNrycaFwX\ntaPF3GveNI5NFCmyNVspB5qd2wGGs4iEnMGN6+FFh5u5UT+//9kp1KRNQXWS\nL/xyGEtHAgb585+adBYr2n8rSTD2uQ0wX+ZyCagCMuYfNARE3uvB0N3pJvN2\ninNRpI3b7jVvjdjHPe/TS1PoCEIHnOUhOgwTCOJzxoeajg+QUkGSLVSgIFAR\nubkwKOdYvx/FQKsTzYGZ8y63EIFF+aIWlqn16qL62VjAOdVbUmspvYrhnZXK\ntjAllido4v+yyGFdBLVYhnwN7MWEcMGqXBqo0HNDeRVnILgDAObuCLCKgzwl\nYZSwM47S0oVBZXaRZpB4ZAxN9KdmQjkYyMgeHnHPaSlnWhXGE9W6d/sG7bbi\nAuO5RALth0PFvcRZQniDc5/O/685/qWEqdfVKSiTuusEpo2aGD2de9fxVb1v\nYjkF80uyM7biEnJucxWlZquynhRyKkb+egoZ2a61coYdpo0GRvVIxJgPqZ2z\nYqnURvCHyw6gsjQMmjBqliuAOrbqMFj2cZx7AUrSSJ2plKLprOxRJPKROP2p\nrsbgFAf91XDUDA5SFn+nQ7m6expMbRspce62CjEEg0eIRLsMzTHU6K0yhETg\nn/dr+WM09J1TLnmfUDSr04yDGmSjEJsAEQ0bHZvhhK0nKwqokwpsQgiV7VtX\nYPjG\r\n=hDfP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ff64ee77c98ab8a932f9397689714c078eb9fd02","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.d86ad3b60.0","@material/rtl":"7.0.0-canary.d86ad3b60.0","@material/base":"7.0.0-canary.d86ad3b60.0","@material/theme":"7.0.0-canary.d86ad3b60.0","@material/animation":"7.0.0-canary.d86ad3b60.0","@material/typography":"7.0.0-canary.d86ad3b60.0","@material/feature-targeting":"7.0.0-canary.d86ad3b60.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.d86ad3b60.0_1591033748117_0.14913390926259273","host":"s3://npm-registry-packages"}},"7.0.0-canary.b9776b1d0.0":{"name":"@material/floating-label","version":"7.0.0-canary.b9776b1d0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.b9776b1d0.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b22e1e2a26e814c0b5ec9482a2f657f5ec14881a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.b9776b1d0.0.tgz","fileCount":34,"integrity":"sha512-Mmv6bvnj1LiF9l2Thr26yJ+kQr0qGtony94+Y5XxNj3iDjoEkXucpnanlFV6eGX4f1g3bZZQmsbPl9dqfWDN1A==","signatures":[{"sig":"MEUCIQDdrq5cw8r5sDrTe21LFeUBQ+4rj1nbA8/oxfm1JqEBpQIgb3ea5dHvC5JllzlYQBvjS6ovEhvq71ogwkk9oLmuOKA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212027,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe1UhPCRA9TVsSAnZWagAAqL4P/3y+gBIiBlNSdQ/8YRoe\nJVqMqhP1yryGpNFFSfXKrl+BEa/6otifwJ21bQ3rECJFKGfY273GGZjRp7mt\nxz+/IO46vinKWooiwrTXF9BN+HarYwFx5ykNK3KjSAAbfMRWRpQFysXddsaK\nwV40CHYxgrYBDPLh8XgIJQ7ffitqMUkV0wecTcN+vgH5bhnzj27BTVW8QbBN\n/l0yIH9mgjbfgJdTh72WWgHHAhqPXM5y9rPvf13lDki6Voem5MGjHMBhhZHH\nNpJd6hGAAAdgciQo4zuTz71dBaUz9ITpDg3U66+dE//6faPjRDeYGnJA8aSo\nPVYn/F7vf0Mf/26qzwhnc6yjVrZ3c2D6nCm0HXH/wrQCJpKr2mngMEUNEn8x\nnNGcO54umFLW/FHgXXK5m1UpiZcRjZerXIaPRh8XfgW6TpUyFP0gsj26kn5Q\n+LoWT9jzGSAhDI3/MZ8lUEc9KtNQO6z/vpyijfK91iioZVcE97O16JoDzQhw\nREBZgDX/99W3RztBeNOFWgC8ZEykrCo7CYO5r/zNBvh6+AL1rXM5UxYq1Atg\noIs3mqfHJn2iWgU2gBN6LvvltsdSsupJKQIsOH6urmkAgxGSo96ji3mghzkw\niuSwMk6bFKnyDQ5AS54GwKut0KSgHCs6TGbR0VBgE7Cy3w4OYHAHOpm/mBVG\nuD5n\r\n=46z5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d43f6785558859ab233dac12d042ada9fb8c1b84","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.b9776b1d0.0","@material/rtl":"7.0.0-canary.b9776b1d0.0","@material/base":"7.0.0-canary.b9776b1d0.0","@material/theme":"7.0.0-canary.b9776b1d0.0","@material/animation":"7.0.0-canary.b9776b1d0.0","@material/typography":"7.0.0-canary.b9776b1d0.0","@material/feature-targeting":"7.0.0-canary.b9776b1d0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.b9776b1d0.0_1591035983126_0.9572927763390602","host":"s3://npm-registry-packages"}},"7.0.0-canary.ba6f7c294.0":{"name":"@material/floating-label","version":"7.0.0-canary.ba6f7c294.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.ba6f7c294.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6b7a4f43357d3cb0923443f8aec14f8502bc4b37","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.ba6f7c294.0.tgz","fileCount":34,"integrity":"sha512-apAypt0xg09mWmhE/jialuKVNmBRes9SPLqpQUElPFSvhkQAPmM5XO3GSTD0Xrq+ofSrfcUMm6EwXHhR9jvGfw==","signatures":[{"sig":"MEYCIQDfKglOv/V/RMzNFZC3PIBBagYxZrYAtTEahAOjLhWZBAIhAKP5mKa0mtZrdMXcp+oaCCLWkj6h1oE2BMBWhCuVQyip","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212027,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe1oZICRA9TVsSAnZWagAAmJ4P/ipFucfBzTeV1z71+4nV\n4CApo+qlqlqy4fOnKV/3icX9VKwSdVAA0hgOnAEtuOj4PzsFWx5+fl4IAcB4\nFsrZJ/zCiHgTeQ+Uxx7O98HknB32AVHzr8yUVj72BuRSD16xRdNModmZjwrO\nWKlqYjXiuyOAnl+HkCDlFdoAZ7hWwqrBy/l1iwC9wqbzZklnHmW2M5oGQN7J\n+ZMHxPHcyT5RLrFS3DSd2kqIxAmbg+m8Lva30RRwTLK7PEDA9qQP1W9sF8Py\nLr64iTjojqeY/vsnHrSd/xpM3WJ5//5V1tK/AMIOz6hN+T5FZAebeATLHDmi\n+kE9GtLy7XG0GczSZoMInofwdTy6vb2lY3If4TAIfm8wRbMCjnk8vNaq86e2\naKn9aOz/sX6Z87cZcyW9HtKzYTBkpXMhSzI+ojBY0pgeM6hBUNsu3MrkwJ5v\nXeBfI1K6wDLyfSfmZr6zq2H/VVNOuxlle2crWSp+UaxpxyEW7umHtNHefc2w\nze1aCE47UI7wnlDA0BZO0CIq1B+936etE7K8Bwz/4Tv++VvW3lRgzxhC9MjI\nwA8JvemUECoQfeySKhaoS/ZSBzzuhtqa3F5aiMdpIWhfPJcYArXoC/RTxHIu\n1BSM4Qq0d3AzoQhoF1cetQr3hf5xffAcskIfVsonEx8IFrWZOTgOUtA2pvIs\n5S0v\r\n=FmvJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f181fece0cab022dd478b7c2f4b768aa14f7ebf7","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.ba6f7c294.0","@material/rtl":"7.0.0-canary.ba6f7c294.0","@material/base":"7.0.0-canary.ba6f7c294.0","@material/theme":"7.0.0-canary.ba6f7c294.0","@material/animation":"7.0.0-canary.ba6f7c294.0","@material/typography":"7.0.0-canary.ba6f7c294.0","@material/feature-targeting":"7.0.0-canary.ba6f7c294.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.ba6f7c294.0_1591117384003_0.8661748162967655","host":"s3://npm-registry-packages"}},"7.0.0-canary.cf3b664ab.0":{"name":"@material/floating-label","version":"7.0.0-canary.cf3b664ab.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.cf3b664ab.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7b768ce84dea8bfe5e795756a322bf4ea345d479","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.cf3b664ab.0.tgz","fileCount":34,"integrity":"sha512-Rk1d7ozIiY+Q8Tx+z1slvM09in/zWM4LjsQMeUNTpRfUU/KksLn9kTvTSEu+LTjSQf9qrY11313UhPpYkPF6iQ==","signatures":[{"sig":"MEUCID+0XY3gcj/Krs8U3Gj6YteSrAvDzPwfxXseWHAErzuEAiEAtESQ48C8zddzI/KrrV/8fTCkP5jCDmegYSpjRGxDaKs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212027,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe1pk6CRA9TVsSAnZWagAAICgQAJP6gOalKg17/Lo+T0pX\nhl11JWAMMKHiTVk1++kiJaAlPZxt9wz+P1RPXfC+1sZZfJj6fmCxMJ6W2rX8\nPG8jHMTncIg5xnMSZ9V0DFxC3u2i6LAFs6ER/2uGQP8AZXL6jSR/4MbyOTL4\nyo5xST8JgpAaro8UqoaXbZ+lNmbXWDO1bzPxidReH+eQ+T9pK6wkQMnqBlE+\nC6/3gdmu5nYDSs4uCndlqGmbv1s4n9sa7fJhC0/JjXQ8FAZHVlGINleEIFXa\njCazWoQhSJS4dg//o9abZBHFAQMZ71EXfVywgrKUZG/2it4qdoNSLhNQIdEw\nKcXycugoU968c+EOqAfVqW2lbq22KSvGdbHFb5nluUAkt2FIqjrWnrCen7uk\nl0E+7zwlJRdiEFEMOtwCFKszMCuXXOVZDaOMCAGuPSX9LBXkCcUrD1/mNSCf\naIDJmiqxTUSEm4pvIXa6qIySI2FE8lMFOqDGFmP59z4X/HPEw0TSmg+0aizx\nPs/58Dbl9qXLShWlFw65Fh/yuJP8k6ZIlQg/rhYVG9XABA3rDh9a5/tgArNU\nN+IE3mvbZu/FREQUwH9/pT0DyCb6/t7XY0LaxXePOGCzuEEI+BBLreObkP5D\n8AMYNDQ/y3neUgqZPbOs+jR9x866u2qSvizIFddK67D+ltOMuZpSVDX5DQAi\n+gH8\r\n=MiLo\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"708ed8576095ca5e673311fcd970680f855a7b59","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.cf3b664ab.0","@material/rtl":"7.0.0-canary.cf3b664ab.0","@material/base":"7.0.0-canary.cf3b664ab.0","@material/theme":"7.0.0-canary.cf3b664ab.0","@material/animation":"7.0.0-canary.cf3b664ab.0","@material/typography":"7.0.0-canary.cf3b664ab.0","@material/feature-targeting":"7.0.0-canary.cf3b664ab.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.cf3b664ab.0_1591122233790_0.8318756906520126","host":"s3://npm-registry-packages"}},"7.0.0-canary.4ba3c9a31.0":{"name":"@material/floating-label","version":"7.0.0-canary.4ba3c9a31.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.4ba3c9a31.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6a5d2538be6951ed39d9c0a93182425da239bd36","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.4ba3c9a31.0.tgz","fileCount":34,"integrity":"sha512-W+UFCQKudSuthg/Ih7ZcSe/LtB05fhqUvlAPxlo1FtIV3cKLmSOIaPPBBIqXtjKXQB3nPyoEW9WgFQkfF2R/4g==","signatures":[{"sig":"MEUCIQDzg1njWXSAjxHMK7JbZdNGFX/BPDlRGsmVUCsyz6eBDgIgLSHUGn0EXMlf8rrMn446OGxcmWEj4ar4vNO94x/Ahl0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212027,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe1uZDCRA9TVsSAnZWagAAZWYP/jPqjCMoN/l6XMu4ikY7\nyZfGgplRBq7pe+TOrttsDNxQL8mng+cXk2Q2poa7QRJ0WbYd6N1qHtDzAPLU\nyJmljx0CveCaBGfKxRLpt9gHCeFxJVvI0pMTycfTfCcA0JIWyxe/0iM9eJ/k\nafaOGfZegwNGmPP7ZL9sHLq2hJLmEdMgpjijPSFuIrrhJqPHL+UTDPYV1JGD\nr/H0GzEHvfM5mfc7CdGfLiBI/8KSrdshsS7g7rRqfpR29t84TCB1YQ0JnPRG\nL24NhLnJ0ek5qykiu0bCHOrC3dPVnBY/zSLmc7/BWaErgHFL4Cgq36LC1UFX\nXMqqOGvV308AR0JtPoLC70oOM0KN6ih/LtpJpghq0PNUom93ZUnyxFrgbGB9\nG1WR2BJ/JxXivX4t0nvm04S7C42l4w+YYfzs/WQ0FzfIomtaqQ/ahPiK8NEH\nby8oMVufmK0d+eJm9XcY6XOV/x4s4lVP4BzOOJJi5zyAHCHKw0Z/7mqi81bz\n9HXu87VkRGoV+m1o7jbek/jYUonLrPBGATVNI4Veg0caB1sCQh+lQQn9RAj5\nJNBDd+btBidpYjWTWSs/xf1mI3t6HCbzLZvxU10AgZg9pFeFkLb7kfvB77V3\nNk5Mwi53rLNF8cPJ/wWXV2uINxlLYFvT5n+OQkAWXZyO9UnIyZq7y4EHaZmY\nbpKI\r\n=LAfw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"cf7f823aac5f803db06863c865c07f432ec4fd09","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.4ba3c9a31.0","@material/rtl":"7.0.0-canary.4ba3c9a31.0","@material/base":"7.0.0-canary.4ba3c9a31.0","@material/theme":"7.0.0-canary.4ba3c9a31.0","@material/animation":"7.0.0-canary.4ba3c9a31.0","@material/typography":"7.0.0-canary.4ba3c9a31.0","@material/feature-targeting":"7.0.0-canary.4ba3c9a31.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.4ba3c9a31.0_1591141954883_0.8665256726403021","host":"s3://npm-registry-packages"}},"7.0.0-canary.388b042c7.0":{"name":"@material/floating-label","version":"7.0.0-canary.388b042c7.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.388b042c7.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"655da9b6ca841d81304bcbb188f79738be0830f9","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.388b042c7.0.tgz","fileCount":34,"integrity":"sha512-WXKZK8paJ7kFevxH8+P4Y6m1nv8R+5zVjCdzQ29wXAWNMXq0ttSBuKc+CVdK50K8cS+78mM0beCc4w89sf8JjQ==","signatures":[{"sig":"MEYCIQDy7BAFkpEZK2hks1GfNrvz1xBxca2CR7vEddmyGUUvqQIhAPi54bAVfqv9+nuuKw6dTIi/BNPOhnBiIJK2jek7OcPN","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212027,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe16nUCRA9TVsSAnZWagAA6DUP/izgcWd0FHVZUem/Fq9Z\n+eMmpApW/MKs3jtlirrJtCEw8E3FPHqypDInpy0Any84lgEpl0MKMtob0aDJ\nASFu4p4tbPeNkUc29KM3ufpblWmkBP88KYz9/CrFt5UYPDGqm5Q/3Du+JwdA\nbk/BC7+ymvlgboQ/X11zjmDfUp+omQoBl9A7iLQ1QctwbnygTI3CyQoKBVU2\n3oIpIKlCFqZsJ6NJuzaggHAqn2lGRrZzAVz/9iXW4cqkkTfzqzBoECv3rsBA\nENPGb+YnUZD3cQr7oAFRPz/XXpcXy3PU+Ym9s5bMc8dIC7pIWsv/bk5UfHvu\ntXIuo9I1q0D/BcEHmniMvmgaPTQ0fw6NF47Z8kGAnncFAj3Czc+3TA+V6XuY\nfzOdEabp9YJ/oVC+99xgyTNUJjPEpn4Zq+qoMD5+hnJ5GEtaLKbu54Lk6Z1d\nPQHbDHXvhN4ixt2ner5GEzWBz3h25VUScCSurj2d5vUvzPsgnmC0mI+Wl/c8\n8vO8hL0Wcflco9Gi0Hplxd2jGMTAt0BRItFA8L4QANQrpURCBpwmBgsZM8rX\nWK9BKy3kYaKgWgQcmecxhLxMAGffTDesi+iqr2gh9QXk7AAfYUabl0UlZH08\nG9XGcNeERmlrj0ioUG2F704Pl9ZcKXedTCv2JELBsfoU5PTWeesXR1nl6XVP\n0+sm\r\n=HTZD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7c9ddf94f1ba2ee332d7acea141e5022b58f79ff","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.388b042c7.0","@material/rtl":"7.0.0-canary.388b042c7.0","@material/base":"7.0.0-canary.388b042c7.0","@material/theme":"7.0.0-canary.388b042c7.0","@material/animation":"7.0.0-canary.388b042c7.0","@material/typography":"7.0.0-canary.388b042c7.0","@material/feature-targeting":"7.0.0-canary.388b042c7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.388b042c7.0_1591192020051_0.07135042028375183","host":"s3://npm-registry-packages"}},"7.0.0-canary.cca1ca84d.0":{"name":"@material/floating-label","version":"7.0.0-canary.cca1ca84d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.cca1ca84d.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2937c4da10b862455c489aa4a3a41e32d9eecfdc","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.cca1ca84d.0.tgz","fileCount":34,"integrity":"sha512-+PwVCKhJjJvVlCkvQiilwkbZLBqNwOfjpzqUEcCiiUuguS8bR2ChHGQLliS8FgDGIdOqf0Kf/C8+E1sUe9u8dg==","signatures":[{"sig":"MEQCICJtZPecjcV3nuFJC3dllORC8dl9f7A1m3KsDgxwA+suAiANBsvEIp/yJ5i/EjcxRiaTKXImOI4yFqwSAwvxRXLjlg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212027,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe18nKCRA9TVsSAnZWagAADUYP/iegjeQsefkL2QkppRo6\nFSM/f6SxvHYPsFp6HJhmkJC9Va389rtRMUwha6mAQPV0+WuAKkaZiUHyLrNN\n073fjQzXW93ZhTpyEzBCo2nVw0InUfiFgXqN7Y9P+6egqnl4nJ14rjtxwrAm\n1WGVuYvEGJgj9s8Ix0lVhg4YeDlScOtWAFogksfj09IE+9tMnjh7ocl1DYSl\nkJPUsi61riWAvWL4crhw6G4kxmObr59XZQEaLmEGYTwanRTR+CoO7WTquhZR\nih4uco4vgU6kYAabqh3QHMUYuPzFDSF0fSdXZxJ6fQWwTn6EfYrO/jfcfqoO\n5e2xXYTmqvDFNbghLD6mjxHW3dyD1+shAawuzHDTKnw8/dBLUxD7/wjZ6mgY\ng10aLB8rFfd8255tzfNlYcXq/YENuG1MDp5cVedsrnX0+qYgs6+OX6Mbn+WU\nrv7SAIUmcLvxslzVm0vIgyucHWze0Ep6gkAu18Q4HOcK2NCBqXNRDx4I6Jvx\nuEB1MneubeMoufRGcxsvxduBbGMCIWYoBE4EtTBsEUwmbPmARt7tpWWxBX/1\nsmvXilRftcHqEqD0DsbupeAyL9ilCU0f7Sr8RYk4+kvdsQuY8FDHEo7uvF3W\n6pfXWmFQ8T+UHA4QNu+t+rQvqXmzU/OCsdFsZ6zvQBknxcMM38PDehyzmpyE\nykX5\r\n=O/Rb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f154bcb37f9df5f07d3c6dd0c397a436794ed609","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.cca1ca84d.0","@material/rtl":"7.0.0-canary.cca1ca84d.0","@material/base":"7.0.0-canary.cca1ca84d.0","@material/theme":"7.0.0-canary.cca1ca84d.0","@material/animation":"7.0.0-canary.cca1ca84d.0","@material/typography":"7.0.0-canary.cca1ca84d.0","@material/feature-targeting":"7.0.0-canary.cca1ca84d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.cca1ca84d.0_1591200201314_0.2806745745829273","host":"s3://npm-registry-packages"}},"7.0.0-canary.9b0b5f2e0.0":{"name":"@material/floating-label","version":"7.0.0-canary.9b0b5f2e0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.9b0b5f2e0.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e1e929198c784bf6ba4079e89d921a9b7f9883a3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.9b0b5f2e0.0.tgz","fileCount":34,"integrity":"sha512-tKAgXhifyMmQuDAOa2eyZj7hAdHa5ta8Tp7nP2+q7CoQEzOWn6fsO/XxJO0kSNBzL+L0Iho1EV+uO6PcYQDSSA==","signatures":[{"sig":"MEUCIQCb8sSIL9bNK23xB+oALNUdunBVpQQ4ncvNdlLB77g3XAIgK3NdsfvpbAV/MKDjDY7LGT085fGr4Qsy6+yRsJCZwmU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212027,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe1/K2CRA9TVsSAnZWagAA64YP/iJai78Lzub3MyulAMTt\nOmhQBWNpI+XeF7bv7KH5bWD7pOv1KIXKONVmtxa2dPxk+Ku/8lezXXqniRhM\n2w1MBiX6GSPqwflVc+rvqwqr5C2+Q/kV5bMYBFWFAgPpO9BEMJxYCj7OZSab\n7jTKrrEWaxb4RUy5AbXkUQ89eRY5vs3NizCfw3eBBNTIpepXoPMKO6Li089d\nf6lkBjjN4rTYkITdTqYqXh6v4PMqlmEnkrPnvX7xVKD7oPJyih6w/wPdbImO\nf5OzyNBNFHMK/W7xHnMNc2qc6j+uw8oVLzVDWRSIzDNoFmHKzKWW7vMyyexa\nKpxrqVV4pAY64G59qotnvRXyyPoBDC2cPHORYpg9T0mFhJLD4DVmayi+zVtm\nKjxcJyEDWrL6EkGWuiVXqHprzHq6ln0CuKg9e+9Wi1n7Id0Vft40xl/UOmU+\najidgIbQy3S2MM4vp8015I11JAbwrGmtPgiDLL1hO6CB5gS54mmQZanWdsAd\nbs8MB7CZBYiCtc4R24l/a2xmVYS01qQCq+t3ViTpzA7gYVlJk9ql2bKtRteK\njrQK+VpMChsVS3fMfzFxDYXL/UBJl9QntWaU+5+A6bxkoMYZIq059S/Vjc+u\ner6mqdC9i/macQYPWClpg6wEsRhvKnog/TUc6oZoc9xvcyxGpOiv99wOPp8v\ng9FW\r\n=qkQ3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"35348e60387f88e73ce8e1376b7f352877821cb5","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.9b0b5f2e0.0","@material/rtl":"7.0.0-canary.9b0b5f2e0.0","@material/base":"7.0.0-canary.9b0b5f2e0.0","@material/theme":"7.0.0-canary.9b0b5f2e0.0","@material/animation":"7.0.0-canary.9b0b5f2e0.0","@material/typography":"7.0.0-canary.9b0b5f2e0.0","@material/feature-targeting":"7.0.0-canary.9b0b5f2e0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.9b0b5f2e0.0_1591210677978_0.8074983610355173","host":"s3://npm-registry-packages"}},"7.0.0-canary.0a7895f4d.0":{"name":"@material/floating-label","version":"7.0.0-canary.0a7895f4d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.0a7895f4d.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b91508be8ab855d821cdbbb009921b49d97e892d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.0a7895f4d.0.tgz","fileCount":34,"integrity":"sha512-3HwhTi1NH+JJaRFqD98ymIK5fC9NYRW3/qDUu4qVar9Ppm/o6EwY/zeze6/F1WbHVPMlnxTxJvvQBIoDAE7+nA==","signatures":[{"sig":"MEUCIH4T9PAjAEoDx29mP/o4tCLI1mRUZ6iyAdBeAdvj4ux+AiEAyp2L0aDdfZ4u13J1LOoPs3yFe0PDK6H6ecBS1geAu1k=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212027,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe2BGECRA9TVsSAnZWagAADmYP/2UaHlJjMqvvODPA2Qb8\nuId5qjY8AQUFCru6fEBBksQ6jByPMyDyGGh/E1nAvQ1g5MLw0n0YXnppBb8G\nv04vRIFR6E4+P+3LBxuDFnl7qk2ABaTxz83OHKH3Adx2g5MAfbrFyaq326q/\nrKiYjMSGIrjvyie566KFAaEBN7LNAhE429+D9O2H1xZtzu5zuuKiDbIWFQbb\nZ3YSrLuGdexl4eXlKuVTb9e1BgVf25qdv0NdfTxUusMkLuc3oKqA2FzoMzji\nZapU+y+Y1usnPGNYd5n6K9kLZMRBrQSNavDiHyrxF9cb/HhMZjuBlvXUup0M\nc4oGC3UobYsBdyxvG2sw56PP/a5JCSsPjLV8rADXuKZPfLtjIjzOnhOFE7Tm\nSuiT+3wbrj536dteGUfKsbdvXSqikcTsDZtcHtcPkea2pxsE3lfyu3VsC2zV\na9sVC+CUo4EpgP6XzUpcWQ60s6dqkujxMPszxA1KV8uxowASQ/tTvZwrx49c\nXIbljhuwIaJGvnCBZ0PvVFVROw12wlYcRQNdWAw9JV5A49ZMijUGVr65KJCg\nRd0BNeTkPyW/d0695xM/rn6QOA6j6fMKx0ejkyQ/6O807MNk0WBko4iIzsSP\nqEUi6kmyK6B7x+RqSsFf84UyVrBaKaKpYnSPRB6yw0S20M6xPRhpH0zPvtmt\nJPho\r\n=ELCS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"929c9bffd0636490958fcf34e0b40578b44a9cd1","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.0a7895f4d.0","@material/rtl":"7.0.0-canary.0a7895f4d.0","@material/base":"7.0.0-canary.0a7895f4d.0","@material/theme":"7.0.0-canary.0a7895f4d.0","@material/animation":"7.0.0-canary.0a7895f4d.0","@material/typography":"7.0.0-canary.0a7895f4d.0","@material/feature-targeting":"7.0.0-canary.0a7895f4d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.0a7895f4d.0_1591218564352_0.3710594241549192","host":"s3://npm-registry-packages"}},"7.0.0-canary.7461aad68.0":{"name":"@material/floating-label","version":"7.0.0-canary.7461aad68.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.7461aad68.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"cfef9476afa4b86ea640b7b8dfa47d43918d7c9f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.7461aad68.0.tgz","fileCount":34,"integrity":"sha512-2PPaE6/lOVFI/bmrdy2N1nSX0lAK72jvVJe2cIBL6rk46EPtIbA4smC30zaLCHTttcGpzgYF5BsVEy+ZQp2fQA==","signatures":[{"sig":"MEUCIQCQS6MY5Hi9dA5oC346B4lLdF1/TfvYkIvAnALNvgCxZQIgLsAqiZHr0xOsIcenOqE0fvt7Le9ysAqGe85H24k9oRw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212027,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe2CBnCRA9TVsSAnZWagAAEgcP/jhXcrclSQORjcMatyKp\n2youI5SuOezHJVCf96cT8pfdPDuHMQ0O8X5Vn+NvpoNsI+Cf/0Fu7P1pgu2I\nNscuLSJo//KuyAe7gqEtQCvJmRTC45i0KGS3QXd6Ol5WCnfChxCCD7GOMlsm\nDfBVEHSHPdWrM4Hhbl6hL6kYYFpPkXn5nnGvqY2elOLTI1VGuC8d8GHVVE+0\naYiLAFPYyniEJedkcAvaIvIyeFkU6YJjj8UEfVbquvNpYzMMsHSDWBShJ9kn\n7WP5+4Tc7ihClsKiFf328yLECk0raFVmxX3BbqFrKpZqbOD8y3XCsgzx36sQ\nLHl36+OsX6lx3PujSi77LGsJ4JBT+r3AdUP4gcfLw6aMHXYiNJMxOEDcOOUH\nk7KCgXtl58C26R3XYaHALQsQdjZNM5XfgGAUhnErlXKoenMpjCTm6reAk5oG\n9G5aa/3nF/WtZWasr3xgGynxCb20WuWr7A1RjNMughG02AlnbC/Dwfjyhbmn\ngidTHVBrDB859GuWna17xDtblrjHRDoilyTK6TBjN9qLEL64Hv0CqCOqdf0j\n1u3rgNbrog69VLO+MJsafr3Wir9I6QCZHhlIwbheyxGLwj6VaV+eh1X6Haep\nx1cBX/e5LISLoWkw5+sCPvzVTTzmh+kTNlxLylFgwXxrOvS/JApL5/NCM9GR\ngDCf\r\n=iBMV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f9166e39b20f57c6b5cdad1ce684529ca891bd81","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.7461aad68.0","@material/rtl":"7.0.0-canary.7461aad68.0","@material/base":"7.0.0-canary.7461aad68.0","@material/theme":"7.0.0-canary.7461aad68.0","@material/animation":"7.0.0-canary.7461aad68.0","@material/typography":"7.0.0-canary.7461aad68.0","@material/feature-targeting":"7.0.0-canary.7461aad68.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.7461aad68.0_1591222375434_0.26359350308751184","host":"s3://npm-registry-packages"}},"7.0.0-canary.a0dc2b5c4.0":{"name":"@material/floating-label","version":"7.0.0-canary.a0dc2b5c4.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.a0dc2b5c4.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3c23e65c54dec7265c3b9aefe59f1cd7266ed818","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.a0dc2b5c4.0.tgz","fileCount":34,"integrity":"sha512-1LgYaDLIiY+Sif9K2rBF3oZZAhwhz/IHSrJpIRBqx8UD8MMsvPJBNd3TKaj7+G0PdZzKv58Chbb59PKWR0qlsA==","signatures":[{"sig":"MEUCIQCF+nJTHFCpa1Bj5xczX2Mnby+CfRZCOQzjaYiFFjLmJwIgeEJ6R6MExq29QfcP5hYJD4B23ooL7F5yuYMz8Nc9Z6E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212027,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe2WRCCRA9TVsSAnZWagAAVd4P/3/N1p/CqQdUaQ6ixZpH\nEcgQDtiNiRKHvIg6S+COKWTIlPzhw8uRh2/rCc4j5Nnmsu6TQJSol4Ryls3m\nMTd3ug6OXtPxq3gy5YYPIfC0y0tPbpEALhCSmwE2uTfCAOJYIU7/zOP7h5P0\nmlEgQf1GEIfqykw6DxCwtuqqlwbJj9TRlbOh5mPaVFQkriEG+Zey6fshQdGn\nrgFibWNR1LZlILa/w6C+Z+TX33GUluDdpjDn3TEO4fR8L8HgHNyGfBimDGXC\nNluaG+PrdZqvCXcCqy2mfxdh1UvbTZmrs44u+cmw9rI8q1fOSWUqkzF8vWdJ\n2xzol+Qi4+KpVfbo5x2qDbLJHoPgWv7JmM0Q4haHxGyVCKpGHNDUIrH+s1nF\nhAUcMG7pfVfV9JdBgtM5pLt4ayw2cVw+LwJqF2MY9XrFJis1h3CgfpE4RON4\nQe2Iw2YhKYhByJ3V7wLKDpAA/uYjU1BnYALm2KUqavvK6+lLzxuaKIv13Myh\nAxN7WHdSp5tsSLErJ/A7ZTSgHPNWRaBm0hlq9o6PO3j+0V+27L+oZTjRPl8X\nG6TR/o+UR2rmrS+Gk2kQEgtSLlZQzy3nrSQmrvMO+K2HBvtLyfHhoJoaz5/n\nVzX2rpxo6w2md3PjsttOUPiNmSnB3KazdH2ktMg2CqS0/58yfkS2Gs6sRpmD\nZfc2\r\n=29Lq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5970f3857673cb8c032d0d4532a6cf1209f94c47","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.a0dc2b5c4.0","@material/rtl":"7.0.0-canary.a0dc2b5c4.0","@material/base":"7.0.0-canary.a0dc2b5c4.0","@material/theme":"7.0.0-canary.a0dc2b5c4.0","@material/animation":"7.0.0-canary.a0dc2b5c4.0","@material/typography":"7.0.0-canary.a0dc2b5c4.0","@material/feature-targeting":"7.0.0-canary.a0dc2b5c4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.a0dc2b5c4.0_1591305279767_0.9238308234974626","host":"s3://npm-registry-packages"}},"7.0.0-canary.2b420c5b3.0":{"name":"@material/floating-label","version":"7.0.0-canary.2b420c5b3.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.2b420c5b3.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9efab5f8959e9dbb67ff66831c45d3820ccfd895","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.2b420c5b3.0.tgz","fileCount":34,"integrity":"sha512-pXGNVa2VVNQklkqT4b3B5RQw+034Lfu+BoY+ZXecst5l9ABLsRx8M2Se3AuFWMGRlolJfDCqvtzflST84aDaJQ==","signatures":[{"sig":"MEUCIHmNe/o6H6sal3MxbSMnMVqrI9trmQ4d1d+q8Ix9UUSkAiEA5nh0cEt1JX0B22EY2CaIYQ9O9KBDb2Zg+pD7WSQSNsA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212027,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe3mP6CRA9TVsSAnZWagAA+d0P/iIZgTG0gNKyTIt7vOFS\nu9eUrCCCsge0mZhJ8Nj5F5jW9g1tVljOjxIPHuMGZuTKCiTqCsxr2MYBsFER\nqae6Q6R685BtNjLkFeFiwbrBzNuoauGiACmMcTgMx5hBcvUml9tPOA0dkiHe\n7B9/TFLlBTganH5BKDgJOcB139SGFjfnUJ69nRiao7pYa11ko7ItBuwFTntS\nGBtQfinA+fYdrIQby4RPv1hJ8O9j4uNBGA36ZwVEgLqhorz4QOwoXgkrageD\nzb4wrXQYbYeYcc0GoZcNOVPvu/isoBKz4v1wFw2TyPSlUhPWl9qcXeRCNPqF\nIMWeObVJFd2NJx8I3Ov6ip1eoe/TUMbVcHkJ4mlqUnQjqp7pFAsbjn1Ji2bz\n/YlZnnIpRYpv//iHu2SYPffAcrKWeyW20BeW2BARkzUxpP4Y5g/dTPvIwbXh\nV27l7JFjmVzUbJ3IwVqRiPPC329v46GvfuobdtM1iGgRISY6Xso0znnsTSsM\nXyfUoFwWzfr9gMSiHUCYSUrODvuVXjp79rP3nxfSdXZnkR0Nu8HQOOpyFK6i\nZxnSfxc+688Ixor0dz/fvKASzpSiVzPm0zJrKkmWhmKoup38hTgY7GGF4FLR\nm/6xNb65QceeUB9+hzrav5yCtS47sBWglmwcTVWmFnh+Pzsu53DuBGe4O+Dl\nzRDS\r\n=Hryj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"80cc16a27982fc781b2a68accf38760a98fdbe2c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.2b420c5b3.0","@material/rtl":"7.0.0-canary.2b420c5b3.0","@material/base":"7.0.0-canary.2b420c5b3.0","@material/theme":"7.0.0-canary.2b420c5b3.0","@material/animation":"7.0.0-canary.2b420c5b3.0","@material/typography":"7.0.0-canary.2b420c5b3.0","@material/feature-targeting":"7.0.0-canary.2b420c5b3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.2b420c5b3.0_1591632890369_0.8391193454955315","host":"s3://npm-registry-packages"}},"7.0.0-canary.8fa22aacc.0":{"name":"@material/floating-label","version":"7.0.0-canary.8fa22aacc.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.8fa22aacc.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e0c7cd2049dec13d929fb75a2d963d0d75e1f111","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.8fa22aacc.0.tgz","fileCount":34,"integrity":"sha512-PDN3OnVgExHBlj2tAJrHEXrO4Wn/tXCR0xyuyXR3XhgARZEWE4zLvlf1+NDxtI3EYjiSgSOx4f4L1ezTb86ytQ==","signatures":[{"sig":"MEUCIBxOONj3eZ9z0qzSO6/r74CgacEjEmwURWDOtNdyLNsfAiEAwkk0CqaI3vXK+/HAnn/qukD8XkpK6KtSuQiKKi4POZQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212027,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe3n3GCRA9TVsSAnZWagAA76sP/A0R4Kb97TZgDOoXi9Cy\nxY/tjGQk+Kcntm6J6X+saPqZYhgv0i0b9Wq85qXtSzle5Swty10W7f76trwa\nSehjvE9FKW6ZeUfyJcuLyoZkMDXvAvPv4apMyup7NJSE897JhfP7Gdq2F1eC\njCkaFjzZcFMhzTLlyXhwfEIBTlnTpaC7XDrijJIbepZFhZuIZfCBTrmNXw68\nGE5ZWTrVM3ww9zLj/Fww9eIqXau3fPIIXSFnMeHZKQ1UpeEoj2uu2fuJ/WQf\npfnR5/HSZYawn7D75eKW03UM1BQuQ0pk36v50UwqHzYgQkN931RLm6xqcaJi\nDObFD6vLJ1aUxhgCHmP3POomljgFW773+onxTpsK10vXZb466odm/zx3G5T3\nX4AlFCs2yADLuap9B3kV/ZzwRT9g8+T2V2Cjpi9hyQz7uapuuWxwD6U8JFo2\nAcEPPYodksXn5mlURYRIvbPiGWVXt+mk3I8nWWGYrPFaFuhM/k5D+yJNTNkA\nkLhCPuOuzW4sNUcpIEigMxZkvIp6CVylNrizsNFEiel7rCr0D7gacyHNWsJZ\n0EEqUI0Vy4SNeLCFe7wkbJHB6kIZuu9CY+AU5tV/P7lLftBERZee/L4Apit3\nZF2NtPQ4gtIbTb+Limoy+dS/opNNMEggDyJTGOeMAWmtb6D3ZaxjnM43YAKh\n/VKz\r\n=hstU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7c66b081ba582f4d58dde82c8b83ab1dfbed6063","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.8fa22aacc.0","@material/rtl":"7.0.0-canary.8fa22aacc.0","@material/base":"7.0.0-canary.8fa22aacc.0","@material/theme":"7.0.0-canary.8fa22aacc.0","@material/animation":"7.0.0-canary.8fa22aacc.0","@material/typography":"7.0.0-canary.8fa22aacc.0","@material/feature-targeting":"7.0.0-canary.8fa22aacc.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.8fa22aacc.0_1591639494387_0.7056245002727888","host":"s3://npm-registry-packages"}},"7.0.0-canary.21c4e4ed8.0":{"name":"@material/floating-label","version":"7.0.0-canary.21c4e4ed8.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.21c4e4ed8.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1969ac2bfb3c85407a5ad8424ab683f98eb4d024","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.21c4e4ed8.0.tgz","fileCount":34,"integrity":"sha512-45DCmJPHaCI+WwLkm+ZPMReyBGu7iYYjE8KokqV5n1nj+y/1LYJAWwFEp8JhKgbtq+e//mXFUFmkzIyTklyc/A==","signatures":[{"sig":"MEUCIQD75fb7gzga3ndz/MRIr/Y4wvi64Bu43esuDuTSEhBU9wIgC3RMG2YHIzKBIz3oLuvTFJFUx/PYbZyvDqXjEueAeLI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212027,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe3ocXCRA9TVsSAnZWagAAuqAP/2BjoYMtEgajTtu5Fr/j\nh54jACtfU8L1Q12bcF7nWI0NGzg+aeYCClITAIwHNfcrQYK8oCsD/Jd0J3BH\nsbcrBR78HPh1Sf9KIMLEzfS0C2K1m4Pj+dv9or75Vv9+heZSlcL6OzqDgKq7\noCLdqX1yr6GfwoNXvFZsoUqymkVO7TelWRYGfCEemGX4oPqySZC69ZLPfhXy\nIcJLIN31L+D5VWPSSgjshWklqXR0h5gB1o7p2rxG9nI+6IsphBr3lydwq6n4\nG4zJd+wLMTZGl3fy/8XxKaWfX2JwOOIzLkm3KFaf62tziaeVc5uJY4FIr4Hm\nAtPKZATVW/zD+3LR26SIull2sImqmFpBPt02gmxkCbIDB4lXTXo1dbQvmQBh\nvUL4BpJII6/sLBciJmPRl2MZauCpUJhrnZ+zDfpHvh+tjMSixP4bmN4KJaIo\n2LSpahCuJYfJw+AGD9Eh+bCOULKEBohzKnMy3nihyYZ/fGklWCmiC+oFvIn0\nz6p+RoIQSUr9oQB5FyDOG0oBCQ+jdYyKVEKO0sKYELrDyKkGuZBASoimelH2\nJOQd2hia0sAkWl1iLXEMBMBI22tKJQszMO+vy3Br9ge+udPu8BPPtzbDz2NK\njLnzLz73Loyn/njSOCBl3LJZ+YiB3icUsmtPaa1+8EoepF8+0vB1g7hMt8uE\n8N4N\r\n=uVP1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"4028e059428ff6b13f79ad3f9076ddd853ec1904","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.21c4e4ed8.0","@material/rtl":"7.0.0-canary.21c4e4ed8.0","@material/base":"7.0.0-canary.21c4e4ed8.0","@material/theme":"7.0.0-canary.21c4e4ed8.0","@material/animation":"7.0.0-canary.21c4e4ed8.0","@material/typography":"7.0.0-canary.21c4e4ed8.0","@material/feature-targeting":"7.0.0-canary.21c4e4ed8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.21c4e4ed8.0_1591641878791_0.05650412297511154","host":"s3://npm-registry-packages"}},"7.0.0-canary.dfde46516.0":{"name":"@material/floating-label","version":"7.0.0-canary.dfde46516.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.dfde46516.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c93f951f0461359e1f8ac5f7ea3613f4f6c7a52e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.dfde46516.0.tgz","fileCount":34,"integrity":"sha512-35aqoy1czqyShYJXyMHP+tmp3CDLefpBF3xePqf5srQZpdKKZg6XvRUAeXgOpM31ptD+mthUMJ6L3LMq8IjwGw==","signatures":[{"sig":"MEUCICLcHrAeelVeVocrGSkf33p60XcJiEKgOvsXcJUA6jSYAiEA95BeH5X5xo0STbHUwcgWufSMsJu6YLCw25PBwz3uIXg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212027,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe3pScCRA9TVsSAnZWagAA4E0P/2OdSharZI7t713dQbu9\n1kNGzqC89A855ri/1LQYHc8wr28ZQ4Cm2/I9i6rEaV3bCHBkQX2atPhnas7v\nMdkAKC3m4HCkEZl0e2H0l3v2eloC9xIbsZMOpYAIMX00/HtmmpN7O0r9jHU1\nShX9b5I8rx/9AMwJ9dm5KFEJbVHHewiDIQ50T2AeCkMSKmU8M5Wt/Bh4EQZ6\nCqVzy5X2Gpzv3TQUzxNx65PrXuMvJ+KywDomYqancyJZqGSVy7HNU/o7fF6C\nCo9FXonPN+i+wkI68RL+aYox97YDboMnpmVwGW38IhmQ+sJvJE50ZnM4f7MQ\nw6z3xwU2RX1Z3nAmupdtmr4VdatAIk8Z0m+Bo71FDnjlULwurPv2LUWo8FxZ\nTpQWzyRRc8IXxv6vLaSE5UpGM6I5gZDttZOnEQE4sKC2RuAPshnFoO/zQsyW\n/1l5fFcj8XgTbZte/DwQckhDmRUT5tj8ZTS1FyqO+QGbM6E1vHMUn3fQa8ag\nlxZmuZwnZ2gveX3IDioTeVixnpj7EfpFFn/J83L5p50vWqh9iULWCKD7Pe65\nXaM+oQK5XOZV0TngbZ7BQ8C+W8aRO6UqMOnTLeRjwLNhG2xJF9QTzWWDN6vI\nOGwLJyiNBA0n4Nnb3TXW+gutOD4sRURePWtOBsjiUZUKsaOngiZjKF8Z13Vh\nuIDx\r\n=WtlZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c25d474d22b404bd6774ea12567f0916bd7fd165","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.dfde46516.0","@material/rtl":"7.0.0-canary.dfde46516.0","@material/base":"7.0.0-canary.dfde46516.0","@material/theme":"7.0.0-canary.dfde46516.0","@material/animation":"7.0.0-canary.dfde46516.0","@material/typography":"7.0.0-canary.dfde46516.0","@material/feature-targeting":"7.0.0-canary.dfde46516.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.dfde46516.0_1591645340202_0.42592694191280844","host":"s3://npm-registry-packages"}},"7.0.0-canary.05cc5c206.0":{"name":"@material/floating-label","version":"7.0.0-canary.05cc5c206.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.05cc5c206.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2211c62926608109b2bc8df264314fc4e557644d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.05cc5c206.0.tgz","fileCount":34,"integrity":"sha512-8QkbBUGKg+OIK4PAIGMA8oxvJ2khThR0YSsvb2YEy3i/UmTI2nmWpTca3OMYocnb5eyBjE50ZKEf5OAVLeuO4A==","signatures":[{"sig":"MEQCIC+kd3BFRsWhSrHlAAzVfVcia5xeksmq67to0PBN4OKIAiA3Ewef8xdOZNCcrnWW+2HohOTx2wmA7mPyHz70JbmonQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212027,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe3qY8CRA9TVsSAnZWagAAUPgQAKGmP7fs/5kcCnGZWkGx\nfiCjNKJzIwxN2vCEFM2Vc2fkV7OWO89MTmayzewtVAez1dTfwwVnlbeauto6\nVug024ifUv4MazBwra2ETdIi2p1VJSHeiiB8TfLadc+U+nekHjaYWaeVzCsh\nktdYUllrHyjttb8MkOtv+/vahJuF2WTKhoiNGFolC/c8dSBZ0IuarP5NLa1c\nZ2iy4qtjkg4w7iFVrpl6rlTHneFGc2sUAFVGXxG/JlSTA14d4r9w5SFGH7/B\nM/KYjQpVJl4LsNIfUxPc/2liDjl/RUJkjSu4WFFq+LoLys2wVH9vg2w7xQUA\nIjAHV8HUBZPMuk8Yjg9iHNA64XuQhGTHn4W1WvIHmIMKNVmjgsE+r0vMB3Az\nvMppuAV6qH+P3oD2bmf0BHb5fOKQbw70DE2b0d1+0aeUb8iqlMlATiQ3qhtK\n+JQIrPPcNow6VLvVWf8awdnLf8jVR3AqQFah130KsS6xwK6Alt1q9ax8a19X\ng5fB8HhjUmZ3U8tFEGC8Nd49spgM+BsVJFtQJOvPzbCGYO7yCQfMLU6+4LOt\nTTru+iAeLnGH6UIKoNrezgWvd5ewJ7HVO4F3FyK4fImz4r4DDZXR0LWUGltk\nkazYfZAQalCPnSotXjfd49PyOALvvyW2QKFurVNhcAqEdaxZrGJ+hl4Oomwk\n8nkS\r\n=gY8C\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"933ae32b3f02920ab3f6f1660cefdd6302297532","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.05cc5c206.0","@material/rtl":"7.0.0-canary.05cc5c206.0","@material/base":"7.0.0-canary.05cc5c206.0","@material/theme":"7.0.0-canary.05cc5c206.0","@material/animation":"7.0.0-canary.05cc5c206.0","@material/typography":"7.0.0-canary.05cc5c206.0","@material/feature-targeting":"7.0.0-canary.05cc5c206.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.05cc5c206.0_1591649848820_0.6787203450758494","host":"s3://npm-registry-packages"}},"7.0.0-canary.3ee488f1c.0":{"name":"@material/floating-label","version":"7.0.0-canary.3ee488f1c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.3ee488f1c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ce1db72c539007d4bae9423b2b368c58b5f7dc6a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.3ee488f1c.0.tgz","fileCount":34,"integrity":"sha512-omiUg1BBmdWSwVFZ+M20qzG7bPOtQEMk0kDZDlRNu4iSLc8Hld2gUnwtBF6nN/inyyrrIUHt50XaPnDRa8fppQ==","signatures":[{"sig":"MEQCIA6eAQTbi8IWZSOM5J9uit2q+ZiIUicTf4eOjZBnqTKJAiAqSi4e+qG6NgQa2lmJe53ZaGe1NAoVmj5HtXwtG9ADUw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212027,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe36KbCRA9TVsSAnZWagAAuC8P/0xZ4dWQ7UOi4IzVYU0E\nm48leZt6pi+gKbNnKt4EMbX6Cpo0Enkcmzidp2vx0XWnDfy040cMFWjifLP5\nAq1nYRrzWXPvtlFo8M+vcR6HPgigVXxS/P8rdaX7hlskUQiIGdRRJOcrHAkf\n+ohByvmYD9OMflD2yuEtaYCcfpvuo7JjslE7Obi95Xcj0o3TvNFrn8nBDtOG\nMNIhZl+FHNvbkvN/ZxGMnetdhBhyvzvqY5Kn8LtDWUP81jpYf3eA3JXKmg8a\npEGu+dyvY0XnDOdonFeTVkEwtMzpx6UyYL1j66UWtjRgVVuhIdycAQsJo2ME\ninuOuxhFD5J7gJJUVmUtnMCK3YQsTwua8ZWGFa95AEDihdurvuleM6CtPb1W\n2Z1YpxS4tfZeqbnXazREBTUR4glUQV87dLeTCW57+yk9/aDOkpJ9L9jIY281\n7DLk8seI53lOJmchXVzWkR+HGqa7ipwcHPI+3evArPwNgnnK2Njq9MlrbtmK\njqyQ+vER1kcykcNfSQwycqskQuMbbNRV6EJR/guO7yNuRwofa+5+V4WvvrdT\nOz0/0i6Lcoa7VgkzFVfTGJERK/UWG/PhYjYlOIGPxPLWOSk4kk5KQkKsuQ8u\nnywYg0d9OK1KPI9O368R6y9wpb6Sd4MShHfzDzBIJy9C9qg+9E9knOJN071t\nz5z8\r\n=zc5t\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ceaac97d295d5d50e71137ff6d4b390630570b8c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.3ee488f1c.0","@material/rtl":"7.0.0-canary.3ee488f1c.0","@material/base":"7.0.0-canary.3ee488f1c.0","@material/theme":"7.0.0-canary.3ee488f1c.0","@material/animation":"7.0.0-canary.3ee488f1c.0","@material/typography":"7.0.0-canary.3ee488f1c.0","@material/feature-targeting":"7.0.0-canary.3ee488f1c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.3ee488f1c.0_1591714459244_0.8601230674508666","host":"s3://npm-registry-packages"}},"7.0.0-canary.b83d720ee.0":{"name":"@material/floating-label","version":"7.0.0-canary.b83d720ee.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.b83d720ee.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d85fed930524d3a9d8e016717ffc96c2a5c245bc","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.b83d720ee.0.tgz","fileCount":34,"integrity":"sha512-OTZk3+bu0qjs7MEIDdvO46sjjBz3opazQnMqf6OJU4z7t/33wM3TU54nXbz84IhtzVIg2SG9hhe4nvPv1AbNIQ==","signatures":[{"sig":"MEYCIQDm4qcwngP9NOyLmMm2druBMUPckW4qU/kEpvQz1wMjPQIhAPB3Wo8SfCkTZIs5e5t4f89xO17bkMgXAGNgbaDfIlVo","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212027,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe38ZLCRA9TVsSAnZWagAAuooP/jPPG6hEr8hMYhMlLDKF\nvtGHuKJMTrrUo0YDV9C3GWb8WZKMSKDrQXu4Yx2CELqBQN2AVqDfPGW0p/QS\n+U/WYIh66TvodVj8S8iUm47IsvrbZNnXdLi/B7jnx3wBcEY9Qsk67iRG3fWH\ni7x3ieq7ar0Ts9+CMXSzCicIsGFlCWt+TIina6KQTA6N+TDkQ/cjV+Gc2fip\nJOq5+zTSvJCpbrhShnMlq2UI4NeswwqVndEZO/myRtTw8Ww30igHB8AnILXX\n05jH8DesMipuWn1jyW+ushfsED1jDyStMGQL/s72mal0KdTxMcraSwmcmA/M\njrOw5hTxhQazPc89j+UHc9OpiB5g7oCIZTX/xdWjpI+E/LWqgiWxTgZlCEum\n0x6TQqVie4rN160cuDB/Qh3bweH1G2hYVMa8F1tS/Yr/nbBw+WpaTH7nccmY\nN6BgjckiyHbRP0ZMZ5b7D11tjnVCS8Zm5/FAOw4r/ZS39zg+ezb5UToJoMNJ\nq9fSj/dv+Mlv/cWY8JS1ahQo+IDyaqOJeonbo7Bt0LitahGgoJWayC3r7RAW\naT2bP/hyl2tRwAhCsGN+NslugMILGCsgc7V+utDGlKQ/MbsSZ2uwkZQl52TY\nD65hBk3BPHU4mwlWHEnCXO7Y2SDa6xc93ey4JuVO5IL1Fi6xFp63ocJdMu0s\n6jZj\r\n=Su6i\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3e998e476c86bc89c3bb626240ddd068529062aa","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.b83d720ee.0","@material/rtl":"7.0.0-canary.b83d720ee.0","@material/base":"7.0.0-canary.b83d720ee.0","@material/theme":"7.0.0-canary.b83d720ee.0","@material/animation":"7.0.0-canary.b83d720ee.0","@material/typography":"7.0.0-canary.b83d720ee.0","@material/feature-targeting":"7.0.0-canary.b83d720ee.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.b83d720ee.0_1591723595263_0.48957675525342426","host":"s3://npm-registry-packages"}},"7.0.0-canary.afb1c11a9.0":{"name":"@material/floating-label","version":"7.0.0-canary.afb1c11a9.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.afb1c11a9.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e8a65aa356d04f5972a07b2ca99bb9e8dfd39863","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.afb1c11a9.0.tgz","fileCount":34,"integrity":"sha512-EfNq/28kI78SNSq/XasNyKVoHrsvil7a463lASnCZDFxwBjHGfBAojMrNh6qSKDhTlygKSp6W7K0CBYdFsqIVw==","signatures":[{"sig":"MEQCIG6NgSuchPmTXrWq+Eg3tQq2nVw/RYxTU0H5EcUURzhTAiBEh/XoXqVqOkMmyCrkt8Epi6NDMXVf9wNmPYOzwuM7kw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212309,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe3+4lCRA9TVsSAnZWagAAyrAQAJ9man08LmDwKyypFlEv\nFNwkbOI/aGD14MojnJYjETTlTfgIa6F19SetVRlkZf9qyR2EqqyNOMWyagUG\nTOupu0weZ26O74SleportNQ3Q1A7dkEB/GhTnCRkQQk0U92RihG9nLXizAyE\nvRSJkTs023+I0PcB4E8sKku6LDSvcstxim6B2DFeEdVe8EvqbDBf7E7Jd8Cc\nG+r4hUyV+gYGsg18KJldmN5a6kMKBddt+UhG871aCg61u9+S1Esf+8CUmItz\nJf6l2mIfipjeyu0ePLkoFcccr6VFLKtYLf7d8gTSLBauSJRxJF6uwxPfF5rv\nQyPBwO4jc4EFHg+aiu1DjKctrqV+wsmwpC/WFC9l4bPH633WSQyzAWIDKQDM\n/74gbczISw4y934rBX3DYMVTESBLO3ZPTROGLKQ5/CBbYJPEg2w5Tr7CBh/c\nuRa4m+YsdmoRvQMIXvGD4NV37q6BKinhnhyoMSHG1VgGjYivKMcdKfVeFsxC\nfcaYIjEVX8WcPUQKFziM9Sz7gI1tpyskVMQsvN5If+g6F1o0HJiP0FSSS3Og\nYglR4UPvPdPak1AbtboNsunf4uUvU63EA5012G2ZDBEKH6CZJQK7ne+PDitq\n+o7DcaAVSD3xtqQ4loXJsf7Azo7fCcFyQmaivgT9oJAwL35J7CuCf4pH0hLa\ni2Ws\r\n=P+Qk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"893f09ebba8aeae1b012971b66ce3c77c410b823","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.afb1c11a9.0","@material/rtl":"7.0.0-canary.afb1c11a9.0","@material/base":"7.0.0-canary.afb1c11a9.0","@material/theme":"7.0.0-canary.afb1c11a9.0","@material/animation":"7.0.0-canary.afb1c11a9.0","@material/typography":"7.0.0-canary.afb1c11a9.0","@material/feature-targeting":"7.0.0-canary.afb1c11a9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.afb1c11a9.0_1591733796991_0.9447015423145548","host":"s3://npm-registry-packages"}},"7.0.0-canary.39e6f71e2.0":{"name":"@material/floating-label","version":"7.0.0-canary.39e6f71e2.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.39e6f71e2.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"57d808acb77ad6e399aaebff9f29cc4fb5bbb001","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.39e6f71e2.0.tgz","fileCount":34,"integrity":"sha512-DvWzRUJ5vBiPr9p4TKg3zf+FgLS8W3D5CEFWZLfgd2fK/u4Cc2QWUXBC9if8ujEyLBTrWGq2JhraA0T/M2vCbA==","signatures":[{"sig":"MEYCIQDh/wpt8EydAWXW+R7+zYnBL97k/XR7wITwRzHPHVwnKAIhANE2GBOoG05y9pDhuFbUDs6YDX5G47Uj4L6W0F3Bj+lH","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212309,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe4B3DCRA9TVsSAnZWagAA9d0P/jot7wMkQs3tboEYBlxb\noQuIq+t4P7gfepGGRLdevViei7376MWcuLAxIYfwOsN/NPKASpOSKK5hmKWC\nfOkvFug9a4wDH9c8DwJjDSj3CF0yIfhYPcDGgcqoOTG4RDvbRj+xNUvmiGLO\nyNeh1SPg/3iHzPlAiLSuwyZ/59tSrI7gX7wOF136fwTOMHwFcPAccRZxQDOI\nzqbQatvW2qApW2n7N/gnql9tE3bAkGpuLfUKHXLL5yyT2pqSpxThDSQu5gF6\nuetr+bv5dRpQ3LoHcEhTo58yjtLHtTpCZtg8HiiplxavYRJ8dEVP7KSnbqn8\nsbfUgigY+plnwCR6Qd7nPNknOw4lHb+GmR+gTf8qk1ezIeoGWMUJ2VDNjpv6\nwETMbZuuLET8IQSRxCEohwMZ18Gm/35SbEKk9/kNZVSgjYEv6I4NqLJshTo7\nnn5/YVpkP0yDSaqh9TH9d3obW7V1nOOJusErA8DsC1VxFsMW5ClEKnvpUd7g\nQGqfhfccUg9tGS5S45S+O5uVS91TSpxz2Rz8tn3wdIHdVXqH8QfAXCZmaiDY\nel9ZgwnW60VaLN58GGYn+3yrYNdGqIq28FwKeMPRzrgSMIFxWTlbKhaeXJMG\nkus+9TAgr6WAwYzYjixHs3P/sbZ+G1M1IJsypCCZrn4E1C7HWwwVeA3AgetD\n2DXL\r\n=d/oE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2f7273891cbcb7da6646bdca0ac4c5dc2ceed9b6","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.20.1","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.39e6f71e2.0","@material/rtl":"7.0.0-canary.39e6f71e2.0","@material/base":"7.0.0-canary.39e6f71e2.0","@material/theme":"7.0.0-canary.39e6f71e2.0","@material/animation":"7.0.0-canary.39e6f71e2.0","@material/typography":"7.0.0-canary.39e6f71e2.0","@material/feature-targeting":"7.0.0-canary.39e6f71e2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.39e6f71e2.0_1591745987308_0.18113811205151786","host":"s3://npm-registry-packages"}},"7.0.0-canary.d4c66dc7d.0":{"name":"@material/floating-label","version":"7.0.0-canary.d4c66dc7d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.d4c66dc7d.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"dfc4f9b123502e62a5a3ef59f37ebe5d9aa0738d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.d4c66dc7d.0.tgz","fileCount":34,"integrity":"sha512-5Tnab6BqdCFC6W3HSNCkh61Q6KOmtsy0H34IA3YIu1eXDlPz0XXOn8t274xQyxn1pVo9hLIAxPRm9cVUhxGkig==","signatures":[{"sig":"MEQCIFXZuh/qHF7BBVRnWzBAhwv8PFElxWCvx4R0kTuWkngRAiA1ve7ZYQysVIhZXCTVLCED1dMIyg5DYwC6mQHTIJo75Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212309,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe4m4ECRA9TVsSAnZWagAApG4QAJjGc7FTa7V4a/1OM4IC\n7rldYP4XcgXG2qNNw4laCYVvJPRQKc1w9hkkQqXZIor6VulA9bKK5lyoTF5V\nchJbFwr5H/CVmUAduBDGf+pfHdyOcD9KXE2xXzncfNGuP81jPzYYSjw281qn\n0pi5WIiJYmYKfJSaEb2QahVgMhnnwBiW6Gkeb0DSsna4RyXPtphJCPOczZFO\nrTxqqyIKFzHw+FeuNK/qjlrBVIRUXEasSE8xEeCwNovPEW/YZZsxHjKJ4oaC\n44zCx2X7RGaq9ksbE8d+aa8FujzaJOCA9A1Cv1a/8oBeyEy4QpCrtqU5R/tF\neWSeDrDklQBKCY0FvHdbEFdI4mUMvepzaE+4uj6mj8SxUUvxsejMP/nomXDH\nU31zDxDHnjBJ/Ir5UHoEp1XtRdPhNkEzK1QTgasLCv+z5a3Zh7h04UoHZRjO\nszPep2HqeJoOMtguRUi0r3fd8zI0yd11uSZ4iVgl98VMkXM0dMUrf9Sn8162\nDUBMY2SgysoIFJRGeDaj9uHbryyPfnRrOYdYSGQ4Hv8maUwW0sF008ky0R9E\nynxzW4KQ2aBmDily75uV6t3wb4SsSWvDZ6dgp8EOk2yYtF14X//S0JQW213s\nyCjQGZXMqXLrgok8T6wqgpwXfUSv/fMoF/xUJKCOiuJc/y2ujKiNDc4Skp81\n9kEs\r\n=s9M1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5964d9e6836962528334c54ef81ac4cf4898392a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.d4c66dc7d.0","@material/rtl":"7.0.0-canary.d4c66dc7d.0","@material/base":"7.0.0-canary.d4c66dc7d.0","@material/theme":"7.0.0-canary.d4c66dc7d.0","@material/animation":"7.0.0-canary.d4c66dc7d.0","@material/typography":"7.0.0-canary.d4c66dc7d.0","@material/feature-targeting":"7.0.0-canary.d4c66dc7d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.d4c66dc7d.0_1591897603741_0.28590521720964657","host":"s3://npm-registry-packages"}},"7.0.0-canary.be4a19f9f.0":{"name":"@material/floating-label","version":"7.0.0-canary.be4a19f9f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.be4a19f9f.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3a945ff8ffb538e891fca1640517f23fb09a4562","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.be4a19f9f.0.tgz","fileCount":34,"integrity":"sha512-q7ih044vyvCqcFPyfE+gBlX1vb8OWWT8oa/kOypav+3/5icMgU+1Zg/kYXFWTsbGEBCJqHeXAysaODjs6ywLgw==","signatures":[{"sig":"MEUCIQCBgFhEheBgdhdX/5Ox7iYjZaPxS6fHW1hUVbeOiL5HsQIgZgn6g3CQtmK8WWKgmujlp3VNal7ojDyWobBIDBrguyo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212309,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe4xviCRA9TVsSAnZWagAA1soP+we5BUYJWk440hFlN2q6\nbA884LMiMDf+7spXTNzzmb6KsfvZ3/1g7W4B8PLhvmt6fem2PWlXRqE+xMF8\neIqrWKiG38s96zKLTCK0dmMEKh86GbN9rLVkjpuJtEuVswfyVyzAD1Y72FTo\nF4ydlNUErwhcdyxzFV4N+AF7itmNV1tK+r8oHv3SRXCFAhrvCRLcJn1b56G+\n1/FjEA0PQ96YnX2BGqm3llz4QyHtdyrrab7m8zy3IXWvMtEE+Nt5pNRQEDTz\ngRMfY/tIQage+5V08FaZpdd4jaaWcZGwUegTNk5cVBrKGRB8ntYa8aAoPGjy\nwL1NMbcUDQBeTmF9ryxlaacraBxBry/n0ymAx/7Z755RsBLG/gqa3Cf/GQpm\nZyvQNz0yilQDFP2fSuZFhzC5zQ1b+R0bG4dNqFY5rM+PlnupAvHHiU+M2iOB\ngRsFBWOTNIBFVeN2yNKpj8PQ8wxYoJydqroXk6Oz+dK79bu84O4y6BjSXku6\nmBk2quCNRfX0sWRNCKlb+qhVyuiR0pF87OCBMoEJiyjsiJiSyVBZDyXGvc/v\nyC6ccYnTR/KWFU8Z/CUDeld/g4ZtgFjg/QQk4e+njNEcwuCLjI3GFxamzGH7\nNgp+krBtu05yIFdLIE3hJ7U4agCCy+lrQHIp9HWL6SxBOw0tddgi+HyVtKJF\nl2x+\r\n=HkRf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d7a0b89cd18efc7fec60e96de627e59883e3657c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.be4a19f9f.0","@material/rtl":"7.0.0-canary.be4a19f9f.0","@material/base":"7.0.0-canary.be4a19f9f.0","@material/theme":"7.0.0-canary.be4a19f9f.0","@material/animation":"7.0.0-canary.be4a19f9f.0","@material/typography":"7.0.0-canary.be4a19f9f.0","@material/feature-targeting":"7.0.0-canary.be4a19f9f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.be4a19f9f.0_1591942113860_0.21519307383899688","host":"s3://npm-registry-packages"}},"7.0.0-canary.a6ac8f629.0":{"name":"@material/floating-label","version":"7.0.0-canary.a6ac8f629.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.a6ac8f629.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1697ee2b7a6a9ab29bb0b3de3aaba71d7e70a2ee","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.a6ac8f629.0.tgz","fileCount":34,"integrity":"sha512-9PEwJzj6cgUEzjsWMTUZUbDY5rWALfz0lWd0pudjx0pNuJFSAE/2f9DYVE/TQWwuQ3G2+Jtal2FplXv6vO7Yxg==","signatures":[{"sig":"MEQCICn4wg7Sv2gahRCs7jdzMKq9KjH2aTG4TK5vYzjVYv3EAiBKD6Olf6GDIKSauZ7XNAF+XUAW2Dog4A8Z2uy+Xlz4oA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212309,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe5+iMCRA9TVsSAnZWagAAxRcQAJF2FTHxmL7pyB4OZ3rq\nbHpgIGVoSpOtqhpRWupKPiUsXpdlcrIDtc/vqjBdP8cLLtVT58LLjtZwNPWG\nC0sN61AffMCWbjCTIY+Jk9Tf4EIcUtDRJNHCEfIw2GS7V0B8kSucKeTW+nWD\nkMeT6RcEtEJ6gna/88PswqMh7P86rNkEhkPBQKSFd4lkE4jmJ7IPrJpy4J4X\nvtkKa4uF93xIT9Za/mmR1whjBkN8DWrIn78smWaAYpxNktd7UUiW/W3YI6G7\ndka293KiyHx43txS3k531evHBIGNQjWefNG1B75C5vzD3KRFVRyWKI7OEL4z\nSMWaz6hAi4uOwwvArPLNL6wS27jSRYznED/JBOxAM6nsq4Akr4JgGBMtKmFL\n07ukCmxhS0kQfTaXltwcnrK1HfEiSxkZLbfYM2c3O0eSfOFhsAU7kjw9DH2/\nKvB3IFI2JKW10vGft2N24FXL4GE1W0h//hXgomYQCuePfYtZaBmkflTQTsRk\nV0X3fUSXJCSRyvUOXsZs6DomKgQhuPBM1x4T+dmihFmrQC1cq2Dz5HNX2QCs\n1HodqIC4j9vpdEdBqvUditVWKsCMTuwW1ZVfWv+uzu368KQ/Fv+T6oI/KZl0\nVZFnQeuWtzKM2p4ahEH4dUSe4wM07peHwNDo/T66NA1Iw3yxUrzfXfxFB9+O\nXXy/\r\n=dpNe\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"30d2dc59ec3530f0f21233e5b8e93c990a4a2776","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.a6ac8f629.0","@material/rtl":"7.0.0-canary.a6ac8f629.0","@material/base":"7.0.0-canary.a6ac8f629.0","@material/theme":"7.0.0-canary.a6ac8f629.0","@material/animation":"7.0.0-canary.a6ac8f629.0","@material/typography":"7.0.0-canary.a6ac8f629.0","@material/feature-targeting":"7.0.0-canary.a6ac8f629.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.a6ac8f629.0_1592256651728_0.4710246470789916","host":"s3://npm-registry-packages"}},"7.0.0-canary.9833dc287.0":{"name":"@material/floating-label","version":"7.0.0-canary.9833dc287.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.9833dc287.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c03576e8a880224e103322de36db8ab5fa8e6ea6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.9833dc287.0.tgz","fileCount":34,"integrity":"sha512-7lMYG6yj57kgmxd7I+9x9psXMOOC5iPpJMfr+YqDzrMr5SCPabWQnIwgRL7lmnjqCx1nFq4aLGqTDnEE7ZzDaA==","signatures":[{"sig":"MEYCIQCfdP0NWyDvWD3uYqijmMsvesF0z7dSnjkNAl9NX7Y/UwIhAMHcENTNpaiJOKgDrf2UHJC5L9AhbcfGv3Yeez9DtOyq","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212309,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe6SJMCRA9TVsSAnZWagAApCAP/jlKDvR6Jb/Kdop2sPM0\nDIK9zdzmz5kOUua27GOgS0e2UvtOV8XUs3rU7RdWRdtPJODneRlp9FUuOAij\nGUzVsFV8D+n9VXqizBbOlFSHF73iM9yDJj/tNLyO/PDoKpQg3ZVB3WQt+NOj\naMgAFNvtXZ/vhvHCs3C9HRoSAaW8JuO26oo0yex0X68KwymRkfbv9QzGge3m\nNqZddPfHJoXgWqrrBe0GUZhzw3btURhiaiOs0v74Sp5IZyfCOzBjVoMiRoKe\nZZI2xGzKhyznf1ybWG95qNs6YenfU3J+2fKCykejHU1BHkziTPGZ8o6j3vcE\nxu0EKX43MXK1X0Z7s+LODcA6G7lzvGJxJFCMp6wrVrVUjZWX/0y7o7ouiR9r\nVt5ZYyf9tipRic06edbJ11/bD2HxleFwSrC4gpFVTH4KHOIbDDfx/OQHbKBR\nd/YDujJpXuDTMAsTBDfpLhVqxahOav8JSpE4ApKiMnh43WzsUW70bNV6++I4\n347IBP41WGSSHPFVTNHrKJTMhcvE5BFpozKhbzt9JpBbVyEV6AdMrj+rS4pb\nzHo7TNDCgMVxrhLNT9pp9eEoH5xDDfX9y4yBDbewbJy1NV7hSiyF014tINS6\nHalDhM4hCZYYAlH6DjL4v7npLTHl0SeC9+5L8tip24X+uSAlfQDZT+doFQMg\nHiyw\r\n=TdZG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"6852334e45da838c4140c1aadc974a39d80a83b3","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.9833dc287.0","@material/rtl":"7.0.0-canary.9833dc287.0","@material/base":"7.0.0-canary.9833dc287.0","@material/theme":"7.0.0-canary.9833dc287.0","@material/animation":"7.0.0-canary.9833dc287.0","@material/typography":"7.0.0-canary.9833dc287.0","@material/feature-targeting":"7.0.0-canary.9833dc287.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.9833dc287.0_1592336971758_0.29210869952311747","host":"s3://npm-registry-packages"}},"7.0.0-canary.3aa33998e.0":{"name":"@material/floating-label","version":"7.0.0-canary.3aa33998e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.3aa33998e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"41d8ad680c5b7338de1ee8b14b441b3dac6b6c3e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.3aa33998e.0.tgz","fileCount":34,"integrity":"sha512-rP5YpIk7eZGEzU+WGeD6whx6cDU0wkZB+VhKa9vV2jDpYg1fsTT/njliBpYFqDzFcryVsE2fg0FtH80dpeEP/Q==","signatures":[{"sig":"MEUCIDuISrkSacmFRZxry5krZqdfLX36A1kTi8AgjqlmkwF2AiEAnXWbSLzCuCN+p4rOk3+MuZVvl9WMZcOq3c80+QOL+Oo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212309,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe6SnECRA9TVsSAnZWagAAQ1YP/3sDn8p462GjaZMmA6UY\nxdVO7VpkJPRJvAGwUpBirzifVpSn6HNDe9f+jCXrpWV+Ok9Z5khpPCTO3TTw\nCbotu/SwzvXBvj7Y9Ei6rZ1sEjeQmi+ORAIjqnPXzYOgVXLMldvv0hgALe4F\nt66L4zUXNIx8fVkmdgf+8edLV8TH7ystjzhQ/ox3Y9gDLk6rNqSlnRl3W/WQ\nKEHgltHFjDQa5hyAr72e184vNA04oEj6OH0UFrXPqepFi21+wdDaDt10q5sL\nJKqEemsZRNn+P3CWzGNN48iYw4fyvnDm0dXMFbXORWzl/r648WuWq1LwoLHT\nk+GZy69SMOYcCxog286IHnh3pFVZG0ZJA3drUqIRrcCwoSMI77C1zUPPG8w7\n8LJ4mb3sSlwnmY2AZ5+vUHYxRvE7tuS6pIVNi3VcnC1AWjy+939ZmNVrk3lJ\nrhLMn8YgjRBSf9ahkFhMCbYKp/a+xszWlZluxrk8FXVC7FU23pQ/WiK5v/cv\nCeN1bNLepn/XlKnb9bbgfQuCLxR+NOU6JdE4TCzKCPD/YBG3j7808UW3gS/s\nMVQFHlqS/Ht6ucR9+UzBpAvh3cUS4XNwayVvWYLsG5XcLg3tFxz9m1DlSrX7\nVRcxov6RYGDDXLUHH5fNKgGMZkX5BzL32z28onczxslckBFoRKVaK+g5Y7R8\n6zzo\r\n=MBWD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"20873613db8172781d25b42fda84ee1fecd88558","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.3aa33998e.0","@material/rtl":"7.0.0-canary.3aa33998e.0","@material/base":"7.0.0-canary.3aa33998e.0","@material/theme":"7.0.0-canary.3aa33998e.0","@material/animation":"7.0.0-canary.3aa33998e.0","@material/typography":"7.0.0-canary.3aa33998e.0","@material/feature-targeting":"7.0.0-canary.3aa33998e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.3aa33998e.0_1592338883685_0.4229611332257879","host":"s3://npm-registry-packages"}},"7.0.0-canary.d2b54d183.0":{"name":"@material/floating-label","version":"7.0.0-canary.d2b54d183.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.d2b54d183.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"dc2ee42a7f779c1354574600ea026f5fc70b186b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.d2b54d183.0.tgz","fileCount":34,"integrity":"sha512-GEeDcffUGjXfBcWz0owX39QUe/K3ow9LtbqgNu9Q7KD8r3d70y3LTBqBYJNAQMOxTQwfdsOSR+VsM9FOiAdJaA==","signatures":[{"sig":"MEYCIQCFxjMg2EktlksykziKVp7bAjlllIfn8Kl63jFhedI2kQIhANv61DQdyI2I1k3ee2JxfNS3sD+AvfITkcCziOhaX62l","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212309,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe6sBJCRA9TVsSAnZWagAA0zQP/iLk4Dh9/sczArKs/UNO\nPxjY0ctYfjeTW5OPC/epmul1oXPXjtNrWVgZshS8H3TZdPGV/PKNKxK8wQ1C\n6EAzekh8Sv79892BzZOyqyG0YUIIxJ/cKyny1yEOy2hB0zdFMo3cbGKFc3pf\noxBUHwBtS1ztolVkxAKwP52MgOq01W6YLlf9jMvy/oCu+Rrf7nIB0wl6lTMf\n4g0P9Dyvg6RviAgEwg+3Hnbikv9pEZsP0VDLz26PdZxQd9HB3kYbGfvIIfpK\n8EyUZfw7fEySJZOPMbCAc+J8YTHlgjrlgBZyaf05itaifJK6G2ATkHRTnUj1\nx9K8l8lNfxPO3wIOrn2PFkz3KqaCqTbKFgmpFCNnUtpnQeozpq6OmswTy8mJ\na8QBF0TW+orCcXIKybqLGZUmsrjMAwdpTqoqGd11EUvBltvYwkdRrzJcvMwq\nHYaTPvINZewAWMtr41HovfTOGzNyukLpVcwNwuS7kTKcW4oLa8vvKeA/3jF0\n4wcQKmJlt4BdByYt3fQGqHo1VGXxRG6Vmfr+vujBfNP62a5m9PpeamL5eq5p\ngzTCPckkSW92lerXvPzYLZtP/eqgK+HcNA0ZbnYfgiRj3l+Xeh9wK3zam8iZ\nEerrKPf7ufANz8RLwd/5mhO+7/bVhXa+sdx9KMWOIJ69QXmv/ce/8DjbinGm\ntVrY\r\n=d9rG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2941697c8abef0c194a923cf548ee231dc67a2c9","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.d2b54d183.0","@material/rtl":"7.0.0-canary.d2b54d183.0","@material/base":"7.0.0-canary.d2b54d183.0","@material/theme":"7.0.0-canary.d2b54d183.0","@material/animation":"7.0.0-canary.d2b54d183.0","@material/typography":"7.0.0-canary.d2b54d183.0","@material/feature-targeting":"7.0.0-canary.d2b54d183.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.d2b54d183.0_1592442952779_0.26147374534914225","host":"s3://npm-registry-packages"}},"7.0.0-canary.f2a488e95.0":{"name":"@material/floating-label","version":"7.0.0-canary.f2a488e95.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.f2a488e95.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"91545625ebae44aae08c040336b5dcc0cfd1282a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.f2a488e95.0.tgz","fileCount":34,"integrity":"sha512-7ugQtfw/Qax/PUMTzs0L1BKJMl7VcsAQSwlXYzFotsgXpW6SYwK50ceD73m8W3Yxk+imgmuv4nCW10zbhvFXVw==","signatures":[{"sig":"MEUCIDv5cm84SX0bpfEbvuonhvd8vSYt1MzDC3HUFaA/a7TwAiEA6d+TPLiq0JQ71hSNNTz/Xp/AA2/VccrOYgm2ugrFFT0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212309,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe64J6CRA9TVsSAnZWagAADvIP/09yH/RdooZkhD62+YEC\nsKRA2598iBjdNaGCYEKmiX9CTaYqIIDse9UQeChpRTMHWXFbJb0vcP0DtVZp\nzfPiWR8LFERLfPXTBTzhGvquWuGO8T/RrQjxxNTXX0HMZKY/srq98htT5po0\ni5WqBtO5hQIBmm024Gc2MVIhOSYbSNmJ22C1BLN2fvXimH8pI7/8JXk212pV\nhr6+vEMqnyeOpOvHpcwp3QFv7EEpCTUko1+uesSwpJdcX5KHpR7HjtEjhpX9\nj128ZoczsIrEz2IXDQE9nJ0ytd08kJg8vIe4c/6mwxhijI3lxsNZX/gjVpSV\n5g5Zj+4B/ehGWW2aie+8U9nzcFMrp0HnEibO3Yfa/QSMOOZ/uhrrio3L29Hd\nKEB+GXZk9k3+TKuOY3cQ3BwN5cpGYFioUiuLFGzrsyPFnspOcSI5VwRtPGRJ\n8qyi4dErmQIijzYlQJ0xqLH/hWyyZlta+riKHNUu3KQv/LeoyHKL8IP9qafP\nnxuvDIvwvqu7x5X7TOTh86nSpnkFiHciyqxPvQ7FAm0wlzcsxBwCwZA2sF+G\ngPWijOkxnpjZwZZTsO0+S/uv2k3DaMS02YqO/BLhivctBm9KcchTlNtoqAlU\nuDYBe8xDpCoIcXiUtkknYIVfYsgTZ5ZIee3XFQWjrSmstiuh4S7EiKy30Fu0\n93e6\r\n=4zHt\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"bd7f6aafa23ab94aa2f862ece45e1775f1895b88","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.f2a488e95.0","@material/rtl":"7.0.0-canary.f2a488e95.0","@material/base":"7.0.0-canary.f2a488e95.0","@material/theme":"7.0.0-canary.f2a488e95.0","@material/animation":"7.0.0-canary.f2a488e95.0","@material/typography":"7.0.0-canary.f2a488e95.0","@material/feature-targeting":"7.0.0-canary.f2a488e95.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.f2a488e95.0_1592492665889_0.2253158856402473","host":"s3://npm-registry-packages"}},"7.0.0-canary.bd8d1aafa.0":{"name":"@material/floating-label","version":"7.0.0-canary.bd8d1aafa.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.bd8d1aafa.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1167468f42a860ee1ea4414245aae95a7a127f42","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.bd8d1aafa.0.tgz","fileCount":34,"integrity":"sha512-xQmQlCHr7ERoaxltk15bKpJ5xrTjCCP4e1VWE+joq3e+gGDIUH078Fg1mIxQRVrYQoo1AzN/t9lNqJYR14U8Ag==","signatures":[{"sig":"MEYCIQDiXRFZ/doC9hoiKmuxG/oLwxfR06x/qXZ+k3ULOr7gUAIhAOc4Luk/Bvpjav4Qcga/b4cdF33lxuN7BHHSnfNTeyt+","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212309,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe64VOCRA9TVsSAnZWagAA0mUP/0670bAU8fKFZMzC16e0\n6VhxmyfKF8xhD2H+CdxffMnx8onjKA//2LromHCvk+fuIVlMtnglmWqCZnzP\nHAyJHY2wV0ZbgWChloSwAw85u43nDklInPgSHT1Fgu2SyJ00kj5Yjg3mg0AR\noN6oVmvuhZiB35iZZaoNVc5r+6M3Dk6aDgyGLTqayhE5Vj+3+Lon/anPhymM\nnebnj+6nIi/o+4q8Mv+aha+ZK4MCIVjzF0xxArVEUfhNaKBOcQeTE555BAr1\n1hHChBsv5AWGlFW5c9Pn0pZaG+audB1tiZZn1pQJNoBIWpxAgwuOucHJjbGt\n0zYdxWYviRXs9Veh/fF03ZK3qy26Ua2cUwoV7eH3XwiPPZY5vzZHK/CC5yEb\nmguRrUaEjvRgDdrQ3h9zgD2XN989642wV3jsnhWydqj0M09PQ/qfkgTxq7gO\n46Y0FN+LXqwOmte4XVcep+V5utP8wH95+eu/x+wqSKiQVohYahRnBuFDU8nf\nNS/c51bzrkeFEg7HXSVRfRvviYropsbcFgDlJV7fX3f898j0pDrwc8rJNA5+\nITWJZ4A+YTrxR6TDto2GZmbqEL684TZNityqRZibsKxb6e69WD/W4GIOxH2g\nfXlL27QVwMbQNJx5eic2Ks32XgMHfJTKtgfFAsU9O6/H1HAGHlhyjCwaKuH6\np640\r\n=87eu\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"05dd265c139c96ecaacbac16c7128e4a851b00f4","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.bd8d1aafa.0","@material/rtl":"7.0.0-canary.bd8d1aafa.0","@material/base":"7.0.0-canary.bd8d1aafa.0","@material/theme":"7.0.0-canary.bd8d1aafa.0","@material/animation":"7.0.0-canary.bd8d1aafa.0","@material/typography":"7.0.0-canary.bd8d1aafa.0","@material/feature-targeting":"7.0.0-canary.bd8d1aafa.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.bd8d1aafa.0_1592493389711_0.35676109772336795","host":"s3://npm-registry-packages"}},"7.0.0-canary.1321eb968.0":{"name":"@material/floating-label","version":"7.0.0-canary.1321eb968.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.1321eb968.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"739d3ea51c953875918fd72ef83c04e1517326f9","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.1321eb968.0.tgz","fileCount":34,"integrity":"sha512-Ck6hC31+4/srno7ppwYEh4uzLWqkn8sXbEDTZl0GKstaziRi2xI8pobXrDVWr5AXBuoK0C/a0Pw3ySZXgNThng==","signatures":[{"sig":"MEUCIQDzJljDMA0Elo3a0IuMEOgB0Vpy3bP6cZJy0zXPUMbPqQIgRx7jTGQ1i3zPNaVM7Ofkjr+6oks6iHaUR+HHDJy+TSw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212309,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe7RA6CRA9TVsSAnZWagAAimoP+wVy6L9qrcdXJZXKQWjO\n59ClF/YB4gL57givm3ZBV1kF9BZcZPHLKYjzmjDEonwKlVzs6LG37FjAzsyz\nf4CF71cFAOHYr5eCmyUgEXPFTAeXdNuXkWxOuTt2HU7a+NIar+enf16ajdVF\nMASM79H6531GCPiJI/nedW7kcOUnupZPbDQ3x7/nIWfKEcGbEWCjO/r7XJCj\nEeGziyvf1KI1d84DON9wqFFhGkdcJjtV7cygKzYrlgeNTjv5Rq5a1yzBMTC7\nzV7Ll6cMqoDVq5gXQusK+iEh7e+eSEwPEJ1bTGxPwC5W3r7mqWpEKc5eIQCO\nKSWKmtieRjeVOF/emLJyH0XzKBMtxhb4FkxRYQOcmDu/NkIs/L0kvxm1yib7\nrddYSx29oSnHKv8+YvuuCAY25k1NGjK5IRme9ZRQjvhWCi0DIyas2eUIKfUm\nHr3D3Xekax6Y6pMrTBBcwJFbuB/pzdq8+HqqsyuRE0KZ5no/h8t+DBcnLUJQ\nLRS8u9/6JcvWIGLaJTG9GvmJa4uDguOvz2fx9Uqg+4HVhdx1nG4P/8Jpm410\nzxMsD3YI5XVzQNfjnRm/Ex2O31BSFujYF+MiL43dLj5YY+ByCgyNwg5p+6MJ\nB0/FfV8cRlEOj/4m5t7JoaPGiLLd+qQpTjO+1Qjqiglzsbx4Z4W20sKCHYrS\nNjo9\r\n=54Jw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"41c074a3370c2ff9b4dd6af27f2403d15cbf2832","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.1321eb968.0","@material/rtl":"7.0.0-canary.1321eb968.0","@material/base":"7.0.0-canary.1321eb968.0","@material/theme":"7.0.0-canary.1321eb968.0","@material/animation":"7.0.0-canary.1321eb968.0","@material/typography":"7.0.0-canary.1321eb968.0","@material/feature-targeting":"7.0.0-canary.1321eb968.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.1321eb968.0_1592594490392_0.7508508934339917","host":"s3://npm-registry-packages"}},"7.0.0-canary.db5cc0382.0":{"name":"@material/floating-label","version":"7.0.0-canary.db5cc0382.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.db5cc0382.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c61ea9c37f6ab728789db08dc4881ce7a7525008","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.db5cc0382.0.tgz","fileCount":34,"integrity":"sha512-wrZJfb6bXe56dOEyTd1j2h1M/ysTwyZXmidWiHjJMOKbMbBRifa6QrEe/OP+30SPKtglQ9HVpXLAGOP0vqAAMA==","signatures":[{"sig":"MEUCIQDMaNXCwIqQrLRGRv8DrGzl6VrgM9MgZhdmq3aEjOA5PgIgM0hdgWAWlW2/2s25jAna7jGO03ARRmNqODIE/qhcbEU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212309,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe7RG8CRA9TVsSAnZWagAAU0wP/1zJ70ynGkjWIL6+Cf+m\nCUJCKhztdZbx4MunBN4ZOdvOhTWO51Mf3mCxw9w76jm6WgKvlpXuCLa28kzF\nQ8VJGLtI6szCDJtZg4UbmgV/d7gsKxnSjIIXRgZN/AkHUzm/aCBmdNC0CNgs\n8jVN87BNhhporqGk609nqMEKRPj01tNAB5X3x+0Krxl99YC7JuZ/xYub1J2u\nxB/by3cx5X+OAEbclHAI2p1LvUmcp2AfIBLil1l+0RtuhtebJ8PZKIEl3nCX\nxkmI0MXbX/1E+hhOBWv/jWyucDGBIdjEmkE6NQveMS6EPcVEpbFYN8PyUxNe\nIHn/NdPpppOFZ0OhHEAIy90eY31+oh4E042FyWpPSjKn4Zwa5u0DCjoh+vOl\n2euC51pIo6ZY03qPBk0/22dryotATt97UhgjRIt3Yrv/0viVwFS+1Xh48pa9\naxEI5N7M/2f7zPP4IQvCtQLBQiFnfd2MHdapO1sfoyCACwwmr42AozokV58k\nEE4oH1dxyGye0jsQMjCW87SqgrB6WnuPv5MWD8+F6Dr02rtmjNrQW9oslgvV\nsDI6kgJgXA5BfFFVEduEeB+bLoCkcPriGtq+pUsTCnjRs0eNnRNWyVgV8rL6\nv0oNFVmI93y4KDHOsF4lmZ6ws3jyvLwqmH2h/CwHxJFcTNX0DM16kAqqxAZf\nIm+n\r\n=nQjK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"698cb6184d0d6e6823147f7d050c39efe9b8e3b2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.db5cc0382.0","@material/rtl":"7.0.0-canary.db5cc0382.0","@material/base":"7.0.0-canary.db5cc0382.0","@material/theme":"7.0.0-canary.db5cc0382.0","@material/animation":"7.0.0-canary.db5cc0382.0","@material/typography":"7.0.0-canary.db5cc0382.0","@material/feature-targeting":"7.0.0-canary.db5cc0382.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.db5cc0382.0_1592594876282_0.25216273686220525","host":"s3://npm-registry-packages"}},"7.0.0-canary.6ac9bf031.0":{"name":"@material/floating-label","version":"7.0.0-canary.6ac9bf031.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.6ac9bf031.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"bc2c4979b48641a8d5f0a66d66a18b710d079040","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.6ac9bf031.0.tgz","fileCount":34,"integrity":"sha512-9/5GqcPYxr7RWXFdmg1d5+f121g/Ewdm/1n2loDrcr2UPDmirGIS+5ARjaZ+5l/C4kM7al2/6u0Bg19HSKnv8w==","signatures":[{"sig":"MEUCIQDv6k5CFOrKfIrIE9ZJt3BCOjEjZuNhB5TOOTB5mhqDbwIgXG316NnQQIeFo6rdCRLa0X9uJkGCd9K8cToYWKG0cGE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212309,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe7RaKCRA9TVsSAnZWagAAdRAQAKGtBSduBrItNPRhhMUk\nVU2yDZVoRyJKxpm/mf9v2fJ05wwCNqiSt+uaUtPOtbSg9vREU9d+KhfV2uU/\nM4YwAhMtCui14Vkjac+MGCZ781YLpOJEmS7cCBDIhqVpPaRbPlIr7p6MZqLx\nij0MYHxod+gsvWwcOoqojMCnRQH/saKpoOt9clzgkFWZvJxbwH9faiT/Qtkh\nKuBI9bc9QmheEHi4Gz75IMacoDIuTcCLhjNX8BtsBXVuyL08mOCjMiwVp61Y\nO56hZoUjxkMGRpfI6Sxh9ZkWP4tYV2CRFLontXPnmBifR7R4aTm3iI2dISlX\neUbu7yNujkwIgtVjIMUKzTc0QwUwsgHs93VgJ295ctbJ5JHVT6hGkJPiaw4V\nTdPdwl5rZSOiMFcN5IANX7ldCmxvRRNodrhO5vyxgX9N+GxwegeUIrxRP3eq\neXsazRe6OBZEyz8lThkvmalO48ekUEm2WY+1YIrhehrA8kJBaq9x2fpHob5v\nXv4kOpimH2yruiKdJ62fRDa1bUXxh9EAc1Di4MGtwvV1W/f6s/QHQUgxkGEp\nvTxch+ujj3yVdw1+t7XupdzmH9FgmMxKMRgmFle3A1eF1OWzDFoEYOqajpPw\n1EmNxmkjzniAdeqEqsQtgwTFTKetTrENGPFuTXmH7JAXjUOqCkAUa1o4Qwk8\nIY12\r\n=uqfF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e80b52100d3a9ae7653579d78250cf18752ea92f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.6ac9bf031.0","@material/rtl":"7.0.0-canary.6ac9bf031.0","@material/base":"7.0.0-canary.6ac9bf031.0","@material/theme":"7.0.0-canary.6ac9bf031.0","@material/animation":"7.0.0-canary.6ac9bf031.0","@material/typography":"7.0.0-canary.6ac9bf031.0","@material/feature-targeting":"7.0.0-canary.6ac9bf031.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.6ac9bf031.0_1592596105850_0.852492131579097","host":"s3://npm-registry-packages"}},"7.0.0-canary.c21b5c367.0":{"name":"@material/floating-label","version":"7.0.0-canary.c21b5c367.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.c21b5c367.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d30ea9fb44d6a509e73f8e8b5b6afcd856df73df","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.c21b5c367.0.tgz","fileCount":34,"integrity":"sha512-NJ3f9dgO/nDq5Hx9pP7YDmlp8HTb0546/9MXVZ79xQbPaMRZrVhYWM8Fsm4LxiHlONsVYjD2zxGfbxy4LvSpsg==","signatures":[{"sig":"MEQCIEQJvHXt/R2xoNdM/AwMrMK15ovVC5denQPTkIRpeWb+AiAkXL+DeD/uO3ZgQgVm7P/VlCOMXYPx4A17vW0iQOAxZQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212309,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe7RvFCRA9TVsSAnZWagAARPIP/38Upqfu6hIfxCw0fCv7\nujfMmVKz1cp+Kn4lBibmyHAKfenrXgcFHrTCb2IjSvJu0+YESmEWHXAPEBHc\ntkLWWDlPpcAMLbqHbrk5vVxNRFpfyOMst013QIovf1CBIorBhE0a7P5YrZ5N\nzJ/lLiKvNDUE6vFuT/TfVRvcL06cBqWdQ/Eh+Hknd37vzcD+1sgvRFWVHW5E\nBBe2LEeGJGFimgp0jo8plWIpS+JbDMgNo1y1G0L8YAFBC4YwOR0f3LWnSmRC\nmNWURZanb5c9kmYilg2JSJ7DK2jJ/Wx9B1wIBic3i2RhddN0rMm76aEP6BIV\n7kLF3NT8Vm9NxfHLT8/ePd8CXPlZF+Gmcy6OXdcsHYgPK5un/bqKk3T3TTuy\nQdqtJrfwFHnHjTewlhRsPPv7CJQT6iWGggwDctG9ttycujjUu5PY0fxgbOWy\nfpyShTUl952K33Ck2eCRv3ejyPTDKg+a3q0yRMlc30v/m3XIMkvP1y+yNqM3\nXaFxIJlJDJF1KDs2vfl7tFBtNRGfzTGZCnWqFpzeUMCBbkdREYUg0c3JOU3A\n7Zlznu4sl3jr7r1ByaXZlxHG2s4f8n4TUwgAUMlDd9RM3MLYUDRSq1qm/SK1\nC9QUxmsSc4fzdbPQLmOAZSqQXgjKBJbXsQwpf5I53uozVKmBD0Jl6OrN67x8\nuZUN\r\n=INUA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"08c734c10ebecdcec22cb27e38dd9d3941fbe847","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.c21b5c367.0","@material/rtl":"7.0.0-canary.c21b5c367.0","@material/base":"7.0.0-canary.c21b5c367.0","@material/theme":"7.0.0-canary.c21b5c367.0","@material/animation":"7.0.0-canary.c21b5c367.0","@material/typography":"7.0.0-canary.c21b5c367.0","@material/feature-targeting":"7.0.0-canary.c21b5c367.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.c21b5c367.0_1592597445415_0.36096295417993285","host":"s3://npm-registry-packages"}},"7.0.0-canary.bfdd7fd39.0":{"name":"@material/floating-label","version":"7.0.0-canary.bfdd7fd39.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.bfdd7fd39.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"39eb0d55f0903c0adc6111528d17eec9d28b5f17","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.bfdd7fd39.0.tgz","fileCount":34,"integrity":"sha512-fHPOPaFQspzRRvTUGHwo52SuxuH8x3HMgI8oeFlmm2QFUXUILNM0bDWoUv7ajT/vc6+Djo+iPLCXTq43qFniOw==","signatures":[{"sig":"MEUCIQCG0rYiJNQkJvWedlUKxbEa3kpKagc6wEBOKuDYXm20IQIgL563Y0NwMJgL+MoB9el63Rdv5izf+MT5KnRFh9CRLB4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212309,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe7R32CRA9TVsSAnZWagAAdo4P/1A6Thnr7OAN5OH8fu5M\n1x2ca3BLFjgZjqt760Y0faA8IApSqhmML7pUidvdXsHzSMs+P8zE/oVn0WwI\nEG0bFvrXt3dklDBOGmQUxsX8SjchuzDu9dF6+aKUv/3ZPruI3DBXTy1pn0jR\nxyxopIRJ1fmQcvWSL88nJzFrSY4qrtedMlENqqDzimge6l9bKDXI9C90ZLmK\nSh4qoaBaYf7nE504xi8iWYije9fPqgdMsE9LMzcTkQjJzN9ywp83JlYzt6jK\nk2BGdq3gINIE7hCBeVt59zkg4xykqOWZr6Q1OrlRTd1FMzs3NFK4z29/b58W\nVPDKYW33o+JouAWIDuAUCuhbntOWxoL0amTlFrCQUU7tETnH3KTjzN/6Ylxm\nMtyG7zsuOW2jFbNmnIbIUi9u/1Q13U71cY1dUXYlY5ulbFxDm69Tc3dpwbyQ\nksTNI1mrxV5jC9Hiu6BR57SNzKe4fxMQYSRql3LNrR3HOAk2kYFFpssScd6p\ntsgwZVkQu2NkEfiUT3Ba7eUSUjfAR3HouO4TEUQphyCqp4KZiuJp8oKHOmZ5\nLdwCtF7GcTBuA2dlfd9v5aUjmG2B8Tt2CEiUTBhwTIog13u4Bp+SV6Do7+tP\nYpTmD6bA2MwMAkOYvnw9C6pdM0nTTyGP9bEX8tWzTRPXkswbE9gUe3Is0zgL\nmahp\r\n=AUud\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b9b865bcb7a8ad91c21f4b1cc433f6a49dc627a2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.bfdd7fd39.0","@material/rtl":"7.0.0-canary.bfdd7fd39.0","@material/base":"7.0.0-canary.bfdd7fd39.0","@material/theme":"7.0.0-canary.bfdd7fd39.0","@material/animation":"7.0.0-canary.bfdd7fd39.0","@material/typography":"7.0.0-canary.bfdd7fd39.0","@material/feature-targeting":"7.0.0-canary.bfdd7fd39.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.bfdd7fd39.0_1592598005475_0.5431307257059936","host":"s3://npm-registry-packages"}},"7.0.0-canary.10b505785.0":{"name":"@material/floating-label","version":"7.0.0-canary.10b505785.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.10b505785.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2822b1d5fb48a265a11c6488952d8a1138eced35","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.10b505785.0.tgz","fileCount":34,"integrity":"sha512-skJjmdNge63JXApsSjYQAkCG7vCoQl+StbiEaVab5mJmI5SmAfU/xXlU0+WXgQ2c9ww6lLJ41WZOINXFsU0MhQ==","signatures":[{"sig":"MEUCIG7tlRXg2xhOZ/5sjZKKejONxjjhjQHv4sSPLpjB0oqJAiEA8VqP1xnD7o8dPU0wZIjf3JZtN0J+Hu/GHfVHkL9O6+A=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212309,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe7R5NCRA9TVsSAnZWagAAKf4P/jyXTvFXaux0QBh0yDrN\nJiDI7JADt6b3Sc+Uy3k6ji7p5Xg70oioRPdo4RB9TP1lanxVusiodxx3Xlqh\n1AJ2bPXlCCA2uA40+4xRVSOoFh+XRn0enrSaeNOVcr7yNFddjtjitvOtSBZU\nlnzWsDcKMIj0OX/CujJ4o3qgEWxqW0byKvacqbSEVpyxY6ZF37xXhcKt2556\n9MigNdgEhKbgjPHNrhFqws+4pgkkpiYFMaqv5xRR4i++Uu8dtPIl0YTyQs5a\nnRPbipA3ZXg01zscDOX6KVzk7GVi+duh1KvLgY6l2GjD0MXgA62h2koDkmYh\nJXv0VVFwbAbRgawJvBO2Ev09Z34wYQCdd8FxvGeX6eBtdfokey5OH+qM5cH5\nUs/KO0fySA8PH7768AcxKykAfrENRuysW2km9N2fqvQA0IDCoKf+Gk8cx9FA\nThBUHA3/D/1bTCAikJ9cypPYpSrQudvo/D8YKyemZUnGPWRYtJGKjn1HH+KR\ntTTxfYBOZ6OAsOnK36UtM33PJisKhkH0STnQfBRgnmVjrHpW+AxWEkqYyKgM\nk+4bpPXL0FHrDs7zwvxMO99gyiEfyVecfSph8KsyNwoMfw7s0ilRRbbY84/M\nbLeZxKfRQ5VvohuYG1ctxa6vI1BuUfe8wOU2KuD1mw7wea60mvaYSIGwBpdc\nj4C7\r\n=h3uq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ed5923edcb43bfccd9d40cf56cd605eeaab00d1c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.10b505785.0","@material/rtl":"7.0.0-canary.10b505785.0","@material/base":"7.0.0-canary.10b505785.0","@material/theme":"7.0.0-canary.10b505785.0","@material/animation":"7.0.0-canary.10b505785.0","@material/typography":"7.0.0-canary.10b505785.0","@material/feature-targeting":"7.0.0-canary.10b505785.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.10b505785.0_1592598092638_0.6141433758552968","host":"s3://npm-registry-packages"}},"7.0.0-canary.6483d3f44.0":{"name":"@material/floating-label","version":"7.0.0-canary.6483d3f44.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.6483d3f44.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"72e81d21abb856da1bbd82870c16e3d892216c4d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.6483d3f44.0.tgz","fileCount":34,"integrity":"sha512-Ksz9se0xjYq19HsCTsj2CFhhme4V+Q/KW/T9prVuhxlGJLidg5+poPIwExu1SKIRG74OpxT2sAo5TK7FBtVVQg==","signatures":[{"sig":"MEQCIGRSE/oDr2gcx1pkfE3QemjM6mhFm5C9FIAyt7WV6K9FAiAYZcZl9g+Roj6cKvm2gXXzthO1+s8DYz+AeMQxqfk76w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212309,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe7SIZCRA9TVsSAnZWagAA3nEP/R9VQkshHyAGOPJQFmML\n4SAKzWTTI7PNE6YJFSgbXrLJz5jGWtdxN4CfNMkKO7th19gxtGsZAlWI5D7J\nvy4dCHgSzMmRYtnS7Z6wKC96SQZTm5TvrFbfyyw69W0IxgtEDC20tpPLOMdw\n0ZdyhZZv5cGUsrQivsiIrOiUmcYZxmcHrahcWMauK/P6WSCu+h0b4PSvbml8\nD887A2pImRQImDk3nY1tu0RcLBvCIQ5ryWHXJ0qqlozKHpIfCqXmE3gZ9v5U\noF/8ILZw3dbVewHdTlemdjClW2O+ndKK39wHHx5PsaQYVVKpFYodcx2Aww5X\nXA+bTkDWZ/BV/yjoSmIcwNUoz6H+4wTffJbvEiDfGBDhdWqiAB6W4iY3F9ef\nwb5jrn9yWEDCfwPvZ0hSqCqHm+YOI4NjWVZ+AEv3tjAWXOc4dA9C4SOD5EXU\n32fiAkuOi8r7edwVP+pNT3393U7qAyl7xRhaIxigBGF/2HdqZb1DG9F9YExl\n6Q0eyMrTX8x/B97Bho7DYjF+PFKjf4vfP9sE//kqp28Dguy7VLBhHAlrh+km\n06ii9ftayaCMK0JUBgu7V6o3UlZL2RlmXiKi6m6vEeVesKixopMOHaso83dn\n8ArrvFc6uxitECskUMgN+lJN8gQEbxdfPStpIMo29SiiAo0d27xGipUW70nW\nfBjC\r\n=yHau\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5c831da018408423d31c9c4813c507ca591a010f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.6483d3f44.0","@material/rtl":"7.0.0-canary.6483d3f44.0","@material/base":"7.0.0-canary.6483d3f44.0","@material/theme":"7.0.0-canary.6483d3f44.0","@material/animation":"7.0.0-canary.6483d3f44.0","@material/typography":"7.0.0-canary.6483d3f44.0","@material/feature-targeting":"7.0.0-canary.6483d3f44.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.6483d3f44.0_1592599064957_0.8628514429261802","host":"s3://npm-registry-packages"}},"7.0.0-canary.30a74e921.0":{"name":"@material/floating-label","version":"7.0.0-canary.30a74e921.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.30a74e921.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"179bad68acb3bad30eec1c1bb96bc2547acc7ce0","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.30a74e921.0.tgz","fileCount":34,"integrity":"sha512-5XgG6SXbqMG3TUiB0n3tC0XUSgGwSIwv9c9qvcCmKDDTeIZSV/ZmEOhZqXEpDiZxZaN0DNn+3KTJjlINs+A6Iw==","signatures":[{"sig":"MEUCIQCpoiht870LxzRXLGKrof1QkZlgTkW9MK0ewodZTm4qVAIgDPsBqnU5AQXcSaxglkog0xWoEzuJdhkajWV+5l61Q2Y=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212309,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe7SKhCRA9TVsSAnZWagAAWZwP/28j7X5Z2JpW3HwWaxgv\nr1+7g4aERW1bK8RIPVDeTAbreQb5pvrdo2xkvFPnUOikB+50GJKwq1JAsYPW\n9/I2sNSebRiRbG3B29uxc25ZIc5GRbX7+iZR402AxXzqEyTWeM3OjO/lQKke\n/3awYhMz7IeZs203hJcIzvovl+IoW1OZWM7jlNzSzf5lioJ2r1WO4Rj71QDw\n6v7LGtn0u+s9cLh/deKwUwPfYhApgUOI5EjzJbf2GDxTxP0g2St31lJuQJ+F\n5/HoCWoZnoljmL6ZwBnGo6dlOWeDDoXA1qRnoDz3tsajbWVLlb68zkU3+b8H\nupdakb682Ex6UTWugM1n28oaySfA/X2itdZGzKqO7i0UPPnkDnFRdHJ44Fd8\n6qyyG1S3eSDQ+aUu4cmFwkSra/SfOoZtCyC4xCQQF0oID6q/iMS1xvd1v6KX\niMq+fhpu9/sW9FbCZdNAYpa4MhLbyD9ip7s6mMEd9mT1UY+2vk4h7209DWXH\n1mI7eWkJv9qaYLwa1gFccl5eEOZk5YnLBQYeYNO89VD/jZL4r3/iym0+Op2g\nfbNF2SucoZ8NxirCaz6ULUprds+h1/Zxhk9PY5EnKCykLhZAKHBTvhI5/Q33\nDjjgJg/WTSEorBY34ld96yHlwzJnd/gzL1Pte5ysh+yiz316ODITIK1Lb7pN\nsNPZ\r\n=RqoE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5f983e004147b05efcae5aac51dc16aea4a18a8b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.30a74e921.0","@material/rtl":"7.0.0-canary.30a74e921.0","@material/base":"7.0.0-canary.30a74e921.0","@material/theme":"7.0.0-canary.30a74e921.0","@material/animation":"7.0.0-canary.30a74e921.0","@material/typography":"7.0.0-canary.30a74e921.0","@material/feature-targeting":"7.0.0-canary.30a74e921.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.30a74e921.0_1592599200974_0.12477391209107314","host":"s3://npm-registry-packages"}},"7.0.0-canary.c20727498.0":{"name":"@material/floating-label","version":"7.0.0-canary.c20727498.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.c20727498.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e9a9bb00b1aaa624b0a83d7d67404772e89b39ac","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.c20727498.0.tgz","fileCount":34,"integrity":"sha512-X3JMnI5bfCzLrEYTLQGo5nA75q2QTDQBrbk8LnHFOtwUUPoxec6fvvjyWTcLeOagUmnpowjOhZ0L7ALiksfmzg==","signatures":[{"sig":"MEQCIAxRT/OUILxjcPRE+c/AAwh65OYsQ3e3HSFX0qouHlgEAiAugC8rWR/+YZnfuM3NHONrWSJ3/ZfDZd4kkCrS927hxg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212309,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe7SNNCRA9TVsSAnZWagAAP10P/AugiqQgqZqwMYVwwRYj\nXQiElMPpZiOZfuVnvsxWPM7QKiWYMg4nPqKfent2IVWgfZyNJrHwQ8XWDb10\nWRBaVUhuqVE2XMLZlVSba0jTROkn5sqbxbypg4P5N0hgHHcOp3lXRvxiNCf4\n5440AltDKZHGuO11Ul4IycpbVOme0T4UjbcbK1F2FGNg4TWyVdqQwBIeyiN1\nl2kVCEHql7BTszeJTptXd5gNCVqmozm3l6ff0E/mD2at9tCQi1np6zEht5rx\nmPCQ22JWHlt26qjkWIAM1htN6enQd2r2qSYecu1X8NbhdmWtpN3zf/fq8JXk\nCVqvTgMuMLZJl4IUYWLfIZNrDBx9QejRxwSYLN4VHBRX0JfEsHqiydcoQqfg\n9Kdn6l877+SdGGtbt7bAE5fmoH/ZI/sY541PebDiqszdtDERqCU6FmCoRwKD\n265FAuvz1dpPBd366rgDchCA/aBuyxwyPQQbkvbTGPpc2eaN/O9MN15fOhYT\n21obBh/LMQgJDopfrw1FL1OsQhY6hAz7DOsGOBqmiRSYIAo5htl5Fq+hIgZ5\nkNrpcWFe8/w+86EqSfFOwXOd+rmm939sUM9Rf/EdiAp3gYtmH0kAB36XL+R+\no+GJQWdj6LBelbuB0YI62D5GOlt0jz4p9yjYl01Day0PM3Imo74tYWizzrNc\nwfds\r\n=BWsv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f9ac75746f7899d34903c19ff758bcadb9ce2d30","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.c20727498.0","@material/rtl":"7.0.0-canary.c20727498.0","@material/base":"7.0.0-canary.c20727498.0","@material/theme":"7.0.0-canary.c20727498.0","@material/animation":"7.0.0-canary.c20727498.0","@material/typography":"7.0.0-canary.c20727498.0","@material/feature-targeting":"7.0.0-canary.c20727498.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.c20727498.0_1592599373045_0.6851181888622606","host":"s3://npm-registry-packages"}},"7.0.0-canary.4e360ae94.0":{"name":"@material/floating-label","version":"7.0.0-canary.4e360ae94.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.4e360ae94.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"46f657f294d5dadff113488f3d383d57aa48d74f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.4e360ae94.0.tgz","fileCount":34,"integrity":"sha512-i3zuOJDE6r0qZRQvJiYEfhE+zAoyFRLnkDWIqm/bqy9uX9YT2zFMSqoVZy6TjnkA8at/70z9zGO7HnPbgqWBpA==","signatures":[{"sig":"MEUCIQDDMfHIq+yOmEfGY6Gul0Fy99ygZZ0ye/w7Qtzxg0qbMgIgEDA/88pCMUMpXixlfN35zeBqFSk99uRmRORCqgriZho=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212309,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe7Sc5CRA9TVsSAnZWagAAaWYQAKNvWBA6W6kFRFHMBR4q\nawzNUDHxk8084v/mMM56756qcidicKLjMD37SwCH3VHNiuLA1wJROKL+1Oxi\neo0yEsqfqr7iYWI5E4NQL0jIE0AL0PmQs5zw7Iyyy5XHnvn5Dagv2LKXD7kG\ndgCnp7Go7ax1zlvC6nlHNPma3ngF5Mr2qqrDxbFUZSeZ7pPv37vHgq0iQFRe\nAaEPp4s2KB11a+BLxMYbcZ3NTJ4TO+0ynhZb9wNeQ/xH/mX2xzTla3zOdVg2\nAfs1eMRKx2+1K9+53Hu2oUlVfJXAoFPxS9WsHoMzMtbRsf1Wtd0pwLWaYiMS\n89q6K/T77VVKCHeCf0qUKE0DfpQnt6S5gfC1aIfYvZ/fozE/pCYjXohsyOZ3\n12RbNI+15WEoFwDm/u2HXPoMj326K8eFOtlnKjZXqO08Rdw2AaGzIrRoOGPG\nKh4MOH9tKU+cOQhtIXkkY9APr08m1jmiF4NVCYKAzKTrCiZUTvCmFDuGedcG\nzckH1EOOdJ/AOlSwTz5rtDlS/eSM5bGl9IgbT8OR9p2bEJkA1naqChCB78YP\nT3cTFqe/YI4lhjCFdGr8M2mOARTlfCN8xbq5GNc7iAbsZ/q9ufMEaLrxn2Xk\nciaiWTEADU/vx3vXU+i94J+QOSUiyKkC+WRwqKz1/gjZOMQfUHk5igsFYZr3\nid43\r\n=jo8l\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7bbb3adc3aa84c4095304613145fa53862e147a7","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.4e360ae94.0","@material/rtl":"7.0.0-canary.4e360ae94.0","@material/base":"7.0.0-canary.4e360ae94.0","@material/theme":"7.0.0-canary.4e360ae94.0","@material/animation":"7.0.0-canary.4e360ae94.0","@material/typography":"7.0.0-canary.4e360ae94.0","@material/feature-targeting":"7.0.0-canary.4e360ae94.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.4e360ae94.0_1592600377000_0.21120042536370986","host":"s3://npm-registry-packages"}},"7.0.0-canary.8550fa53b.0":{"name":"@material/floating-label","version":"7.0.0-canary.8550fa53b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.8550fa53b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9048bacb5b4956a1b7a2b3f3994555628ec8d4f5","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.8550fa53b.0.tgz","fileCount":34,"integrity":"sha512-YC+OhvT2CZ3RPlvPA6cVr2xTEO15HLJ7v6QsMc7F4efGxBSA4RYL5wTpgP6KmTD3SokeLIfBqcL1/Hh1yFtVbg==","signatures":[{"sig":"MEQCIHdXUiZYFWPPORdrg1KoDkvqaP6ghu9YQcTVIOdTIVMtAiAP756VZbtB7rYyBok7HBJM3p4QKeoeQDBPEtZKKEclrw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212869,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe7SfCCRA9TVsSAnZWagAAa3oP/0xH3pEk8yodjOi7rYbH\nv8wdzrkk1ryUTiOL96Iyd6e9jD39F+uukiUzPLyGXC+sZ1L1Ed0KpbScR5jz\nD5cja/B9yZ1P5yK2fXdANNRSl1lkFYO6eJOLO/coQW/m1zu3kXl2uUrpMNFj\n5STGOClQYwz0EuXa/0O6TeYiip9IonE51bJJnCKQU7cuEoRfEIgMfE6ZVKcB\n5OkH3/RGsQhWP15wHfUg9ybHvT9RVpisUm4MGjE7CYu9GCDbHJNaCcuvsWyn\n9REcF3axD0RuSwF+kJ4Ru8j8pKWxhXMhhIarTviuP9/htXyWcutWRlyQy1Nd\nYdh5hRK6grfgsLGuiO1ZAqIv1z/9dxj/1gStpSJTuHVs4s4BqhSnUlQqWnLF\n/DTM7cTQNapLKEJydsOwo48IvSjEEiPxiLJXBevvZ98SLhwv+RrEEP0LBOLO\nfO0VWfL4QVH9bLBs+ZXfhny2MqLrCrT6qB+HYqiIKDLtfi/kqXFxd+g8M+yM\n+92DuKRIHe7ttQ1IHBaQppkJIhX41CymDDaPrIabHwYWwXdhEHbFcvWBrdJg\nOWnIp9WcuHpz0G5ZRSyh5dJfcs5DueML0YZl1iNUVJtk+lvwaB50T1XH0qmj\nvSJ6pF847yd97RFcP5FqB4PzNKsJtjn2oqULgcnyLfUPmkMEj89/lhBQ2mKQ\nyXDG\r\n=S/ET\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"9d8529cbd579dccb2470a1f19fac57883cb2a5ef","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.8550fa53b.0","@material/rtl":"7.0.0-canary.8550fa53b.0","@material/base":"7.0.0-canary.8550fa53b.0","@material/theme":"7.0.0-canary.8550fa53b.0","@material/animation":"7.0.0-canary.8550fa53b.0","@material/typography":"7.0.0-canary.8550fa53b.0","@material/feature-targeting":"7.0.0-canary.8550fa53b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.8550fa53b.0_1592600514158_0.208400300791586","host":"s3://npm-registry-packages"}},"7.0.0-canary.93ade142e.0":{"name":"@material/floating-label","version":"7.0.0-canary.93ade142e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.93ade142e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"92d09c4d7a06c3084a98e4f61661445b8750c94d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.93ade142e.0.tgz","fileCount":34,"integrity":"sha512-y7RIzX67Klv03H+kSfWJ9nDanJWFijjcFDNCDt1xEhPbow2jk+N6D7TKpz+/CeFZy296BU6p02Zc4ArGOrnq/w==","signatures":[{"sig":"MEYCIQCul4kEIkhgyHSt28K+G1/cRDRVzs0k3sh6Yjt7y6OuCwIhAKi1TXxx5SaSumTiUooLbd+JJTOlCdGW+EL1EgSNq66f","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212869,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe7SgKCRA9TVsSAnZWagAAzDYP/11q8k918v1PPC1WGtyt\nrdtfhENavhoMe+1fMi1015NbYZF76NXV6OQPwcVG4tYVuefysAl4NuDHvUcr\nCqAE2SrSkP8Wy7s5KwfEfhYUumo8qu93+idopT3fVz0QIkoi9fkjzZe+OCo4\nZPoWTZisy1wO60vSOHIU4MNcX71AJDLH7Nbm92g0/UZ5ULS4FaLBi16P/Qck\n+yDV88YCrjNM38k06iSCJ5Ccine2zF+c176t+VHj2o8X6EEKXa2/5UoMbxNh\nWPV3sxnzpfCVWxbNUhtNR9t9nm8xgWJbk7xDUNb3aE7NVTEiHWUQwK+uRaWi\ne3oPMj22sVI3P4XGYWgtKbJv1P+UNZVaKU4AUjVz/ohb9CuBvnBWIlwPVFdY\nCxuvl9R6dM5glDzsjWGTGBZxqXBkihuK0Lp6wlfGQZ4Z1lcdTQ7gDUOv/nvR\nH5dLC+WTKRNo3QmRHsNHBmpRdOiO2qGbH5zL3n1BjATmAESEQGKaS8owAEQM\n7qV6XvOW00V2Lukg8EzPm6lboU9VmWf6tDsLo1j2zGnigKY4TgN6MYnL6ntz\nUo9D/q0VnRy7Lk60VhVRXG8+E3z4X9O+fICngS/d1QxQiePrTVLJ+sK+eCsw\nXW+sbQp2IlGfl2ijxkTjlz9rXD/1cYh0NUpeuLFP7oexrO54X3QFi6+B34PE\nOXae\r\n=Psui\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"fe392b7ba8c7033e5614eb91a20bdf2e6d7d7936","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.93ade142e.0","@material/rtl":"7.0.0-canary.93ade142e.0","@material/base":"7.0.0-canary.93ade142e.0","@material/theme":"7.0.0-canary.93ade142e.0","@material/animation":"7.0.0-canary.93ade142e.0","@material/typography":"7.0.0-canary.93ade142e.0","@material/feature-targeting":"7.0.0-canary.93ade142e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.93ade142e.0_1592600586108_0.6419925581512553","host":"s3://npm-registry-packages"}},"7.0.0-canary.a0032f5bb.0":{"name":"@material/floating-label","version":"7.0.0-canary.a0032f5bb.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.a0032f5bb.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"abe3a2376076cb9095ed9e02d9b225bb3ca1039a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.a0032f5bb.0.tgz","fileCount":34,"integrity":"sha512-AY+E6pSsMWCbvD9Zdi2hxmuHH6KMP/PJcfmHg0KiPyP3M9iCVpL3W2I3bx5KjiC/Znsdj/uFemlB4myKlCCvFQ==","signatures":[{"sig":"MEUCIG5aWvAn+94rIVB1HJWa97klYIenw1PZRLy1G7xo7ejvAiEAk+hWAH2vM6Cv7GPoHb8BjCuYK6CHSOiP2NUm6h4Q68c=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212869,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe7S3sCRA9TVsSAnZWagAAux4P/1yhET9VVucwHUe9K/GM\n2PhfuUh5fgQ4GCNAtvulxL+PBss70BCe0x2kCgkPI5kGTY/nrR0RuQU2KNdL\nOHoAgl9kOnL/oZRH02be5CS/PQbJEcMa7JREYP+zzxLM9WoWuOErPSC4w12v\np7d1dq+oxlDeyUkhmFRCokTiPJ8W2Jsdjqk9B1qC8rovhXSzhX/z80SOS75F\nW9lpy5/JoB2D3Uxlp/nyx1CpocDJIOQ6vW9QAuI23tZ4euAvSAllMRSrhKmN\nFAAIBbF8+8t8QZFwbbDHnrHG33T2+lArQ6JmX7NZRYdkuMTNQ2O61Hi4XLaH\nJi4Hj1o2iCQ8Sq9OCdXdWLwuAsaVk9+5PkptUJLMGNXGE7WX+5/IQvk6vEXB\n6JPfKcukig3/7WQUvEhSk6+Gh0BSalBODs8MRX6TwEz4AnjBoMdrQsziE+l7\nJts5gWqFE/N7qGaCQyxALzsBSjxMfgTFMWP4Kq80nBON7WXuB3m4G6lijk62\nVpOteKcLcNphS86tcLk8OIp9WozzGp/EjMKqIXpuhPLvZ5stapEgLNQN1IuB\n60UkSgqvW8Fzu1PJV/Cj0kcqfw3BqmjkuwZMCRZBVrtZSVHQpnetqh0i6Na0\nHEjkpu3idLXvv48CaM9cCza6hXyH5Q4ykxTu+tOGo859HhZKTeyLyl68WQXo\n04sk\r\n=v2af\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8c0789d8c409d91f7f4e13675ac80e0f355bac02","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.a0032f5bb.0","@material/rtl":"7.0.0-canary.a0032f5bb.0","@material/base":"7.0.0-canary.a0032f5bb.0","@material/theme":"7.0.0-canary.a0032f5bb.0","@material/animation":"7.0.0-canary.a0032f5bb.0","@material/typography":"7.0.0-canary.a0032f5bb.0","@material/feature-targeting":"7.0.0-canary.a0032f5bb.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.a0032f5bb.0_1592602091344_0.6694377179355311","host":"s3://npm-registry-packages"}},"7.0.0-canary.3f342e721.0":{"name":"@material/floating-label","version":"7.0.0-canary.3f342e721.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.3f342e721.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9b967d8bbd1f88c20741d78a6696683ed05477e3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.3f342e721.0.tgz","fileCount":34,"integrity":"sha512-vx58Y0EiJxn52wIsz1/X/2BeTHY0x2OAUBgcVHxnfRebll6+Q9LVcPpgzCcHL6b1RGXNIDiGB6uXn9L4fxMGTQ==","signatures":[{"sig":"MEUCIQDvmTma42c5NN23Qpd8OxoEmX/CdJGCZf9XE0YwB5pM7QIgRWQJUH6wqJygJBGaSbeD4nPiCTsQitaftuV2+X0Y7D8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212869,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe7S5rCRA9TVsSAnZWagAAwAoP/jKSAZvVcBT8Z0vEhg6N\nG5hSbm64bQdKXqMzRGESfAFnokQ2lwaNtAJrQ1BgpS71X0uUFh1OB7gAjR3K\nTg9jzcJUWGcz2MA3GVU7OlbJTJ9NM66nt7jNrs/7C0rz4W7cykL4BOh1JDTC\n7DJl4e03hSjZffTldefcmWcrvSNzhwRCI5C6FAOx7rteEh614vCIOAqnxVkT\nyLjGPyW3qI2T9m2d2TwuAfvHB3237PvymjWah9P/AXMch2NBwNd1roW4cqV0\na6p/n5AHl9CmZD5OntAvQaXIH19F5AFZO7qMuWrNhUS2st9rVtX1jqFPOdcx\n9Qw2AEY1hmKiGSQzShP0uh8RXBw4ftGzxXo2OzyafK2W1YZW8or02MV/YQWt\njIWn7SA+6VtQaemlxug7h9/4O5QsufcU1weQdyjaIkUkMO3cVN+Cshnm8m6s\nt82cI8QOhHjZ4jQi8itNcJp9XPfBbwQlmsHtK1FvpKJRzP2bTluav1MVKxGp\nuWTTeKtsfgvIKcZTO2Kbw0GRcHW5R7kWh0AX9AODToAiN6ypyNGsL3Jw0Y+v\ntwnNJmj9dfUkXK2PEV3ZB6ULMSVb3doiSFS/f1ElE0EEts21pHlTbyzq3Xtn\nGDJGyq+IGiOB1cTtXVMbUF32u4irIHOvL0/SF148AYd2G+J3J2o+kdvXOVWg\neCvt\r\n=bLex\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e972042c8ae08ecc8469492707d55d647e3495e6","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.3f342e721.0","@material/rtl":"7.0.0-canary.3f342e721.0","@material/base":"7.0.0-canary.3f342e721.0","@material/theme":"7.0.0-canary.3f342e721.0","@material/animation":"7.0.0-canary.3f342e721.0","@material/typography":"7.0.0-canary.3f342e721.0","@material/feature-targeting":"7.0.0-canary.3f342e721.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.3f342e721.0_1592602219431_0.9652767914138971","host":"s3://npm-registry-packages"}},"7.0.0-canary.ff89457cc.0":{"name":"@material/floating-label","version":"7.0.0-canary.ff89457cc.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.ff89457cc.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"bbc2d8844de214af3d3c0aa77c6a6c19dc4983b2","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.ff89457cc.0.tgz","fileCount":34,"integrity":"sha512-ISDyuxvZy6SAbpddB1dlio3YoE+FE9y1r72d1+V/8iZSgdxe2LNL1jvdhxiVOm21KrFC3SWJQnrc9HucjMfkqQ==","signatures":[{"sig":"MEQCIAa4JgXeQUCxiTGSY/7gl5fLlwgPugvIh53vX0QMDJhbAiBwHCeJFjhsSUjvmXinyTJIQRPsrAu/uOAYtHDFDUg9IQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212869,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe7S6yCRA9TVsSAnZWagAAI5QQAKLo7E1dsYW09GFl+Kfe\n7KP9cnmYMIybJt2oJjdUPdg8Qe6C9ocy+pJjDo/9kpCk3sVYBITl/u1ty0nF\njZjmlNjL/G23huOgbFMc5aBHFdqRgk03tH6uDeNYNRgkZJF3d1TB5ySuaHZH\n4EKWpdfj9Q2xqCLZFaAU6COurwV3NdWYP41Us//35cWuXfjZGylQWqSfirKo\n/u8WRTbenCR7jHaoY3ypaqdj2yqJodmyMyqZfocHQT5LcPkvouHhJtMkb3KN\nMYaV5PRRIH1p/8MQMGO3GcmiSTFXmxozOnp+H2mPvDlNTEOZE/ju0KxKSGup\ntAnwiziOYlovEpl3KVgi2Q6PZrjHhARWMunJ7shjygPNFHHWgTq2pWQ6rYSH\nr5PqJYaEt5DHd5m90DZV3RRpHpam23JKhTmSl2hn3wnMcwlByariZUUZF750\nHgl3p/Vo6NdxodGWzL8G+cArIh/z/DaO2wCCHea6bqQS+sjOPUpiiLYpQWJ3\nEprzAR9ggynrU03YiVtnbrDtKHaaJGYuN2SqUWh/ei41IkqKaVrawG9oOXLF\nWhntYeQEaOdTP7hBhgx+G9GfHSiMZdTevHEL+iux453a9wxA6+FEAQnZiSGh\ng32xQuaYm3gmxYawYCKI+ZnQi/BaAl+dv4DR4hBeZJmsaoShbXPD7gzkOUCd\n+VUc\r\n=McNF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1a3ec64383e8afdd818b5edfb74f32f6acebd044","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.ff89457cc.0","@material/rtl":"7.0.0-canary.ff89457cc.0","@material/base":"7.0.0-canary.ff89457cc.0","@material/theme":"7.0.0-canary.ff89457cc.0","@material/animation":"7.0.0-canary.ff89457cc.0","@material/typography":"7.0.0-canary.ff89457cc.0","@material/feature-targeting":"7.0.0-canary.ff89457cc.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.ff89457cc.0_1592602289962_0.912165445628903","host":"s3://npm-registry-packages"}},"7.0.0-canary.4a1855cf8.0":{"name":"@material/floating-label","version":"7.0.0-canary.4a1855cf8.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.4a1855cf8.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2b79755294cc7d726b7b448807c562fbcfd5c4a3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.4a1855cf8.0.tgz","fileCount":34,"integrity":"sha512-4JnsUTW1zJTL1324MuX6SxTeHFyxeAeW94xqM9i7pO3Ac9LPG94x29MWkR+k9j9kC1dYqRNNAr3RAK5mwLdojA==","signatures":[{"sig":"MEUCIQD8F7kEB3U5sDwy+z8cm01QmuR110oJo/8Z38/fYTHASAIgDHjjr1spHw5hsekLT/Dv3EXEaPcsI0Qw7lrxlf+vb6o=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212869,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe7S9VCRA9TVsSAnZWagAAIWQQAIlfch8Nyv4zHBQdmMd0\nQ/ytdXDpLD8sji6piNTQ7NeYA0rheo8AjKgH3ZHCDVJ1M6KZEPumE8FL7WER\n8TvGo1I60UA8iGLafkuJnDNCk+2sge3dX88TEZ+2Ov62mrnS87N87uPjxqX8\nmf02YEZvkmvHhWFy109cCiMqRtbzgjvxj34pMK1mO7oAtKZpNqlYC1OLBRM2\ngf1Oltp/F9QpfZLSW4bfg1KUTPTTCRNgj+NFTsaZSMTKkMGBDSRfN3VuA/nP\n4Zn63gAnfT4orddrLA9KKaga8BZwAtr2vogr/wGXMiYFMJ4qy1EUThnhJ7H8\nP7Gk1WSOYhnYgVgPFVP4DMDSzHtSmjaaH7m2Q9Ko/4aTKSl8yA5PKEz1A7n+\n0LSFPh41O/dvVWP/s+BJyTUoOodQjbf8r1HJcAV9UT4l8+zV3+1pYNbDH2+U\n5hfm2pdp2ZRuKDHnjvDhe+F9LMl/h7oEcQI7LGflfwmlplu9FNIm62VEXysH\nHN78hzxTtmhMS3qQxsOL9rWeJilOCXCAsWz5oTZDxTJAp3byz5O0GaC6Lig4\n01rH79A65HEBxzkw0w/2AiCVhoROcoF/6U6X5ZvZ5+WP+LBDWkIHyrWxLS3f\n0uDACj5QuPnTh3ID1KOLgWoc17gq1LVqUDr2kjeFrAjHe4N/PddkQ31z7Z72\n8Hju\r\n=AkL2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"eaeac5e820cdb30fcedba281da8c2c4a846f0e73","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.4a1855cf8.0","@material/rtl":"7.0.0-canary.4a1855cf8.0","@material/base":"7.0.0-canary.4a1855cf8.0","@material/theme":"7.0.0-canary.4a1855cf8.0","@material/animation":"7.0.0-canary.4a1855cf8.0","@material/typography":"7.0.0-canary.4a1855cf8.0","@material/feature-targeting":"7.0.0-canary.4a1855cf8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.4a1855cf8.0_1592602452614_0.9197960528068565","host":"s3://npm-registry-packages"}},"7.0.0-canary.8602f1b4d.0":{"name":"@material/floating-label","version":"7.0.0-canary.8602f1b4d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.8602f1b4d.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6910e300a720e769317e896b36c8488f17823418","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.8602f1b4d.0.tgz","fileCount":34,"integrity":"sha512-+62hwvN6iqBCbEaLZEIXIXbJIOlxa8DNaZAAHfrG6gW/0sviV1AO70nk8h7qg6OWgCta8VXejicrulL68+MvAA==","signatures":[{"sig":"MEYCIQDqDpU6EPGtSWGNJt7Vf1ACeoNp2PlpAppr/Pf5Z9475gIhALnXvsu5dNQpG5GZkveiwwFzjF5ND7RGA6pN2GBuU9Lf","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212869,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe8OkqCRA9TVsSAnZWagAAZGoP/2O5BMlykgUy1D7n5K7H\ngXQEgcSunnmsCVEBAo336q3hhF5ARMArpzJGMe4qhHXtn9GX6TgMY8BENAmI\njlgnoYuhIDy9qcsK3IEsz609vU2R061vDJD+q1/KhxC9BY5uyTajl+mnpSTs\n6ebJUPVtvJLHBhgfV9GfutF5oBKU4waJAKpMlxoPkMGoF3l54LVUiXQfE5rG\nh9vW8Tcdauh4EnmBxOKpBS21hvCrRSpEppGEeEvN/t6Oi9fCPIigX/+PSSB8\nNzdCACDCZ1RQeD6WxAYyiPI23jrSXiFs3LHG77QXG+BkBMvTvVErSCrDwt6+\ndPYvIszOO4OGbnpYvMdqH91DR6hUaGzl9Oos2GKDx9GAHB1Q3aSCMYxfjFqm\n7z5WDwNc/yN3HFtnvzp3aa1HAy4c8yrzehN7uq90DN6zIreODUPAmNLMNbgZ\nrGAtu8H7qv73Uh1LqWXizbqb8e8qfDy4wW/654R+80zhiNGjzwL52280+cg/\nsdPDwYtJuIJ2Pv3rolgEnM3ObpwAkJ/PD4OPAHd6UC9dbn4WI1NqVo1iuq0L\n3dwCHGWe1krUdHYz6D/vThA3aNUElpHB/FP1RdWkV229/R9OdRYwQnr8EsR8\nBBEbDQgd8nl+nW0zRbZPG3YWHq8ucejCZpndTZZ/tOWKlRpMfH7FhIrN6HsP\nvoZc\r\n=QObR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"07f6372c5a2f6f8add971db62aba74793d912f70","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.8602f1b4d.0","@material/rtl":"7.0.0-canary.8602f1b4d.0","@material/base":"7.0.0-canary.8602f1b4d.0","@material/theme":"7.0.0-canary.8602f1b4d.0","@material/animation":"7.0.0-canary.8602f1b4d.0","@material/typography":"7.0.0-canary.8602f1b4d.0","@material/feature-targeting":"7.0.0-canary.8602f1b4d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.8602f1b4d.0_1592846633562_0.4459030217199158","host":"s3://npm-registry-packages"}},"7.0.0-canary.69f9f0982.0":{"name":"@material/floating-label","version":"7.0.0-canary.69f9f0982.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.69f9f0982.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"111276834ef587409f19dba44f1db497af72d9c2","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.69f9f0982.0.tgz","fileCount":34,"integrity":"sha512-e5TjUrdZfcsHU7cVi8jlaVWPbJGjOQCnPVvRaz0HUeokoBNCYkj0IZWrM/hQr28nRcW68VNSN8XJCvhE+SubIw==","signatures":[{"sig":"MEYCIQCEh6QTkBhyZ1eNyvOkiQkWgGULpA4QE3LoTdB9r3AmqgIhANPo7Z3Ovc92wnfCn5qUdsMYiKMrrcxbmQ7FiiZ3oOgg","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212869,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe8R9CCRA9TVsSAnZWagAAg0UQAI6F6fzpHJEc2ESiCHC6\nv/h7g8e4tjQaTE96lBX2S3H2tvIx9i5gsDle4otXSVL8HNTlLzncOJrSHcyp\nWttbREGmYgN6vd5BvduVWMwl0BLCHle1Pb7IUYsy4jtxW9L/Ap5/ZIbj4ppR\n+4Ii3eVNJlHFcYVhihJ7sJtMQ+AbbmyzJ+ePf3whh82pc5sgTOO824xjXdvK\n5Hmg5eIhHbZoSv662ViukCnDaKPUnFZESk5AjdZeZe+N7DyV8K2l+xzsDbWD\n9aoZ4p4Ge/NDoJmD7fB9RL2gK7ST0eTs39hIXMxPvQHhM/MeNznxaPWuqpOg\nomR26f3q+JgILrKK3qOHBy+YnNDGsqZ3fFkPYm/N0WRatNESicQNkXLh+pA6\nRYL0AdDM4K64/cJMC+xk8khDp6rsjczOsxMt+nX1ZOOumRB1TjEw+LPtSAtG\nu0BmKN8KpdTQIwjAgEd76lTvuiTXBwg6zE6M0tEebCbJrjeBLUQK0TYyxmIm\nfa6jHyGlYngrMdss1KvAeBBlPo/23udeiSlE5eODZxsJOIp1nBvSsOTQgucM\n/4UmUd2weDtK6HFo9s+1gbKxTpGyF7fEgycihEdbVYC5mfbZ2SJ4BmNLFrTN\nOBSuH0K4YmKgb3nxaMud7AEDdgMqo0Azl8UT53rMedYoUbi2Xgw5+GegJLDM\nz5Fa\r\n=LPGa\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3aa0430a8c5f21a2aa9f3d54afe07b1c1b1cac09","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.69f9f0982.0","@material/rtl":"7.0.0-canary.69f9f0982.0","@material/base":"7.0.0-canary.69f9f0982.0","@material/theme":"7.0.0-canary.69f9f0982.0","@material/animation":"7.0.0-canary.69f9f0982.0","@material/typography":"7.0.0-canary.69f9f0982.0","@material/feature-targeting":"7.0.0-canary.69f9f0982.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.69f9f0982.0_1592860481710_0.5514431104632762","host":"s3://npm-registry-packages"}},"7.0.0-canary.369a293f0.0":{"name":"@material/floating-label","version":"7.0.0-canary.369a293f0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.369a293f0.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9e314c50621616afc117acaa9ca4ed7a27e1b32b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.369a293f0.0.tgz","fileCount":34,"integrity":"sha512-afKmXBmv6pk4fJii1dH+McwGFq8Hx0pL/ZWTancQEOeDWYpVsfogdw0I5pp4K49aW+WFESgQ5Px5e/iHxloUvQ==","signatures":[{"sig":"MEYCIQDGlgTGW9stGHoxzf8QUhDDTkUVM5o1UlQFCo5ovIpeqwIhAKCcbXlEpr7VXnJx+7qx1QPH/q7kVOsQwlvFcSmgJpLI","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212869,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe8R/aCRA9TVsSAnZWagAAUAYQAKRDaRBwzs4OjiilhRC4\n7+pFkHVPT+/9TitoaN1X12DBuK4/5Rh0WcI0uBZXoIYRKAprrBq3dboO16P4\nzuBiPwyIGGexnLi9erSWlkBKrsTi8b9+0Wac3csJfY3gv28CnUYwD2VhQN2E\nnvCmYCZjAAfU08weg6pXmhDY16/1X6rpw+U9ogJu1JInWCplv0+ef76455mM\nmnBf8YrI5Tvhx/LDsFeUbZrPHb9/O12WmJRgw4sNMXrzwIMNquYtCTvNLkok\nN3uSngk8gOrxwt9ddlBYmR9Kqvz+n2dLd2T5QgIF5My9fAOX8/zDCvzot/SA\n0AGOifNdGRmWjPN2URw8C48+ZBbxX70mLBcHjEL4bHsUnURGEdUKCOsBIdz7\n5/eBMP2oTZkuRb8vabuU/MAdcDa5qj4z+zi7r2QSjX8cWn8nqWquOasK7tKF\n9YzopTypLynkTjasDwedqaqn950FQ8HLZt2NEjz4Y+n04saIMfPPaBcPYsU0\niO6aMIYslFqF9ntfZzOy3trHJCLuJwtq9Q+hNK/kpRTgj5tElTBfMBQeMjZP\nX8Z7QoABwpQE+/liriVvUCd7axoNU3maTeZtyoXE52pDyJMuC7lt/IAjJNwv\nZJZWtaBmGXiPtHcivUnxEuuWwv5gPfpunOYAvwU5qUyfo5/C7CcJEf9LN/YE\nhJLV\r\n=F6ch\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"4b9943a16a4fab61aaa8f5dad0d4f7aecee862f4","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.369a293f0.0","@material/rtl":"7.0.0-canary.369a293f0.0","@material/base":"7.0.0-canary.369a293f0.0","@material/theme":"7.0.0-canary.369a293f0.0","@material/animation":"7.0.0-canary.369a293f0.0","@material/typography":"7.0.0-canary.369a293f0.0","@material/feature-targeting":"7.0.0-canary.369a293f0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.369a293f0.0_1592860628873_0.3449516429090711","host":"s3://npm-registry-packages"}},"7.0.0-canary.f1432b5c6.0":{"name":"@material/floating-label","version":"7.0.0-canary.f1432b5c6.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.f1432b5c6.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9aeb4e90d2bb38dd1ad8a67a28c85a90100480d5","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.f1432b5c6.0.tgz","fileCount":34,"integrity":"sha512-nGrxo689f2KRP+xqdzbCN1tw3+ya3EMlmKV1535yuKGcpf4d2lUK7fHyWF7EkcwvIZcAdZbjpepeAvqVWed3+g==","signatures":[{"sig":"MEUCIDADYsz5vJ5B5hqDYLJFClUwDEXWyK5VzZdZ6YR4d+fIAiEAsFUD8++YXq9p8DhmZuWIFhKgmKyLhJkYs3zMDQKnXoQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212869,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe8SHDCRA9TVsSAnZWagAAfZcQAIeHK8oUT0ikugAmez9E\nX2qUxEs3K2EaP5CZSFFW9dFU0KxIOc4D68MaOY2B9cfXYqUnnlwvZYRjImsM\nsA1j3iVAHvP7wpVNPGsfdWrdRfDqmTxmiG/fwTx5tx7l5F3bVY7Up7trKyTc\n0N0CE1xyc4eXrnt/hcSUCiijF5gMFflnTFB+phD1E/Zk2fBI5uM9PwCYFZcb\nJpJFaphJoCZ3tfkm26wGcGocVZOWYUHRmnPpqerfGJXyMr4x943icsAJy53N\nwgQLL31hTNnfxG1avSVX6o0Qd6YDB9cTgH0QYlWQ0Ca3hytevqyT/Lq/BFyf\nZ5dYyZl2z9pta8kHNzbFEG0ZN0EOJGYBimgGvEK8r3VG+/b1sJ6bm7weZOc0\nKtRPRku+Rwi6S3Axx3QkJ/nMdXkjMFpqGvH/yDKts8ebGZeg8Pqx7AqDgmyE\ncEMeHFPFOkVwphJY6Qx57pvo2gELCiUQ2ME6i1/MQYrm2LKGVEs/KE7l8yr1\n9BJ+gVD/NWUIL+b7fFqZC82VFjEb6a7i1Vrzdhg0FgthJO001BpoA7sU1LV6\nGFi7+XfSa23+xJE/5ilzFVvDDNI5AiOk2aGi5HeJqZ5aRMk3gFpK2E0nG+c0\nNAb1MbUQQCKGmFdMT/WAEChr6THhiWWq0JHXVZrGcaw5y2oPgAccYDtl3NHl\nNv2A\r\n=Zibp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"9987341fcee9f9c549490bf6cf1a6ce57b5a83e4","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.f1432b5c6.0","@material/rtl":"7.0.0-canary.f1432b5c6.0","@material/base":"7.0.0-canary.f1432b5c6.0","@material/theme":"7.0.0-canary.f1432b5c6.0","@material/animation":"7.0.0-canary.f1432b5c6.0","@material/typography":"7.0.0-canary.f1432b5c6.0","@material/feature-targeting":"7.0.0-canary.f1432b5c6.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.f1432b5c6.0_1592861122622_0.3528889949890808","host":"s3://npm-registry-packages"}},"7.0.0-canary.4757a16b4.0":{"name":"@material/floating-label","version":"7.0.0-canary.4757a16b4.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.4757a16b4.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"be9379e62daec8ddbb426a66bb2bc7ac2172767d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.4757a16b4.0.tgz","fileCount":34,"integrity":"sha512-4qyQn2FdqY+wqEX/3+RcbLtPOnT3+g1ezIrVGhRy50lrZ9P2MMCLNyMMCQAst7aWXC8knK0mK/WkWGk2JXCbWA==","signatures":[{"sig":"MEQCIA6TaReDmAGz1j3uQheD4COkQf/ZxD2b9qmIEyLmJ8X0AiASM67C68k8HCRnSn/29SW8aZpqeIR+k4S4C2q41XjxWg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212869,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe8ShbCRA9TVsSAnZWagAAeScP/156hDslguDxAjRYZvSi\nYM37Afmk0OX0PlUvjacbd4Ol3T0M0BndqtqyLyNIBmRVYk13mnwqcks1x6wY\nt0+l0eVGmEF8GylE1NgDiiKsZp3KhkWpH49vVOf5xxB3MlV0IN64CVo4tagI\nJydi8SSZxDJ8Oyh7eebk+Oxn1eToR4uzfkUjmUdUhApBfKIHnozMLBymVPf1\nAZ/tCz1rkOyoqy6VWnZco6rZw/SSCndLBKiFx2s2tEuwzQBNMO6oi9S26QlA\nNpxM9o4qIfh45wvjFSaUCbj8RyhdPFYsPm0IwnK31MFU8lYGw5ttU3ELdTZN\nZJUzvurrtwHUBSe2JYb2YNJ6oBnBtTulvMkYJ2hE3fuCYEyI3PIp9jfgrFEV\nuP4y5I0rR74HktMYZDkIgGVAB0BU4YuBGswPL+XrXoapIFbx79Mu4yjqY0vA\nqoynlwa48MZ7hO80QmYcn5YT9tBtLtJzOKQvg+b7QC9mcfY+XbeUN9LQT3AE\nbazbrOneWxTeAOs8uJZCaPauXwZSLIYDkiqKjg2grg8Le+Az+CX/5kW+iguV\nirA4hbzU3Rfo6y5OLBE4LQ5+uVl+Adedhm89PPDhMM6kyheGy2+Rwx7ULaU7\nzNcMwIq4jxs8M7ORuz5pOvdywBrk8s5ZfTFHaP2D4L/sxz3cWSHtcOifbcgM\nHoMC\r\n=2ppM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"50b08262743d25109a9cd3d4c87d82d0631d9c79","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.4757a16b4.0","@material/rtl":"7.0.0-canary.4757a16b4.0","@material/base":"7.0.0-canary.4757a16b4.0","@material/theme":"7.0.0-canary.4757a16b4.0","@material/animation":"7.0.0-canary.4757a16b4.0","@material/typography":"7.0.0-canary.4757a16b4.0","@material/feature-targeting":"7.0.0-canary.4757a16b4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.4757a16b4.0_1592862810537_0.894872382314349","host":"s3://npm-registry-packages"}},"7.0.0-canary.f8f472762.0":{"name":"@material/floating-label","version":"7.0.0-canary.f8f472762.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.f8f472762.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"91f1e3a4bd926bd52e1d97a88095c52e85d326aa","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.f8f472762.0.tgz","fileCount":34,"integrity":"sha512-gCNsHhwJ2FBHhPrAy0T+lDQCcH63XPE6tXQzyUoNsvOIWdz/WYCz13Q1QCqVf1oiHz3t9nbiOi4jYhdRt8d7vw==","signatures":[{"sig":"MEQCIGzhIcREBhg6klApJz4CVFwsc2iQ4fJxf6Xo+m6DyZSnAiBPYMSPUnBO042iZw+4S5Gd1L9b4ysdaeesJ/w85oReuw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212869,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe8SlPCRA9TVsSAnZWagAA3YUP/2apeLSIQ1ZC6gw03tt+\nstoAyUFpPNRDJxNW6dGUheR7waEZzmzRE4CrudNho6vlZ1QlpctjDnJ9/eKa\nRbgZpnxbKPLOx5HK9DR4P0+MGfAnsMS8BTgjPt3yV1WLAuz6/crycbCyFaKP\nTBZFHxdNagXkT4WyFZlaoorT3VG0sxRnR2AEXExZdu9fOEi6iTcA4dMOlISi\n6b6PrsJji4r5RzLYkePXf2jdyHUi33yfwT8JIctB3ypVW1/XeXVLTn7yDzXZ\nGGQ355ZV3w9ecqjZQwtab7R0rXOTT0oKw8f5tLih+SHmmHKImvUL7GbD+Pqd\nVCKyoAVlXQUnP7y0+Xbk+cuMEnByH55BZ9gWKrVr+DlsbaRVit1u52URfeSM\nqJEp1L2Ng1LC04pTrLRbxzA25IHYPezOK7xrlGXpAwCTF/RiB3OYM0Od3U2O\nrQXWipS4Ocvjv+/6EbHNWI/oPF0oTbFwVS+S+qc0m03yycbVwJwYCJu2fz+K\nc3fUgEz8SZsQry8UBRoiloPUJpg8+v3H4EsibeJHPjKtiwrFn/xBWxslx3ba\nQXTFD3+Wx9lXqEeGx4s5IQAGffPPlyapnmTa9UI85WEjRdmyP2h+4tS5pmXv\n+C/5qvgd17rbKUPALlGsvfM8hMeAWqGLtG6f4bQ8SFULzTsQ8mUE28rjK+oA\nRGGP\r\n=sy5Z\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b72e40a4e5c11a670f3423da9ae1ab370f088535","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.f8f472762.0","@material/rtl":"7.0.0-canary.f8f472762.0","@material/base":"7.0.0-canary.f8f472762.0","@material/theme":"7.0.0-canary.f8f472762.0","@material/animation":"7.0.0-canary.f8f472762.0","@material/typography":"7.0.0-canary.f8f472762.0","@material/feature-targeting":"7.0.0-canary.f8f472762.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.f8f472762.0_1592863055003_0.8651604546285068","host":"s3://npm-registry-packages"}},"7.0.0-canary.7e4d55c34.0":{"name":"@material/floating-label","version":"7.0.0-canary.7e4d55c34.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.7e4d55c34.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"61aa74c37039d04f362525f393194fb4b73de74d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.7e4d55c34.0.tgz","fileCount":34,"integrity":"sha512-GCKKZD/ycLhchzkTMT2vvPvshx1+iaWry2pquWkRsiCjdjvez7ty+9cFJfxbs898t9ml+Acg+/lAOY29H5bprw==","signatures":[{"sig":"MEUCIQDS93vLx7aF3FhiElqVDQBboYungJevt2E1qrPwVLHwEQIgVOchcY26WrnohTHzS+sSHsgVBdDpWL/F3amT5VtgHC4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212869,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe8TDICRA9TVsSAnZWagAAOW4QAI4vyujLTwHbneafDTu2\npIGilSk4tHJnsGWvF2HivxXzKhtb7MmdInevP9yFUw81CrVj4cXX49woxcxI\nPDEYwNglUlQeLXCNHQm/tkHoaSb4qEj0fjlheGN9Bvlyv+0vqSzJn8iLz+Yf\n4zcp5pdrwErWOSjdthinOyi1JIDaVgfSJyYQCZ/UPxBnLyp/x22uiGwS7t/D\nBAxWMDR9ffHjkhkCX9pk3l6XVw3I/AtCJXlo9rXfurgnksaaok3r68aB94Qb\nFRRgBzxBzcSEmVJLG0iYu2wtyJDLhm8A8ohxSomnr3oWJaFKcNDuKSyQzpDl\nfKz/yJemfifZmZAiNAiiE92wqF5sQ/2sZF0wkStGCQ2TYFYL4sbqQG3Ce1sy\nMb3pLfjXvho2JIHxtRFmzX7Ef+Tma0nVXkgLgWvxShcKCp0Q4SiKlaHwd83s\nG+YJgXXTC4Ix78NYa/+5Rerc+ZARywWqHoK2W3wSo+/UcwjskTjKgBqGdaRS\nH1zq1FFoK+FclpXHtaJ4yfn3G45LmUEiy4FYZVq5Demhu8bAwJ9oH//3Ut4e\nkQ8WL8Nsz2ENHUiMwXMnGLtloD/vp3/ULJRuS3ClQVNy4Rs7aB5WMu5ZIxfI\nGHtv3ZbXlCgkIuf8V3n6g4eI9Sr3ADzqVOOh9MT1H7SZ8iwLOOIiiaVzzVI8\nuG7a\r\n=jzrU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1dcee78d27cafcaab3b8f265b4f1bea83600563a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.7e4d55c34.0","@material/rtl":"7.0.0-canary.7e4d55c34.0","@material/base":"7.0.0-canary.7e4d55c34.0","@material/theme":"7.0.0-canary.7e4d55c34.0","@material/animation":"7.0.0-canary.7e4d55c34.0","@material/typography":"7.0.0-canary.7e4d55c34.0","@material/feature-targeting":"7.0.0-canary.7e4d55c34.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.7e4d55c34.0_1592864968029_0.18244078585038803","host":"s3://npm-registry-packages"}},"7.0.0-canary.bd1dbc91f.0":{"name":"@material/floating-label","version":"7.0.0-canary.bd1dbc91f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.bd1dbc91f.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f1b0e3aed538ca7bec4d412dd32c7dda82b8d713","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.bd1dbc91f.0.tgz","fileCount":34,"integrity":"sha512-4NshM07cvy25Hm2CSTfLQpzLen6VGF/3uyqdVgVj5NoCFH+c88wgqLED47IoOOvVNcgczy2y0lQ3N/s0xrrmIw==","signatures":[{"sig":"MEYCIQCef6xBYk66DTES6UXPuz5wyLPp1Rscqj+fO/ZSwLB19gIhAJFMk5emO0pOfytd1nqEaexzChw1w/vIcQEyuEtt7eu3","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212869,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe8hGECRA9TVsSAnZWagAAJj8P/3TQYyfepQrdk0PDlTXb\nkeuwnlW4NnjBEylD/yKde2P3qZsyqEOY6BLAnA81mC1/RiBVkIlPG/EWnAaZ\n1J5fCfMOPJ9+JpsxGy9QXWcFtgJPt9xc+4BAtRSMoUpjQZD444A9zHtZsLpq\nn1BQiSdyM2cuomCc1fLfnO5OwfViJba5qALApcSBZFZDApfSEbYF73cj/HBy\nruK/8INllUiHj8HOl/Tj+3lEz/UnuhhAZ4Y77B3ShHG37HVOZSj33ou47KkA\nNL+24T0E2yaeFHPYosc5tR/x1JnVzr8l2o+OVpf2SCAXVe3lC6XofRyfDbkE\nQfV9UyTu2ugZiKbDDAset+D+/f68lzEnHO7PaP9marwooBqpqBqccBOhyYqI\nFxsltgJdJSZKmCfplm5M8XNq9JOHHaPMSypPahKoc+oBh5gC+qtomGT8ShaM\nC8cLHYelPPo15/nR+oWfKTs57pvGrGMLcGKZBbs1KxpD7iQnzC6J5Umu2JFr\nqFBbS1k1/SNcdxG/dXLcwU/QBVpyYbbjWITCG51dZKDbFWbDrQM8CIXJ8MhE\n17PcZu3elzzVKxU6rLlsw6MsrirVt8Lrwe03vYbwUjoUmJW1ZiolBSzghXbM\n4THQ61scLXJ6cBLIQIjqyPRQhmdC4kNTaydDxdSDtvOwzIth0zMs00n6TWeA\nYgzG\r\n=vuFM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b63b8059c82f418a3f6134124de3ad8bbb08976a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.bd1dbc91f.0","@material/rtl":"7.0.0-canary.bd1dbc91f.0","@material/base":"7.0.0-canary.bd1dbc91f.0","@material/theme":"7.0.0-canary.bd1dbc91f.0","@material/animation":"7.0.0-canary.bd1dbc91f.0","@material/typography":"7.0.0-canary.bd1dbc91f.0","@material/feature-targeting":"7.0.0-canary.bd1dbc91f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.bd1dbc91f.0_1592922499528_0.1306129711016637","host":"s3://npm-registry-packages"}},"7.0.0-canary.31523bc62.0":{"name":"@material/floating-label","version":"7.0.0-canary.31523bc62.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.31523bc62.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6ba31bf7e887d5972aab421d2e3d773051b77487","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.31523bc62.0.tgz","fileCount":34,"integrity":"sha512-A6+qi94/CRXva5ZsCRWnWyMF8SRLW5PVh2NZn+BSkdj5nB2XtsxM6ztOSI4UOeDzAtz8ksN1Mfp7zQUu/vx24g==","signatures":[{"sig":"MEUCIGi4krCfJPERcJYTdEPof3/ZgKj7ioibOPiAaDclUPmpAiEA7XqFhV4zu4KbPy/BarP6Sg95NTuhVM/GNK9peGh9vTQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212869,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe8hLSCRA9TVsSAnZWagAA4XQP/A43UYy7/8qj+gaN7xJy\nnmLUf8yZkDgRSxNtOUOeNMeuK+3ccDXKRy6rHrAgD9EmNea912SaIMQHhCic\nWmWIFzGyfC8nVp2Z7l6Ev+t4pTmamAuBEWj/F/4YZUeP6bT/cAhzE2p/tUPq\n1pnIQIEg1dTgy5b72RMK0dSe2GsPNuh9VZ8g/5ijInbPZNMVqZvKvcpA65vC\nocN6Ym6Oyps8btmen3WAyzK6Uh+qu7G2vyW3s9oiuusvIVCGklfMs3RGWf27\niKj9BDEwssJ0PinBPZfvfqH0fHedTfCACYVPrta1TgMV0AJh8012kRgXn6Wy\nOYpW+Lg+7taXs3PYX5gKFXDfuTLJJFj+DZhCdDt/Thrbx2wDliqCXRYZ8FGI\nrvQD4XqpbMxiRntr7ssTKtHVRMg07wMQp2yuDYnvS3A6c3KHWVgyjPt9EP61\nUNcoSkCJUMz4L7DqUyaAXJ1Se6fUkBgiyh57d+TOYJw6NdTIWfXIGjfrc2F4\nWyKt/XNNLGQ8Dqv5hV6mKbCM974Mttq1eivRTO9fE+eQkGSoUlVkHNUX36rs\nSjgm83AqVtO7tBrPG+Y4l7mA8I/uzVzEDTqvBAbv28xfib1rJp/1tU+LSnqH\n3UQ/AG8dr+fhmaVmBKAUij2se2CQc1qEbuM1JMHBpG/79xRO9JofjfeZtxOn\nkKcd\r\n=wL2t\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"035ab4d41a8c444abf721e44192fa6e10bed9f79","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.31523bc62.0","@material/rtl":"7.0.0-canary.31523bc62.0","@material/base":"7.0.0-canary.31523bc62.0","@material/theme":"7.0.0-canary.31523bc62.0","@material/animation":"7.0.0-canary.31523bc62.0","@material/typography":"7.0.0-canary.31523bc62.0","@material/feature-targeting":"7.0.0-canary.31523bc62.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.31523bc62.0_1592922833585_0.009517051917146802","host":"s3://npm-registry-packages"}},"7.0.0-canary.a96b6d4d6.0":{"name":"@material/floating-label","version":"7.0.0-canary.a96b6d4d6.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.a96b6d4d6.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e0cc3cf4ea40b8c6dd679e23e8baaa63f12ced85","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.a96b6d4d6.0.tgz","fileCount":34,"integrity":"sha512-SKhqy/HDAua8XPRmAYNO9YZiHq/DZWnSQiZ75dj1AkZ7RT5lx9dWsBTKbXm657zGJOnpG7b2n/0c/WMB0GghfQ==","signatures":[{"sig":"MEQCIEEzyaZMFtGn49YJw3JwlKwZvZ2ewGOcsamic1EZPQo/AiB/6FhmXyGT+8GHPrePMXCMlNzuKlVc1VnSjKVG9Rn7Zg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212949,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe8hRNCRA9TVsSAnZWagAAVDEP/jMhMdzGWA7ILmNM4uFK\nnIP/mI/OGxRKa/0z/dB3f4O5wGspKLQfbT24/ZTBee6m/p8zpR0DRwkyseMc\nB6ndaD07sS4Yik1sTYkpp0LqvFjs1MEkEdLB9wTuhR+MwMSu1ssIqWvysj/t\nP+WSRy9jh80WDFV+8JCncQi4xq0qa2teivCAlYlI+Ru1rllWffGuQ/pvFVe0\ndK1ne46EwcB486VjlYbW8VlCZGJBcRfa7XxISgnKx/qHp6J9xN4xsPfPMJDX\nkR9hfMQoY+bwCE+qtKIyJSGd2kUu6eOTgU1vqfc3tHvkKwFC76PVg1BhFh6x\nqqwQsT/SbmkqnFZuOPNVtTS6YXWPTKg8834BeOwlhDVlPgpCpDKueaBnrom6\nT93OEXbgFyfweJTXjUdP+AnbS6Y8/D+EUpICSKxFzbqt4e9iDHbvmc1SVdk0\nonE/GaVxMZ8j6o8EEmTEIwaLRyGb1MzGC6KmVkhX1ccK1+IMmtgXsNUPN+Hh\nCFzW16AYXjqOJwKmKa44yX9TRGXrx7yDyeYjd8Vka6X65JYfPzIhW8IhiMZG\nNGXVvBhs7IYbiVxlyo2wAWl+owWT+e3ChEgKd7O0R8jtvJ3b0r3E5uWsktbm\nRSnwZJ+yxglnaXvGBXA7BleO13evwWrvDwridi46l3HseKuidpnyIt1o3pZN\ncYGu\r\n=nO8z\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ddfc88933cd9a6210bdfc449fd3fbed391abf4c1","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.a96b6d4d6.0","@material/rtl":"7.0.0-canary.a96b6d4d6.0","@material/base":"7.0.0-canary.a96b6d4d6.0","@material/theme":"7.0.0-canary.a96b6d4d6.0","@material/animation":"7.0.0-canary.a96b6d4d6.0","@material/typography":"7.0.0-canary.a96b6d4d6.0","@material/feature-targeting":"7.0.0-canary.a96b6d4d6.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.a96b6d4d6.0_1592923213225_0.3080175735041719","host":"s3://npm-registry-packages"}},"7.0.0-canary.ef3a09533.0":{"name":"@material/floating-label","version":"7.0.0-canary.ef3a09533.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.ef3a09533.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"004896ff010455920a8e6751300a6b3f907b61db","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.ef3a09533.0.tgz","fileCount":34,"integrity":"sha512-z56ERFE1gXjHBpw0qZ6gnFneUmM2TT2ePqafRPJsTyrBk+JcWOlRAwvnLZWk0nDLyLpVXf75NLnPd1gln/xKoA==","signatures":[{"sig":"MEYCIQCA60UxDReJZt2S226MFAMREh26R7xl1xgNIdTJ6TyV5AIhAL4vvBfqA2k7lsyGGdK+LbfRSOWMJg7opgGyIaMhlmnA","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212949,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe8hY1CRA9TVsSAnZWagAABosQAIZwOn6FuZ/D1kxD9QvW\nndIXh08ONvRYVfiY5UVWohdkmV4B7TqjcsuQZCZNwcULPEu6CtNrMEvhFXcg\ncpGWQw8+oUMgSlPewZgk9OX6YTH1fovEi/kaKAYv47tTEDYZFfLmoO1lwKWu\nst2QcYhoiYMt0sgNbzWtGMnKeIE2dF6L9eA51v9nY77bNqb5mzLZkWadgCtf\nPonXQ5FMCjWJnq2gI0l+m+YRUcYSlBLOWiSHuQrCGu6iqb/3OtMGqtFqFMSl\n7LkeG7YTbiGBgpLaYoKl8wkx61vMj7MeShXlBg6VpSvCr1QGJbxjDW6qCxbJ\njve5z90KIlPw3b3UoisxEvdtWPD8IbGFvbOtw6orySTLHSNHP3AwfR8hGuk0\n3JjNDr9WOQeXWP7zQaJFMx+bZNfSnYqQUINaqyf/D8KBQl65r/FK805MLMMZ\nLchSmSMGeDbTDcugJW1pfAzLEnV6qMKZqvLFqe6Rc4ahSqBGDOGCu8nwl+tu\ndhbAVPWOq7pqXk4L069KniaaLweDLyL7iLkrDjLrcFptKZmQm0A5eZBDhesL\nAJ0gjNPg6zUS5wM70lmTYg6FNVTQTh/OxFpZb3dTg+Z+1BRGUXVhowi3z9Hq\nbssn/OQFzBODh2V0qFvJTsdtwKH8RdA/O66RG3s9V//a3pKOhFsaTg3lWE+1\nDJ1S\r\n=cYoc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2af091492939e0fee42736977683591ffc221f15","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.ef3a09533.0","@material/rtl":"7.0.0-canary.ef3a09533.0","@material/base":"7.0.0-canary.ef3a09533.0","@material/theme":"7.0.0-canary.ef3a09533.0","@material/animation":"7.0.0-canary.ef3a09533.0","@material/typography":"7.0.0-canary.ef3a09533.0","@material/feature-targeting":"7.0.0-canary.ef3a09533.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.ef3a09533.0_1592923701232_0.6985765301103957","host":"s3://npm-registry-packages"}},"7.0.0-canary.080965f39.0":{"name":"@material/floating-label","version":"7.0.0-canary.080965f39.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.080965f39.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"555088770473d5f9137a9e11dc461663158c1925","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.080965f39.0.tgz","fileCount":34,"integrity":"sha512-/e3EAhyY/XaA7azQmvC+HxyznZgJwc9hU8Y65D+N3/KsNaQGskJMXdNNxkZne/E8R5v8ip7GJ4izu0Y4NC0dbg==","signatures":[{"sig":"MEYCIQCdWvpw8CeLlQLdcYNWzo8JMiADT0IesVnoVn9/6u+TWwIhAOWZkkD5epKSTDhA4SP1tj5xWnupTQs5n2od7VuzQ6UJ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212949,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe8h0bCRA9TVsSAnZWagAAyBUP/3yiQwpIuxnLAi/pbqw2\nFO9gxpVt/5r9TBz2i7RNZckSbXRJYed5UZivP/L42wRIGc6Wkm0p1/M6afnc\nyNb9+lj+nc6PKz7/fiw+qRTpmnlgGHakQyLb2NNg7dFBE6DICp2vGEKrTM+w\nTdKpXfsc450xOrPlQ66l0Xtc9iYEHaTS31ujKOajCevfG5LL79QWcGB+RcVN\nyhrZ3nE4HOG+u5VoG2NRVZAOdgPCMZfl9xRIcgCXREDvGnMU804G/P3E9prJ\nOsw6hV1dDPqWiNzS7m6vCn7sP/OV5RashT82dETtOTOHIGZHMDce0OFPbbgo\np1QTSvohsBlH95bKuFw4JXOPNFA3QDwL0ol39dPcf96BrJ9qlAiDU+GZzq+E\n0LWfVDhjFRBP2HOifvH5vqD75i0acLSFOLC++joBdkgGvNpPOSqfGqv4hdNc\nCkvdkZiJQ7dfzmQdIj+Hl9VMht/3Avlor+LbZY3O+3Tk+P8gsbwEdzM4cf3C\nxQe1ULXxd318WQsxf6Y/Cb6wWwLR1UWZifIvDzkOd3x6m7C7/jKbEAdeGCl9\nzz8SPgWACPKP1EuBlRB1h5uZwjrwXvS/olv6zyIgBSd+pIKBDH7A5SZdFy8g\nvAq9BpIWKmsMG7zZ4enKEvAUbbjBRY2R9xtCuwTah6S6HiBPpTgRq69r8D6w\nVpXZ\r\n=WJfF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c0d7c5371df46e0114aef4ac9bc2b3aad1377f76","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.080965f39.0","@material/rtl":"7.0.0-canary.080965f39.0","@material/base":"7.0.0-canary.080965f39.0","@material/theme":"7.0.0-canary.080965f39.0","@material/animation":"7.0.0-canary.080965f39.0","@material/typography":"7.0.0-canary.080965f39.0","@material/feature-targeting":"7.0.0-canary.080965f39.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.080965f39.0_1592925466792_0.035315295172503536","host":"s3://npm-registry-packages"}},"7.0.0-canary.1bd67b65d.0":{"name":"@material/floating-label","version":"7.0.0-canary.1bd67b65d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.1bd67b65d.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"be9e4f299af63ee39271c4fb371a4c9815cd371f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.1bd67b65d.0.tgz","fileCount":34,"integrity":"sha512-8Nn7a7Z3igXxwNqhmnxSwdaWSdLeNNdw69Or3HGC80sBvRxSqA9Ioi+sTwHbr8co9yBBuzN16EQwHuIW9dLouw==","signatures":[{"sig":"MEUCIQCXWqmQDM3dVZmdZb6pSFNdy3sQYhNMSmBiTqMXae9sVAIgVf25YixF+rUL/I0u23nIE1V8TZYYm0sgcznbFD2Q7T8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212949,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe8icKCRA9TVsSAnZWagAAv0YQAJkyBrv/z1TLjqKA2IJg\nnu0cD2/eSCcu0O2FKXVafFRkzKjFKwLKboMkyJLd7DLObFPTmd/lKTYakHtS\nTq+yn5DbKzWpdauYo48lwAG88B13xNsladWBKUKREWPk77s/2uJaK0zkTRLO\n88KwJVe8lIgB5TO7LNhddWp1YgRgbMVzwxxD7CXwFU/F2bOl+VbCUYlfVS1M\nfkOojDwCPbE0Rl4vn/6K729pD+zJ67N9NuVlo+YgqVbVSZtVlvsNRLJNq1DM\ntI1nt8ny78qtkMs88SPBsRKd8/E7uIzatlJJ15IsqRmyK4ma5xOs6ugJkmaN\nTkp62LdQi4jAh+OEcPdyAKkso0+OJtPV/RPkBYF+9KfRmjB/f09LFenqLJd2\nHWLNWVIWlNh82P0/3I+SOeZb4h4pqFFx85mGHjAlMFVf2fufYTcA2VdA7t1t\nhW0OWKrVIx+lBMc8wpavZXTuzIhXG1erlvzfs/pViH87NlI7t76EZz74EETW\nsy/PGzy7fL6tSVLa5BEG8AYAFs9azOvRe5PC1LKKxdpzSut4kH7+gdqA9u2v\nx7TVif9ixx80gtyLz+zHT3RNebmv43wZ8b49tz7QiPNTAr5euEMKo4vzexY4\n3H8L5PhDyNA7Ga3GHEf9ySgR4sHLe0LIXSbBRXsCbOOupVTOwTPfqyXGPTcV\n7oOe\r\n=faik\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"dcb3206c3f6c1567eec203025b36bff594d66678","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.1bd67b65d.0","@material/rtl":"7.0.0-canary.1bd67b65d.0","@material/base":"7.0.0-canary.1bd67b65d.0","@material/theme":"7.0.0-canary.1bd67b65d.0","@material/animation":"7.0.0-canary.1bd67b65d.0","@material/typography":"7.0.0-canary.1bd67b65d.0","@material/feature-targeting":"7.0.0-canary.1bd67b65d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.1bd67b65d.0_1592928010064_0.8319507932552066","host":"s3://npm-registry-packages"}},"7.0.0-canary.18ca31248.0":{"name":"@material/floating-label","version":"7.0.0-canary.18ca31248.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.18ca31248.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5368b23f95fdb6921027c93b52d5715f2463f640","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.18ca31248.0.tgz","fileCount":34,"integrity":"sha512-kPEAHDes9YcAeZ0FIw156d6RuZHNmLcpWj3BBKVNisy2zS1UYONfa/WUwB/3XERHPWgdoyhnY1fuFiHbeTKVdA==","signatures":[{"sig":"MEYCIQDrO72RJFwhgSr8OOLSL/NnNFdWf+So96p7bHC4ieQW9wIhAJDTTiqZyejcQB6A05OLYZ8KqafKvOROub6CmjavKi6b","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":213301,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe8kkFCRA9TVsSAnZWagAANqAQAKMyBYDCnPGIWQ6JL73p\nQQEqD9WGzyi8FRkmNZ/EGOJrSBY2KvMyZ2xUFaLXdlEUuDlyvTvOu9iAektX\nvilXnKCuXOT/cq/nt2V7Zl9OGUys72vp02Y2IVF54OLqWze/qP8Q75YbdUFt\n5oRaZPWuH0CZMCBEUOWkXtt+6vSNgZCLsndGOzs+V9n7jE4GwfXWfQk6EbaW\n/oSuckWFC4z+9uU51m2bVO3kRFpxVqVvVPg+n25SOy6ZaBZSJotAmnQ9oyWT\nYla4wzq3eNm0GxvllIRd4KeIDltDIVHcOgoMMgH2f/Vzvoof37w48WNUB9xk\nmSYhsQ8AOzWJE9+TPJm5xbitIu8Sw7CMprqNJ5uKqHcLVFE+p4QtvWcLJqwA\nFRPxv2zCAUSqbULoWqDYkyUeIBgPi5BVnBP9HJ/kpIvmPsjh6mOPCCtFV66D\nuq71PoHYW1C5/iV2cUySotU7qudPtyNDscmwGkfPei4UNciI/O+ZKaKLnXvD\n+akBtIx0rdeI0RW2o8pfH4wvgb4XYHkYmnkCDdMBJE7xtpdgC7I9leJVVsVO\ncIbYDaz9csg7Zx0JxYfg+G/F2liXKuLnNQcw3Shoc3isksFde4bQSJN93r5B\nRxdP+NxFPzYo9ZKf9OMhWHmKWFyfFMNaSy7ESbE9FNwuDb5P1qK84un0AVX3\n0u94\r\n=Tc9/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"34a77f9ac5b41ab1f71969d01fde32c58ffc08ae","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.18ca31248.0","@material/rtl":"7.0.0-canary.18ca31248.0","@material/base":"7.0.0-canary.18ca31248.0","@material/theme":"7.0.0-canary.18ca31248.0","@material/animation":"7.0.0-canary.18ca31248.0","@material/typography":"7.0.0-canary.18ca31248.0","@material/feature-targeting":"7.0.0-canary.18ca31248.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.18ca31248.0_1592936709486_0.30335325823393755","host":"s3://npm-registry-packages"}},"7.0.0-canary.39cf00836.0":{"name":"@material/floating-label","version":"7.0.0-canary.39cf00836.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.39cf00836.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d0e2eedb93afb8e7cde63057d65ded0b959d264b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.39cf00836.0.tgz","fileCount":34,"integrity":"sha512-MaU8XKXnHdg313ELIEKP+Acn5LZn5qaANlgURbcll8HXBWE9Nmscd/c7Yja9FTrlY76kX3E932uC5veIDoax7g==","signatures":[{"sig":"MEQCIBzCikFrsMR9xSB0OWs5NsCdsPL337cZyVyxTuaVeHBZAiAm6g9BkAb0zoevjc3QBgAjDlf7H+YJo8eQURhJuX5xcw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":213301,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe8k5lCRA9TVsSAnZWagAAvyAP/R5xz8QzjdE6vDaMgAC+\nMLxpNQUNBDHTNtqPleXyxFG4M6rizji/qiXz3J9Ux5+33jn2RPWscgSXewda\ncdhAarK2+Jn9175PBfKHbEhQtV9+9ctZhltt8636f4Oll5d3x3tcNMGPNRfD\ng/F6mRDGxCWnibpHRwnVrM/Gn6FaFQDxM0Wq6l2Rf7171bAWVTm4AnnS5GBZ\nQ4Vn90ZIYtE8TYvB1ifjtpXbY5Pex4gzsrcHAKhhw7lgnFS6tiru4iARUE8c\n3a1+iIdEx3tZ7XiBPijz8LdI4A7ATG6BNkyBtBlvoCG2B5TmFfDdeMARekOr\nzS5Sp7WPhFQpwxUJ45cPIfpR9Xnf+lwetH3I3U60HTY6QRAlCw7MKI3bdXer\n78tmlmtPO4RQ4h7WgBH/6AqPuDKGbQ9/JfKpMe9dqtT84X4C+m5l73aePdS9\nUuGtoT9xoQgrY+tsI4CQeVn0q8Je/tHPzqX7UNqLrXd/uaoPq3QDBcraLeIj\n0dgfPaZrco7fy18n+Cl6op+KQi7AwqT4netZwpYW7IVCCdbncOFUVJVXMXRi\nJhwkwEMtTFb7JYojr1EA0Zy0X7Nugo89Yymux0LQkXmB0hYTnhDyGbimGRzL\nfMPXv6x3lAHZVJrq2lIJpCGTqEFnrg3rBcBsf/Z1z4CNHS0rCUZcsESBn4mE\nJwVm\r\n=eSP4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"490def2a6575f8ae6a6151f024a9af3fed1f5215","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.39cf00836.0","@material/rtl":"7.0.0-canary.39cf00836.0","@material/base":"7.0.0-canary.39cf00836.0","@material/theme":"7.0.0-canary.39cf00836.0","@material/animation":"7.0.0-canary.39cf00836.0","@material/typography":"7.0.0-canary.39cf00836.0","@material/feature-targeting":"7.0.0-canary.39cf00836.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.39cf00836.0_1592938084543_0.23659442092406469","host":"s3://npm-registry-packages"}},"7.0.0-canary.1bfda9e05.0":{"name":"@material/floating-label","version":"7.0.0-canary.1bfda9e05.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.1bfda9e05.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a2feac3e497e3ce343a8d40353bcbc7e6e4f90d6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.1bfda9e05.0.tgz","fileCount":34,"integrity":"sha512-2k/E9GIXjCFluYMdkPBW64zNVmb484Y1dkK6LsMrfPC/G+43FJjsogOgXhpImc86K7c+yrpvH/mXMaLzinGMCA==","signatures":[{"sig":"MEQCIEWwOTbLn77J48ANoSF48l5lJM1eXUCB8B1E/gTSSxydAiAhA95Dq85kZ/5e/M9scK4weJIKJpdROqTbk87sYiDFwA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":213301,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe8lFRCRA9TVsSAnZWagAAk2cP/0eIDor+XBPD7hrEUa2w\nnFBuDuMl2QXExnuY52SUTcbux/sRTZbk/teHowsxCwaxesXAq/vyS2EeCNE2\nHO+UJhHGa5wFdBuhu+zbdoK3+GsBss2CZVcH7N5h1mivCIqRCxvqxiL9gqY5\npUMj3Kag4V8foY+iaKWKxn92TH1fhVW/ls/2LAGYi/AaDP2A50Sj5RTF5XeZ\np1LzeWtIG3dYsxfmUBvK9iG49ycY6n6j5hj3cDGo/YU1YkUVeg22E/UvSrxR\nlje/KtB1Q6OocJuv6eL7DOoRsjpB+3zR1qzpRiZk4gPcAKBVPQ+YeYXQA9ge\nHfXLzglRyH0G07CFffks4nBT/fOjDQP9r9xCm0wEs83W37HYRD3nmcfAqhCq\nyTmIaZzqpwUnlK+UF2mjUMI77bd3B8C0Cf0N9+TaiBbRF7t5Mb8D6ionv4ZA\nBWS/93+okmmLoHEofkWFY7D2i/ws2kITtxrMHdI+TaNSiGanWIT3oZ0StqH6\nmjlWCedDBqyFebK/N67kQX9NAiDMW4ZcZkTB0lb63LhgFAWp7lit+7erBdwh\n2kacmv8Lgx5yfZkpVBGg0Wqd/a5FVC8GG8x1M2L3KFpDLpApAY+Ee/oxB7Q/\nNWTnxp7vbQ6y4p0QRCbV7W/sPSnDU73o1plZea643QmgO57C5VO5G/rRA9mi\nr0pz\r\n=0jzh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d858287d263a004329d22036ef43b63b8ec8eb08","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.1bfda9e05.0","@material/rtl":"7.0.0-canary.1bfda9e05.0","@material/base":"7.0.0-canary.1bfda9e05.0","@material/theme":"7.0.0-canary.1bfda9e05.0","@material/animation":"7.0.0-canary.1bfda9e05.0","@material/typography":"7.0.0-canary.1bfda9e05.0","@material/feature-targeting":"7.0.0-canary.1bfda9e05.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.1bfda9e05.0_1592938832391_0.7390656835659237","host":"s3://npm-registry-packages"}},"7.0.0-canary.08731bd95.0":{"name":"@material/floating-label","version":"7.0.0-canary.08731bd95.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0-canary.08731bd95.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1a9a575f29455528ef54e9b82272f34097601471","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0-canary.08731bd95.0.tgz","fileCount":34,"integrity":"sha512-PuTMOnezvbHKSP6LmSj75G4WNiQ49stAmMLNEBCT10CjoDE4yM8LI5qhnJXwpx4MRTmiga9W6CgKGPhuS2yUIg==","signatures":[{"sig":"MEUCIQDDIKY1nAT6Wc2QikR4WOnmiNb2PCvKlYzqD1ORppqLngIgekLEzhaS6pVC8EDZeQM/pSsArkGf4Sy7pweknvura9Y=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":213301,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe8lHuCRA9TVsSAnZWagAAa9MP/1SXKYHAfOSb8U/qw5B/\n4TA3S781GyOe8oNsanodTMHmuXggJQWNoa/97nSZna0h/3cT6GGieCy5UWQ3\njuxR1K90jgK0sPFcbi1IOm8YLzOC1ireBlAyF0M4c5ovEGC4JCanFXdoeBlK\nSs2AxF3mgOewhYZ/mGQ8EhySRj/uQ2U+NmbEybAzI6zxqGHrcmf2+MpBFYLz\nDjG3MyXLJgZSTicCKZIC5Foa+M/a9SXaTCdSKpEFl/OKzP04PQRYGHQP/eB6\nefF3P1fEtM30bIaNYZIiDK9mfhj0i0swQaJO79SiLjJWWZnuwfncRCOiZ82g\nipMCjGnhg/hgZoLpM4p3MIN2et5q2qNLo382l1HEsDmEQRFHzsDmj74mYngu\nS2HFjFd4ysodeRF9yKqQWjliNjD1b0njreMNuoYQZvW/UxchUqhmu8VAfVjU\n2qq9ruN/uSmDDoOEOyk+z0mCWKqsUqFVmoMBbOpvtdebtkYf2nW3HILRui7z\ngtgmU4PwRFIwO8w3rjEpnb/ay1oa57bvetfCG4CK1v+sYRTqEeZFvl+Rc280\n1iBYg5xKXqqfPgdkpVjiORxYUgDMPRfcA3ZuNmaYV24rhqjSBbj66CZVL5qm\nQXLt+Vb29xBNRRk+f2qXjAMcvyZiWS+A0man4zfKeqgJ5KLR+CAUZipB3VzM\nyLu9\r\n=eS2d\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8e24a4ad4b32b05eb883e0de21ddbefd3c8f641a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"7.0.0-canary.08731bd95.0","@material/rtl":"7.0.0-canary.08731bd95.0","@material/base":"7.0.0-canary.08731bd95.0","@material/theme":"7.0.0-canary.08731bd95.0","@material/animation":"7.0.0-canary.08731bd95.0","@material/typography":"7.0.0-canary.08731bd95.0","@material/feature-targeting":"7.0.0-canary.08731bd95.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0-canary.08731bd95.0_1592938989864_0.8782151138975081","host":"s3://npm-registry-packages"}},"7.0.0":{"name":"@material/floating-label","version":"7.0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@7.0.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"fc73bed011cc0e63f32cf1db87afe45885b5246b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-7.0.0.tgz","fileCount":33,"integrity":"sha512-tAiP6lWcSlJ2Zrwymt/v3hn/anPdH5gXJp/1NYXXhauHyjHW5jFizJeNLQWSdTwqUkagp6FH74XbiKTaC9WY5g==","signatures":[{"sig":"MEUCIF2JNB+uJSpZGkR7MyieLJMQBHxDeXnwdGgrovtJed9CAiEAmwA6r7uGKkNgGmm/PMgqQnR9oQOJdjP+xhKISmIb9JY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212047,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe8lO8CRA9TVsSAnZWagAAAM8P/j8vCqyL1yOXkuWeakak\npVD9af1PlrHsyYiYKVULD09Ffs7i43dFaGNDAc0o2e57rWzXYSk2fBTDLyKN\nndvI/Fs3gtJoNW0XLm4xi7Zxg7y5B6kQU5DnU8qD4mztAS7nWz7a+FGW8Brw\n03vOMM4+ZOo1Mb+ydFPlXBmrmkZlAdwlSemE1LxCacw101T4JN50+MbMkCMX\nNDzIUTLF9fWqNbf6KiJ/ZA7xhp9+a4taLC7cJPqHR7EOTBz8PZLbB/SgxXe5\nd+wQc8IKWjf61SVyA5SrpeMEFa13gI2BpVZFpNwLNDNr34DlEGXcj0GVqU1M\ns44B0QS1LnM1AKX/XOnY/a+hFCXNfxTFrX8yHcYeQg0enAIkO9+kDIPkbCa8\nPrNv9OaBKXJmOXmD2qKzr9vxjzpBz5KKP4ZgI7rxGqqE5eS2ZKbOWHI47wi9\nh8rZk6uZm2/pmLusGlRv5ERUXEOYbXQrTeQZ5zxZH8lw2+0YtKkJUC/6KMl4\n7eXghXS7CF4gBJg2PxzMpNpO6FjhnlpNbtF1jxMUAsRsYIONasHKSE5eRkw2\n3mWbKdh/D8qZrjC6kYnyvE59Aj5YFVQvEsqJCe8/EARkqpJdEmeBix0x1a6l\nFOyI1i52eMS4jTEWuY4V4osg4g9Lb7of/phYbUfIQ97i70/5VTuFG/lVHM3n\n1Tfi\r\n=gndG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","gitHead":"a3212b2099765947f2a41d71af2cd95fcbca4b97","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"^7.0.0","@material/rtl":"^7.0.0","@material/base":"^7.0.0","@material/theme":"^7.0.0","@material/animation":"^7.0.0","@material/typography":"^7.0.0","@material/feature-targeting":"^7.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/floating-label_7.0.0_1592939452434_0.846725420094246","host":"s3://npm-registry-packages"}},"8.0.0-canary.a3212b209.0":{"name":"@material/floating-label","version":"8.0.0-canary.a3212b209.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.a3212b209.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"bac3e33bf17be1b98f735f93aa7dc63dad4399ea","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.a3212b209.0.tgz","fileCount":34,"integrity":"sha512-zGv4tcB3ytOCL86Hp7Xx2fVtgCmKvkCDaOZSHQaZq9+zqn2BcraTy6+aYc4WweyKvlFGsrotRZDbzeEOaGY3Zg==","signatures":[{"sig":"MEQCIA/LiPog030ciU0FXPvQUYSrxQHmaoqoTbfDZogmbt1fAiBkxmpN1u5K+TKVdm4VTR0XuuxNKIhFOfiS/q3e6na3Cw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":213301,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe8lPzCRA9TVsSAnZWagAAHlMP/2sbt2kjEtNHS84GqPFk\nD894OMGmvjOBVwLUUXenEc/9sYwcpBd3HryjZ0bnwd82QUE47rdXB6F9DMlP\nVPCvtXRiNQeYWX7ujsB8sGQ4ma4zD8CNN71UwyRYmEYR0wuE4ZdbhfuFE6fJ\n9S7KlwgENpEqM/9OnEH2Z/iYTXPpVWTZnd8OCpK0dPeZMmDhQl1l/lxb8cHZ\nwtyUtQrH2GhRdsBMRhxjP3V92baRG/7HVhHkON0ORq00BRsZ1sBOzzWeYhao\nP7ol+APSnV9GO6ddb+En0/OjnaKi6z0Wlj8oqo9tYWuqzyLq8IXFdFYHRoZr\nbiViBm94bNipyHXa7ZdpBVMVPBVp4H1LwUP8yQgOejlPynLnvHvv5KHq9AyR\nEoG7s4xLsjuYnOh5xpnCYVHr77ZNKvaHwIkDtR7DCVYlf3+oMFhn4uAOjlZc\ngygfEAPSvFbvY7/YzrvO69e1ahaObyDroM2x6wpf+EBf9nzm1XcBC9mQtPAc\nsSfu4g7Yw2UH4I/I+yUmN10VCwk4l1lXc35WEmxe9SNT8EdXsxCuiyqiOrLF\njQa4v+KhwMU5BSHAg/DK+IJOOeojXHTV2B3wXNR4+Yu+N/qPa5pkzR5VLzum\ntTBlzN49OfCQldV0uT3arbcLv7wHtdHK7bcXPvho+3Mb9sx1BMIpnRongtcD\nXUIF\r\n=gedl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c48f67451e0470c28a2a044f902a31f9fca577d4","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.a3212b209.0","@material/rtl":"8.0.0-canary.a3212b209.0","@material/base":"8.0.0-canary.a3212b209.0","@material/theme":"8.0.0-canary.a3212b209.0","@material/animation":"8.0.0-canary.a3212b209.0","@material/typography":"8.0.0-canary.a3212b209.0","@material/feature-targeting":"8.0.0-canary.a3212b209.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.a3212b209.0_1592939506988_0.9060258724765593","host":"s3://npm-registry-packages"}},"8.0.0-canary.15e81fe98.0":{"name":"@material/floating-label","version":"8.0.0-canary.15e81fe98.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.15e81fe98.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ce2c80befaf1182eb848ed66e5f7a1a92a366e1e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.15e81fe98.0.tgz","fileCount":34,"integrity":"sha512-dX5JnshVcwTu7upPpXs3y765zW6FBFSVC6mMDkGIZ+jjfB0VLPjRxXgOg/vKk8RJgCBgVJ7MmjFO4+arssStOQ==","signatures":[{"sig":"MEQCIEjJ/y/4SiF9Hi6OYOcGXR7EWAjNqKE+iFaTRx2gwmvxAiAIUIGrbQtLUWZ42IwYO1UZdbdg4npDYmt3EI+ALGPl2g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe8lraCRA9TVsSAnZWagAANXYQAIidJyPZWOwPaBbHDIWR\nqwL5IBG7ClYnheqyITyo1PkWBcnos7GJRKXSt9pT5LJg8Q+GSXpLt5TEqpP2\nwDjm8uTmDdW+FGaCnsX49ZPuLXFDVMh1xbFvzsO9mbAfWC2LFvvD9EqwwEP6\nXLwd9Yqx4bgXfK9zYQr6fJiqh5n5ija98zIR5bdD4g5tJ6rKAyjdaxuynfhu\nd/WjHpodw5QSlVtlfrQBMWM9X+Y1t5p1SvkUtjD+F0XBHfBBmloT5nW5V1B/\nmwXxNdBV5VcJWX5SnaT7scqAN2XFHFxrHbzAqM0opYJ2gwIr8Q4VlMo70l8t\nQ/M9425wuPsryr5thadunzBoPPhGoa4vAvygtshLgBLpsszLMbNfMHC3rYpV\nD6QlOyd/hi+u9t1Lp9mrbZUozncRQibz9TeZ38H09xBvGfpeLPacbnB6PYXr\nXBTqdWbeyK3dcXlGownsApm+GlYHQOulJZfAHmJD7S9xFNnmh+Vj1HvjWYZH\nii6lYkYrsSm1CoZ3QwnyIHw4uBki2eZz2x1iVsa4shfgO8EO+2iQSsuEAzTD\nyuGrY0nZpPMAUJ+WzIeNgOKa+7ZHstt+rv1JUx1KEyVagN8WIOt1tvHAYdYN\nfEH7g8CTMsU8qkuUZAq3X4H2QCXGJQKA6QLj2oy7ZIC1SpLQH9qM0U1CFh7E\nieAn\r\n=e79H\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"6c7873baffc445c3cff5a006913ebf1bf53617ac","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.15e81fe98.0","@material/rtl":"8.0.0-canary.15e81fe98.0","@material/base":"8.0.0-canary.15e81fe98.0","@material/theme":"8.0.0-canary.15e81fe98.0","@material/animation":"8.0.0-canary.15e81fe98.0","@material/typography":"8.0.0-canary.15e81fe98.0","@material/feature-targeting":"8.0.0-canary.15e81fe98.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.15e81fe98.0_1592941274533_0.997229744164988","host":"s3://npm-registry-packages"}},"8.0.0-canary.004c9d392.0":{"name":"@material/floating-label","version":"8.0.0-canary.004c9d392.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.004c9d392.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"28b6f0412d4bc449ac40c1347b332d4fb499683c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.004c9d392.0.tgz","fileCount":34,"integrity":"sha512-idU9mP1KnMfr9df3VDU2iqEdy7qAboxiqy4WGEFJ2VxFQJ+ajcp+1ZTGj0XdbxcaRfWvqm+llsNzsu/gkoO75w==","signatures":[{"sig":"MEYCIQDktSD9Pjd3woZsi2JF6xWZqvLzO/WypDHQ5AJ42L/0BwIhANg5Q1nbqsvvQjVVbTQqdwNeNW1Ij1BBbKpQW98G295e","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe8oiECRA9TVsSAnZWagAAz2EP/j8ZPDBzvXJd94xO1CEs\n+Bbmv21IAMwSFSKqh8IRjt+dn0QVBa3uPO0F5J0YK6gPu48GPJ31lEPLBW+7\n/aWyYoENtKqnBs0yu/RM8jTOvHiAv0XzakVKxy+8yQe3YrtcHREMOfEi18DH\nunSw4lp9IKwPy32K0YRo+Iu4EOsTvCBU9NLgXqHmLgaZDs/rvFobpKRfYl8N\nKHZb0wLP/1iaCcGqDa/brXF50B3T6jDULoDYVt4VMbo54tmk+qbiCdCoJ9QZ\n5LO4oYo+zvWDP2fyrnScbhLSZpx2FfxXHOynibOZfI3QHpOmY2FNHFFtdn0A\ndLkQ5aQ7ogLQisW0itkcciUnWyQbvv4USyvN15ClE6zYG4MCrtm6R0rm7z5d\nr5IahtTSUjXJe0hhBNYDfaSVqQ03hRkgtiyOqwWVOmyg7bfThSaucWpCwxAS\nicrH2xzkGwlbuuefCf1p6zX6835JM1UeGhTrNrheF4O1oXxk2GAsa7AO73lV\nY0oh2ynL8/FJ+QiZu0fBllRAfPl9rhXfXE06p1BD/3nHPXBc0pSoo1yAmy57\nD9mDRNwTj3jTRJv2aVVCtBayEc9kQD2qTLUX2Vk0dtNurhBi0noI/gV+wSz/\no51/0dj4EQIa1RzKA/vRsusb1csubfTEiEvbtx9uVC/K5qJAVsp7q7T8trrB\n0z4m\r\n=Jn/h\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"776ec8815215499686a6c5d2a13543285c30a7ba","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.004c9d392.0","@material/rtl":"8.0.0-canary.004c9d392.0","@material/base":"8.0.0-canary.004c9d392.0","@material/theme":"8.0.0-canary.004c9d392.0","@material/animation":"8.0.0-canary.004c9d392.0","@material/typography":"8.0.0-canary.004c9d392.0","@material/feature-targeting":"8.0.0-canary.004c9d392.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.004c9d392.0_1592952964127_0.8878511460218341","host":"s3://npm-registry-packages"}},"8.0.0-canary.03bde00f5.0":{"name":"@material/floating-label","version":"8.0.0-canary.03bde00f5.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.03bde00f5.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"12742c551facd594ddb0712c7394352789f1209f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.03bde00f5.0.tgz","fileCount":34,"integrity":"sha512-0K1go4rsgzZcEtpIbSv+jGRwlCvAgxHZRkdU5PzVh3HOUk5LBn2Bdf3f2mzL7TE4PzWkvFlhyAeP3Btky9D1jg==","signatures":[{"sig":"MEQCIH+tV3gj9Nuwsx+jNtYAHF0lHHtJHh+6LPvURpZWxnMJAiARaacX0v3tDkUXBJ5Xdy+GwhA0kSyB+q5pteN1UWQ6PA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe8p7zCRA9TVsSAnZWagAAyz4P/3I1TBWK/MTXwULTBupJ\n4RF7T2seUtmvppYKHwSoatzy9kKXiAMcCgScx4SnvJi7RCnCHfJqFM8H54ul\nbkEPEFchW9fA7sL/3UQAtoIvInNVCHxnj4MczjSVXVM/doCBAZqNGg4P64/H\nLa+ORnc82DUxtvkJx400hryVw8Nlwvc/0uGVNRJW1HTdrK9l6QCsCLADGqkN\nPxSx6V2yvwGOEuIqBe91MP4E2hexJnN+JdLO3C2faGG5Y5uTGVN47qBFwQt8\nke6VXDIzAfy6PgZmi/tq09gnJhRS8TAJt4LZElk3ClK/5dLbeVFRi27LYHaS\n5JbCiKKB6Tn7HG4N2oChIdADL3UUz2vsjkktxdSm0kWGo46kaefgoNRr2LJJ\nYF57E4xyPh1wrnyt+jLc32bgxmHN3rw2DXrE16ROo5hqROK15YXfkg1swxw2\nHui/JHeuRolkqXTaThpb1OHcMbpW12pfzfzP+rNJrgxHrNI85PFxp31nC460\nEZguoRXJ2YI7s7Ucoudd0HqZvgcBYeo+HH92nmRLP5VOew4B/Y9OArLsd8Y+\nf5C2uMCTJxQl15LCmcbrSwYAb98nZ1M+bgwu1ibbpvT5Gl7fSfcGlqD1uwth\nNpC7gPNCTPrxdXzzcIlEzyUYx28FYtnu5vjgkDCQg8Dz4M0SlNvZnNPhnaZ+\nspxY\r\n=5Xue\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c3937a4069800a251640cebe987bd7911de089aa","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.03bde00f5.0","@material/rtl":"8.0.0-canary.03bde00f5.0","@material/base":"8.0.0-canary.03bde00f5.0","@material/theme":"8.0.0-canary.03bde00f5.0","@material/animation":"8.0.0-canary.03bde00f5.0","@material/typography":"8.0.0-canary.03bde00f5.0","@material/feature-targeting":"8.0.0-canary.03bde00f5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.03bde00f5.0_1592958707378_0.7203194984487304","host":"s3://npm-registry-packages"}},"8.0.0-canary.599b8c319.0":{"name":"@material/floating-label","version":"8.0.0-canary.599b8c319.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.599b8c319.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4f3de3302ba2fa78152a8b3b424f44d4a656e683","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.599b8c319.0.tgz","fileCount":34,"integrity":"sha512-0rD5tFCjxTT5RICvUZv7RGUqAjBw5w9Kry2FfUsSREMhF0HL0gCHZaJfbvT6B5asVvTqmupLGFWqsq1KqQDXNg==","signatures":[{"sig":"MEUCIC94/dEu1Atn7FswjvJyCrTn5JrGnNp8iVKXCwnWmxUwAiEA8DV0D63GmlBWcpmerrAO/Btp0yafhrOIGGJcHt4Xsr8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe82msCRA9TVsSAnZWagAADF0QAI4DI2+gsvhhlfb09Nlx\nhQYx5E7zsQLclJPIXgdM1Cfh9/FLo2DX0FdwxeG3Hok6JIrRvls+T9n8rPAn\nMUe520xZ/GaGFHtxdJfKitHY9eKDuKPH/pEG7vLTFO1GOh0MtvhDCxIbBOIP\n0E5a8SJeWm1GLv85QyttyfjSQLuYep+qkJaHjf+MqbvlOxWcD5pV63XFx/Av\n1VwtMYwZ4vTTzjZ2F7zFsit0I1qCtkZiXpmKMxxAre41746xNjZ8Slriurhv\nPvlr/wbz9P8bGWfCZbpPSo9DP+apS9qi8zphZnVPIcjGYmq+hRdnGqL7SIfN\neYUiTytqIi9tQFjt4Ls2Kg9QGvC9jlw7GF6kXbcU/htQ+5idly+SnFTiGAqm\nRbX4tdyX6PGooM4Q4mE6qy+lvVWauTqnL+flxox1V+kOKDF59+6Cb+klm6aH\nyA/XMVXHPQN72sGWLuBw2ybenmPqqxTnD8QEDvSYaaHBwPGcCAtW4jmHnDQI\nO1qs7LddcVkvHGdl9cjgWqj3bXjQ0khgp7cfTVD7TNtSY7lAPKGNi4IRyBrH\naqzOVR6TvFcNK/9gFJMshcX/2f+Wg2orvXY3ENT2YVI/PRK3yw2L0IdV+xGI\nnHIyZV5nlY7nlFkgnRMSZJwNtMKAdR9hmx782QGj3WuZSzN5j8fKmEHjqvm8\n4Hjd\r\n=UlEj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"dc6dee1190cd8d60caae49aba599e9d7072433e6","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.599b8c319.0","@material/rtl":"8.0.0-canary.599b8c319.0","@material/base":"8.0.0-canary.599b8c319.0","@material/theme":"8.0.0-canary.599b8c319.0","@material/animation":"8.0.0-canary.599b8c319.0","@material/typography":"8.0.0-canary.599b8c319.0","@material/feature-targeting":"8.0.0-canary.599b8c319.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.599b8c319.0_1593010603696_0.4208207147605898","host":"s3://npm-registry-packages"}},"8.0.0-canary.87e3be418.0":{"name":"@material/floating-label","version":"8.0.0-canary.87e3be418.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.87e3be418.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3342ef023ec1a728d90154ab88ab16773d85ed9e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.87e3be418.0.tgz","fileCount":34,"integrity":"sha512-AzIFU5ydRvaFRxB/blY6Xo6paX6S93kOYagbH5YICHgGhcxLrRlIDoVojMTcNjFJRSsEX4jX5yInDA6U8hI57w==","signatures":[{"sig":"MEUCIAG0g2LZFyalAoLNoU6biuxowgEt3ffckj88iF18kY41AiEAxLpNR1/w4fzCvBU7BXrmAZtZ+wQHoJ4MpwH3bmO6pPw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe85MSCRA9TVsSAnZWagAA03oQAJxDwKlov7CupYNVTy5N\nViUJ7UDxiFw6CeAthExTP+ohkwO3SCBWOqqixP7qqMzbVMU5iLV+nw5gB4vR\nxtUSrvt+JkFv/xbdwGhmfE4pLa2Mk0TCyvHTiCarGuwTG0Mcuax5EOY5/FmJ\nb5ZsCPiRpu2AxzkKNCMNbG6XezKo0D5IhmbeNlNcWdzLOENhJXT4P+uXlzY5\nHCMFwsd+ZQzNJLfcQ+J74e19KmQNcfNuBI3v+soC1bmQjcyV9kk/T8UZNo9h\nPCsmwMjU0Q6//vafirsGmeLPg0RbmlpgG5WGGLzz9S9uuZIVeV0kWqc5SJun\nGbAO9aZlbYAoT2YqlkD+XH3k1+ENuVdOGfaCMk6UfivgjEJeytCPgCdEqKv+\nUMxSWnw0LFrrSbcjNezh4iJYGs69l2oKB6NdjyajrHRkmr4wRKE7RmKfDMC0\nVqvkppF3ihgB4WObgmekxcUrxMjKxzNLNscRjibC7Q2yM4Hc4fH+84InzMYS\nlVrCd5ocMcvqCorGZHZa7pzY6so3EF2N1ww9joTsSBmPF6AZhYrkFECjWmbc\ne+f6rO44Yvw2FC9xPxfz0ropJu/uowINGWP9N75NSibagTgyWHyMoN0ES7RW\nfdqM4l0Tr0YTNT95ZOojcUpCKwVCQ52qKIgaResj+GrbjYjtDNjKWTBn97zJ\nL689\r\n=Pd3P\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"4f20e6e641b48a8ec7f7916b83272bb1322a3663","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.87e3be418.0","@material/rtl":"8.0.0-canary.87e3be418.0","@material/base":"8.0.0-canary.87e3be418.0","@material/theme":"8.0.0-canary.87e3be418.0","@material/animation":"8.0.0-canary.87e3be418.0","@material/typography":"8.0.0-canary.87e3be418.0","@material/feature-targeting":"8.0.0-canary.87e3be418.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.87e3be418.0_1593021202378_0.8587343220907881","host":"s3://npm-registry-packages"}},"8.0.0-canary.035cf2a6f.0":{"name":"@material/floating-label","version":"8.0.0-canary.035cf2a6f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.035cf2a6f.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"356a3a9efc9a39e31b7e53414a095f425a9e60a3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.035cf2a6f.0.tgz","fileCount":34,"integrity":"sha512-AkrGgK0EA5ke7ozYovkD5umpqw2R8O8BOTeFXL9DWJjpdCS94L1ukKOw4id/TSIULcFORBA4HG7+ukzf7O1V8w==","signatures":[{"sig":"MEUCIAMgjC1hXpFojH9YSujUl7LhwbNCm+QhOtfTXV2v+EHXAiEAs32ddy41LI9w/DC9qVywY8LnrwFfqaziADrsUVy9LvY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe8522CRA9TVsSAnZWagAAruEP/3Yqe9Ikg85UtkpSoLAN\nHk1pXeG1b66E0dTPjnF0F1sTAbp1TPE1yCWlw3+b/jD5ILEGykYDm0OVEBu5\nFS30FvsRVVo74wrxtWnIFAReCh5D0Y3bbYBwNpPq3e39bV1ePcFWFsdjKOQ9\n/jVmbWgp4SaqSMfpH9dIhFfNawFxWsNtZMhlh9Pc74i1tS2/Yj2uKkFpyKHA\nkKO2cedFpbrP3M+PCR/3q3CH9SQxPHUpcHvSwSm+/P7K7EYT0iAT0IQwMyNN\n1twkEpyl0I19sFc9RoWK2tiRQ8YPURzbdgQJhxztWfH4P0Crx+UUlqGwUfqP\nYEa3Cru16r1s2RWJJ8IrssUEjhA0UTR8WA2UZjzVpcBiQ6KRmKme9zSoyHJW\nw41hNAFkR6v7n5w2Z6rfESTV2pfkschRrkoF2Qooz9rIllQGuT59tSl3moCF\nd+QVN/PlFQ17hji7iR6nK2WvfPUqNWyagpbaIb5MxFtutv7ylyTedNRxEx+K\nwYMlb5yOL1NPoUSWRqWMLmBax/VqQkjF02ffTk/u1kbND97lPPqHz7BnRPSi\nRqQ0BF9zxYC73VMAEQORO+uxkKLC5oTyAVRttRiV++aYX8CHo277u7kxkkul\nE0yfEAUpdpU3zfeqDVkyLdb2KUh5hMxcL0lVu29KyfHEScC5aP1d94Hyab9i\nkx3f\r\n=Vk9n\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b41149a9f9767b120dac2367ee34f615761dcf3d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.035cf2a6f.0","@material/rtl":"8.0.0-canary.035cf2a6f.0","@material/base":"8.0.0-canary.035cf2a6f.0","@material/theme":"8.0.0-canary.035cf2a6f.0","@material/animation":"8.0.0-canary.035cf2a6f.0","@material/typography":"8.0.0-canary.035cf2a6f.0","@material/feature-targeting":"8.0.0-canary.035cf2a6f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.035cf2a6f.0_1593023926247_0.5521393684337783","host":"s3://npm-registry-packages"}},"8.0.0-canary.2fed2c12f.0":{"name":"@material/floating-label","version":"8.0.0-canary.2fed2c12f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.2fed2c12f.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9d9f3cc9f054c36dfaff01dcc4e37606837f4cc3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.2fed2c12f.0.tgz","fileCount":34,"integrity":"sha512-6+HJN4r7pAezsneyg1b1lja7MiqV2/TXdyHPgpK+DZZ2eMeIhNRlYheALGuxMluHwWi/94Z87TImwa8682S69w==","signatures":[{"sig":"MEUCIFerAqhZug1Gb1Ic3iI7O0yrh8rycq50PaxybJi7M7kkAiEAr1dOCXvXDCPPoJ24srKcQ+QtFMXt27rW0EIunKi3Uqs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe9QKzCRA9TVsSAnZWagAA4Y8QAKUKRF8+kV+VWlvY+jJJ\nFh5rejpeNw1JwNLFcxv48cZf8qsSN2V3Yu/72VtTYQf95oRZTTD75bn0GVXI\nyO7eH34F8NfLONr6aPcz78S9wvp6K8d5HHIXa4AHsKd7QUJUl/H7DU2XoQNR\npvt3PUdfijcxEw8XqlUPFz6egM5odqvKmX8Pl0QdEuI0KdKbO8RwNPPvaNhl\nhFKR5PFSud8GRKn1Z8istcuepN3T6hocfbYvXtiawwdqbOK0iiiNCDGAMRw+\ngb5R3lLkYiR/kTOwVfm8UyuGeptxPt73YWnsYI16WR0OTZmx0CbiePDoY42G\nc5Lyep+/J2UCLcbodBcFIx7MnUbMBRcJTDjf0lX2YqUv5Ikf1unTtxczALYp\nBB3dejrO4eYF61/Q6A53VuQ+7lgp0J4D7oMSw+n9rjc94ectqJsTpMGHf+vj\nF3FoS+LVI0tYWhYbTxpgElf3X5Cx730Jy5bS43ETKpQaXFUSuaRDZ/KioCo5\ns+H/DtcX5ThzwvhMuEkUFz3CKR1YHxR5+t8fTlvxWKykyzEgXMKRHSBn9sGh\nHBaodAsFjD8LEPcbq3AylTIRBllVw6IwahuQY6ft0pQwWH9EnXt1jJtUU/bi\nEgx9KzFzgrmJJIPuDqy6sJLXQ7uDZb2S7jrDTeu6EIzXlyr8SblKm8zqYlkJ\nbpBt\r\n=+D3I\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"9c7b4d7bb8c365a3b1a4408204f63c124455f635","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.2fed2c12f.0","@material/rtl":"8.0.0-canary.2fed2c12f.0","@material/base":"8.0.0-canary.2fed2c12f.0","@material/theme":"8.0.0-canary.2fed2c12f.0","@material/animation":"8.0.0-canary.2fed2c12f.0","@material/typography":"8.0.0-canary.2fed2c12f.0","@material/feature-targeting":"8.0.0-canary.2fed2c12f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.2fed2c12f.0_1593115315448_0.5270567949115121","host":"s3://npm-registry-packages"}},"8.0.0-canary.38197b443.0":{"name":"@material/floating-label","version":"8.0.0-canary.38197b443.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.38197b443.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3e4b96663679ea56a095564ae5d060aa8f1a47f7","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.38197b443.0.tgz","fileCount":34,"integrity":"sha512-xNnkodGizNndr4fTYJPMde3KE2VPKzRMPdZpOKHE5rEmS2W1YIpUfchiTVdNsNgr9TXaoYKCPQRUHo//ogSeOA==","signatures":[{"sig":"MEUCIQDV/7iALDbAG2xyg/oZAMYIEFafRsAf8s+/1jhi2L4W1wIgfQ2AugaSq2PGgVfcO6jLNROlvgy0GFtAgACrlT49Yeo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe9RWeCRA9TVsSAnZWagAAmO0P/3ahexKPzPQgCy9dic2s\nSNnns/v9Bnk2q2NLSF9ViWp+QdYiMBuP71ItSTOgUg17jpJlkq+MWvKvc9Se\noMAOTvrPT/38G670v2r+C5HbpgdOJktfOtYuPjZdqTmR7UyyVhP0rvZ4wlkj\nD+WULiAesxybxOSGL0fFdDHIeOhPCYOYaTxbL8LRE0vMBPlJ2sIyAB2NRDbW\nQKErP1hGs9jnLarh9TeMTh0nulWe2rY9EHGDoit3AD2+0pUvRDWMyGZbpxQN\nuUyklL9dQ/Bpv6v86JHeNVdsrMyBP+O0OvZiKev5VGjuvB+yXUl6cBsSYpAA\nZUmjatUh1IG8EYX47/HVZPOC4//LdS40bhQ8ZYPgZGNKrxieoqykdyxuTKUl\ncCd5rCVkRuVYCi2kYFpbeMS7HHtPCS4wqF4cPnOZ//3Xr46IRMPukw5LF91z\nUsPsNYekjz0y6cDBGvn6mnG3o/FRZDA2GMbt/veVzQ2L2BZUT2jDJSXtD7BF\nI9uG61gzCx3bFWYVzXMbiqWvd4TQ8Ntv6sApKowyVdC80f2AvXLc7pHFozkq\nTcVeCE0S8MdA8AvomsUkfqkOGhPJlZtWVV8W3nZ5StDAYWYr3h0sddNURIxG\n04aUxYgO+UGTXZckHLZh4ptH8gG2q47/LZsqHRStehQGZgDpp1sRY4zn0Fwp\n6PAH\r\n=6b2J\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d5e18162ee3d69aeff0d489d4f3f73bb1cad7b1c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.38197b443.0","@material/rtl":"8.0.0-canary.38197b443.0","@material/base":"8.0.0-canary.38197b443.0","@material/theme":"8.0.0-canary.38197b443.0","@material/animation":"8.0.0-canary.38197b443.0","@material/typography":"8.0.0-canary.38197b443.0","@material/feature-targeting":"8.0.0-canary.38197b443.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.38197b443.0_1593120158037_0.856573983367553","host":"s3://npm-registry-packages"}},"8.0.0-canary.69a35e80c.0":{"name":"@material/floating-label","version":"8.0.0-canary.69a35e80c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.69a35e80c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"bf04411985665efaaf32833efd758cd682c3dfc0","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.69a35e80c.0.tgz","fileCount":34,"integrity":"sha512-NnNkp8SfcvpHERexZMvoQzVMuUJZn1GdWczmzTOnxxguuKkqZEjID+s+qOsba1oXDJ7PcjhqJs9Bc95KJ5Yzrw==","signatures":[{"sig":"MEUCIQDjicHJt13k/SmV3izugQcFSY8yyF2NXQRjtNoAOc1unwIgbgHWB7xSABF5HCCuNsAXPmMNgMkqdfq/FH21NalzUhE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe9jKuCRA9TVsSAnZWagAAppsP/2l2wcYfR1yC6N2SujUm\nrpCYph5Y2opWfUyqvATx/NrJywvm5csjMVtJ5F9QUhyI/ZMciOFugoElZlGQ\ngZqp6dK4kjufGYWp96YBvvUlK/c8+zEIXI4RVF/1ysi1sAU6kdrlFcmamP7B\n2dukr7fR4MnGckcJtATGNGkHmwMV2WyngCPg+m37JLNOjvRgBMglytSStH08\nN49JXRtMdd0POJyw05q3AXAgpGu2EEcRz5qAAlRM3O8K9A2NrAND5e+wkhac\n1v2xt54dbqOuQ0NAnlbkJDkhquoCeiM+fA/D/xGoRJpXppvVcrYY5fkmTYOS\nLxbyidUTCtJ22rZc1oLCfjdRZF8OLqOEgh23fDO8g7ABr5tjOPRfxzkneh6W\n6714Y/D+XZDmBUL2os+GHr2MUUBPDs+VwOwM2bdg0+8AGCF74OcJ//snMIuB\nhlapvGLUfW5FbO/CrOxCo+LgFgKpteGUgD2Nx4tW6xED1dV0aOFO+uyZFz68\nNtx9XpzorNH24X6dYGecsKPkujmZ86qu2WwOGu87ojlBR4RLPUQP7exmCjfo\nkQvcu/rC1QM6wJNc+L2qOeEawotsi56xxAeLSnPuOtmc7UpAiYv8J/Xz4cvK\nNFzW3lnfb08MkBNT416ikvjPPrNRx3SKvuJ0ECVbR+KnNi+57tQr1ZIb2pQP\nlQ6g\r\n=SlDC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"35bab77d7ad4b820da5ee4944c2cc2b7fe1533ba","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.69a35e80c.0","@material/rtl":"8.0.0-canary.69a35e80c.0","@material/base":"8.0.0-canary.69a35e80c.0","@material/theme":"8.0.0-canary.69a35e80c.0","@material/animation":"8.0.0-canary.69a35e80c.0","@material/typography":"8.0.0-canary.69a35e80c.0","@material/feature-targeting":"8.0.0-canary.69a35e80c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.69a35e80c.0_1593193134278_0.4960665973484304","host":"s3://npm-registry-packages"}},"8.0.0-canary.df7154fb3.0":{"name":"@material/floating-label","version":"8.0.0-canary.df7154fb3.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.df7154fb3.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a52d36d65ff23490dc9db656d8b835a7c93e8185","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.df7154fb3.0.tgz","fileCount":34,"integrity":"sha512-CziIQbw1vnfEIZkRy+qmlbujmA8NB0WkQiyRSJnztEGobsWd/MDKXteg0GXTQTXnEwc0emk7nJ6rgkSV5SqHOw==","signatures":[{"sig":"MEYCIQDIlXacE2tv+xrA1YbMlRKMKe4BVmLKWBXrhIZh8kxDiQIhALM8SZUXT8FYMWq5jul8nhELL6v51ME5kBilzz80AJSq","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe9juVCRA9TVsSAnZWagAAi74P/RIdEnLU2C/nujfEQ54j\nx0rjqvIavdyoUioPukylPxXAUhCzS+uEtN1Q14JbetjE3uRw8B0mdiqsN8TX\no9644U75HWKizLcMAmyIwyWrnzwjhosFZ0yn+aa72lYNcpq7iZI0to9pDnKk\nZh3WEsOL4nvNd/xk+wNIZ/N+P4mtAxWYy6ULxb4kCBwrS5lOGvXmNFsmDMmT\nQvm9BKY/Zq5CX4/avz50+kOq3zbKylO3J/pqbWBboOH3AcHvjT3upP1pm5kb\nQ6n0l52bsdiUmYcx8XdfFFsXBIjeRGXkpw/7n90RJb3ZUuIbE3lrt3jqr0Ir\nVLPGzXF80mKsoBllQv/zBYu1jBS4zjPsf7IRyRlVdPTo/eWC6V87Y/EP5cg/\nY4FRZ8XJGY4T862oKwa7/+jz/drmc78XtMMQrz9cN6y5DZ2BE7Un/W5vC/cY\nBdHdbNIgGKf52bhU1TB0jH1TJ1iKze8caecnMdpFl5gVGvMPrlrX4XHYmfoK\nlOw1SOroCRO8gpBcx9cuqJME+Rmur9GzskCzha5HlmJmlgFh2TMpECjAYaf9\nljMxCNQpD2E0EFi+62XGJtnmwsd64rBQLwtZXUHx0+Qdqd0ht9b0gy0sPSdA\nc8nb7/OR1nnk+dzRyEy6q8SGCIhDvRWs3M7ZJSJfpYuJKLRW9ycAlabOWEo+\nf/yQ\r\n=4EcJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"9081758d517c13eb6f120c62abd9689f1fa99906","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.df7154fb3.0","@material/rtl":"8.0.0-canary.df7154fb3.0","@material/base":"8.0.0-canary.df7154fb3.0","@material/theme":"8.0.0-canary.df7154fb3.0","@material/animation":"8.0.0-canary.df7154fb3.0","@material/typography":"8.0.0-canary.df7154fb3.0","@material/feature-targeting":"8.0.0-canary.df7154fb3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.df7154fb3.0_1593195413140_0.25723048423219597","host":"s3://npm-registry-packages"}},"8.0.0-canary.d5618602a.0":{"name":"@material/floating-label","version":"8.0.0-canary.d5618602a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.d5618602a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"433a2a6edc184c7bb211db240c583bab65bf5c65","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.d5618602a.0.tgz","fileCount":34,"integrity":"sha512-xW80WxckImpwWvlLdUDf86DYvNWUqzzCOB3VNBmeSJ+dGqT1c8XHnZuWqWgVKfEdglg257QOmmQJbwjO0Uf9Ow==","signatures":[{"sig":"MEUCIQCQODa8IdJurgUVsvzKmvzeukcI3BcSFpvMq14PzkivcgIgCYCirnATIJoQhxeJcG/tQr38qfGnz3Pw5t9e6uZfCI4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe9m0mCRA9TVsSAnZWagAAb7oP/A5CRmZH9mRULw+xr0MP\nHFikfFQ0dDAh414Vg/AZuKkgZ7NGjpT1ymLvRMrkTRzh5kH5LeTk/Spz4L9K\ndnOxOZVBbGX2T25JyzIJjapJB2AUqmvHXslNn486+0/K/b1aPhv017vSUacy\nYz7OpjAdMwA04QY7u/HKstWC8Jo4mk9x5UH0Couhho9tX4nE0BCX8E0UKgB+\nTBs2EtCQgx1HJy0kA4e/9uxNEXr/3iNiBG4RJxbpzynQz5Nt4FOhViIiJu42\ncYAdweWrNoClBCTJkwzUYo+HXXSxQfgFc4qzrfFUJM8DZzOpn4ZvYvKeh5DN\nSywK6akxwBAh/FC35m/1T+6nXyAkm0pogsX9rkKqms4JPWfkIlnFeq5MiL+c\nrU8F8vok53yU6NsdJKlQLcVjm9AjKmsqe8HAyc2H2Tn8OIqWV0NW+sn3dDVN\nWRph0Rlpoom9XJjopXS7Q8lUPQPSMMic3u5pHUQKAYYinzYKwb/ZMW+lAQFF\nGtZWEjE7nMEQGKTvywA+XMhHSEOpNScYFhzXVV6zJ3i0GIMbadFv9oskGjCu\ncMoASsTk6tU/xHPhmbA4enE5F4z0VEICRq2MOMF3MB2r2Dn6kILqr4URib8X\nheRuENxL8NKwroW0Z6lcbisbzMiNWDV89enMDgNSErUZSQtS6EkxwDg1EEMY\n3u2p\r\n=jvSS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ced8c184e8043c7ac8faa813b76b9661cbe247c2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.d5618602a.0","@material/rtl":"8.0.0-canary.d5618602a.0","@material/base":"8.0.0-canary.d5618602a.0","@material/theme":"8.0.0-canary.d5618602a.0","@material/animation":"8.0.0-canary.d5618602a.0","@material/typography":"8.0.0-canary.d5618602a.0","@material/feature-targeting":"8.0.0-canary.d5618602a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.d5618602a.0_1593208102285_0.7699025791613134","host":"s3://npm-registry-packages"}},"8.0.0-canary.e590b376b.0":{"name":"@material/floating-label","version":"8.0.0-canary.e590b376b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.e590b376b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"8c40c1127a7bcad9d06ecb362dfbeca73f7c21db","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.e590b376b.0.tgz","fileCount":34,"integrity":"sha512-ENy8HvmMnv5xoMm4D+OXBTsPD2rgnp3dCAsGe3PtY67wdJhTd9rDHwUSwaezttCu/m5J5q9apOFrn3SeFDGUAg==","signatures":[{"sig":"MEYCIQCGntb9mTN++FYTey8nx1lZxJ+49xFbb+EcYSwidS7IFwIhAMpGfTo51ZH2SM7fBi6qnwxoY0MXG5SdusVtmR2bbBQG","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe9oN+CRA9TVsSAnZWagAAZhEP/0JJNyuciPYd2EmfgFDi\njucTlv9GH+w8GjIAfJkUVQARvkSNxOm+zXwaKUcq7qR8/wbr27mCSJdF2mLM\nqT/vWaC7Oc124ILielLcgbVrCng/hsug8ePPC0ynUSrk+WJwZH2+Gcw/LsSe\nPZRlxvvgbAjCHCD3pWrDKq0XovURmbv2sjlDmSl6z1x0eMG7bvR3Rwt0jY9i\nZwhKkR091M4+iSdCxXrXYe7EoABfyTHePfxdI879O/yNhLVybvqSPQIOCC2E\nn6Olnho9mQuxllvIOt28QZtFQE3qYUCSOX2MXMqx8gkV5G/AfkDXBewrAn8f\nwyrYf9/WG/LSqvDN6azfOTP5u0vwII466jhDv4X5Ako6p2YpmNtTAsNOGBCp\nIFgmab8mub0Hz2B/Ts8MlkewB16pvUbs5I7DUrHSeakArWS5FGF8XVn009DX\nIrX/5EbJjkehwQApuJ3MSJjc9bLfRGivJ+dX8/ieCtAxVtXC47lVW44wnKnl\ni0+fq55SR0hZYmYTcjYAVD74m3mgJjG8USpQfBETkJZdi8P81O1xr/OAt+sp\noRVw/YLi0dDuqu0at5lHChV9jUAlxkShB4l85+hTWm952k2Xv0F9Z8s289gA\nrwzzSoxikc6fH5oG3cCTI6Ep8qff8yCQqZRMCm3OGTfnJ91c7/ETK2F3o2QO\n36bJ\r\n=naD3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"0ddfb390b804034a98ec0b8e7741dd3f3250b5ab","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.e590b376b.0","@material/rtl":"8.0.0-canary.e590b376b.0","@material/base":"8.0.0-canary.e590b376b.0","@material/theme":"8.0.0-canary.e590b376b.0","@material/animation":"8.0.0-canary.e590b376b.0","@material/typography":"8.0.0-canary.e590b376b.0","@material/feature-targeting":"8.0.0-canary.e590b376b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.e590b376b.0_1593213822075_0.534241492357683","host":"s3://npm-registry-packages"}},"8.0.0-canary.0c9d6bd2d.0":{"name":"@material/floating-label","version":"8.0.0-canary.0c9d6bd2d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.0c9d6bd2d.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e6923f43afc262c8a2015cca6bec1444116464d2","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.0c9d6bd2d.0.tgz","fileCount":34,"integrity":"sha512-RL7//t/bkzUXyilYlP8R9dVgbJtFvkgX4P8AJyKr0Un+EcdXGFlEUvq+gIJDMrcQJWv+3oYgtVUul3qOloxJqQ==","signatures":[{"sig":"MEUCIC/TmmheZUZcwSax9jllyUT2O8U34EH9cfDN/LEDvOzBAiEA83NB0q3JjNaj2XAxzA0Uws8MIPVNxQS/9SVhzfLcIH4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe+iGuCRA9TVsSAnZWagAAcooP/1oi+w0sYdosFjtJtFsa\napgPGWb6mXZdIUOoBJ2bp1TlxvxDLh1gV2FBkUMQavNOIPeRcUTPh+fJtg9x\nLQmcZXhlYk8GPOWrTZTWzI+2JxTEWcQT6k/gmM+CzPlvKs5cVDqT9soWiN+7\ngQgBjQSosY5KOiL3Q9E1dMynwqK3/IpS6p4MbGbwPjW/abVSveS7gVm40sO7\nGngvdy1wo+u1iqjdAD/Y9oV1Emi/lUm8+2yQqQhnpPym9KueJCkXgmk51W7R\n1Sk8UxbejCf/AoaBJexypnMH/GJW9ObxfdJUKXUq2hVJ/m+x+kgWB/153a2r\nD3Miw/oyoGgNIENw4BnGJF0eXawMXxvBiyLjHC/ZSItdyywHekA0SDoBqGEn\no2JCTP3YMRjCgG7+u8nhtMsuv+vBBykc35qj1P3leToqQSQjBpFuMo1fOEAZ\nm3lUjYmfDEXTn1WdDy+4WJ+U0FZCT/Kt3wo6xbEVb3uqduwlI4YCqWslrsSg\nK8iuqdoRt8kBPes1GYkzc7Q7sIgQrSSoZTZEL7hmC/U8LQWGAPvnVLgbsmUG\nUvWbH4cXdPcku1m504l2TKrDKp6tJRr0srizSy5SGo95v8dsZbKEo1HMRI5D\nrTwpOuevTWGy5ZSEvTr1YXp8amwfSRVdQWsdNmFKH2NLmJgb1wTH3NdF4REZ\n6vxG\r\n=xJ05\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"4f171433da859f637823aa04bc12d72783771f90","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.0c9d6bd2d.0","@material/rtl":"8.0.0-canary.0c9d6bd2d.0","@material/base":"8.0.0-canary.0c9d6bd2d.0","@material/theme":"8.0.0-canary.0c9d6bd2d.0","@material/animation":"8.0.0-canary.0c9d6bd2d.0","@material/typography":"8.0.0-canary.0c9d6bd2d.0","@material/feature-targeting":"8.0.0-canary.0c9d6bd2d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.0c9d6bd2d.0_1593450925645_0.5224472355836738","host":"s3://npm-registry-packages"}},"8.0.0-canary.c1fec4246.0":{"name":"@material/floating-label","version":"8.0.0-canary.c1fec4246.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.c1fec4246.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9c5fbb33f00f4edb2292f1abe1bf0890fde9d058","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.c1fec4246.0.tgz","fileCount":34,"integrity":"sha512-ZkPvqeUyCTi75ppHYicA9HUj3kIOvjJcSCdhYqwMzCxEhm44Fs4LvIqteT75OkuAAJxElHpFuiKyzfssxb8WQQ==","signatures":[{"sig":"MEYCIQDflztGeU193ik/kIZATW7aZqt1y/fS02TniKEIGZANRQIhANHhtahSC1KNxDxZerwzoqbpJPgUZGRxts0QwhjvMfXC","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe+iVICRA9TVsSAnZWagAAvn4P/1XqAdfajnWP9YNBy5lB\nkBWPXFxBwYyWEpoG1c4ujOq0GmbEqJJAbHbA5089Pqiff5RB/sINsXKtpOcQ\nWlsQIQ32aB2pPS3AuyrbQJUB1L+u5tYuOcge4qGoInH5UPkn12vYiSWA/N/b\nnH2qwktvUHR4UDhg76+uVXd2m8HBKvKXN6GW/m6gcfh50cTKBTtERwv1ZrDX\n8wjUIrxPlYUY40kfNrWqTR8TzMrm485omjNSjbRJDKJ7HKLhwgCUvS36hH9o\nH1ZhoyevcSYg5s7jH+Q88ofFFU0EITgddCshak6MO6ZUhtecnicCEbSXKoRr\nMYCNJm1Zd5J2upWgats6NmFr/ptHv2H1mXgx8wILmyRbcTOduNXpYtCf9BOP\n6Nt8txov6x7/8eW0cHAndBOs8fPK8ibAB82hBy8Tm7Rw7ntBpNNS+Y1leWIE\nb7ZikJrRPImMzoV8S92PliPmOrYcrWx8h515l96Ut/UvERuvWY8/6DsW4PgU\n3x4LlSUvTesrJJ7dRfyQplSEjhbCWuA4LWp/OvTJKqdFQuJcqkk5GKz20UBX\ntCVGeNDWGM4MdI9lwuINKmniq281AEejlcPQ0q++Oe28YSh3PeVyiZncqKdV\nmvT7jmAVUZP+Ww+UN+Ia8jMHEqz6x+23fs+7TLqe8KRdda9d1zWHUZCppm+u\ntfEy\r\n=k1NQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"0a588e37208b314f42e946ab4add50d0ad1ebf7c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.c1fec4246.0","@material/rtl":"8.0.0-canary.c1fec4246.0","@material/base":"8.0.0-canary.c1fec4246.0","@material/theme":"8.0.0-canary.c1fec4246.0","@material/animation":"8.0.0-canary.c1fec4246.0","@material/typography":"8.0.0-canary.c1fec4246.0","@material/feature-targeting":"8.0.0-canary.c1fec4246.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.c1fec4246.0_1593451848012_0.0807513085233238","host":"s3://npm-registry-packages"}},"8.0.0-canary.c678a9d34.0":{"name":"@material/floating-label","version":"8.0.0-canary.c678a9d34.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.c678a9d34.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"0083e3b198d45118e7aa755bd18d895ae8ff0ba5","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.c678a9d34.0.tgz","fileCount":34,"integrity":"sha512-77Cj3YYeuJUGSWnOUG3ZdDLNkZDO1/F+MZJAHB1m2lsj+G+HFK7/bgZtirHeRLsm7/9dxOO72NJRHsWy6X00uw==","signatures":[{"sig":"MEUCIGYvQmR872quTP2RDDJ8Wo+yvV19FMsxFCx3/pZtQL9TAiEAtiDtmhi8sJttFjQDLQP8YVmS6ZQhKr3C2tqF7KxQclo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe+ipJCRA9TVsSAnZWagAAbLIP/iKdpsRsyrWbXOk3EG1V\nea6i3hwNGRe7ya8L5mtkCZ8i+YAG45P5FSUCyYrZ8Ypry3NGtoNc7IVJUS7B\nB0zXGDcsW3CsVm+9DZO4B4JzMzg7yVcn9t9baeKgzKRnCzzd9AOoMd9M2UOL\ngbeBznhWxcbqrPc9VXislYrfdX04CeXF7lfkFmR9VYYdnzYj2RYqL+t0Fzp3\nXtIfN+CfqMEp2sRwyIg/MVBxiP5d6G6rixSeFBNZRDOx7HV2wuINdPYhYZ6F\n3hfTKooFRBCtX/gdPGNBGs4Wp1+Bu6QTEv35eVzR6XxTMnSY/QPL8vcHa6H1\nN7QR2r1A9FPbOaMFQCFTiLOc2Y/jM5MlOGm7Y4WUwH5PMVJ6t5wx0gvMJcCP\nOrVZ0V2N5E9vIXzXt9w5olxcCU0GZishZ45igQgJNY7NZbtZmrsMJvn2M0NQ\nKBbo3yAxd2Cd6kX+tqNH9HuCcv6E0gh4ikiH9GsRXX31sWF8kxzbshd00p2J\nOat5BkSy2S8egNjCaqxlGKeYJWmkOO30VV9GMN+0hM47G9jlNPfp8EGvv7jA\njOy8K1dnn9hGLK7/aqE/W94kCkD1TcRyd1IJxHo8ptcLzhvStoXLaot0tT1z\n+cMpfSW8qPgk9jjXiRndcLWMKpYi5QjosGw+4sCRIiwHG7j1eL87d7GcVjN1\nF4dT\r\n=OAjS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"bc361f7c6bcb498f3a6dbbe6255c06a66b7dea5a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.c678a9d34.0","@material/rtl":"8.0.0-canary.c678a9d34.0","@material/base":"8.0.0-canary.c678a9d34.0","@material/theme":"8.0.0-canary.c678a9d34.0","@material/animation":"8.0.0-canary.c678a9d34.0","@material/typography":"8.0.0-canary.c678a9d34.0","@material/feature-targeting":"8.0.0-canary.c678a9d34.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.c678a9d34.0_1593453128592_0.08465742543164523","host":"s3://npm-registry-packages"}},"8.0.0-canary.521afaf6e.0":{"name":"@material/floating-label","version":"8.0.0-canary.521afaf6e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.521afaf6e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"0685ce33341958786b833d51b273b411367f24fe","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.521afaf6e.0.tgz","fileCount":34,"integrity":"sha512-k0N2nJybSYihbpkBp+Y+73ZxHJ6okmLMYsdgvS8csyxW8Z9FBaV2HZr19+bxlixy8S/NL1NSyQqbJ1tmkNuCww==","signatures":[{"sig":"MEUCIQDab4IRDegf2Hjd5nR9ai5ECULS/lT0joTrE4yQEPKZdAIgXqip9SCVFjIpqicxAES8S6ZF198fk8WlZaLKYIp1hbs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe+1THCRA9TVsSAnZWagAAdzEP/3+OAs4oK9FBSBZlgQ1T\nXxOG1NZosJnsksEtKDX43TctRYWYnlXF4+u/aBPjNZNh3dH3AsL9FtYacAFq\nbXWgOYJ+xM8kWLn05yjz3Nu+5dHXuDIRlTT/IR3kQe+c2bPLd7CpnJcwE1EL\nz7N8sSJaas5cuLVouc61vgeMNzGBXjJFVJQqnJiLG45/D8XHtLRoR2UAMliB\nXCKE/PH7/l7f2Ggj14X+82g62yAncPrRC6Sp1rBFkmbT8yHhkb2BNzyabrCb\ncBdqVluMr+zkrEwdNyDe9O+9z54YUAftEy6iN7mpiCld0vDFcnKHB67lAMNy\nzpbFW/JTQR0jrvU1nuyMrI41DkQZF0Zpd+q8TWgIJUHqGXn6d/d7JAUaBNat\nwJ4xImqXPLBaux4w4fYwGTtFzx2uzd6pG5K9iqZKsPsG0RacyfJA436PUdHB\nt0Q3EAEHdawvCv/4yPt87AlOW+tkg1EFWHFSODJUCVbNhrC5/RuawHgfJsBf\nvR8g5r5LGIhdlHtBYw9lFW6BDyWGEe9ifuBZXsuOn88dTMNaq56S78zOS+nZ\nAvnCvBRRKQudcIMEhFOf0qlt6+xvdDqtvB2tr68fTG/8etEAPekme36870+V\nKgJCGST+k0PaPlt4SFRO5vvGHuZM+DKVmfowmF0yz5/i8Yo2HeTALU2Be8ke\nBfHz\r\n=NnUf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7ef14e207a6031cf299541a4dd72c2eafba3ef91","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.521afaf6e.0","@material/rtl":"8.0.0-canary.521afaf6e.0","@material/base":"8.0.0-canary.521afaf6e.0","@material/theme":"8.0.0-canary.521afaf6e.0","@material/animation":"8.0.0-canary.521afaf6e.0","@material/typography":"8.0.0-canary.521afaf6e.0","@material/feature-targeting":"8.0.0-canary.521afaf6e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.521afaf6e.0_1593529542672_0.427860758855634","host":"s3://npm-registry-packages"}},"8.0.0-canary.a2ad48839.0":{"name":"@material/floating-label","version":"8.0.0-canary.a2ad48839.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.a2ad48839.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5ea695ede4edc776a9e9d8a327b42d56abec5ab7","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.a2ad48839.0.tgz","fileCount":34,"integrity":"sha512-mgE9fyIDc/TXfLVjYzg1Xe+XE9ZoDvKxNIhOCfmuFWZritx9E/Uz0ik4dq8xmkTzf8A445yQYfHYxCVxLQdb7Q==","signatures":[{"sig":"MEYCIQCldRXRrAvIV3dt4d7C7aEj8Iw5+ResOF01EP9RK/d4cAIhAJIa2h/v4eCV22+NtAZQzTiQCIg7u0NCQrqZI+Yp9Jy1","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe+48WCRA9TVsSAnZWagAArCYQAInR2gO/sQoIbn8NOFsf\nCbfg4UBVZIuu1UHJCGjVUY6/waexuNYO1nEELNdIyVX7kfWF3A705bybNLrG\nDx7GwlGBAJo+WbbKRdkBqD6sli8TMx3nUmI3v86OcYccBEaLGsfyERZtLEiW\n4YPOVlBwDXMvpw0XTs+UwJEvMcTgjRwI2W6AuvfTEYF/7c6sEVINXca4zU8a\npIX38mFC5eQAw1tMjDwk/Br3XORDAGObj7bAFv1BZzYh4TyajnjArjyl+lYf\nx831vmoXNfHtsVCSAgHagbfoOCWG6m6gDKgDCcSOc0YPvDeTM3iAYJtHvC7H\ndUkSpy3gu7NDhvyWUO4VE9LejS4rke1Z1LVCX9AwrT3xwlKJtFdP3vm28ghC\n5K+bmu4IC8GIzHOFKq9dWxeNHMMW5ktpgmJUq7clJg8gJkjzj1iPckrbbpdh\n22LE5H97epyXPCaXvGv1pv+E/O11MVoC6+lMW6QybW+CxBPrIOcHlpYIMskj\nBzjaJsdpXNMkn8rhdj1F5iyHdll1WBgZNfrE0K01wNjps7oSxpXoc2mVM+xd\nWJNoZ6s0DKcr6srWAnhiy0UnLLZIhbFZ667VRZurkOqiqg8D3Uz8Al3bfSzD\nsm6bVEkH4VxA53ntd69RPs3eVMw50kMXLKX/FrML6kaPRHRNPnxTOWZscXLX\nHsaV\r\n=Xnol\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f7f949a98e604fd4cce2507e8d63c145d2f34e55","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.a2ad48839.0","@material/rtl":"8.0.0-canary.a2ad48839.0","@material/base":"8.0.0-canary.a2ad48839.0","@material/theme":"8.0.0-canary.a2ad48839.0","@material/animation":"8.0.0-canary.a2ad48839.0","@material/typography":"8.0.0-canary.a2ad48839.0","@material/feature-targeting":"8.0.0-canary.a2ad48839.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.a2ad48839.0_1593544469554_0.7907619658074565","host":"s3://npm-registry-packages"}},"8.0.0-canary.ec2385881.0":{"name":"@material/floating-label","version":"8.0.0-canary.ec2385881.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.ec2385881.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"fdfdba888c11f125ea8d3402a4325091688ac4c1","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.ec2385881.0.tgz","fileCount":34,"integrity":"sha512-TpPP+KMXKPOCy5g3CH/MNZH6ZL23QL8ytiD+nPi39xTKZmnc4lzJqMqyeJwXsHlKIECE+m7VnahP1wQysxsRZA==","signatures":[{"sig":"MEUCIHTOAEp+L/W+LvRgFJWiYam1NxclUKT3xLivTu8+QUwQAiEA5jRgu9ooLY4Vytl1BQodnExNAo20MWxJO//KfGiJhso=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe+7LdCRA9TVsSAnZWagAAoe4P/3PK3J0bFUc3vQK9ybi1\n05m99CJeonTSm+1OVwQB8tediT3psOYyCtVoByK08pSSgX+rjEYupHk8wGmu\nPfh1YdDS3VPXvpxEdVkF0hTRUzSxX4rY/SjqGFfzU6pPiwt0Phg8wxWUdYd0\nWjDWxQ8mF1gKiv/J6HgNm+0ef25+UwtsMp22QNGem2dWjE5jZoh2sh0AttWP\nkC4F+KmjqoMWsDOdXcosGEe82ge7YOAC4gT5C0MdOhCPHyUemQFudqJfJmTq\nbEQmCI/qyAceoWxY41ZSdd6acSo2L2e8WLP9ErxJqytCIqx/bzr8Nl4t+MCR\nkyD846hFrhIIPFQeNwJo55TwgqVliETloMZG1ph2qutETwDWzUY3G8sCaqNp\nrStsB/dnzjJ38nCSzLgEApwiYu5vSUCGpWs8a3CTwY/y0bpuJFl2GMU8sDib\nnEh9rnof3sYaydbuRUoO+ihfkqL90scRLH5adQ7Z5mC8cgAsGWJQ++2Gdmrh\nxU0FLUghMV9E5A6wbosc63Uf+Vx5Racfx8G+886Is0DW1xQUc9Zvav9+678w\neRl37QNPOzsJFWrXFzVD8GI95ezLu8bqx287ZTJByCi1TY9trWhiSEXnUYmd\noCBmxWIH9sVrFEM3jqDZLdW12qxXyUMAuJfcLwWu/jWAbX34j0EksPKjJmop\nq0r5\r\n=2nVh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"0039d314b5ff29856a2f17a5ede426f3f01c80bc","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.ec2385881.0","@material/rtl":"8.0.0-canary.ec2385881.0","@material/base":"8.0.0-canary.ec2385881.0","@material/theme":"8.0.0-canary.ec2385881.0","@material/animation":"8.0.0-canary.ec2385881.0","@material/typography":"8.0.0-canary.ec2385881.0","@material/feature-targeting":"8.0.0-canary.ec2385881.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.ec2385881.0_1593553629019_0.29565212174509203","host":"s3://npm-registry-packages"}},"8.0.0-canary.610c26c4a.0":{"name":"@material/floating-label","version":"8.0.0-canary.610c26c4a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.610c26c4a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f967d38acaf9da0ee1e00586bca44d3fbc03b287","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.610c26c4a.0.tgz","fileCount":34,"integrity":"sha512-8OhqhNydU4hLxws3jF9DX0cwmOaO965cTkl7H0FVFYLqb933/Ov/MofKTFbRh7c2O6qAnlrVVQLg6nwOMOT4sQ==","signatures":[{"sig":"MEUCIQCtMzQrq+s29LMZO4qPpsEH35s3LL6Sb+MUSZWL4SIMwQIgabZoH76KsyJYZ1GZL1CcLU9icXrwK2YhzJDi0Yo1lGI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe/KQUCRA9TVsSAnZWagAAQo4QAKPnf01nCf9gwRZRaAy+\nu+gkOwtXlfas8cQCc9FYY1FH2JNkXEs1ghHAjcZC7RZgvbF5mxn5hp0bbc8L\nVrC7z6nwgrDAGk2aYdVxsmCKMLTGGj3aO04pnHtZ49EWFZGotoNKwg8NdY2A\nQFuNcjwdIHoz6ZBkHYWDYTLZwuhaWPrLllk3DihRCjQgh6PijjtVEtPKcAnp\ncMJip+7qUXvJosQOoZm8AE7Y2kN9ZYQCOUbYjQ7dGi5hkVIEoOPR7eopKgTq\n1/O/GB6JJsYJwagw+CO6J45eIAqeobtE9HwzEzySOl2cWFGyhRRgGsJKc9AL\nYzy2fw1SZERWOh+Mi/NFSyKBgdeQgZLevViRtUGNVZiqVe8ruGz2c3iHeiWm\nSQ916GZprcEWFf87fi+nYaPxL8YNqY1dxgKKk5IqV4SQl8Cm6eOrC+zzm8CR\n2Fw2nC2vdTXxo7UG8aUFn3hRj2CQxn15wNa1j+puO5v+OciIQCGtZ5c8c58u\n3PHrHS/Y7mWbojiElgOyEYHIBXwdGem4r6+iUjtOqpzzy1L2zCSt21RhqRK+\nOjUMhbAUX7Z8xwWR2ARri66EwO7m5Rng3cDGVRiVUjsvNLC8AVXkQuGwrgFd\nvSBRon600IqjpPP2hxyce/O4KpynKaIHB8w0q1rLYSyjsujl4EpULnQDymqp\nkIqN\r\n=kPMc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"84352d6873c8f275f890267635fa416189f57a3a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.610c26c4a.0","@material/rtl":"8.0.0-canary.610c26c4a.0","@material/base":"8.0.0-canary.610c26c4a.0","@material/theme":"8.0.0-canary.610c26c4a.0","@material/animation":"8.0.0-canary.610c26c4a.0","@material/typography":"8.0.0-canary.610c26c4a.0","@material/feature-targeting":"8.0.0-canary.610c26c4a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.610c26c4a.0_1593615379658_0.12496659860375603","host":"s3://npm-registry-packages"}},"8.0.0-canary.e2ea4a99e.0":{"name":"@material/floating-label","version":"8.0.0-canary.e2ea4a99e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.e2ea4a99e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"be4436ff36a78372516d42c676dc8f42e22a1a03","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.e2ea4a99e.0.tgz","fileCount":34,"integrity":"sha512-b2yVWWY929u0CCy5rx3dR04eD5oNDnc+laqCtLxlSg801czWhKqQgt/5tINa2JeL9IGx7w8t8MN86xeTUl1+wQ==","signatures":[{"sig":"MEUCIHvttRKLyi1V+RcG5XsSkU9ank5KyRQjIjzX4GOgcEGuAiEAnWTQRqn1JJEm6bqsQm5awUV3rDWYmnF97TyCc8w8oOI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe/OOYCRA9TVsSAnZWagAAem4P/069jlJSlOVVxZ1aQlMy\n7Vy66u5NKxy09+JolVklsCzjfLUnEHAjDCY0EWzHyTwB+VtMrs15tbwxjDjQ\nC64F36vBvXp0i4/fYD0AFeSeDgElhvm9nW6ksiTrnB4nzejfitqiDvB0qtE2\nCKHaCw3W4ERbU4CwAScwm+5xvoYW7AL8EK2WTHKAdhFlbZ+vKRBae3aGymAe\nAG8YZaZDrDfaabwBpqjJ3obO9dkPW7zLYgfHSwjbeAewxw5Ud3VSzPjwWiJ+\ndLbCsRKUMOw4xAOG2SZxG3At71ThCVMwMIn7UmX2aj4jPdDqzwUxHS8YW7/9\nVfAGNDhxN3hkCZLEQbo+fUVqkYXZ4u6moCah32tVTGWKobr4tUJ4coZs/VQs\nYlJpPZO6qxEVWGPoJDLBIAyV3QWI2P8N/+nShKVOwgkYiHW8GtMW0x7AiJQM\ny1nch81o04mh+e8YRQKoDXfBTrsFgh/MstwQONUHU/kQsgKjo96LEsZRtiGx\nHO+R2t6ckREu6m/rN9QYDS/WRJfaVmQIF0Y/F5k7tqGLkawuPTnBAmiGH0z3\n1ZfAJ5kkSvlGo67OtnoLMLu2hc4rWvA1S/5th4jk3U0YUkCs3yn/tyDqxyIY\nMPVHAaMOOuGZHs4iN/QTIsd74mRIZ+5Nl/+40tgmATOWHJ2Fd1wRiuCLFtJ0\nuCeH\r\n=4jHn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"42e9f40d91c643a9770e5a563a204c7f36196a3b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.e2ea4a99e.0","@material/rtl":"8.0.0-canary.e2ea4a99e.0","@material/base":"8.0.0-canary.e2ea4a99e.0","@material/theme":"8.0.0-canary.e2ea4a99e.0","@material/animation":"8.0.0-canary.e2ea4a99e.0","@material/typography":"8.0.0-canary.e2ea4a99e.0","@material/feature-targeting":"8.0.0-canary.e2ea4a99e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.e2ea4a99e.0_1593631639958_0.8015881378268188","host":"s3://npm-registry-packages"}},"8.0.0-canary.a78ceb112.0":{"name":"@material/floating-label","version":"8.0.0-canary.a78ceb112.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.a78ceb112.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6f48f65000fad2b8da8bfa086dd358e230885f3c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.a78ceb112.0.tgz","fileCount":34,"integrity":"sha512-wPRiU8ZK/LTgd/D7MkA/6Xz7/NItdaIAEskdFUuHwo+8UXc3TIXw44DtpJ35Y/0NaECANcrUul+s8De5CHVRxA==","signatures":[{"sig":"MEYCIQDuehkn+1kWzS5e1i8NeIQIEYxQkRIwAZkwSeVRO+Jd/wIhAOVoEF//vBKGiz/dSTZI1pacBOBDRCl0oRiYUHlEULN6","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJe/OZaCRA9TVsSAnZWagAAkf0P/2O9KpdjJaUOojpO/I5b\ntt5yez2wkpHrEYgDE4rkcSwwHkx0KMjdSMejqzA8Ytzl+N0u9QMchzkxuZyb\nTQS4ayq5kQcueyDUmekEIFc9ylLAIJ5DmTg5JkR5QFDMELJ/VwfI4q2QFmZh\nxQLQGc9a+vNI4IggQMyrRUzybLJH28BwHxjI+9UaXRodIPj6eCWTMQbA6JSA\nnfmlzA30UfgOWwr7qME6e2Kk/qYB2liIxCSINzshf5LB8HfWgl4LTLoq4Cz5\nOLqibSAorcvFgXPXAqoJFX6SqCeK/cCnxwm3VFAdlwKihc2whBNGxbAKOQue\nX7Y9kc5lU80rCK5JnrUcQeFLZoROkOXBrxhZ1StreeMM8eSgu2m6CtxijJtP\nDkjkzHGB7b/WJRD0XvPBop/vpEpdmX1UiMmiEDqCn8XBFLOebZIs4DCZ4q16\n41vc84ci+9jdSB2DDh/W2/yvpy5lafwQyw6f//kge8/b0uotOK4MR7FQucvf\nciibBVc20PCfSgK1n8+gVHLZ1lCHZ90N/JeROiVFVOf/ABhxDRuhZoC5igKL\nPfvy0Hl4C6KccUJG116UIUu2p4m9sN3WKR5NnPhEaabT7VqT36Ct9AszkWWS\nFJOV3vuealldg1gbwxFhjvG/y5phwtj9iy9evd2QAgQKumIPCpA/RkosdPNJ\nw+Sa\r\n=GdGa\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3a38e39f3d172dfa99254185d8b0d4c03dcc61e3","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.a78ceb112.0","@material/rtl":"8.0.0-canary.a78ceb112.0","@material/base":"8.0.0-canary.a78ceb112.0","@material/theme":"8.0.0-canary.a78ceb112.0","@material/animation":"8.0.0-canary.a78ceb112.0","@material/typography":"8.0.0-canary.a78ceb112.0","@material/feature-targeting":"8.0.0-canary.a78ceb112.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.a78ceb112.0_1593632345489_0.4720128067802529","host":"s3://npm-registry-packages"}},"8.0.0-canary.b0c456d33.0":{"name":"@material/floating-label","version":"8.0.0-canary.b0c456d33.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.b0c456d33.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"8c7b4aba49761f79c5ac922c23094a16bfc69406","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.b0c456d33.0.tgz","fileCount":34,"integrity":"sha512-/WceSJfAoIg69EedGye3soq8MD+MVAhngWUW83lyaTigjB4dWeWgjkLNEDxEJQk9zftceYx3X5GYcGnNksQARQ==","signatures":[{"sig":"MEQCIHkzkMZtfqVftbRs9Y8LWmANnA7NJXQp1/3aHrHoaSvFAiAfAjP8yZ6TJxMxO1soYLsmAsqumS96/k1/70Umpti15w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfA6ifCRA9TVsSAnZWagAA/bAP/3Pw/9un+xOFxcmFecBA\nTllK8QbjH4W/vm1xEPZPMJwgH9f7uGs50se/dNRSd81Ly6zDhUesJgr7Q2CU\nX/sVSvy+E2d1INYwNeDveEhiG7nn0AgUwKtuOzocZG2ORfJfBV8DIqk2lzBN\nUdcXwpBL916iD+tcywGbmgimYIzyqqxlWva6jzectlzAq3ffWyTnG80Sd6Rf\nNltBxZZt/aAScRJ2ED8I+Kr7vVLita2/DnerF3eUfM0Uiq/xZQiWoa7AgsWd\nSaeZuSCTpOzGm+ErMkhojWH1ObXWS3dl+IaUeDiMUYhmlkWFCHNW/7M7Jyb7\naZI3DK/ffU6jgjZw+3IX6tHe9P2MZiVgwj3n0oScmXpZiDOKC//IMqZmU18g\nHniB9yu9TMBXGuWMJHAmzMEeBKOceHLwfmOXxJmu8LNO/Ns65+sU9ICTUJ9b\n+D1JkXDIrohhviWQVgXHkwBBIT8A1aojVUvMVVj8Cz7nsfudxi1cyWuaM5Ah\n1H29xzbX6p1MsyDS5S4U38gI6abexf14dCanZz6mhJbL3brT4QdZWjxtRnYe\nrbecr0Zd4jZUiNOzAn9wpm28dfQLb0kD/AdmZHlYVcQM49JAXiAHDrPTG//A\n5L09fwAgt8D1uZqIRZNCQyU5kb9ZTgsSKsuOeeRI27V1lmOxuzSorRMWE/cB\nM4JY\r\n=FMhx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c9a540f1489e069a2e5cd262f5daabc034039d2a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.b0c456d33.0","@material/rtl":"8.0.0-canary.b0c456d33.0","@material/base":"8.0.0-canary.b0c456d33.0","@material/theme":"8.0.0-canary.b0c456d33.0","@material/animation":"8.0.0-canary.b0c456d33.0","@material/typography":"8.0.0-canary.b0c456d33.0","@material/feature-targeting":"8.0.0-canary.b0c456d33.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.b0c456d33.0_1594075294606_0.1776079493758751","host":"s3://npm-registry-packages"}},"8.0.0-canary.2e5711e04.0":{"name":"@material/floating-label","version":"8.0.0-canary.2e5711e04.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.2e5711e04.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ac785098e82c0d69a99c61ca4d440d5598068253","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.2e5711e04.0.tgz","fileCount":34,"integrity":"sha512-/k3cxjfi5oWNjfQl/wgbCQw5GHBCd437ERPX9GCGyM+sU+2Jcm5S0nVuSguxsSTw6y9YiRkj3w7SoUBwLkBxnQ==","signatures":[{"sig":"MEYCIQDu13GgoSskrp5/o0Fa4AjL7lZLr8Vsq0m36VyATevwIgIhAIYZEy16TJdtn3seiEJvZALDs0XekGj6lzT+T5vgO9Qw","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfBfjTCRA9TVsSAnZWagAA5KEP+gLzVVyJFhWU+Atfvz7g\nkHPSAmlibkpATGeBDyhB3nd452sLjoAVVeXqw5FC9UGItDQklKpotcJKt+Ng\nNRqDHC2u9vLhKIfASqrBVbOW9JcA8RhgHrK64AwxjQjKXnQDNER+9TIxYwPS\n4Oi2pU6ZrFx8MS64DnOC/4G1VQIhTOkDsuEKD5kf+SBtomRhLg4ERpQc3UAX\nMXwUs/v/fuUhIci9VBwD9AMEAER1ewpOhHa1YE7WOuAdQCmN+g8jia+9cBnk\n7tB6izeHoLQlB9N4QU4d0Hvi9VgCheknyozCfkIGwm3iuVv3DRpaPnpChEYj\nnrvnY+h4HYRupjpL6XjzaZYRIAbOUTPy6cPSz0aTAug+lukbtWufnGGeGkOt\nPgE1gMveGdpDTROa8yEdFu94rzMpFoqLROQj7hqmAsjju2uZNZ0/KAFAvXJM\nVrPHCJfzGxBkkreI+irJsDYC/jerGfaj4b/TdnBnPmFdprX8Lry2iJR/TEBc\nouR7tNOXmYAs19JLPSK5s/TCdqEOAvFxnPJGrF63zs1pToGWlGxGwdqqRitq\nVweurr6HQTjjlZuin8fBl05PokfpAOhDPpd2i7kUrkygm0L6Ba7gLd4OJYLA\nFVe3TZr4ema7MP7xW70T9KgJ8trJ8HUZyOIVm2rXlPobXLzfngYJLNgUzWeh\nwyMH\r\n=Rr2I\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"4786b99e99bbd4c7b7f10a9111b884c165f1bc7d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.2e5711e04.0","@material/rtl":"8.0.0-canary.2e5711e04.0","@material/base":"8.0.0-canary.2e5711e04.0","@material/theme":"8.0.0-canary.2e5711e04.0","@material/animation":"8.0.0-canary.2e5711e04.0","@material/typography":"8.0.0-canary.2e5711e04.0","@material/feature-targeting":"8.0.0-canary.2e5711e04.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.2e5711e04.0_1594226899321_0.11655801918846431","host":"s3://npm-registry-packages"}},"8.0.0-canary.811fc5d24.0":{"name":"@material/floating-label","version":"8.0.0-canary.811fc5d24.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.811fc5d24.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9d7cb38c34a7f449a78b6add588d4da1d88be877","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.811fc5d24.0.tgz","fileCount":34,"integrity":"sha512-MtclWcmuhoXhEW4bM0CXxgFgBbscXoPLPR3D6vr7tQj5za9Hyoq8HU1y3YWCBVunNZg711nWcaZv4W16mBdtfw==","signatures":[{"sig":"MEUCIQDN2TuK6OOKm8HWrqtCF0rJVIOA5nS7SbGCpGx2sbnaUAIgTcqiQ+j7LuV5GzhGK1Vevq1xv9Fv6mwwWwn5sRdYQNM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfBf9RCRA9TVsSAnZWagAAPjcQAJ2vuaYN/tW/+cFzv06E\n5XZlj0fxkqv+xC2XaEQ9LymR5lxmUA7IAYj5Z/xLtjO7MPdcFRGb0NbQ4YCe\nCabNT+wJ00f15r3RV0tucqPoyl0J1KZxldQR6DhpFDtV84K+0Be61FbavJNM\ngQLiOyEkvSRw8XNRgx/06clHf1TcQmHFHhptVl5fqrR0vSbDW98/OE0kerqd\n1CZorCeDs6WcD3Ah2lPeFeNiChZ4vUX50mFUrTH/MA8fOXvfiPzCKQwreqvi\nX4mv9jyJk79TREn/gtjCmXH6R9dIJk7vSzkitn9P9JGOvSc6IFGfNH4D4R+v\nTACPLfSWAwjxBmlQ5p//XjdkOaLPmiXmyosYbSyHBArart+bH2ls8HmBcITo\nXDTj+7wBn9J876/e3eh3C1wMqWb0P+lwO4is0qXpG+tChyRXOUFLk7+tEJpB\nYxPcEDJoEULh/DiPy+XLGUINjoh1lTVBVoe84trZu4mzSGxKXA8NkFQAN/4e\nRU8c7CoNcsf765iuTn4KuyTxtdPEFPdD9bY5vKOorjDiyvQTwX7enXenY+BP\nZZQ5ccMNxe0gPN2y+FlWZcZJyUy+zkWLrCrVYrr8XV0+pDV7wK4bOPP7jhay\nwHrHpF35vQISoUCwY5WJmSaFoEt+7oLIKcExOcrOqwDUY34QFVZsrnrL23l4\nf7r6\r\n=qMRQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d1a1abefb8800a6dcc0cb20f74923403ee1ca66d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.811fc5d24.0","@material/rtl":"8.0.0-canary.811fc5d24.0","@material/base":"8.0.0-canary.811fc5d24.0","@material/theme":"8.0.0-canary.811fc5d24.0","@material/animation":"8.0.0-canary.811fc5d24.0","@material/typography":"8.0.0-canary.811fc5d24.0","@material/feature-targeting":"8.0.0-canary.811fc5d24.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.811fc5d24.0_1594228561165_0.6517735731251826","host":"s3://npm-registry-packages"}},"8.0.0-canary.6ed717ddd.0":{"name":"@material/floating-label","version":"8.0.0-canary.6ed717ddd.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.6ed717ddd.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5a989136a4473674ade8c68ee339163363d8df2a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.6ed717ddd.0.tgz","fileCount":34,"integrity":"sha512-DpN0M8atcLI4hlSC2TIrQrZzY1TfVw5yJxd8/0FCDhQVo93n2QCiMYvllvO2y0hzpRMW+yFh4OqhBabzU7saAw==","signatures":[{"sig":"MEYCIQCZFF/M01FBglRdV0G+5OxsceJhn3vWkZcHgvcTVWBeBgIhAItja95iYHrGrDzkRCjD4NEDzSmf5F1nPTRnEy/THOsq","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfBiIRCRA9TVsSAnZWagAAsZ0P/2LDN7hdCGL7XlE5L0wN\nMZ4SlaBrkDiAotD2eu4qilCqQ/x88OA9qjn5gRTPdpcVWcgTlSgASTqYxC4w\naURLW/92WMSradNQIpY/e8WzdvADMxh3xZLHG5EYIPJgp23O+Orj3TwD1hpf\nbC0Wp9DYfZF15QhtazZI9Y99EqTlZmDb9PchyFxxhlRddTmMt2+Ko/rtSpkh\nc8m3DZF0VmxvSfchC3+pbxH1TGbtx4BVl7zdwvrq8jqZN8w9zj2t+vdYzIO7\nFGRglbMIove1UGb70lTfk4uNGZ7dJuCwgiSs453ACgBRfmUV95PgnJU4T6Ib\nHxR7x+yMO/wvUOhbjdGhrTbM3UrUR5l5YJHlmXe5g8NidhTWvzYqqEEBkoRs\nos/KYAKNKiRhvSoeGrvlcdKCHN4EQT43GJJBJWbMalZRFrjbh4Y3i9aoQdys\nmZNxwUrSNOVjWQEtSLjgPT1Id5wQPZlWTqWmtC87KqfhWcBiR1DJM16vsHCW\nNpaodn0hblEu+/CbaSj25Ij3QjajoifY3RLzQLBQHN0x1UkBPbUi/vvyJ1Sb\nd68V+We/Hcf+GcIuuPRmVJ+0W59028wfIHgAehII00wjw+azWoxam3xadxDf\nzRA5leIoxnAjCePXqPrs66Zr/w8/6lbmimRmnoq8m+opRPW9RVCIFMDkxjs1\ny/PA\r\n=0WBl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7c9c6df731e0edf42938b11082973eba27e870e6","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.6ed717ddd.0","@material/rtl":"8.0.0-canary.6ed717ddd.0","@material/base":"8.0.0-canary.6ed717ddd.0","@material/theme":"8.0.0-canary.6ed717ddd.0","@material/animation":"8.0.0-canary.6ed717ddd.0","@material/typography":"8.0.0-canary.6ed717ddd.0","@material/feature-targeting":"8.0.0-canary.6ed717ddd.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.6ed717ddd.0_1594237457365_0.5654333057045724","host":"s3://npm-registry-packages"}},"8.0.0-canary.d850de590.0":{"name":"@material/floating-label","version":"8.0.0-canary.d850de590.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.d850de590.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d03e137f8c5e1a4ec3feb812eeb3f58f66cbf7b8","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.d850de590.0.tgz","fileCount":34,"integrity":"sha512-JZqtKii7HNhyOJChA3MzYfOa79ETzk+uT0F1KX5ye6KIA9d31LiH0aY+tuW4mDLaoZt1NU2pCSAfRsvql7a0UQ==","signatures":[{"sig":"MEUCIDX0i2vg9M2hgkqGrXzTs6M0ndYu6ntMS9SqVIZRRFhWAiEAsudtxCbhDM37sNyakNYNWdzU7n91xpXhcQWOdWT74UA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfB1xuCRA9TVsSAnZWagAAs8MP/2r6ZIQg3w0ynjMTCZUM\nHWzewouQHQw9C8za9IvG3c24Cy3TzsMrsa+HZcCmdo+wOj+y3alxOP4edQWS\nySdcmdGUuoCxah5WmW5XTG64zIozghiKdi53jXXVcawxV0l/c8CdDxqPX7uf\npOHBUofFyixsB0ED8QJE95f0QTZrx7T0J0U9yhZduqXltmh94uL/sI65GQXM\nx0fTIJj4133RVR5xD+SzoEnW5XT93wFEQOD/gsi8ewgBYcmWO+H5jJwiiWzj\nCC9rIF/7lClPOdjwSH/FT7ccSKRPkRYCKRM0rXp6tAAUrdNPTbwLHRDw1cZY\nDiLaTWSMb70pqy9Om4wozwEH7ivFo2bjLCrhxRQ/bZZj1JuJYPsXotFVud4n\ncnUk4z34rTT7rhilttJjvbUFV/95xnS9pCMFglnk5q1oyYoLEpOPMfaqSAYp\nZp0cQBocgUZ0H71Ms9o4lbCg4sQsdTue721HsuxpMg6bXT1OzyssgoNlj8AW\n/B1FcGdv51s0f2/qIQ6eS39x3pSEIWy7ODPb5yYqGZB+uJKUaAhcDknu+PMo\nnsc37rAwBMEHWJoQvgTPA+0jH9SjClsU1/w/XLdJQlbvVYKEs2NX/KRKvP6W\nQfMDVxSNL3BZSgmh6sf65ediS/LZheQSI4hPFQLJY+dG0QuTdcXBfFN6RJF4\nwIf1\r\n=veIm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"85039ad97bde95db4d57918266320d54c581a680","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.d850de590.0","@material/rtl":"8.0.0-canary.d850de590.0","@material/base":"8.0.0-canary.d850de590.0","@material/theme":"8.0.0-canary.d850de590.0","@material/animation":"8.0.0-canary.d850de590.0","@material/typography":"8.0.0-canary.d850de590.0","@material/feature-targeting":"8.0.0-canary.d850de590.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.d850de590.0_1594317933750_0.742030399184175","host":"s3://npm-registry-packages"}},"8.0.0-canary.e07a70841.0":{"name":"@material/floating-label","version":"8.0.0-canary.e07a70841.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.e07a70841.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b72d8c04409433a7d32832b08df343a1344efbae","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.e07a70841.0.tgz","fileCount":34,"integrity":"sha512-IMzEgfTJ6HVwvb1iZwQ7AuM7GE3zrhXyVKzIFeuBgkm9lwIZPJ/95a6VTxdmvKrGVq1wTFnctvhfHkuKz81Q/A==","signatures":[{"sig":"MEUCIQCWkV57+XL3MnNxIg4vdmtILYXcqPHLyCGxwEIz5h3jAAIgbTwi4QVn7x5d5slXHBXqzuffP35MoMRblsyVoAQ6VZ4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfB2NqCRA9TVsSAnZWagAAejYP/RaSprC8oVmyTqS/Og63\nbQIHd+OlSbQm4dttnCiHlMbM7HJV/FJs9J0Pc/9oc/w402RD0cl8rJKVx5f3\ncAaytW1bfPQKJ+aOZK+sXL++2pcgBlvOC2QNibrTCpdRZBFArS8DGo70JNY5\nXDKHruLUFrOYT8OuGO+2bg+jsNd2hq5GPjvZo9EnwKcdxd3LC3BAeywCXuZ1\n+0Nc6ZPXDj69uXM1FdS3cl+YX5mlO62fvEOB+tkG8xnfGcGsVR9xGi7NkkXY\nfJoDLEuNIMcc3nYACWsohLKKKBYvaqZOjClyBfsIeuN2YZ2Er2i6rcntW23H\nz5nO85s9PaYs/8kO9IWR0GiGTPFE4rZDYlE+0A7ne7h4tZFdlK+dz8NhTSVI\nZWCacz7rp3f8hYbqv2Ii6vlrBjTcmd9qBtXVav38ayHFvPmFpkhlpWkO0/ns\nhWCNMqjSuJWkY4ihsKHfgF8PnbPkLLPX0Yyq5ze6X7MsfJnazteY5CZeb+7/\nE0JgP9TvLfqpwoUzhxAM8c1ccvlAXe3O9oQ8vLq1fYsbEZglGITaV0c3wfcp\nc2libfK3Kx4XqUvBLeLN7A+rcEka8AuPNuiaxc4YBRXOniKjLBJ8zHcbX0/P\ngxs4kAMQgj1qGQcEp/LMD7K3A38QvItzi/CP1SDHJgWYIs0Wuyb1kewsfCvE\nW9t1\r\n=9xMg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"105e9fd32899b2c9a4309baf6e879287104cc0e9","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.e07a70841.0","@material/rtl":"8.0.0-canary.e07a70841.0","@material/base":"8.0.0-canary.e07a70841.0","@material/theme":"8.0.0-canary.e07a70841.0","@material/animation":"8.0.0-canary.e07a70841.0","@material/typography":"8.0.0-canary.e07a70841.0","@material/feature-targeting":"8.0.0-canary.e07a70841.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.e07a70841.0_1594319721888_0.6902817575017055","host":"s3://npm-registry-packages"}},"8.0.0-canary.37947ed6c.0":{"name":"@material/floating-label","version":"8.0.0-canary.37947ed6c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.37947ed6c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b426e88e9c7d54954cc0b77b200d10242b31dcff","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.37947ed6c.0.tgz","fileCount":34,"integrity":"sha512-k7T73iUFzw439lO3vsplKc2l6BBywYshYzR9OT/4vbHsz70TmlxIhuBhE1nQFXCcFE5RNVFQC2hnDmWn8WMSkQ==","signatures":[{"sig":"MEQCIEJl3L0Fodaqy8VhP5L1jasNINY5m51whh/5RWLdnn4GAiBTqYCbSN1r6qNqbjBXnDujQaZZQ/oTSW8uh0fyM7wk4A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfB3/VCRA9TVsSAnZWagAABl4P/3pz0kaMvol7q4HeE8ii\nDQeF4GbPAR1sPcV4n6pFN5ZQICDqDlBBmXXTROTIex53OjpYSV79d32xrBS7\nIdVJsVEPfcVYPXaZNVfAJSMStGax9ErBrnZth7X9Mbjmt8+SV01Dz63IxKSZ\nWDs3NNiEDDEq//vDj2TbtHi/PTigmfwAPCz0grVzYDUBSD4ZXYJILEi5Ye3k\nkqviFFKICf9hKJEXHBCw9pUvO+uX83GXbSx2G0+EvXcZcMokRNtM8tqXWwP+\nE5imM8dW/7i0Ud9KyLOk+V7xIaDPmPQGSg5l2JF4Ljif82mU+uN/z9wZTzHV\n7y0vBU21iUvHQiYwSD8QXatucz0pnT58MqgriV25dHTXuDD7bBVfBHgoJUTL\nnNcD0+8mn8qjoij/IRRzJVEs+OZ7w/3HiEJd5I+Wtm3vt0Ayt7q9YG/WTyi8\nRqrMXXf9wXVNYaAG7uYklTulJ2/fO+/gD/ObH3/9sQvLKFFKW5vGz/MJ+4O4\nISCOgouFPfNYwbFQ5IqI2zm9Xl1CNeDH/q+BFcrrwtu2irbsbJ7Ar8HbcwZ7\nMyAD0RGkqW/Rq1BHZlvzOpSCEURi3ANAxrYxtKTW3Jvf+SR3o2FQ+AtulfGs\n3zGt7RjTGtEjKqcSHO5ibxFFFeBSiUIUjnLY4Dd0sWiP6etoFZATxnPEd9n8\nhWuH\r\n=GYEW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"80c4a00e688d5a2b1a35ee55744d879b782effed","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.37947ed6c.0","@material/rtl":"8.0.0-canary.37947ed6c.0","@material/base":"8.0.0-canary.37947ed6c.0","@material/theme":"8.0.0-canary.37947ed6c.0","@material/animation":"8.0.0-canary.37947ed6c.0","@material/typography":"8.0.0-canary.37947ed6c.0","@material/feature-targeting":"8.0.0-canary.37947ed6c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.37947ed6c.0_1594326997089_0.9537790484575008","host":"s3://npm-registry-packages"}},"8.0.0-canary.5d443afec.0":{"name":"@material/floating-label","version":"8.0.0-canary.5d443afec.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.5d443afec.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ff0d010cdae2f94c889f7191f40ff2cfa33716e6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.5d443afec.0.tgz","fileCount":34,"integrity":"sha512-MTMlekKhX+cd8Oef/FtYd8WyoktHHDQ36Qh6tobH39hHrXUDLkroyqfFRGUt8qDb5o76rrY9DwLo2CvQ3nj6vA==","signatures":[{"sig":"MEYCIQDRaFknr7YhgQda2HGOawE7Xx8I2LltX4Hm3C9Zck10lQIhAMAixJ3hytBkSDoyS3YjTgfJxFhdixmlyo9Ls/q20n/O","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfB4NsCRA9TVsSAnZWagAAGAYP/2jYIX9CChqdt3vrE6to\ngOVyGf8ritf7Xyb5vPwPMYQlJ8sduHCUl/JbaQhQUl01/bggbQnNzy/UIKv2\nrW1ggGRWsCvsnawcBexFLmV1m8lmzrdhlGUjERJVKQ0lZnjZjQMuH60gqCJw\n124ZwQDHk6xGU7D91BJdCVTARMaxyQ3MswzE84kZqlnylySjQ7L6W0DgoorJ\n0vlk035vKuU5H0D+NPPt+x24kpStvD2Avlfa8aWq6AEEkNXTSHD4AU2q8ao3\nDFZ37VEziD8gOim+WvUL8KfpwZUW/frn5mGxnx/x1MqgLrPG8C/18FgzjVGc\nECj0BGjeiIXycqeHY7vRsO9J74IEzBZmAyKURn6AhTZSOQcNKZy1aWcEqrRx\nvm2XgZYkungz9MW1+o2va2RSXi5hUtuOoapjsVQln4/JkDOQHuG8rtXxfV+u\nGMzGk1FUntt141+JGnRF6KZhI+lsH34yh2xoJ6bWKD5j/pYZ81EAk+ZPJwTf\nPxQyo18RrVqsvlmEf28PISXQQPxdsYMsn74BEb6kWv1utk4zpQVQiS/XgYCB\noNhGZUg0f9e5g4cERMFTweZZt+iKRXit0qODD5nJDAggL50tT/tALU7XLGzk\n3nLNSPVavgHxrioUvEyg8wdyt4WmHnMRkQnfgesv9J49SQNnf7qRIT945++S\nTN5V\r\n=eO9p\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5c493d15f89898617c3127c53145bc51e8e60930","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.5d443afec.0","@material/rtl":"8.0.0-canary.5d443afec.0","@material/base":"8.0.0-canary.5d443afec.0","@material/theme":"8.0.0-canary.5d443afec.0","@material/animation":"8.0.0-canary.5d443afec.0","@material/typography":"8.0.0-canary.5d443afec.0","@material/feature-targeting":"8.0.0-canary.5d443afec.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.5d443afec.0_1594327915630_0.2694506955099698","host":"s3://npm-registry-packages"}},"8.0.0-canary.9ac1ed914.0":{"name":"@material/floating-label","version":"8.0.0-canary.9ac1ed914.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.9ac1ed914.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5a3c2681911b2db1a1baa6b1b7b7f4e66ead324f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.9ac1ed914.0.tgz","fileCount":34,"integrity":"sha512-wyM6UQsLvQEGdXwNSDJdoyGRh8Ym6XgPXXrJ9pdH07roFFOkmvH+vsAyN5SO1+fmcyZ5HgR6lQ2tL5NiZ7UvMw==","signatures":[{"sig":"MEUCIQDVtzZTss2XESH7u+8jOnw0Px5ti+7evIN1f+hvkBzY2gIgL5mJ60m+zo1X4BLti2rCvggk3V1OOfaEu9m/2U/PJc4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfB4ovCRA9TVsSAnZWagAARnwQAJPkPXRgfJio09DSA25x\nB6TwroxCF8QeMOxEYDlg/8Ix1dEU37H+iIOOCZkhKxSxq6sWXbK5Fz9j9oUa\nK6kPwlB9U6aZXfaR7pW9IaKUbOaKQoCKM41o2Bx9a4gDFT0jqTWZvPsgDQhv\nWHxqa5FPg6UyGxNBYHQhleY1rG1Cx5agrNoWtXaC07LXWSgcm2CvGNqU/Wfv\nrOgoS1hDDa2IsfdEcqyVmkuf//LWchdEqimFoom8dViVPMv13v2L18W21S3K\n93i7Q+Yd8Q5NokmKMrnywZRrXrM0m1wB408V+GJcqOrH2N2DE/5LNWSYnBjS\nKBAfdFaP2fVO9m2Y9t8K2qHXlIA+GBaAoYxGalG6Fln0yweSZs/INZjQNZoL\n5PALCZeL4i5U5EWYuVj9YImijfwXGdTT8XjR24vLi6yVT3ZO+nBUKH97W1y2\nhVLuQj3RBf8sZupD7xlSYNSMlk834nPLjrLLfAl8TP6gli2px0NkG4qoY+A0\n9CiNdpX6tgneUY+viaBee3jEY40faALWxWqT6iWXdbKM7K0lX17BWlqlsagZ\nzwiT+CORL9mrlW152+h+KvdnEfdDGVU2sUzVrcjrobSFjlrWYeyebh1QvF9f\neUfsNrKd3AaUPzPLgBQfNdEOI14X0ZbkK5gbfraHMblei3vGXbTKcaaK8HuL\ntqon\r\n=sEH5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c08d3c600bb022db1bcb4efe520bed724e653a77","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.9ac1ed914.0","@material/rtl":"8.0.0-canary.9ac1ed914.0","@material/base":"8.0.0-canary.9ac1ed914.0","@material/theme":"8.0.0-canary.9ac1ed914.0","@material/animation":"8.0.0-canary.9ac1ed914.0","@material/typography":"8.0.0-canary.9ac1ed914.0","@material/feature-targeting":"8.0.0-canary.9ac1ed914.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.9ac1ed914.0_1594329646632_0.19589002232002684","host":"s3://npm-registry-packages"}},"8.0.0-canary.1e7cb6198.0":{"name":"@material/floating-label","version":"8.0.0-canary.1e7cb6198.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.1e7cb6198.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3eabee17a5ce0ed2ad440664371a432ed91e9ff0","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.1e7cb6198.0.tgz","fileCount":34,"integrity":"sha512-PBDdlWB3PxHW8A5bva/wYbqZYL/JIsIsi11R62TIwjS6C+wj0HNLca0cg3mV4uVtmR/6I3bdLYj9q4JJCbFvYQ==","signatures":[{"sig":"MEYCIQChDigK1TwclCbaveLkuFII0kFeC+8s7+ZAQ09MfyjpwgIhANmRMWwLCl0vgJPqbx3m3aRW0MJVYyqeBx1sJqiKTPY0","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfB5ZTCRA9TVsSAnZWagAAzvYP/iLI7xGyTPKvgvazROjt\nHRZSMIuUvTtaiOjKwS0oUslOaKbhFzQOhDMll+ZPd96LAJBRP1Nav7Uau+NA\ngtGuS/VhabYBEySjvEdUqFFb46m+Zlo0Bavco5//sPAZYbOogSnaMZj1NyRU\nJtgjaRDDwDeLTJOjhAYsrDB2XxJvbQNiIiZ3l1gi0gZbfMkrAQyNCN/XPgd7\nCaBONOss3TzVsrVH+6VPR6QlF0FjvGIDh8/0+QpNebgjXGfaPZW6wEYuMt80\n0fouPX1HnNb9hz+Yd8kLSa596NNo0pOeL7zXu2oen77Y+vuAPVV/peyBFMJK\nIwknrNGcrMDtngJgXRrAnAbY7RF1ZUWgdrxNxWlgZ+PerPgZBJhI9Jiw9bfz\nz+DOAPCZfJfrNgbMRo9c0zQmFRfpnLHb6L080XyDAqlPKhkpt9HPTgzFcMBq\nb/XetSMCaRpRf+KhYyjeDL+/o7Ff6KAFJam32MVYw9dEeUPchcQ+24dj9OgM\nARIGW6eAKoiTavFxZxmNTccOA6mV3N1a27sX0VHQtepARjoqnzjzzirVw7Fr\ngOHfZNhP6PzOog3r76ceRptgMKJNnYjlyMrnXde+Trpl4nUOzqDxH3iXQw4e\njFZNdeX4GiR4BPt0t70Z4ax6OClpyq1xTsqXlhHrBdgwESv1X/CdFZINjhv0\n4nGg\r\n=DIUY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"cbdbb55d01ed2f63aeafe8d77fffd1da5fcfc011","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.1e7cb6198.0","@material/rtl":"8.0.0-canary.1e7cb6198.0","@material/base":"8.0.0-canary.1e7cb6198.0","@material/theme":"8.0.0-canary.1e7cb6198.0","@material/animation":"8.0.0-canary.1e7cb6198.0","@material/typography":"8.0.0-canary.1e7cb6198.0","@material/feature-targeting":"8.0.0-canary.1e7cb6198.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.1e7cb6198.0_1594332755244_0.6254971124933699","host":"s3://npm-registry-packages"}},"8.0.0-canary.843f636c0.0":{"name":"@material/floating-label","version":"8.0.0-canary.843f636c0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.843f636c0.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c04c503c341f083e7faa3fa8d17ea9cfaf303062","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.843f636c0.0.tgz","fileCount":34,"integrity":"sha512-fGtag7uAq2wj/iBqdmw1AybeDFs2n8CY4qyDzxot4HaNnR04aGNLbsldfZ6OLG9JH178x0KzY0Ngu8hKid/O2Q==","signatures":[{"sig":"MEUCIBGy4HKiYj8mhdzOIvRCDe03rNcLM37IP6PHRMx4yWIgAiEA3GjVhwJgVS5/peICRTSyhi+ruzm3jzGZ5/d+VBMQ8Ws=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfCKiZCRA9TVsSAnZWagAAuHcP/26MIs07+jZx0fIP17Ny\nJ9uI8jZPIXMBMTGkvVQE5IQWoycBRUTCBVxns4ivCE+Y5MVyFnjImV4evvlW\n4MyXqdTNOB4w1P72xKjwTKUYjuckN4GbdfozK2mLTb4dgHTBBAUH2rkybjKB\nITFqOZhWHPopsjNHMdLrLRwFbEM3Wrj+7jR9zIITwxq64uPM/wLmJLP5wB0K\n6aJB+tpkudB0Q6OTAc/ofN9clSjVL4uGRabJQmFB3RKypVKZGmIPonFKgIn7\ntQLVL3pshM+lND84od5X4pdgfAePMznGJw24xeDvQJ8HvN+6uVkT79Mt6q6Z\n7Vf36uPIajfiKd7onikO9cBY5xleFBfNOeR5vVZf8yRLFH+MtjoM8XEnKJOh\nW1Vhyf4zKse64UZLFX6hQqlqiTTYX/dFh5ZKX043FHEfxoT/02tiAMb7KAhZ\nBHJVygEjtbGt3wVsW/qkG9VMNMUlnG7zxgvNbQTXjL0A79vp2Epx/GnfxW4e\nFpcUj0Nd54mMz4hkvJidNSem40EBjzrJ6W1j0wGV2Y6Wg6lOiR2cpYn/7a19\nuHb1CidTYxEOEsE2ZQtXz2qJciwb5HdzSXisF1zZFYIhun6vp8a6oVQNRhIz\nuhk3d+h05M7k7Se214jGOUg9vudUuIzEPyIV1smzzCJph31TD3cQdPmm7392\nLr3y\r\n=bdg2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"641b40da40cd73b439cefa7fa18c86bfdf31e497","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.843f636c0.0","@material/rtl":"8.0.0-canary.843f636c0.0","@material/base":"8.0.0-canary.843f636c0.0","@material/theme":"8.0.0-canary.843f636c0.0","@material/animation":"8.0.0-canary.843f636c0.0","@material/typography":"8.0.0-canary.843f636c0.0","@material/feature-targeting":"8.0.0-canary.843f636c0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.843f636c0.0_1594402968942_0.011625807122878529","host":"s3://npm-registry-packages"}},"8.0.0-canary.b2edaeead.0":{"name":"@material/floating-label","version":"8.0.0-canary.b2edaeead.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.b2edaeead.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"61518023f75256ee7659c48a849a90fa220874d6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.b2edaeead.0.tgz","fileCount":34,"integrity":"sha512-msrTQ8eH5jV6KIjMeBnh1pQM7qfQcn5KZs1wof/8jUrjTBY1aIulKdfv4bMB9PfUuKUVqKQ0u+mm+EVHughmeg==","signatures":[{"sig":"MEUCIHgEgZSamYDX/pwG1VNBslwDW2bdcIk7+57BqL0rbymKAiEA4J+X5vygt5bqmcA9hqrzQ8rbj8oywwHpOboRVOKOKJk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfCK5aCRA9TVsSAnZWagAAAFIQAIETi/cVttRfDhDcJ+S/\nZRsRIwksolO5QqvqHZ7dpm9HrndDznoEwfLov1HMAejQG1ZwO3zHNntOFGXR\n0fkCKKFXnwBTBoZiQ6HowlEHmxaW+5YzssvjlRojiCcIyyl981YN9dzdExIG\n6hHT92Qw2o107q37oLMDDEuILRlvNdzAMHbEPwqL2+HfjVJ6k177gciFg/7j\nBNvevo9G1mm1oF8qobE6UrfnIZXc+dcoNN5vyhLyGEMNGEFrmykQa+7DZ1XA\ncLXIpHr7R3RSDWu9fPSA2In6E4j/uERx7fRNBglXaaRFjDYUPDp/uQF3Co7x\nzeNkDBveifjklMhH2fzK0/5ZjvoSIAbpKODoks4cJU9C1VlH+WrW5kUoaquo\ny0j5Z3T2+LOMD0Muki7vyh+BXKO8fC4xtjLThDsWqYBb2eaaNp0ibEjQ6OTj\nJkEQbqaghSlTseUpJuSS+qcF7Ll4brnXqzPcRDioOGgVHEK7Ce8/LmlL0dmt\nGJywT0LDsbsDBJEs/iDxGQOlBfW2Vmr82P1p4bs4zag66KX4VH+7LZqEGTVP\ne+QisFBzGqjl7HuXGWF56d3E2a5C+qpmZnBfIidROhZ8izVFjnIHgoqwtNk8\n8RqOHmRN1bjn/rfKwtrs4gYhsRjcRPNe8mCCT9+XA3SXBIDQCePNb8k1Apvb\ng4hg\r\n=IutV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"874d83aed6fef221001b68d44bfceb30072cc18c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.b2edaeead.0","@material/rtl":"8.0.0-canary.b2edaeead.0","@material/base":"8.0.0-canary.b2edaeead.0","@material/theme":"8.0.0-canary.b2edaeead.0","@material/animation":"8.0.0-canary.b2edaeead.0","@material/typography":"8.0.0-canary.b2edaeead.0","@material/feature-targeting":"8.0.0-canary.b2edaeead.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.b2edaeead.0_1594404442361_0.1347058157920753","host":"s3://npm-registry-packages"}},"8.0.0-canary.5dac1f624.0":{"name":"@material/floating-label","version":"8.0.0-canary.5dac1f624.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.5dac1f624.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1b2cf991885e80f445943377d17c82fe7faf0590","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.5dac1f624.0.tgz","fileCount":34,"integrity":"sha512-xibf7mFeqIEhfL1uhmVxb+LYKlrhDDWItqDixa+AVUN364qvtCDHV61Ng9kACRWhRxZ9Ncv6zDeN3FbXULDIgw==","signatures":[{"sig":"MEYCIQCTDHQSVnAvVLRzHU4Hv7p6BSmnlmgj/8z1hcaYijytZgIhAP+5rTn3jlJrkmEOQYtZFCtboRbZasc4TT8KxYJAtwCV","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfDI0SCRA9TVsSAnZWagAAxZ8P/2f8gTb+/xW6FjFRSwwX\nrRTaEwtaPauNOZUy+IAVkru6jZOu9DgFzdW2xZuSYpavyO1cV84MNKsUwQC4\n4kUAssmGlE0Lz5OmcpNTDU30FWa6QFbQkpOWl2X/6mkRqxLZaxFRVKna/VSp\ng9RL0MHK0FIUUDbvyTrnDb3rgen43y4rUpxgQYV5Xbdxq6VdLO3JmIDr8/D2\n/NQ0WrJCn8+QldsCzUSHXO7ZO406b3hpq8MDOV12lrxUZlyBCbT3cY9oBFZf\nKV73/pWMYyLmj/ebj+mg383jmhdPGHu+zVer82M70+PrPsb3RHl+/Je7soOo\nIrMWlSaSIiCL6set7dGdhwnDZYWVR1OZ71R4XLp6uYl2IBZil/0VbdhO/WIq\n5Kw/V6ZnmWhKVIYsPOTCwIkfuFf3Tiys+gUY/WngbUTZ2+SYP/NV0e3Q/vrY\nY/ErOKg1GggwcD7/T2j42ruUf4tq/uH734+smacf916cY140Z82NT+Ebr4zi\nNiEYw9sTpH817fXwHILBYX52BsGjNbuzGokeW4gzrVA5yto0FKM/voQhWSRa\ntQXo2ZJdGOKMq9RCFNnhckaaCfGqMgB5VElELZ8bAiUsDITTeW+NCCUew79C\nIjgsoWrvqvq2hN6SSAXgMkocD7ZGE7uSCpl1anJaQZ12T96hg601GbGaABwe\n7lCs\r\n=1DDO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3acf16b30fe876c0d319f5d1681d177bd0089cbd","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.5dac1f624.0","@material/rtl":"8.0.0-canary.5dac1f624.0","@material/base":"8.0.0-canary.5dac1f624.0","@material/theme":"8.0.0-canary.5dac1f624.0","@material/animation":"8.0.0-canary.5dac1f624.0","@material/typography":"8.0.0-canary.5dac1f624.0","@material/feature-targeting":"8.0.0-canary.5dac1f624.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.5dac1f624.0_1594658066192_0.6951315959070037","host":"s3://npm-registry-packages"}},"8.0.0-canary.4497acef8.0":{"name":"@material/floating-label","version":"8.0.0-canary.4497acef8.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.4497acef8.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3372a87dab0e31f0bcf858ee9589a7d73a35ca5e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.4497acef8.0.tgz","fileCount":34,"integrity":"sha512-ouYs7y6ZudrySBm88XWTkZPoT+0jfeAggODxj5KzUlOrGTBfnbnKmpGW33gapwq9NAaoKPaAQo04xlon4xA4pg==","signatures":[{"sig":"MEQCIHijuoA5Gg3pFWHJOO/8Go6sExeYXRM/73YYWHDcajBGAiA/wYDF+n7ossiOs0xMVray1bJgca85AQl+qwcQvdbq5Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfDb8jCRA9TVsSAnZWagAAAwMP/AsgDKzMqkhDEOXyRO6q\nl5BCrMyv0UngvbAOkGjoOcqU7iZXcDtVYKK6sxNH37taQCNjZC/6or4qaSRo\nenlE9FFT10vxnyT0ibNRH2+xFdVYT0CaNkjlYB0LlnnjI+6cW+zPUnIitCki\n5HLxbNn3V2EBnP9urnHZ7+KkIxBcgoegXO3Ahwd8hQj3sd8gy5dtHU2bogMS\n8lXkvq1QTaU+GhSGxuOwJQMc7m+lXdM2/7mJxCkZ5EfCA9rWdy0Yc5ajymw0\nSICtaDjvdkOJrAFP01Eq8MfKapXh4CfVPU1OhrLcCelxArbXch0RC18q6bT7\nHQrjDJZLzrebOxDmt6EfEYfBTb83OpODgtoowMBZIgRBtjQ4a/ktKMEuQNLE\n1bsVXIdS6yJp1vw1qmJQ4z42efDMLYXLmqanFYM6tRxcnSJsTCJZIW6sLc+v\n1I091UTwlXdVPSxhluKnRle2ekcXjvuS+Xq+9Ohbdd6FYE2P+3o4ulxD/0jc\nuT94aimEEPfZOcGLshIKLVJWGiCxAZnXLTrLIz6Dn/f0fckGKVZNHRdfs9bC\nclVNUTOl344gXAbki5/sxKk/zzP3m5lpwIj5xEqv0F7gs3JmTdN0nZdPspiF\nUH82rL2qjAXhUHjFTARD0lyyIWjfz9xIt0mRFX0TmdV5np80ldGlTvBxMrVQ\naRvj\r\n=2KoG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"dc90b63c1737c63427815af4f6de59841a57a1bb","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.4497acef8.0","@material/rtl":"8.0.0-canary.4497acef8.0","@material/base":"8.0.0-canary.4497acef8.0","@material/theme":"8.0.0-canary.4497acef8.0","@material/animation":"8.0.0-canary.4497acef8.0","@material/typography":"8.0.0-canary.4497acef8.0","@material/feature-targeting":"8.0.0-canary.4497acef8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.4497acef8.0_1594736419474_0.8732418484071023","host":"s3://npm-registry-packages"}},"8.0.0-canary.e6e23019d.0":{"name":"@material/floating-label","version":"8.0.0-canary.e6e23019d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.e6e23019d.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2a3b79a1a2f30ec035dc8eeda800333f3ec5f285","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.e6e23019d.0.tgz","fileCount":34,"integrity":"sha512-w+f0L9DsURt0BMrI+QokSAKrrg+HIpzIAfySF1Dq/1W7h3DLtbm3rsWgxJk5wDL7iMSELmO2Qt80WEC9bmMImw==","signatures":[{"sig":"MEUCIQCaGuXqQSfJiWFTNIeaFRdvkM8KAIrm6+kqVRSZlDBiyAIgCheqNKht37PKz2xwprb/ciOmTW99NVAKxnrRIYc5lqM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfDhFBCRA9TVsSAnZWagAAlB4P/3xitEv/cBGGW+r/9EPl\nLDjKrSwda4Q3rr9+uOGIYUnKYvm69CYSTPNhGmnqjhSvw7NNtSVEmdn/IgXG\n6Lt3CaxjulNwGWx+IYDAKHjwCPVVQbOA8FZK3syPksrorq+D0NGY3RQv9dz9\nzWICBCKw4C4UxDTFZxxWdC9zsRXMVZRkRfMogF1Vlo/b4LJs54hDJbw4tBHZ\nroRrahzvBbrMRIWVNBY/v/A7bBYix5Clwa6g8EzLEg+cvW9EhDGD3M13b6z2\nA6T8IlkbZYJB64k+D28fDKu7AfSbwCyFqaH8Kot12dtKoNBwL1tx5OBF3y9P\nfVi5DmZ/7s6Mkwm/7Yj9BBv27pR4+qOMsY0pmTIpc9B2dbkDRFqEKglyayzH\n92ku2aNnngEPljV6YkyP7W7BuzKSmDYH3LmGtmwE0OnU2ehK3GWMldCSTPSE\nLAgTvs2I/UjxJxZK9PuP9JvOfnLPPYKvSUdiFKqg+DH4kEwUCZt0JdGuFaoW\nnI2KceFY1eH7QQ7jQ9Cka6XfaBd0+pAbPLJ4GuNNqftT0DG4CBNDKXqUy+6U\ncw+2gzsBKpnf9VvvSQG5rfeo4BlFIR2pJK+1dXgQDWVqvtklEbG3UyOkRALI\nYUQzdtVpgWCKn0Yaxya3mCAWKp5z30USDCSEmUlU4u4oNK2SKBN22bHbTCJG\nnIDN\r\n=CyX2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"db31520d2bb46404d9d5c364a2db4e2bc564e4f4","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.e6e23019d.0","@material/rtl":"8.0.0-canary.e6e23019d.0","@material/base":"8.0.0-canary.e6e23019d.0","@material/theme":"8.0.0-canary.e6e23019d.0","@material/animation":"8.0.0-canary.e6e23019d.0","@material/typography":"8.0.0-canary.e6e23019d.0","@material/feature-targeting":"8.0.0-canary.e6e23019d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.e6e23019d.0_1594757440697_0.8457943682886284","host":"s3://npm-registry-packages"}},"8.0.0-canary.d548d7a92.0":{"name":"@material/floating-label","version":"8.0.0-canary.d548d7a92.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.d548d7a92.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"36abf22980f167df10e58970b9e33e78be0f5ce1","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.d548d7a92.0.tgz","fileCount":34,"integrity":"sha512-1k9A7JrmZ9lKYkFuRGpJyPqWPI7PTWgUDLGPrXi0MD1qNcJ69lKs8GkNUzQnYx2JNj77eHuYh4QDSA0QP5sHfA==","signatures":[{"sig":"MEYCIQCic5nP2yWLekWe22KSCWpxCrZJaX1dQvyTN0RlL2KNpwIhAK4Z0jMyYoo8Z/py38bKq5F0eN9ha9pHrJJvi0yPqR7A","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfDh/mCRA9TVsSAnZWagAAanUP/1HRo9tBrjBeNlGUTdsY\nEfCV7mf+ysE0Wv0fjBnHy7/yD9kZd/MM/SwWfLtXtXRiZnQ4VrXtQYmmnJB/\n0xMnCH7nIS+5J5ee1f91+L+tCmeiJ2LMBaIjg5BTMjdkzYTX0K+nctsU/SNs\n4/83k3Axef8Z/hywM/4DjfHa7jn3ciTx8bnSch83tS7UJB10/7V8ZvbubF9f\nxY9LmHZJCb/n6H8J0Ifj6imyeCao6CiizwmxZtdikevJS/1OuHjNxEkVsMH+\nzcVqDVkFhYNh7ktsgF0SThiIbmp6tpxHircCxgjjbY7/K1csQPC9xA6SdhT8\nLis1n8Nv2ieG1rWCbHq44FrDIX+hiNWyzAPIIyHoO4YLHznTuAOPm5rc6wCj\n2nLN1z1azGiUsGgxobv0j9l38cxmq8AhSZH93PMa/nCYXKCT/m7t4AN5/By9\nRoY4KiVuttV9KLOANBcdo6QSI+c0+LCw5IVy9CEGRIBg1J0+z+pv4CaEKXSY\n32WWOQMOQ+F7GWUJq00bLu6JNqUUBY1917emQjnFtzRTVTH2aD3vhUF52F7a\nOb6ACrQIc4Xj2nsZ3sPsCgDn7D7YoUmiuiaDLe/x9xxvlAGedDl4caqCBIWZ\nrkD1VDPfT0yXuxluJ8atlNsvA98ApaYSabv6L9lBsU4vH/e/tuuK8sC4zecK\ndVJM\r\n=eD3Q\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"9ac3956fa3f0b35d113404de60048e8aa1c1a0a9","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.d548d7a92.0","@material/rtl":"8.0.0-canary.d548d7a92.0","@material/base":"8.0.0-canary.d548d7a92.0","@material/theme":"8.0.0-canary.d548d7a92.0","@material/animation":"8.0.0-canary.d548d7a92.0","@material/typography":"8.0.0-canary.d548d7a92.0","@material/feature-targeting":"8.0.0-canary.d548d7a92.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.d548d7a92.0_1594761190398_0.607239245290041","host":"s3://npm-registry-packages"}},"8.0.0-canary.58ce529cc.0":{"name":"@material/floating-label","version":"8.0.0-canary.58ce529cc.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.58ce529cc.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9f8b5753386a1cda27f30b64f30bdb671385c0c0","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.58ce529cc.0.tgz","fileCount":34,"integrity":"sha512-ZuXe9vdAxNs/BUt4x0j3xvNqZqsKwTyVHXjGbrIspALqcyN9YENM1IOuzGWCRNHh3jsO7CnFAYBtkuF7lzCk7A==","signatures":[{"sig":"MEQCID2mJaG6yFKEf1Xj66UfW7RzETANYFzl8Cxf10eC2eLnAiA6woyFcTizPnOhGYgdIUoP+NMJfDXXITBjlAn8NQLxNA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfDiBjCRA9TVsSAnZWagAAI7YP+gNJ9QSQ65sdIM249Kea\nD7RN/kdcm6mtCxKhlAU6wf/TFUoUaPMBF7Vph5vD4DGmmkXRcHnsUnW36Hi6\npGDlbJwkQ1eRi7FpqO2D8oq8KuYReKean5uof+H0Dp8zNIeFx0RNlPZPndoo\nd0ys5YKYtisE+Z8Y7Pv9WPegH+k9YBCbllZK0IsuIqRMeMScV3GquT7pc3/u\nT14I/9pSDOSzq00aIEZeRtJJwdiXzA7zGze1ozGzMGS4oB76n+9SWmTszUxV\nty6aXDQIMqEOm3vxPo8UKsrPmag3G1smdskhYSxUHRpztZntyECPlgDQqDjG\n8T1fP4NObXZ4lIhMA34ZigGorjKuWYkFX0v1n0LQYykpAF5w4LEZ4qoMcA0c\nCIGay2wTqv3zlV8r0LrfaTxEdxaqbJGk6zBOT9394i/WtpiPedV4D+ziUIiY\nmK3Y4ijUovRyCcriPzxnY862vawq6C6RwbaW3wETcjFa3VGbkipasCx2kv1F\ngmZUAUyBhuQgcOuqZza9PYB1WDrXOhAxOVjuVOD1+KLmjVe3Gl/Pg4sCc/NO\nsNslKBNINr4XUW20VrcxqOADHuJroxdGp3RLxat5x39aXbgnyTItqEaxkGNu\ndmWwr5PCxObmAyeEdSUP2EXmR+Aw9EeW2XXK1WcGquDKLiOurdBzLbMM1wU4\n/jzA\r\n=gO/k\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c45eee764d94f6c07b8a5b3770c89c8bb4ccfeaf","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.58ce529cc.0","@material/rtl":"8.0.0-canary.58ce529cc.0","@material/base":"8.0.0-canary.58ce529cc.0","@material/theme":"8.0.0-canary.58ce529cc.0","@material/animation":"8.0.0-canary.58ce529cc.0","@material/typography":"8.0.0-canary.58ce529cc.0","@material/feature-targeting":"8.0.0-canary.58ce529cc.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.58ce529cc.0_1594761315326_0.33278239570364065","host":"s3://npm-registry-packages"}},"8.0.0-canary.a0f1202dc.0":{"name":"@material/floating-label","version":"8.0.0-canary.a0f1202dc.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.a0f1202dc.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"8ec8fe03f0341c6d38d24f827fb1ccd4239c060c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.a0f1202dc.0.tgz","fileCount":34,"integrity":"sha512-AfySjj45wXAJ4llqMyRdrs7ImK55T4sMruQbGou56iKOZ+aZS+lVWYSbU6SLKQkiLxHdQDvNNRR+/OB9D9FwuA==","signatures":[{"sig":"MEQCIF5ch0uaO5TFBzgWQxtwTLC0vGSTqfRPQ0KitmUBhw8/AiAMUHmKvfDtxvwf0INEehNJNGQOZSSIubbYcFXnCUPBVg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfDiTkCRA9TVsSAnZWagAAdkIQAJMvthe3wcyo+yhMmU3V\n28Zu87SWFo+vk2kteoJb/+el6UrgMZeOOJTX8GLf5a3/M9/RsiV3lPB8mo6X\n20/fzSCzDxx9oM9+uGzCaUMEXuYq+uFxaQXEFMptmk6u1McXmSN9u4OhHIwo\n2SYlY/mjlQeg/84k6VmxG92YUWqXShqaRYRomEUlLM6LXxaevILrIaXRlFW9\nKtMbNlPi/VgiUshZ/GQ5iZFf4dwtlYZVZCnApBREUwm+O9bG1SBllN+pHhGA\n0EmXoHTOHW5L6gjg83CsTMNVpfnTvLyiPyKXuL7rEUFXFNLg/7TuEJ7Z7z4Q\nBvMlx6e2G5Mr9LnQwPU5C4vs8qQ0IB4CFYlowLB6r2Djv+DFFrqvw31Blr8d\nMRu44esTbHZX6ka0itNGAvYjDhGzZDGd92fvfE9dnoETKw21p9TDRbL4vq8U\n43rUujG+mOhFwK7kYkRVR5neYk8uMCZqAltobfeHcEpimMvYkZUkjeglth5C\n981ZVV9MF3u4suVshjEF+cWpMzPk0xUEw2Pg45SPMDgjbQDwtY2hnlaxIuvO\nQetdFjGyeWo7d7/gjzknVvr2v14kyGFTSUeWuoPup+wyUPgG+JsaTBdyqP92\nt6fvbe6hT2pPsbq9AG1LgMU6L28d+GNfuHBZLV7hbAx+SMNf8Fp7toN9L4IF\na7ke\r\n=RhGG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"93fc447a8bb5a55abbcf4b72084f1c65147f3cc3","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.a0f1202dc.0","@material/rtl":"8.0.0-canary.a0f1202dc.0","@material/base":"8.0.0-canary.a0f1202dc.0","@material/theme":"8.0.0-canary.a0f1202dc.0","@material/animation":"8.0.0-canary.a0f1202dc.0","@material/typography":"8.0.0-canary.a0f1202dc.0","@material/feature-targeting":"8.0.0-canary.a0f1202dc.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.a0f1202dc.0_1594762468163_0.4266707496176856","host":"s3://npm-registry-packages"}},"8.0.0-canary.ad4df58c1.0":{"name":"@material/floating-label","version":"8.0.0-canary.ad4df58c1.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.ad4df58c1.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"970bd6656fa92b779e3c8dd7c5abd6d1fb63089d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.ad4df58c1.0.tgz","fileCount":34,"integrity":"sha512-HKlla/ftYE3tfKkW3H0gyIp2kCibCxtjA0SZhOqGm2RZULFuEhOu5VUxLfs/Y5SvZdzU/YVfC/9m3sepx79pZA==","signatures":[{"sig":"MEYCIQCVzxdRGM0I56J52TLdvhjQX+T9EovSDclNpuXEkcSGjwIhAIFU0l5VUaZ2GQqR10LAo1naKs7M9LZjFRza9LxiTTJR","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfDkk3CRA9TVsSAnZWagAArVYP/j9XflrUh8nDhjmcr97p\nX5P/U/qqoTgDIUm6hhOfJDCNdH+5GcEf7bt+SMpZtGuFED5691LR65RRhILB\nGJpAI31aBjByYNUMekhzUlTVQrkI7dzmb+Kb9lm56YogNT/sjJzKLEXXuIoB\nWJfaM4u1AV4tPD3LwOeRC/D0HQ0l4Wmg01QAcDhd1/xP6JQa6ispHQPB0DW2\n/p8IyZ3yrwlQnYhFlAPHHFiTZ02bptgKkQtqbn/qZVjwfow8w9Wip7oBgbtE\nrsVPD1RSAkGhxmTGv6ieDgOicpqDIJsEQCYa8fMT5WCuQfHaX3igb6ZJ9DhW\nV1BupE+9m1jtTb7hLHzSMwYcILGjZaPYKs8pcip/oGpA30K/gTu+di+fOpLk\nVqn+awXYbX7v/Fo9+cgiB8tjazUyHE7geNB8m5UAMPFO8wK10AnyWUm5lawe\n48YKnX3SxU2B379eNUvYicCe0EZBHkQuDXVGuAc9AMf15IOMl3gIs/oJiBe6\neBi7xjXvHm44GOEIMoy3GNNcWbimTSAf/Dj9i2BNcFbFfbNqGSFJJtABzjqp\ncC5a1RMdOHg8RVEs2AMiLqWNShYSndg93jy9L28ahsjxNAsu7l7okBWhItL2\nXeIO0PVejp6GFTPCI1XbHksROaTztO70Ejud2R2GTK0VazQgaA2jo8Ve7aef\n6E1d\r\n=CgsD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f3541b13d081357419478232ca7ae0021f2a6b43","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.ad4df58c1.0","@material/rtl":"8.0.0-canary.ad4df58c1.0","@material/base":"8.0.0-canary.ad4df58c1.0","@material/theme":"8.0.0-canary.ad4df58c1.0","@material/animation":"8.0.0-canary.ad4df58c1.0","@material/typography":"8.0.0-canary.ad4df58c1.0","@material/feature-targeting":"8.0.0-canary.ad4df58c1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.ad4df58c1.0_1594771766999_0.8407105058245614","host":"s3://npm-registry-packages"}},"8.0.0-canary.01db89053.0":{"name":"@material/floating-label","version":"8.0.0-canary.01db89053.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.01db89053.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e4b42883f1b51f4a06012e59765a108a51caf9d1","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.01db89053.0.tgz","fileCount":34,"integrity":"sha512-RL9fjFkJ/oak5GBjtUm7cRtsfuZNS9RNTXoe5dzqZ8dHZ6q+e9qR+HoYu+xN/t3Ess5r3HcnJ2YtOlEbKmdGsg==","signatures":[{"sig":"MEUCIDhK28Cb0cSc9o+P2EI4PKTxaSiTaCW44etYtCGuWsnaAiEA4SheMoT/4SNq5EQbTxZ1XotJ1jcVYOdY3NBVBAcsl+0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfEILICRA9TVsSAnZWagAAJkYP/RHwOTrW0YvzHqYE37iY\nDaZ2Zd4S1DJWQqGTf51uhwcAelD7u17ojn0NPemGRE3gnFQ0m0/kuUGfY2AU\nlZK5xy3gz8I71cNytTcPJum6VgaffGqXxxL/WuQH2zhBSYzIVnzgEywuqDtY\nNxlvXqRzX2J5Pk5Jk6vVOeF8qaPWe40JvsasFB68yXlCC5Xzwvltxiumer4I\nwATYPBPv3KHquGou/+IrokeLdwVmiRQZ/qU1ZL8/NL5H8u1a3hAIHsyLpGrn\nDT6ALSnwoK/deecAbl4HGH/njEfjTsCrC1QClPdpxdiMAvwbj1sZIYYQX7Hg\nOMgu0klnunEpKgmHKAqePrSf8PZ7ILIyDiIwaXvmXXLTtOkn3GVJlpY87lPk\nPh+1sD/dJVDl1UiWtS0imSOcfuLALtztPZjQkkItOErU/9y2BQrez1aFIo0r\nAE8m+mkjfE2GUzS2KLBRf4Pi+YAqFe4viSJyuw2vpoaAXKY1jTLOsiWjdCQm\nY8Qzm2ogYpy7LsvKe87Jt/gUn+adZiWqWkzL7tnLMebD2Yo1tpovis6wr76/\nr4GMLtR+xfTzGiBVvb/r4tCWYlpAZmUbRpQVacjgE//rf86Bz/y+vyTCNTvV\nBIpO8dCLPd/cod85xyvGlKD2aix55KNH2v/mw85GotSkVMMcVIMH7HHeVig2\nBie3\r\n=PD3X\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8780c29a82c64caee37ec22f279b264af42412b6","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.01db89053.0","@material/rtl":"8.0.0-canary.01db89053.0","@material/base":"8.0.0-canary.01db89053.0","@material/theme":"8.0.0-canary.01db89053.0","@material/animation":"8.0.0-canary.01db89053.0","@material/typography":"8.0.0-canary.01db89053.0","@material/feature-targeting":"8.0.0-canary.01db89053.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.01db89053.0_1594917575729_0.012790059253422692","host":"s3://npm-registry-packages"}},"8.0.0-canary.fb5a4cdeb.0":{"name":"@material/floating-label","version":"8.0.0-canary.fb5a4cdeb.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.fb5a4cdeb.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1dfc543075b02fd07d965aa05c0010fd7ac34d3f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.fb5a4cdeb.0.tgz","fileCount":34,"integrity":"sha512-1tfp/18eUEEtTfWz17v7YgA0H1LKXZURM9ZNAQXAuuPXUpqzINdDZhsTPnfMwIJvov6pg41BwgzxsNVFkfz8Iw==","signatures":[{"sig":"MEQCIHSu11mxFBbUnTOKsCpy8hdmVc3pv24/BA4E1Szhbq9mAiBYLyyk9dTiLQr9uP80pq6b6RE85dG4uRiOKLywFoJ/ag==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfFe5pCRA9TVsSAnZWagAA/Z4P/2ZNksUySKKWMLZyYm87\nKtARsX4xJcxBHuNM+IvyYcXIXN5HCErp+rEVhXpBrvjrjZPvdNejaZjKQdgW\nCTHRgEdp6KKTOTV6+VlTmql5tmWXuQ8NvgX/1QlyKv8RT16xkzorNhZI758T\n9erk/WSYbJ9FbaZzXYcZp4V02m7g6LHlLZnRp5rAFwDJPMhaAQwniDJmtdAj\nAYb/TqPdyWNUCBoCIW5mgVG1d1ce8WXje5GT5Lub/aMMJiXzgx+5LoxKAblm\n9HlnUxH8+p4j0HMeO3Lp/vs5boav+QWCm/enbfxr88f3FdtvrxkXHkCqoOE6\nnXrbRhaNWRCkvLxdYDVpU22s+uQ8XHkCeRizu+YOMrvVh1Qp6dzMqOV5r1oZ\nMoMFR/0jfZ99Paq6FaYNNwqddfsxC5LVhpXnNw27s5B+AnhUufka1SFNDGUH\nBpPescUhq3zCU/nXsW4WdrN9pjDhnSCgfP8c+pXfIeD64M/wYtQIQCE2FpfT\nplp2xmCAeitrhrrcCemlO+TLssBN0TVgo9ln5lfkxAVbVUGhS+KSlxpZr56+\nMlKx1GCb4hs7001672ZkNYMVQ4ZZ//pxrkrV55TKH4I+E6nAQOdWGPyIayyU\n21cC9J6WYLoUFZz323w090ILlCX0o+2D3Dd9o1PgJDy5ZyZ0EDBy4x67VJQs\n+kcZ\r\n=Tw7+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8e80295b6b3e0ec36934f8d691b193c740458d1f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.fb5a4cdeb.0","@material/rtl":"8.0.0-canary.fb5a4cdeb.0","@material/base":"8.0.0-canary.fb5a4cdeb.0","@material/theme":"8.0.0-canary.fb5a4cdeb.0","@material/animation":"8.0.0-canary.fb5a4cdeb.0","@material/typography":"8.0.0-canary.fb5a4cdeb.0","@material/feature-targeting":"8.0.0-canary.fb5a4cdeb.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.fb5a4cdeb.0_1595272808772_0.18462345529605328","host":"s3://npm-registry-packages"}},"8.0.0-canary.8df0f517c.0":{"name":"@material/floating-label","version":"8.0.0-canary.8df0f517c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.8df0f517c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"83ff9c68a5ff509b5f2f2f7f3a854b9a1663f975","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.8df0f517c.0.tgz","fileCount":34,"integrity":"sha512-T56AJ4zl0OvYgnIgSL7A+JqhIyBO3rcSWObu7ElbwNfwYR9qemL1yvP9vivpHAufX9wY3pVlo4/lFBw3gD5yfA==","signatures":[{"sig":"MEUCIDPv2XKSRCUOvfeTrBKq0EPevOX06qBAvYmjMJpL3xUOAiEAqIXy8SOnq1QwibQ6pyCUkguPDw+psv0zP4J87zjfoK8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfFi8FCRA9TVsSAnZWagAAPDUP/2JYxMQHBO1gvdGsME+n\nb8xXtYZkOgVOgU50okNP3sSAaUtVXvdJNGLSSR3zFATZj6EBvqq754FwxOjg\nhBhdEkCZg3l3iiDd+P2StXnd3EgbzYvGFnfHAq9HFyrmcKMDpWeccEqkyooW\nlA+eNjs/4llVZmTlNYGGz9wyCpqKVngv5L9qR1AzKBoda2eDjLX/eV6+oe4J\nfYk7xRNmSBuoQtopTBIi1XEe1QTnZ56DNGTbGiArNJqDoIfRXLrwwM8ERnmf\nppMfnIqWfkMUgfixrqTSANzJiYR4369zfuCqZgev/tYkH89ccnEJcTuPTDTG\ngiuN32UwuzYpmiIzLfZPQqb9cQTBJfi086t0t8IlXovwsIdGY7KXopBMOI77\nnoiMblLGGA8H8FcVJz80I2iiaVNnwGvRyy4C9XGbuLRZVL8pR8vew/mIHK3W\nkXjQFoAab6E0LdZ5siWChnagvSXcKrDDXIMq0Y5YatVODW80AzrA9P/mg85y\n3lNAZWmlqmty3vzALRaAwRpddMBRcTQPqvSNF2gttpk5J5UY2ZONu7UYuXJ+\nukL2yKLkM6y9XNHtymWIgAzC8W16CaTYabkrlm5xf9hHf073ZZ4trYJFNOdl\ndE6/yxuD22cCIhj65oYq2Ep3iFdQKYaIHsWkvOSllg0QkN+ghVhneKf6PT6u\n2dik\r\n=P+Rm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5fca8679b0dad51628e898ac223795eea8e54d56","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.8df0f517c.0","@material/rtl":"8.0.0-canary.8df0f517c.0","@material/base":"8.0.0-canary.8df0f517c.0","@material/theme":"8.0.0-canary.8df0f517c.0","@material/animation":"8.0.0-canary.8df0f517c.0","@material/typography":"8.0.0-canary.8df0f517c.0","@material/feature-targeting":"8.0.0-canary.8df0f517c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.8df0f517c.0_1595289349341_0.5778918844519418","host":"s3://npm-registry-packages"}},"8.0.0-canary.abcdbcfeb.0":{"name":"@material/floating-label","version":"8.0.0-canary.abcdbcfeb.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.abcdbcfeb.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"cab231ed760701d6df048df10d343e9c61c5b028","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.abcdbcfeb.0.tgz","fileCount":34,"integrity":"sha512-/fFUxyrpehJFRdxlPHwlALaFxH/LC84C5pFt2AbUVNHzAbfiANWVjhe/+mxF0cHms6Md6u9qWhq3xldQnIFKCg==","signatures":[{"sig":"MEUCIQDa0EM1nRm9Ydg5eARLE8S5TnVFr52Zxxv55ENzybS5nAIgU327WfMXS+V7GTYF6qTdf7mNStT0S5diDzcR7VSQevY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfFjvLCRA9TVsSAnZWagAA730QAJ9StKOBYbWy2A4q+iTE\n+wWl2qqBEbbC4mEFF1PTEu1ag6sPxsFcVzPU+RAYWGc7RlSWb4qTiOEygBtu\nmqaVC1h86pjz/GJCEZcV/iuJ7labfg3qhp60qWczNXP63EoWZFezlXGg9DqS\nZh1/0Bm756d5tZBT5UAzZHrwL1L/kfBbgMKhangj88AV1HGcy27BwT6TL1ZX\nOWoLYc8Yw4UcUScdbmG9wkPoPFidcr/X5E4oqh63jIcnA/LD/urDlXpCfOda\n7gSGD69Y2heC52xEKydggV293q18xQW+8QqBccb2L8Dullmyf+MYflRGRnaI\n2DN5/1LYWqQ3LvgrBWdp7Sc97gesvADJG9siHOx9ke4wn999wnMxaAtSyP8B\nsBJHwHUMJlCQIb7cJiITESupLa1ne/LbvzO5wPFYKuY6ltrIN4eoaBpQ0pOY\nz9mHaEsjequTM4rlsuXO6EPEd6O7/cSbyx8kMKUI7LSpAoPYE9KOfmyXgA56\n0IPQsOG1ogSJ8FfGlI3hVboYD88B1D+P8sZwhQYh781Z1rfJefSyoSX8MsgW\nFOka0gUpsv+R/wgTFpgLmJKASDR9rH8aVAy9en7kBkSVyXxhXjKpnSnHBbqC\nD4WPeb7xEG5L4wRVfxbmLgB5fCz5Vp4TpcjFHeebVqNjCcaVU2vMeNwacb6U\nWc2p\r\n=3Jmd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"946720776dd73c7539bfa072ea415124b3e08a55","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.abcdbcfeb.0","@material/rtl":"8.0.0-canary.abcdbcfeb.0","@material/base":"8.0.0-canary.abcdbcfeb.0","@material/theme":"8.0.0-canary.abcdbcfeb.0","@material/animation":"8.0.0-canary.abcdbcfeb.0","@material/typography":"8.0.0-canary.abcdbcfeb.0","@material/feature-targeting":"8.0.0-canary.abcdbcfeb.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.abcdbcfeb.0_1595292619007_0.2916198067345088","host":"s3://npm-registry-packages"}},"8.0.0-canary.7bd5075de.0":{"name":"@material/floating-label","version":"8.0.0-canary.7bd5075de.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.7bd5075de.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9d1d4511e8d195014130767b00b0ada5661d1c3b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.7bd5075de.0.tgz","fileCount":34,"integrity":"sha512-JLla6/y3yyntrdJ0uUfyMnrb9gfume/JFlLuj82j8GKGn2fFRCDeYXNAPdsP7/GcloMvRxJELW9B/wJXTXvp8A==","signatures":[{"sig":"MEUCIQDQiYJVmBSv3atM01c6hhqZKcymJCVC/gvjEAsEGpfKXQIgAoCoXSXhj8bq1E0a9ICHRugoIhlO0UNTVz04HOmkqbY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfFzg3CRA9TVsSAnZWagAAsf4P/RbdVS49Wm4zqeWdeHA4\nLDRplBLxc2bEy7UNv1zBjSqUUsX+tvN/Axn1+dmMgmZO4/6HL92tNtAtOkZW\ns5+Bz0Bn/SA+god9iFxwUhjd4LDPRztwuRkqx1UvqI3ZAyuupYHLsMIx/jTG\nA5bYqwndR2Fh2hrAn3yuz5jieJT1rxs0NAC0pECvATRzYqVQIgdqjjTF1dxk\nDPEUF8HuYor3Oe6fNE8UUI7FNThu8AKzJfNbpW+lQvaQ2u7TL4N75AKlLckw\nUgCHfu2kE7paAM+t7KOYs52Ryz0obsKbArZ+fv3G67OKAQVq4uq8tQzjRPBz\nvM2yTQsPwk4bQBVb77l2OxJsKAloYWXx3h0zc0xEXt6oKlzTj5ryx91mfnWb\nXfVE5GuOgrTtgq1FBOTMK+lDdf8k72ea3+FELCQb8BuH6rpKnLuRk84H1Fu6\nbyw0rjAn/x3O5Xkf79pkGXs5VMg86I7yx7KtNTlWCOvs+KJQnPr6T7zo9o4B\nqAmCAG++m+oqmq9PExeVmmV72tHQP5IIcTkypc4GLlMmiVug1wpzgN9HaDfC\nQc43zPJbZR13UQNbq6lAKXOlEo/vfSQ/sZaANF3XM0RN5QZ2ls7PK7iPnGgU\nPNJLZzcwPQwI8ui1VuL52MZu9QyD6UclW2JNf9Q+0txH/OXZZrp4RuD1QNSH\nVWEd\r\n=PQ2e\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5ae456e961b208e98164fa21047b3ff2e3f3d8e2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.7bd5075de.0","@material/rtl":"8.0.0-canary.7bd5075de.0","@material/base":"8.0.0-canary.7bd5075de.0","@material/theme":"8.0.0-canary.7bd5075de.0","@material/animation":"8.0.0-canary.7bd5075de.0","@material/typography":"8.0.0-canary.7bd5075de.0","@material/feature-targeting":"8.0.0-canary.7bd5075de.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.7bd5075de.0_1595357238932_0.7709675282580839","host":"s3://npm-registry-packages"}},"8.0.0-canary.405a29a20.0":{"name":"@material/floating-label","version":"8.0.0-canary.405a29a20.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.405a29a20.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"83d4042dadf52224bdd2f3be6b6b2b436d065a46","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.405a29a20.0.tgz","fileCount":34,"integrity":"sha512-cOGjsYlLXGOEeqkCE8Ras5Su/Lyc92aBC28ZB4gMI5/MMlblHQc07FOnHpUuExK7AMlxYgGeEWee4t4N/QZj3g==","signatures":[{"sig":"MEYCIQC8lKVomFqUEhnQW7FuAlFz1Ys3OHbpW/1OAO/T5mQ5SgIhAMIbUHlMUI+9CZ43BBfDt8BjnNLnVqr2L12xKRCa5yeb","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfGLxZCRA9TVsSAnZWagAAJ6kP/0mRPJpYlh9OuDAjzepU\nwOOFKOmskhZL/0RxHPCGZ9dVfIwjBGmqYS2UHI0CtW5MmI5GtZFt49DTy7IJ\n81Irflc9UhJ7WCD1pE+kKzLW64DZXz3LLFLH7Qteig8pYXWykdGE5iyBUsHq\nl0uun8Ai9PAGrf7yXfz/nt9fcfTFjAulDrQuLfNPAxVjWqINaDNMROCirl/g\nTiMRRoWT/OYeLUVR5kso9GeRdCdXzcvu2MOQd/cMQetn+ifVrzjDlBaTGI/I\nQ3SK5cEEOMUXvXG2+S5/S9qVG4OJ+xISmjDUZQh1A50G/Q2djOCnwhF8GFpk\noqEPdRRm2dzUpkVpQlb3/O9H/JGZpP7/EeY6tIjxYS2oQlYjrsRHxU+sioVt\ny1gZEQpTCIlf9cSrOS++zPsZzUbsiG0nZZ/TtA4fNW5QzfTaAva4o35SmBEO\nMxWt60znOEy3iBC4vjL+zPi311mN1iFCFd716awunkP4osM9tsZMA5YMZHJ3\ntog/s6FmdXH4EhqYCj7i1jC0QiuP+s2iCadY31pgfNdBlqGIcujpD3W/C+CA\nSSlYmIUMuwh33ODEeMSlCg02r1VYipFZ0q2wGo7g/MeUHr8rgZqLpesaan3C\n0BzM1uM5vRrecPEp16b8x6sn0ARCI984AXvXjCWE1f5XoRwnvvZ8hyvYyo+c\ngTxC\r\n=BRb7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"02c4f49285e8229cf49d9e4a0df213ff914b949f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.405a29a20.0","@material/rtl":"8.0.0-canary.405a29a20.0","@material/base":"8.0.0-canary.405a29a20.0","@material/theme":"8.0.0-canary.405a29a20.0","@material/animation":"8.0.0-canary.405a29a20.0","@material/typography":"8.0.0-canary.405a29a20.0","@material/feature-targeting":"8.0.0-canary.405a29a20.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.405a29a20.0_1595456601359_0.5398578458496892","host":"s3://npm-registry-packages"}},"8.0.0-canary.f3693ac4c.0":{"name":"@material/floating-label","version":"8.0.0-canary.f3693ac4c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.f3693ac4c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"fa05c698f87b96d3ea00b62e2daabdb5590657c7","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.f3693ac4c.0.tgz","fileCount":34,"integrity":"sha512-g6ZBxPntlzy5Zos+/svTm7mqiaRnbj+9ukQKiXxPuCc0aKa2l0ZAHkrdBzhNyMg5jjjaANnnAJWgNhl0AXdACQ==","signatures":[{"sig":"MEUCIQD13q/hc1M2SqYlhFapfZmabst8motUR2MLCnebmONY4QIgP5XTgnumtc5P9sRrewAbRhZzQ6HwtC8kQnAnYZCCzvE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfGL7SCRA9TVsSAnZWagAA/UsP/1bbxNhu1lU/ud+Z7sNt\nESRAFTiEGaUWTkNfHyolWo+gZegVPmSYJGWWLcErHEs9yUVXPzRL0CDbiZMv\nJ+CwQKDejvoGObOHiuSwWOlyJ8ENh+Sf6CKDrb7KRShEcYUR/2sxHyX8OodW\nWYtIgUpRVpmOwsrBFCQvUUZ07OtSrvHtKM+Axfut2iJxEuogdA1cwIbQZ+ra\nVTxmFalwjhQoo6COJxERtNysMQxcEM3Ov5oF4+LQPdX9m6AMUFSAD6zaA58X\n3iAV681Xh7xk9/itDcmGgnS538yBHo/hD5q67qgV2rEIJs5/BBzaahPYcqIk\nVtCITpXBElzvZWPaAomHTBgFrikUIFeKTuKJRW+UtGlBPZHPb9/Dtc9SGV2q\nAxHM+msaz5Cg1G8iF0HXC5NwlKTdUV8+QVKiQpTybQOwtWvCnQnjqw1euzvs\n7olWWgm2C6rZYeByxGHLdEKmLa+NQPHhSgCss1/IuXMwcaRb2jGqogn3CDLE\ndjTnCZCBnozMuWoUJu+4Q1QIaCEYZfHYrm7Ff+kOfS7fEso8OKRPLHLY0DCg\nQUN/BysjmEt8jmp3p2kCfGPWf1xMdsRDocHwI16GZS3JGs+O6xfjrwxkvlKe\nATxvoqKhqb0btBgFIL9j5450QgqAtqGfJlctvknwHYnL1zqgPQb3m8GE00iW\nWTAE\r\n=ljqE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d3170e3936d96d26a6ca17df46c1febcfc33078f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.f3693ac4c.0","@material/rtl":"8.0.0-canary.f3693ac4c.0","@material/base":"8.0.0-canary.f3693ac4c.0","@material/theme":"8.0.0-canary.f3693ac4c.0","@material/animation":"8.0.0-canary.f3693ac4c.0","@material/typography":"8.0.0-canary.f3693ac4c.0","@material/feature-targeting":"8.0.0-canary.f3693ac4c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.f3693ac4c.0_1595457234429_0.8718389303761376","host":"s3://npm-registry-packages"}},"8.0.0-canary.12a109680.0":{"name":"@material/floating-label","version":"8.0.0-canary.12a109680.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.12a109680.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"acdc4629c2051c64c05462d915cbe093ff537e05","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.12a109680.0.tgz","fileCount":34,"integrity":"sha512-Z80kHj/Jnh5ft+09jW+eo+0hF0V941oIH1KbMY0MEnhVRCFSrs7rrNYR5XaOImVJS2Np+ylMTf42xXlWGnIy7A==","signatures":[{"sig":"MEQCIC/LuEj33om8MXCeVwzat5tUfVAJctiGD+Tlu4VP+LbqAiAzP7e59Fm5fA7rclZkLGFvoRqEe69qT4+DbOXGweap0A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfGMXJCRA9TVsSAnZWagAAqGAP/R7h8pLHcecqjkXkOFCc\nrYPs1snDZcK8U3N/caeU1OcJE4xdpB2jbV5OjwJ27vbBeuXFuBTlf0nrgRdF\n+mu6gRE9yIFfwxGtmR3qmtVtoG6zA115wkty5MEFgGGdsJSgO4JRhgIym50f\n4Xz8KoCOsmVbqcH9VgyFDT+DBysy2N+CXxhcStbvc3HT2aCnkKpcy8OI0yM9\nPgkiaNv/sRz46x59C2NpYZglZx366DC9h30SgicgG4F9hp+zcQDnk3V3w5K2\n0lYZubEfRbqaGkq+HOQifvo4hWZWTKEylqOkC6ywZjSijB57JLms6NnPaECw\nAjXFynALrYHezOojpR4C05GjHzI5FQ5O0NRB67BO+ioVy9xaTabKOIrQjYZZ\noHPOk5xIDXh3/wauJ+HORSeS3zPxjzBTTQaqTLnvxXVNnzMby5cjCn2TF0a7\nHJn4vHeu/CuV2Dtn1ykZ9fM5WAQZHOuWawMNBOJa8oGMrWd9pezhYbyZZtIg\nE1F0kDlsh9xFfcclV2WkjEi1SzOa9Sxs2Ju1TzNNp3OWqd2gI/jdK2M5z/iU\n3MwgmzOLy/cpiXLQI7mTFITjFEVKUQoll6+KUU90WAviUutvi2PzRHo2Xf0y\nBSlkSplIY4a4M1eYtycaRg5zQA8KQw+GQx3rAKVScCu+xEh3YU+y9w93/WZD\nQYMw\r\n=c6tS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a403e743d7da095028c3ba6d0a66ef2f7812aa8e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.12a109680.0","@material/rtl":"8.0.0-canary.12a109680.0","@material/base":"8.0.0-canary.12a109680.0","@material/theme":"8.0.0-canary.12a109680.0","@material/animation":"8.0.0-canary.12a109680.0","@material/typography":"8.0.0-canary.12a109680.0","@material/feature-targeting":"8.0.0-canary.12a109680.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.12a109680.0_1595459017026_0.5024998277551471","host":"s3://npm-registry-packages"}},"8.0.0-canary.bbd06696e.0":{"name":"@material/floating-label","version":"8.0.0-canary.bbd06696e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.bbd06696e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"cf14c34b08952eacceb6938bcf739694a63d066d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.bbd06696e.0.tgz","fileCount":34,"integrity":"sha512-n0LlPQg3YvMcF4cRQfYzQYj5atxs8F+tnrAnKq+SK7FVMIDieNFZqITaN5TOkf/gARNVBfW67Z9+8r/MxKcTzw==","signatures":[{"sig":"MEUCIGERJcxXS3+vBjouzhrgJE63yxTfP7ToOBZAnJWEsN6sAiEAqDY+nT5wtpQABYMETBLeNCqpvwJVHf0SICfkmA/yAys=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212562,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfGNFeCRA9TVsSAnZWagAA0rgP/1Bmk5q7uTgrxrSwMHNT\nF71zj5sPHzHzpun1OdeeT0bRbU2bfmsaVf/ndye2nuU7057IXmefDBolUX2A\nEwTEI7w2LywXciJ0Jo32+QttgTVfP1MnnCcRTU8Vvn36aJbHuAgsfudUiuVc\ndhIguELSR/2/tGXjrZt6YsJI0mNQ7mpkf/5EyQ5porLWAGKV68L/nQsh65lv\nsFn2UjP7R5fZ0tJpBVKo2XnYcnd633zO9NUAMhI+RdSWkDfL+bRsNY6gQUOi\nzOGV8g/4t56z6TeCp3iU6FlTORomuGRodfrukTFhx7an4PgFE8vBOlY588rn\nzphEikj/nBdoMEggkmOqP21cpq+qrctF8QlS2hzfwrB7ey7bdGyAoBfJgXX/\nYI3Sl4i7kdPyagJxbsP5kKWKdgLTwCTv3hIeJJl9Nznwy3LbYSQSvSA6Nxzj\nO2FJB+bVzrJQMsUYypCo3TQeRDM7wA2UvnvPoFLFfmCw5htOD6fdFG/rbk8f\nEJeKO3Y8Nx0y1Tu3fbkveytMBkLYjD/Z370rcjcJUBOO6wb/F6koXMsdDV5R\nElhHYfvjAM4WG+Cq1FJCYNB+s/8QtCAS7oyQV17Quh6G1+fqXADMFBUqVhkk\nNo8ipuPhdPIRZGdbAgRLrKOdUGshauuJL8bQ1I2ycOvIRc9fEgeLkdvF4RnX\n2tIw\r\n=aTJI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1d34a386a37996e326b9ca18440ff1cda261f3aa","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.bbd06696e.0","@material/rtl":"8.0.0-canary.bbd06696e.0","@material/base":"8.0.0-canary.bbd06696e.0","@material/theme":"8.0.0-canary.bbd06696e.0","@material/animation":"8.0.0-canary.bbd06696e.0","@material/typography":"8.0.0-canary.bbd06696e.0","@material/feature-targeting":"8.0.0-canary.bbd06696e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.bbd06696e.0_1595461982125_0.32594333859439995","host":"s3://npm-registry-packages"}},"8.0.0-canary.4951e7651.0":{"name":"@material/floating-label","version":"8.0.0-canary.4951e7651.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.4951e7651.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"eb6dfbad989a643f7a0478b236892ecf4a63b8c8","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.4951e7651.0.tgz","fileCount":34,"integrity":"sha512-cSNeaSbgBStYDlzBB2RcJE6DdF2YYF4NGhIAoNFSMSRGCAc6Q8C1gJY3gr9tFSADWSk0+D4nKxdafCM7ZNSs/A==","signatures":[{"sig":"MEQCIFJ/2q0deEr8OQEufaT6nIacS5WMqx407ym4JSFvy6YZAiA+GdJ4eXtOqfLBFbULF9gei0iokdIWEXMBvR+nEOcZmg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212562,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfGOy9CRA9TVsSAnZWagAA1csP/1Tw+8s/YJPAi8CIGkIB\n1c5zgQ9d+3FeaowNGwwgEd0YhKfsTz9/uTFxYgV5JWaaNfyH3TjDUDInTT25\nynbkRiciHzhnhyIfcFkVCR9Jeb2yZOySWRCelzRKUv1XKInskhtqVrV5FIza\nFpMI5EXKZCAGEIGIAodPAYE43lKQon1tGR3BXXOlUGnhZ/BlJlw9BAWFQZWz\ncV9dmuC+SzlOYKYs3Rzxr/9gHbjo7xbJEdqhTDFgpc5ieXrlGL+7N36ElB2h\napxOPW3hFnrGRBC1Lq/ocpvy+dGTSMgHYSmAQTa3B1l1SIQY3LbWjcO9KVtC\ngs4Tx0xcLgpd+GyMIqIw89wLQ/rCwEmX0pM+R04Wam4J0X5mxrFdVaj03Zi1\nxoCEDRlbqIgKjZ/JiIY797L21PS9PseBHTu2pNVUakv5ZYWdP064t8LDOXqC\nHjBmS60arD3BoNgt6ifJ1YOenBsyMRxHokHrWqaVR77/Kxn0zd1qZ1t0Y5V0\naYZ8C6muXv7A+AbQMrCDiMSZNrIMXyyjc6Q+PdimsJ15gAYsdP8OM0j4xMGd\n1Whj60yx51RIe5YsDxPz2T1c+bGMbUuM0UfLq5Cc+6a4/FjbsP/xrLpLKgI5\nzUtMk/EWB85/l4AbSDhpxPeQB1SJGxhWbZv1qXgUupIo8sCnEl1X51ltp+nb\nMDIn\r\n=Pzrk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"32ca9cc0ab948e59f91965e96adf325a142b8336","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.4951e7651.0","@material/rtl":"8.0.0-canary.4951e7651.0","@material/base":"8.0.0-canary.4951e7651.0","@material/theme":"8.0.0-canary.4951e7651.0","@material/animation":"8.0.0-canary.4951e7651.0","@material/typography":"8.0.0-canary.4951e7651.0","@material/feature-targeting":"8.0.0-canary.4951e7651.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.4951e7651.0_1595468989091_0.010708735586230533","host":"s3://npm-registry-packages"}},"8.0.0-canary.75deebbef.0":{"name":"@material/floating-label","version":"8.0.0-canary.75deebbef.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.75deebbef.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"04fa4ece84507764ab1b7fc90541b581620be020","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.75deebbef.0.tgz","fileCount":34,"integrity":"sha512-ITQ4NwDVFatW6jI/5Hp7m9tMzWNUa18+jfN5aVpeb4D7jcLe6xf2upFGGv2oybi2qNiPCwicqkzQjeitAd/4SA==","signatures":[{"sig":"MEQCIHfiNbDjx997RHyoorHIhOiwZ+y06AFJ4ZuX2iGISoJDAiA3nLGD4eI768yjnl1zdbfvjz75AiPUeYz0o66uVh0goA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212562,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfGc0ICRA9TVsSAnZWagAATg0P/16sCa8XE/DAAvQSchwo\nyiXcfjCEabOSnImtVAA3LdnvDdfTrdUiyPYkgC2H+JvnJhHdcDcD+4XS6gKK\nLrm6dN+XJ6QZ9ldj7aeJRiSmsUOVQ55DSGB7toaN0GpnleMGFlrRvv1VxXeS\n2l/WNMJgekcBu9uUQv1m060dRmx2fIg9d4hhgCAnTEX8DmWrMzgTzmtvxDlP\n7G06UuIETv2wG1h/Ydz12tcVD1MKULA56rUJ19GFaHblXcof5lGMaT+vf5DD\nJ3eP8fqt3G912sr79CatAV7UGAYlOqNato6FJzXtVoJfGUmg5gqfqjogUQYb\n0mdgKpDnkvX/IQIQVY+1Ue2v2gEOLfmGOXbkPmL/mU+poC54DTjjPbiTmS/v\nsRCIxjzSHrMotf96RH4ZLQ5iZSaPPeiWnSsRMtpBQiXllraKWud1DjOnWCB6\nKx6cSPLeOTyKxSEJiBnf3kLsWIxWbEoZbnBG2Vhl9KddB7eEJQIHMnXfBSHF\nlVP/INulfDAt9CqPD2JJCgJBcX2OMjLGc8w5x5MTfjTyU/nbiyq8RvFWkNwm\nTS/7vwK9RXFr3cL4HoKQjuhBY+srMOcKJLfdMVlbE2UNVdxLtXlthm2bDP/a\n7SnEk6oriEVXTy6TgujEWEQYp4oZqq5Kcn6K9IL+WWbyYveG0W+2t2afjr5Z\nSqjR\r\n=CWDo\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3df5ec3c8a254202fe3ba9017528cce3d5d906ed","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.75deebbef.0","@material/rtl":"8.0.0-canary.75deebbef.0","@material/base":"8.0.0-canary.75deebbef.0","@material/theme":"8.0.0-canary.75deebbef.0","@material/animation":"8.0.0-canary.75deebbef.0","@material/typography":"8.0.0-canary.75deebbef.0","@material/feature-targeting":"8.0.0-canary.75deebbef.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.75deebbef.0_1595526407598_0.6805814966622843","host":"s3://npm-registry-packages"}},"8.0.0-canary.95aff33ee.0":{"name":"@material/floating-label","version":"8.0.0-canary.95aff33ee.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.95aff33ee.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2196a68256aecb897a1eaee92056dd9aa91e1e33","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.95aff33ee.0.tgz","fileCount":34,"integrity":"sha512-EDJdkGKQkPVPfVxkWg5HLGuoiYt6m8A72ZUk2z3+O+OftKrrYQKE807sv4ye7P/d310QAVkFO0AsFBOVjObOnw==","signatures":[{"sig":"MEQCIFD6SBmHG3CNkGiBx1nirPOb6XfViPL98U3lKvXOpO88AiB3lDd9f/emIwQFp9gXPTTQOWmYnQqXEER4wm2/iAK0/w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":211817,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfGdtDCRA9TVsSAnZWagAAB+wQAJGOx9bVFv8mx6IyP/yw\nfpcVQqUctC1Ln56qriDRqS/tyCifvf6t2TBWD4uKufBcVY8FSBqOAkpiSgmA\n/0aeS/IrMe9REZJXkPhuoboqHpxoDSSGEmV/WRap2M658a2x2lWiZun5SYDr\nB20t9ALSpLEOukbXcuCd97Y84QqNLgLmvV1X98wRt/0rWdfJhvjwZhhSv8D2\nGcF6aZRFP87Pe118OyfEDNHubmC0iOSXtnJohjjqmO3OqZX6R+kNgjsMMC68\nsWNa4t5KIzFA3ga21CMbgSwWVtIZbndxZTIWjdy8GWiGelicccALwKL84n+B\n+4n0ARQJLCsREjkzdD0vkGkAXRIW3+Uo2eez3ygx6wbbErhmbt9MGQJiZClZ\n7Hnm4oJV/gsAxXy0sltoPWR8Kbur2wFHQqZRmjcXSkLkPRn3Hj0+eB08WFjs\nmuYhrHUTB8H91iRMCAkXzpcpGuOv1iSFgn3ds73ANsvjNBU9HSHELbJdnvH2\ndi37BWvA/Eik8aWqQOE4s3OscU+/51BnWtrmNpOwd0i96LwFRhemDEL6tcrZ\nc9tVAPjWghqlEJaaNyGjtj6B9gVGn9KGR/KO6HNbzi+LW79YfktfHEODQnJ8\npxb99zao47frAXWvn6/egRYQT0urzjcZOuTdLL+Mf8hPmLdLFd1ma79aok7Q\nM9k7\r\n=jGg2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"0343ebd62969f5d4315e249ad81f2837fdbaa096","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.95aff33ee.0","@material/rtl":"8.0.0-canary.95aff33ee.0","@material/base":"8.0.0-canary.95aff33ee.0","@material/theme":"8.0.0-canary.95aff33ee.0","@material/animation":"8.0.0-canary.95aff33ee.0","@material/typography":"8.0.0-canary.95aff33ee.0","@material/feature-targeting":"8.0.0-canary.95aff33ee.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.95aff33ee.0_1595530051110_0.8818379098675933","host":"s3://npm-registry-packages"}},"8.0.0-canary.9d9f47473.0":{"name":"@material/floating-label","version":"8.0.0-canary.9d9f47473.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.9d9f47473.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"52d16570c7a4b9a1c72cd642f8091b816cf2a2f5","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.9d9f47473.0.tgz","fileCount":34,"integrity":"sha512-ZtiVVBW1QoFS+ndwsLYF3wcJGqjj5biS7GQM0D/SxudJEqLoa0kAf81iChJf4ELcQ4/xCotHjU6lNEIa2UnjXA==","signatures":[{"sig":"MEUCIE7HGzpK5roADj+zF0Ts1S0Z2883+WlHthl97uXOLDTgAiEAn8aoF9sztdfEy08RjIJNL9km3JVif+gr3TCQx43hON4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":211723,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfGewECRA9TVsSAnZWagAA1gQP/1O9ElJTs8JMqiuf9bmP\nqHKh91Ba/w3+ijqWG8xkXsxHqdJkJ0gduyh1v5IZJEBmMZuDBeYKFz3nQW5I\nDbtRHrRY/TKLf+YsDNkLTafC3S0/Lakg91BtBue3DXY56i79F62oSBgL7OeY\ns0L1KJo7rDV677e/Zz7vLpB1NQcpmYs3qz/4UDKQmAUZdbWn9XTqxLlPQeTg\nTjzjd5XmLt0AHJVgucdkgOUk1t+S7S5eKfl0piv9+4z05WxJMy+BYxpe/fdS\nl05026Hh3xs7Z80H3RV3arn0g8iINi0wqKel59NxumpkODsifEb0ki+0GrJF\n02zR6dbSuID0Xd8gCbsdeia+YDIQqNX5ApeFRO0LieLg9EzxF9T8salmQsw4\n48ewTBN29GqJPCsmrV2CLPze/UvpmLIj08KCQKRSK2ed9XHbjv4Ylwvxsmb4\nx6WlHdyV77bbfWNKRphRJ5VpQav+084TI2BN+j9K1hyGCHazoPfS62gB1VP4\n4YvlTXo06w0QyFj27ch0GYMq5+ZAvTShR+4aK2IUgCSSU+/IVdgc+LeN93Xp\nD9tgQ4c526ZGiUb3mFHV91g0JPH1CkjjTLzklPggZEsc+XqinTpndPedPef5\nT8H7eWV/JkmB2fOPagkIah5clte0cxbPaQfS26jm8gO10tDZpuxaZ0nS7EZZ\nnJ3n\r\n=iMgH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b21be0611a45dd7df8e3b48a3fd0aab09d6cb236","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.9d9f47473.0","@material/rtl":"8.0.0-canary.9d9f47473.0","@material/base":"8.0.0-canary.9d9f47473.0","@material/theme":"8.0.0-canary.9d9f47473.0","@material/animation":"8.0.0-canary.9d9f47473.0","@material/typography":"8.0.0-canary.9d9f47473.0","@material/feature-targeting":"8.0.0-canary.9d9f47473.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.9d9f47473.0_1595534340156_0.2040628995884637","host":"s3://npm-registry-packages"}},"8.0.0-canary.00dfbf6be.0":{"name":"@material/floating-label","version":"8.0.0-canary.00dfbf6be.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.00dfbf6be.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1c019f11f543ae755028066248c077d93af506e5","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.00dfbf6be.0.tgz","fileCount":34,"integrity":"sha512-HTY1K15rXFff7t85thKcJdYw4j+meP1+v64oxywQYERyPRj12LQD8hWdfCXUoP6BlohjmrWvg5x5f8IX9dzh7A==","signatures":[{"sig":"MEUCIHWH9hDdnyfYDXlA7IInEMV0jezB3EXfWCzQeK0M7WxSAiEA9txzMCzv6Y91jYBrxOwO4ZwYRvqMva4DCrOZRLVnKTc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":211723,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfGfpCCRA9TVsSAnZWagAAeagQAJAf9/thWJDha/iFtMOx\nrb/l5FTfqxhYqjkMDSQvpjcfZtyV1Nc1OYMwxvOmyMHAuZ3651yz2hO3ZpHF\ngkaOBPHJsq/ejsP1sCFOGIFIoe/xSPfvzaL+XCIZCodnbA2Gzm6e+3wNez9a\nNe2wJjCVaOz09HgEU6N1buAUAVMiPqg6xfQuN291P7BGDb0NdR4knufwojop\nL0aMftdribuVDvg1MKTE8D381IXdl+JWfxiV3ymokaeLvBpWpQq2NiySGyY/\nN78w6W9asd2CeH6tlbAoPyCX/nmzJWqFfBbouRnlROQHKU72KIC0dw8ICBLD\n489fMJkvkP+3//1SBskabBWZI/41R4Hwerzf6PE3mr2aobKWdRNTxL3jGNH2\n5SlYLMJ1+hlq1Dj0m91CY75/xTJ98rEt4cGaMVj3rC4mXj4hSh+DWCLoizyI\nRUPxjk28uyHE5gOGMtY5B8kTcuPwH2T5ebcfh3k3JHmr92/Qx/iFW62qwl4X\no/1YjfEUkp92j8R/9kCPJk7LvaweoBfWSCRgO2mvemgVd1kgB1IoDvqkXPKH\nSioTHH0WWx2A7eNaCTtpVJQFmcicGI4YH3nvXHPNyHnACUfxn2erF1zorOPY\n6BQzIvqlGZhKZpFXO76krjYX1OtYLIWnmR3QhsYF9eeEY7aGwo0iNxtpTjr6\nQql1\r\n=dEgY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e4a97455c736fab77028e52beabb53323eb60ed3","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.00dfbf6be.0","@material/rtl":"8.0.0-canary.00dfbf6be.0","@material/base":"8.0.0-canary.00dfbf6be.0","@material/theme":"8.0.0-canary.00dfbf6be.0","@material/animation":"8.0.0-canary.00dfbf6be.0","@material/typography":"8.0.0-canary.00dfbf6be.0","@material/feature-targeting":"8.0.0-canary.00dfbf6be.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.00dfbf6be.0_1595537986111_0.20088143160933614","host":"s3://npm-registry-packages"}},"8.0.0-canary.b87e522d2.0":{"name":"@material/floating-label","version":"8.0.0-canary.b87e522d2.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.b87e522d2.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"fd8ad2c93e2ae86bf190a869ca2a75d99186fc7c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.b87e522d2.0.tgz","fileCount":34,"integrity":"sha512-RL4Mk0y2uOWpTveJ0AHDD//qTB1FYj5hIxYYx8AcgGCTydFi751lysnxmnjl10pEFCdWdbl6Wbu51TfDw2wg+Q==","signatures":[{"sig":"MEUCIFMJGnHb+MJ3F911CrQe/fK58ZzN4xx/XEAjLPRq5fj/AiEA95KL8zbxw7T9idruksJbFMXEG3b4LKWoeovUsgnWkeA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":211723,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfGf/nCRA9TVsSAnZWagAAbFsP/0wyAg1Fk1UK+l8hhtY4\nMVkRh/yUlkVAu+R/BxH4hRQk9nQVsgjtUZm1MBze4zB/u1188prdp7jpgVW2\naaur9AF+ZQ+o+v+i5S7lCiXwqAgThZchXkGeI2CbnUnAAzbChmcHg3EAHqvB\nSJxAlG9oj4X9sduUc8DBQrUnC6QVtpz2dMaEkXjW1y0ArtjljKro2Ksbumhu\nm+yacxiFrkdgYNjGwfMXXxWRQQGlj1VxkQGKgGYdvOiUs8CzjHf3XwF/fJ3G\n4KQEpAPwRZ3EL8rRf1IvFqV02KQovU8dIb5G6CxLPX//oGbob5I3vMExmgoC\nxON+LGm0IXLW7YotjryhouFnj6etQbtbjY1JslDhBqhe+6fNyvX4PFHz0ekQ\nRPqC1w1jBQtQphVSo4f7PFeBTcFC4cLPaEFcytIIXaEcWV0fLIcxwqfAa+yw\nMPVxE3fDYR0ilrO49J8Z3an2BZnzbwvNLt3mnvczSQ5Cu05WosCJIigxZSYt\nBTroTTTpbC0UlpbLjlNfKtqDqkkbjDwczsV0g6RI6Pmoz8boUjEvuCzQAwvk\nZe8IjJH1lSeUoLpag5FFyafts3Tm7EZ/3e8qotZl59bLFEjFOsC9fZTZ4sLR\nQHhanhs3ivsVbXsFatj+TwaCyPAOWhau4wbDmrrjivJIHtilbhNxpLTKNKl5\ndlSv\r\n=VVpb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c6b4bba75848a4cc1d6ee29d1b67848ff11a8ba6","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.b87e522d2.0","@material/rtl":"8.0.0-canary.b87e522d2.0","@material/base":"8.0.0-canary.b87e522d2.0","@material/theme":"8.0.0-canary.b87e522d2.0","@material/animation":"8.0.0-canary.b87e522d2.0","@material/typography":"8.0.0-canary.b87e522d2.0","@material/feature-targeting":"8.0.0-canary.b87e522d2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.b87e522d2.0_1595539430741_0.5999502909581735","host":"s3://npm-registry-packages"}},"8.0.0-canary.5b3e150e5.0":{"name":"@material/floating-label","version":"8.0.0-canary.5b3e150e5.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.5b3e150e5.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"877fb0f8a1a18562a2282e8b298131f4c3f559d8","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.5b3e150e5.0.tgz","fileCount":34,"integrity":"sha512-9LoWgmKhn2aogqDp3dEPKdSCFpj/LbSior1LD9Yb7fF0p+BWB5keS4f7MDQuslaxQO01uVLHhf51GjumFY/RZA==","signatures":[{"sig":"MEQCIEMTmQj0XXjRWqjdMRDjj2PfcBZgJuwtQp0ncXUYO7GgAiAz7sN89EQ06F0xpItNDtWSECN7nDwUh0SLqXQK6s+tDA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":211723,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfGjg6CRA9TVsSAnZWagAAyJYQAJQwG9YidCvQx8K3/NIT\nkZvx2TozCXWDFCyZmN3rWzPo8aaVIq2+WlwnHkUC+m6AkwVptK0yOXVVAa0x\nTQx7PyAkpwOTrcBSGASCNNIG2Op0cxV1fjlquVj8oDEhJqDOQuxjJA2Om7Sh\nKoBEnk8y53xGPhFw82UwJc3UvUW7WDqCeGNusHm5ZDfLbla9qx2fL0zgQ/kT\njmlJeOUqy2qKT9tm/CnCUIJ7IgThRyLMboJvyTF4tzaz214+Jvfary25/XiJ\n3sile+B1+v3p6PfBG9FtDe3mWzV1N3Rbn8FN5Fcwa+LPhtpA5lsHjCOQQOKJ\nQwsGPRgTpZMONVQv7l7FmdcQOGfVkYxEBBEJ7eeoICax4aUMr28D+SEfnH1M\naKWZLSegLN6hqjcH3EDT7ZqmCl5dp2d4uPNe+U0TtmlTQji+hNRE6gDn/wUN\nakKQVL1ejjE4R+77gqEXSy3kwCuRtmTSxOFRzXlAhiJ8O4Ge1T1meIYVGAyI\nsseO46/ilwSPqPcuSNXiVdKMcWeCKZVAwtcd8A2rjSdGU0wk7rEDpj9YgcW5\n4E2oB4ryddKUef/sKY273+IZcLiKWOI2tYzEhC7DnabxhV2aGkTmunJYlref\nEcBPfDjBoDm2SGUh4nhQbQE/JPfkI89uf/xg4rFppQtm7izRlN+2QOkV1VKS\nQb0O\r\n=FsII\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"bdcd04000450742ddf94918c2953ff0bbfdfe9cc","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.5b3e150e5.0","@material/rtl":"8.0.0-canary.5b3e150e5.0","@material/base":"8.0.0-canary.5b3e150e5.0","@material/theme":"8.0.0-canary.5b3e150e5.0","@material/animation":"8.0.0-canary.5b3e150e5.0","@material/typography":"8.0.0-canary.5b3e150e5.0","@material/feature-targeting":"8.0.0-canary.5b3e150e5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.5b3e150e5.0_1595553849863_0.532175026615463","host":"s3://npm-registry-packages"}},"8.0.0-canary.f0ae11786.0":{"name":"@material/floating-label","version":"8.0.0-canary.f0ae11786.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.f0ae11786.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"93528b0ab9c65ea728912f7788708211531d86de","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.f0ae11786.0.tgz","fileCount":34,"integrity":"sha512-TsjwQOTm9hds7ZnVu2e3XnUXdtbfTSShSADcyCOiEEyxbbBpe2uuDcZk6JCcK4h6AAlTwlVL1WLOjVF/5RK+zw==","signatures":[{"sig":"MEYCIQC1nvasnxE8ODXAART+EY1ft2VOe7Pl22q8ORQVEpZQkwIhAPWvYOPElVJvpf09uMtKh5HZAE9f3fbJwfuduw9+LPVn","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":211548,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfGjzTCRA9TVsSAnZWagAAyz0P/1KkOFt794HWJoXtXAnI\nRWEob1MEcGp4kU7s8PjTSiifhjzut5y3ADCfnA/eH79nCTcbEsCVOhXgDejD\nAPViyBgQSMSjaWIjgknlvEihmWH9hEMclhdu8cxyzZ9t0n+pd+Rd5QNdDb/1\nNWAMQCEuvlM5dCMa9zBhLD61KQloxB3IINcY8Q9bbuKhCajNGqwlXzYMK+dm\nnu+ZT6Kjjusf0fXtQ3Ri3SgRejVPItaFDszIwZUaLbHO9kVefNkwYhlDs0Hs\nuMLTrZkoOujp8783Czo50BaBHaJ+OtxUNmCk17pLk4/F4UCpjnxDqUyBFxEj\nRgs56yZwEQ2K47JcqN9Llqcxt6m7GJr8rdvldnGqhUKjfIWJrl1cmrUmyIQ0\nM9Rd1DaD4lKl8NVc/FfbZoXvnqLlskBoJqq54jBzdnBr96HUhdAZ5QCwoc3D\n0jGZNu3qN0uc6A7i3ynAX/cpHPgzbXfeaEpIouSrvWS2cGM/gck77IY6iGL4\nqNy+hnyKUZoXhdJh/2py7lEXwsCoRABRV9l4KBUwOLw+dRUG0dV2K4Xu7tvz\ne+9smj1Eu37fbP5pw5RESlvxidofuPVIdZbPq1a8zzzU7nkiBqweOPA0ccTh\n2sSuZCBFPkvNE/qi7v9Vk3px0TomQH2/IguwNKlO40Ph1Wk41RNecodlPx3Z\nFF3i\r\n=7FkC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2f6df990a3e45b1985740da9e55bce17882e69d6","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.f0ae11786.0","@material/rtl":"8.0.0-canary.f0ae11786.0","@material/base":"8.0.0-canary.f0ae11786.0","@material/theme":"8.0.0-canary.f0ae11786.0","@material/animation":"8.0.0-canary.f0ae11786.0","@material/typography":"8.0.0-canary.f0ae11786.0","@material/feature-targeting":"8.0.0-canary.f0ae11786.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.f0ae11786.0_1595555026575_0.5764815434873134","host":"s3://npm-registry-packages"}},"8.0.0-canary.fb4ee66c0.0":{"name":"@material/floating-label","version":"8.0.0-canary.fb4ee66c0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.fb4ee66c0.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"17984ee5e8e2652ddc7e64d4d5ff2c2ee343eda8","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.fb4ee66c0.0.tgz","fileCount":34,"integrity":"sha512-3LjHIa8wuZTwYM0V3XCi+YtOeaiCM7ni47x0G1YBq411mJxp/X7XSilUzgr3LIYXOiuz5jMEfUiFrqKbRUcvow==","signatures":[{"sig":"MEYCIQD/k1k2HCanX8t2nFjv5FhUyAhjJCUbwK1706aOBmIP5QIhAPhP70h3ck8FO1AO6PMoQQS/yZHMpUIDIkwEuZM0oCys","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":211512,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfGkMvCRA9TVsSAnZWagAAVVgP/RS/4tq3SP7Nt4uLjOz/\nWPVBgM1hyldJlRYU25N721dLC894NzUOPd3ABHnQNvwZUzkRnqe/evJbgwvW\nvafLcWpZJfRXZ5vQtk/iObbiySqX2eEDIpmy/0Dvo7bGadlPTnKmtYnYLWwJ\nKXNpqtunj3KxLItLGYaAC4krty/oMfLSNpfHgZiEbHn5cY0qXrjWO5++3UIm\nfIZqYJiRrQSZlkPlNE6NyjsCmR3IBUJx5dfNTgDUgjxO4HF2o4r1KfSd7hhz\nRvVc2IRGmhG3G/QnnzP0PbaQz/qRmhtdxA6M98T6kJBF/BtuRWYinuzQ8IWJ\ndLZaZf/7Ha9SYW3GXa/SF1JCuTkTRHG4Kj6Int9jdYlrgNuT7We84NRL97oN\n++aMkAmQ/XXTN9wVZBuv3nNdSrrxS2LIxcn4LhlZnbJYqhuxzp+1o9dGAeyT\nLzUd2fNjAeXiQymmUdgXUP3PplkFz38ebkUVfJDNGORBL0tFztwtkPYv62LW\n+5JaKRp4VrY9tho/UalJfpYZ77888A3tnVKanZrGhEJXnYW7iB14jFtC5k8Q\n6NU52nlSJR4Cvf63w5qEDNi/vhYwZAXsH59uqSe+KJaFXSNKv9EEmQgSETW2\n6n0aRHp/7a/GHIg9VUeSKMumdcIlxZdZ1ktwzI3DLDgTTrypXTn4yo9BZmkJ\naetb\r\n=kRs3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"38a9d8f8bf46aca600cb4ba84272480ece6c67bb","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.fb4ee66c0.0","@material/rtl":"8.0.0-canary.fb4ee66c0.0","@material/base":"8.0.0-canary.fb4ee66c0.0","@material/theme":"8.0.0-canary.fb4ee66c0.0","@material/animation":"8.0.0-canary.fb4ee66c0.0","@material/typography":"8.0.0-canary.fb4ee66c0.0","@material/feature-targeting":"8.0.0-canary.fb4ee66c0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.fb4ee66c0.0_1595556655574_0.8624217442558824","host":"s3://npm-registry-packages"}},"8.0.0-canary.5511e0aeb.0":{"name":"@material/floating-label","version":"8.0.0-canary.5511e0aeb.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.5511e0aeb.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"aa7a4c2eac8aa8e787927773becf1075eb4f5b03","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.5511e0aeb.0.tgz","fileCount":34,"integrity":"sha512-+/A+HSHc0AyZBG5nhikumS1Zcij5rnZ27uhEliEqzSDaaHmXUx/Zk4hWbc6sR37jD5YxEWhGPfHst552YbjSjA==","signatures":[{"sig":"MEUCIGpp1S06zUnbP0YSgH4UEpP08S2jqdG2ft1Qy5e/sv25AiEA/0skFVDH8btCusTmj+Yso0cWUyNhpOmzDfFV4USEjxQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":211512,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfGxLcCRA9TVsSAnZWagAAcWwP/i0kyC4cgG0JoWKIAX38\ngi3T/R+fkVELVfJF50IZ9yfYnxYvQq3UdFfNZ5QlT+c3IGJ3bUBbiLbLjIlD\nNyS5lD8vWJSjTmBoxJ9M4cY2w4pmqWyiHeSNdx5SQb5eNxZ6bXv4EUJ4rYWU\nTOnrO95KQTqmKApEbYJW6C8rrlyIlR62sI9AlfN3Ax7dXry4Ib+xoiyBinVS\n6pmCtv8rB4CN8zvwyALUx7DLMp/uEe/ZUmN5w4vkbw8kYQJOX9YiFhhrs0dV\nh3OqbipFPQMAc4POwNr/5hqZiOc8/iHOhICErc2d3RqVpcvuHhJoUgOE5gMh\nUvIoctTr2JxhjTU5/vPAO4TV/8uz6RcjCURwMRqvbt5x1gq1NXx5RAdUHBAg\nE4QJfp+DS7urWdLX0gu1IWYN7odGnebQaGwQBHEwDMWH8v+/5CYuESYV+mmV\nxXJmUdlGvlYoywbPEPE3wrmpHKvLvOb0e2NvJfp/1XLeLH3ymg1B1Z5NVOzi\nSZNyCwr/b86tLvkQPwTVTVkElRL88fM6H+tKDAmr+eYfIrgeuwleYPLnVgC4\nMgLg0OqiRyuku0qLGr+w0KIrU0ZGvJL/pxYqVxv1xf+9pfLAwGRT+Xyk1FU/\n14WgDfImu6pA4KT5NAX5IT7ZHg7dbnNMdJen59zIw1aBTj42MRm6NdTJNb+X\nJZwf\r\n=fn7/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"dc830dbf81ef9cb796c66b2d35b70355ca46a37e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.5511e0aeb.0","@material/rtl":"8.0.0-canary.5511e0aeb.0","@material/base":"8.0.0-canary.5511e0aeb.0","@material/theme":"8.0.0-canary.5511e0aeb.0","@material/animation":"8.0.0-canary.5511e0aeb.0","@material/typography":"8.0.0-canary.5511e0aeb.0","@material/feature-targeting":"8.0.0-canary.5511e0aeb.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.5511e0aeb.0_1595609819674_0.15251252938558202","host":"s3://npm-registry-packages"}},"8.0.0-canary.8388a9bf6.0":{"name":"@material/floating-label","version":"8.0.0-canary.8388a9bf6.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.8388a9bf6.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"55350ea1a6e616f89d1635b01f1679e1ccb3ea04","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.8388a9bf6.0.tgz","fileCount":34,"integrity":"sha512-uZLs7v+q1bNHn9q+vVVJVioZ8ZxkRWBYKLgi3eLag0SkVeQDGL5cLJYt0co4vaMB2gMX4i6iK5pXXRYG8iHxnw==","signatures":[{"sig":"MEYCIQDEuPTKtEvIYN5XYhUPZHEVS1SeVKyafSlSIwXMQIWZbgIhAPB4k48KMGTWET98Lc7HirR0TGRoBpdNTSrz4++MJ4lk","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":211512,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfG0DlCRA9TVsSAnZWagAAOPgQAIax3gMjhhdywqPxYgvI\nmcJqZTV8ZQHyTliebjMdVTCDTXZSycZ52FiFLy0i9irkueeSCUapLAJuLpOv\nsc1s76U2nwg16hagOD+ns52lUZWcacc6P8OcYDUD8MuQHU95Y1DxfPBnG298\nifOKCVBM4AHEKc1SVzfb4EzZXrkGqE7jF36VqCfvKeWFh+nrIQYGVkVxeUy/\nqhHJHDSj6QoZHXScdxbcZO+BJtr6Y+VcbAqBwCUHfKJi2vcSutUga2MUpukf\ndDeA+KXkzO7Y8Zf9qich2h6Tmgu3jtq9KiyhMXkpMjUZPxTS/19/lef7X3ri\ncw+3PQ4aPBBsY1A8QTUKZUhA4YGWMUCCPj1kGlzSaeX3jEsV4QOOvqHWITwv\n3IvFDI5/M3RbKGFuxYiusAUeTJK4iOGNYVIkw6Zp9xcaUlbw832RnVyWySLa\nqk0ehjwRtpGcbz8d56F3mETpocp62jOuNzWtqPvNhu2FXnhpDBn+ItVz3DmO\nrfZty4B12fFOehx8UGwc3tF+MEsC4Mw2e2jnQj508Z8JCvGanN5V+Cdnc602\nDUXSbYhGCWSueSyj0B3PKd7UvAFo+g15woa2jwW0CXQfqIKjW9lprNtTM2Qk\nHIk2EoXfvpK+fa2+bKbcSN7Nr333ylsscwLs91PTAd8diTEC/3BdhJdQL8mN\nfBF6\r\n=hxIh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f2188ad8c46b8f947761bceed0fcdfd08019e97f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.8388a9bf6.0","@material/rtl":"8.0.0-canary.8388a9bf6.0","@material/base":"8.0.0-canary.8388a9bf6.0","@material/theme":"8.0.0-canary.8388a9bf6.0","@material/animation":"8.0.0-canary.8388a9bf6.0","@material/typography":"8.0.0-canary.8388a9bf6.0","@material/feature-targeting":"8.0.0-canary.8388a9bf6.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.8388a9bf6.0_1595621604626_0.5450241980186943","host":"s3://npm-registry-packages"}},"8.0.0-canary.ac405eae1.0":{"name":"@material/floating-label","version":"8.0.0-canary.ac405eae1.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.ac405eae1.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6cd108facc78dbc88b81edf7ad0ddb7bb20b4f8a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.ac405eae1.0.tgz","fileCount":34,"integrity":"sha512-L6Y7CE686Vz1mNVu52ylYGeuPOjduNkK+ij6o8//kXsZOxabWeu0DfUbJcQcIi7l5nKH8AYqE4BGFZf91/vP+Q==","signatures":[{"sig":"MEUCIF+gtcMMXS+T4blf/FkqMqEM9NlGsCm57rjqVKMoUQhCAiEA/LVeN+8dQzLRxnzqTRbEA6LfsnUu/L2Yo4oo2XBMHPY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":211512,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfHu2FCRA9TVsSAnZWagAAO+YP/jwcXANtNNZjKJk5j5Fp\nATZrOAGvv0WyEi8RT6Lfm5v7eq9G+ZFnfVuzgc4Zn6OJsWihN0WAvmpf59Lr\nUrz6rBKtig3jRReWpEnDuPQi/gp+dzczYDw/xwFJyFNobXK35oXr6+lo3I6R\nTlfYieyWMcyMFIKeES2Z8+oBoI0syHjxbsYheMceykySZN05mznL2OKxp8dQ\nSDhoMRqlLJU8h30qCffDbTGO5odxnQqPMfIXpwMs7oG7ia2HO3Pxsr/tr6fr\ng81rr8simUdhjuYygqDfCPnPJSSiq8mRydhSuTPEL+wzNZyewlu13CQLKaDH\n3pobucKB+aAeqzuTsojJGqyPf0otiXA9HstjC9qUI1uQfK6vH6RY6CavGAWQ\naBYp3CKjXgGPOZOfH8kPBwl/USLWgkf4VP98GwbzdStT99wSIfJTik9yZXFS\nw+4sFzunO0vYUx+NNJIEeArR9MG2vZgkP0bI/Z/bB2IQFirRq/LbnpEYc8W1\nSd2Up19qwRrHvmanAT3cGoRIkUVmFMPCfAhMWYNSyxE/M64oZFp8pawkHc+r\n1BqK1tftLBMwEh+/mgoUGT/tBp9/1BtfHUGj7vXMPeAwCOOlOo7AqEOi/gOO\n+vzlvrcAahgyLaLoZaysjDCrO+L+ZKho4x7suqsrYGxw/lHZgUkpd5zWjOtt\nyc/e\r\n=ZpQg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c4f229736a36f17b97137adbdd4b59901eeac852","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.ac405eae1.0","@material/rtl":"8.0.0-canary.ac405eae1.0","@material/base":"8.0.0-canary.ac405eae1.0","@material/theme":"8.0.0-canary.ac405eae1.0","@material/animation":"8.0.0-canary.ac405eae1.0","@material/typography":"8.0.0-canary.ac405eae1.0","@material/feature-targeting":"8.0.0-canary.ac405eae1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.ac405eae1.0_1595862405101_0.2425542936684124","host":"s3://npm-registry-packages"}},"8.0.0-canary.75553837c.0":{"name":"@material/floating-label","version":"8.0.0-canary.75553837c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.75553837c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9acd389c5dfd30f4d5642940b77a3df2b07fddcf","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.75553837c.0.tgz","fileCount":34,"integrity":"sha512-McCZDzZuZAAKHjK4urof96N990/Lt9SwjC4IsEG8bmbSzfbOOADHVkanINqW744jsBN0uKlB9CPlidjTDEvTqg==","signatures":[{"sig":"MEQCIC4h0Ryw4iYt0jtX5cIWvugfoOc+SWbDFZd/YpUaZeN/AiB4gKu13SQeUCuZ2m/hIPDMfC9UhGWtLh4o51qD6MT3DA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":211512,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfHu7lCRA9TVsSAnZWagAAXfcP/0EiEV/2FVpXZkORU7xq\nWKiFOHiOiXqf+P0+n2PGDzYbIM45KsdR+osZJcsPuL55dS9D9yKkCmq0nSX7\ns1dPNTHy3RYLzgrJSeLZbfj3q9Ij5a5Ljwwx61Il0MnVmlcMbO4ahEavBdGV\nhDyZhYW67L71C9MamBkCtvd6mypnAko44RHQDIGGqNq6th/pon6r6KAOE8sF\nWmkqZ8BfuNCi3wNOPgMEn0S4o8Jmwy3FRupPKq2+icdQTWvSfwCv5lNafLqz\naPCre56+v2Mvvwv68tE4AikZs5P5mo41l4a342XgyfFZNEYqA/tdvETwxLxf\na90P0F2CkUbV1eEy8DJ8Cg+eaNjHg8PPBewmUFvqAO4YwFx1TNatHj4TjCzT\nSNmkrvE15urOV+WLMBjXyVU8tHJN4z897Ru/LQBrOCcEbexEcyd9z5ak2y+S\nOHaNd57FddAS7IaAnLkNrmMGxlyyPpUWnOGsN+cbZajUaqQrw8aEUPE0h5gL\neqduV9pTt0HWmsINrPi1ic5m93rm637LEwEEPxOWsqaWULE5h9aQuYakbYEz\nnSGD4XcBBgAr5l1+TMbmEsvembnXtfk1mst8w2TZbPBOyePwCjKbiqUjKjVR\nIb6SQGY/SopBPOPjvLWXCDtwQiwfq2QE67DItgsmVToHnz+W3lcD6zzomQD/\nK8Ba\r\n=3Zxx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"18c0e52ebb63979ca614d6df13d96e2c1cc93216","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.75553837c.0","@material/rtl":"8.0.0-canary.75553837c.0","@material/base":"8.0.0-canary.75553837c.0","@material/theme":"8.0.0-canary.75553837c.0","@material/animation":"8.0.0-canary.75553837c.0","@material/typography":"8.0.0-canary.75553837c.0","@material/feature-targeting":"8.0.0-canary.75553837c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.75553837c.0_1595862757058_0.21858849773897093","host":"s3://npm-registry-packages"}},"8.0.0-canary.b96fbfc7a.0":{"name":"@material/floating-label","version":"8.0.0-canary.b96fbfc7a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.b96fbfc7a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e35c05a5efb76a28456ed201c9ab419399e9e726","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.b96fbfc7a.0.tgz","fileCount":34,"integrity":"sha512-GHJ8h1PiG6YandacEcOu2eB4j4nvBg4rW1GvRYRtgNcvdd2CsLAKpr5GbSeBWiadal0GSHT6zAuOkTEi+gWyQw==","signatures":[{"sig":"MEUCICoJq7A4lVfV1lIQmFL8NImVhNauH9TamK5PpJbRcCudAiEAvZgqM3JvXOjhEvWqkSXBL8/EDKQChGT4Lx0fvEUVLnQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":211512,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfHvToCRA9TVsSAnZWagAAcjwP/RnHH+wyoQBDvZm82Lnn\nJOqUhLufp9CFPpkZVHhf0e+3t8f7tOv8HVvNlhLu+BPkjyk8XQbsNQEYL7CA\n/HbMeb4A+0pMa04SGTK32uvNRxC05FxUP2ayff0qxVzKUxqQvm59h8BE5pH2\nTQvez18grNuBPKzsKTRtfcBgRO8FWfVCOrv1PkTRUJ7btUGCR3xXSIyD6F6L\nNHadjyI/ZkJsC1vEO8jpeUbgB0FECpQYPeUdZv3wf0sCVvrxvmmA4u2U+jW+\nOM9MeeB3WWyOpX980b4zGH+5klE7boly+3TQ6Kzg+DQ+TK/QKf2JpgjaatOv\nPihVwMsYAB9yrhqZ4/5cUGjDsqv6YhgqpcEEQV1T1BuEwKWtTWW18WJfzuWe\n5wRSJXieOmNI3QNXkw76POrdU8/WLsk10tTsSyaikrO9/Mx7G1wpQbSvMwmY\nNQjIj47HVmpIcPYcpJBvYg/In8ECZvcNFimcau/Nf47IkHI8pcQNU+oLIBpP\nYwtSWjs5P6+X7ss7c4PzSNtFnUNNB1VEjGw9ou/8vQi7jjijKCIHEcK9/ZYh\nlq5+yfBPYcQJAi698VvdQ5yfKjgkGkdBK4C2gnutFb+6RjctTYaIXPAZZGnR\nFC5YESgEpZaJMjcBmb/kPhAKqHpvvYei5i5YZ8sswpzoks6NHuCVDSLMFpPk\nq09I\r\n=Kyrf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"0e9c13ddacae3f3bc09bd4f168d276110fb5677e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.b96fbfc7a.0","@material/rtl":"8.0.0-canary.b96fbfc7a.0","@material/base":"8.0.0-canary.b96fbfc7a.0","@material/theme":"8.0.0-canary.b96fbfc7a.0","@material/animation":"8.0.0-canary.b96fbfc7a.0","@material/typography":"8.0.0-canary.b96fbfc7a.0","@material/feature-targeting":"8.0.0-canary.b96fbfc7a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.b96fbfc7a.0_1595864295696_0.14462916806875747","host":"s3://npm-registry-packages"}},"8.0.0-canary.61f1a8d85.0":{"name":"@material/floating-label","version":"8.0.0-canary.61f1a8d85.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.61f1a8d85.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"814208acf79048bd2e13aa765915945c930bd55f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.61f1a8d85.0.tgz","fileCount":34,"integrity":"sha512-zPRYoBAl3aXgXSSEFeZV3QPNtiPYOriE0b1tgayWYs2tFRBAlY/Q8ap7N+olmPG6BFtndfYzNNNXWbSkmjzMPQ==","signatures":[{"sig":"MEUCIQDiF18VCRUMYAv3xKyevkMsydFWE39FEkXtmaIBfnKXnAIgQ6+SuIVOIey13WJUwzJ1+lKNOY9JKQkonfgcA8g+aAg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":211512,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfHvcECRA9TVsSAnZWagAAQdcP/jD8po57l1CWn2YUIRIF\nozBeRFg28+mnWdd40vbNYSEJdC7d803UNQyV7qt4K2EaXewY7e0LaHKQkyLn\nYD2WQ0NkCAuTwHUvbFf9l3f72Uyy8R+1OeCLzFNMpv3BsqQezTiFRS4CTu/l\nz9yvwzs0VvlGeCO6uc2puBgNC0dShB0s7pPEklMNuvCu8B7EoV2BrG9z76SH\nocsLl5Ihw9PFHSbHsDA3apCT8HSRCXSG+/guryx39W74mwDpurQf+r1eG7EI\nSuQKAiozezjTEiuYc2lAp4gHUo1H3eJfwgKXjCEqxOO4dg7n6pU85t1TVU6T\nUZaaj0Kokman1tnm4zm2fBP+olm50WGjNBtOHIwkJL8NDDydw/+mPRbJLnQ9\nBhI5QHqLt8a+2oDmJ4V1t0+sRbSjUORGwl3gDxH9WR3kMwH+oM3aJGL5cemO\nsbz58BJnvA7phg20tDT7uW3+UK7xhCU+vkcMiSdHTqGAX+4e0uAmHlNpbFCq\nYHdTwMFu6Tlhs4KM1cSysIy3tBZ7rntawsa0L5v04ffgbeZeNEYQb0nrGbIk\nz+BhH+9EuOmYoAOzTt5MWocR8wzOq9akxzBNVe7t+crQSYfEIPtFRG6K5Kj7\nvB117YSOxcId3TaGcpJOsto4CWKQadl2mzIujHwfZy8GS/VPRjTEU0HEXESC\nHHOM\r\n=DCRh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"71b0bdc987ed1b1b5ad827abc78149cd4efadb89","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.61f1a8d85.0","@material/rtl":"8.0.0-canary.61f1a8d85.0","@material/base":"8.0.0-canary.61f1a8d85.0","@material/theme":"8.0.0-canary.61f1a8d85.0","@material/animation":"8.0.0-canary.61f1a8d85.0","@material/typography":"8.0.0-canary.61f1a8d85.0","@material/feature-targeting":"8.0.0-canary.61f1a8d85.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.61f1a8d85.0_1595864835752_0.43151730077935846","host":"s3://npm-registry-packages"}},"8.0.0-canary.81dc33377.0":{"name":"@material/floating-label","version":"8.0.0-canary.81dc33377.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.81dc33377.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7ef8268626b771c52e0c6de493a884f844a4d19d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.81dc33377.0.tgz","fileCount":34,"integrity":"sha512-nPFnTcgcMpGYDgz3O8yyFEP6J9OYH1AmoA0nWSlHKK9A36l2ZBi6LCVomoFvufx8GklAy5VNYQWyDAtzRt9vBg==","signatures":[{"sig":"MEYCIQDntMjCN4glmOk0XyahvGzWhJ2Ui5yZmTuvLYOFpj0h5QIhAPlbFtpiAyB/+3m5gRzDyflNSHEFRuvG0XZf3Bs7FwsT","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":211512,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfHvnbCRA9TVsSAnZWagAA3bwP/3qbFw1P7jMNxHuZnEOX\nl78y1Y3a7QWyuhg/lNLCGpYGVibBrk/l7jCXYqX9Vzik5AVsV3xR3xj8tOhA\nHaqxcnw2311KK9ObSEyy01Z9T+Pj/KgyZbY6WZbdjLnGhjRIZ6a+KamDg3xm\nD2zhTK5asJ4LLs85mfd/6/zqCKMljBBBMduRZxaw+XrQB0aQp4Y3quLP2leJ\nwE/0yElP57k3j2mOmNVWrjDUrxjS1oQOa64pzdMRfrHDvn3ljCZyCySqY1IG\nQGl9S/nOmF/Di5nlDPlS1yxwtRGIk4zPCY1NNzL/Q7Gy/m4HOkw8MkrMRKkI\n15EqxPfP5QyojJc4DBABTZHC30zp1MbO5RMXViiM0Pgv/gNWt1nNFm7LklQ6\nDeLCKeDQLOeIuyeTN4J2WcAee4AAXDPqWrwiOKaiX1zN+NYL+saHj1bNO6E0\n990eNz2xw3ERusKT0g+HyogEpPRyxdabmbnUJhFAzt1vJ4/IlnB6TtrX5ymZ\nKqt3kqi6gBSJFzCij8uv1+C9i0FQKeNGjvmG5C7VOOv9Al9qA5DEThaNCZIC\n2wAazk6LStYMng3gC/gmADZGbPXDDJQLuGmyaNJFDtNHWFY4ffO49SQdGb1A\nBnklG7R+KOZHJUfSRx6qnWa1O/smLrsaZPc7tRz9gkKejU2L+Bq4KdXmoZRv\n2K0I\r\n=blhe\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"14e4858d309a20ecb69620f07c8f427bda0821ad","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.81dc33377.0","@material/rtl":"8.0.0-canary.81dc33377.0","@material/base":"8.0.0-canary.81dc33377.0","@material/theme":"8.0.0-canary.81dc33377.0","@material/animation":"8.0.0-canary.81dc33377.0","@material/typography":"8.0.0-canary.81dc33377.0","@material/feature-targeting":"8.0.0-canary.81dc33377.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.81dc33377.0_1595865563414_0.8668071525426799","host":"s3://npm-registry-packages"}},"8.0.0-canary.ffd9ede58.0":{"name":"@material/floating-label","version":"8.0.0-canary.ffd9ede58.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.ffd9ede58.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e9822c620ff9d417dc044cfb768d1bf5aa7626d6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.ffd9ede58.0.tgz","fileCount":34,"integrity":"sha512-1/PixUmcgnTf9NoXAPJmMxT0jj5ToAFuLjd1QZiP8vZddxYT6qkUTrAlgbjSwma2PFPmKUbcgOLLAVWmKheV8g==","signatures":[{"sig":"MEQCIGBn/RZ/AMZ0cE1p12z6RwIuxovv3c68ruo6VjCUiE4EAiAM7+IjkXIP/c5j1UFAjkRfgUQ3RpJ4i4yCgJQPZjTnBg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":211512,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfHwGqCRA9TVsSAnZWagAAUZgP/1w39QtYMb1sh25lUZpC\nVAPyglbpyKIrEZWDeWOpWH+WvngBqW6G7rBaJlIMrlR1Ap+sPGcskS/WTfcY\nX0M7f7RgGd4e5W6GZvYlJ4TEqBg8WcjB4/TMwZiKfyLPGTSy/NYdVDdj/fTn\nvM3LvrcM72Yt2AdWxsQFrSSs6lnVRL1kLDLKQ5glh0EngpFw0BPWIfWrVFm8\n0WeulXulKDMSxt3qRmHUXLdyYuiZ9yf7EtGsfz8E4KJ458PNs5Kqjdv61xy8\nBdVFm9EqP+pqKxeCWJjbetaQYppQk7zbW5fU466M6HGGu1kzQgUBVtTr+oTn\nUX8M5lOZOCPTUu3r2Dyo3xCqO4SwY46e7WTYWharE+on/4fYnHlhch1XLsnu\nbCk0KTNRC+MaFcrVQgdC6R7ejBccQbfB8wKiqe1TDhglRhBScRGyv58aXbm6\nLzr1/+L5N4OUkrMgpNQSk/BJ77+5F2UCbHRGWhmoLCME/Wx2SjA+xUZiXfDY\nNKJq0mKHWDBQnYBL0xGekNxKVO3+aYmdGhLvKUqtx23wvXwWuvxa8uTgpXNN\ngYnqj5YI5C3XzACoE7xDzOnyZLQpuK1CpLhi+grTC/fmaMn6NNf1TjMtRA/d\nvjy3QmvNkeJsGfnBx0dOmVb/d9VenNFpD2qBp40h9vatR93YrXE5+7FZ+Mka\nU/J8\r\n=zR99\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8a029ef9963cd4799ffbf7dd03908a696d110f7f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.ffd9ede58.0","@material/rtl":"8.0.0-canary.ffd9ede58.0","@material/base":"8.0.0-canary.ffd9ede58.0","@material/theme":"8.0.0-canary.ffd9ede58.0","@material/animation":"8.0.0-canary.ffd9ede58.0","@material/typography":"8.0.0-canary.ffd9ede58.0","@material/feature-targeting":"8.0.0-canary.ffd9ede58.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.ffd9ede58.0_1595867561594_0.3342269914315563","host":"s3://npm-registry-packages"}},"8.0.0-canary.52dc55acf.0":{"name":"@material/floating-label","version":"8.0.0-canary.52dc55acf.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.52dc55acf.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a0d5ef0ee18a9d6d7bf2ba3e7d614492449f3738","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.52dc55acf.0.tgz","fileCount":34,"integrity":"sha512-PEqYqEA9/keCfGxG2dNdELEOEQFuVOQSw2vDt65nVnzw5RubtSlGuejeuWFYD5V3UVWR0V2PldIRSaXEVq2x1g==","signatures":[{"sig":"MEYCIQDUb1rIoIBbXtpNxf21b79eSaWt4aeRdYDl7QBFTjmPaAIhANWuDOJNwwhcvFmOypPm8fRa0xpzgA1Cg/hVMGg4cOE2","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":211512,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfHwoaCRA9TVsSAnZWagAAt78P/2wpVDfWbQpZ47Qu+eFK\n3YrrT1WAfIPi+rlhfWNAIuQfQviwfNE2tiiNtoL5SCodHMnNyzRicSau5NsD\n+pwUDqZKesDXXUp/pQh+oLVA44FQzdzjGG6qViFYuQvziG2sA+mTSZA/oKgx\nfIJFDlzsf6YYMIPGYcalZmIoQ7ozQQcL7EH3hFclk97uDx+bgqTA/eCFHa95\nLnRFULEBEjCGeTCN7wPU/twzcsRE59o1ir2KJP2GtxdpsDC+JiJUnxcXQDSo\n6ycrgutEyyyoemQ3CGX+J7N8kRZEtwJLQPLbyncivXoBKSlY2wZJCBQWwfls\nRi9+FCagge2hsuBKxiqwYi/pO6gtAhJ8mdVX/efV/MHxelkdAzbWvNTPEO0G\nqZQRB2qOs3QZeLGStIPJ5LFL1JGI6R9oflphBhM0AN1Hrtc8N3p2mOSH/rlB\nJd+ekP947DrEWhS8LirLwVNesq9jnndV0rW83FBf7xpBLvN99qO1nigA8sxO\nwooKknIRDEJ7Bp2Kkv/IGPiSzXrDlXp+GaoH+mBrgxVzBCD9TQjLVW8q3MA+\nVGHhEXJ2MtmyYsDVQNikZ+eGQqU164SRP9Q5fleGeHq9iyAlnSVCGUkwbxr/\n5kUEJf8t4GuUsjWCcL9MS2XUMiFhpZr31qx0fkFxq6XPCPtA5ZSk1HwNbNUN\nLI0c\r\n=x9qO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b5253c9af3b0721aeb0cd096ac48b4c113801757","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.52dc55acf.0","@material/rtl":"8.0.0-canary.52dc55acf.0","@material/base":"8.0.0-canary.52dc55acf.0","@material/theme":"8.0.0-canary.52dc55acf.0","@material/animation":"8.0.0-canary.52dc55acf.0","@material/typography":"8.0.0-canary.52dc55acf.0","@material/feature-targeting":"8.0.0-canary.52dc55acf.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.52dc55acf.0_1595869721832_0.17767265821998302","host":"s3://npm-registry-packages"}},"8.0.0-canary.d4274ff05.0":{"name":"@material/floating-label","version":"8.0.0-canary.d4274ff05.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.d4274ff05.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ca233ce195375ecd8aa91ff886bf4035cb5acfeb","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.d4274ff05.0.tgz","fileCount":34,"integrity":"sha512-FRU+Suvhr3zd4ABQRXlV7UYQZfX0vmKBecsSICCXH59Czhb+6UUwgMf/kCncqny1qUvk65XhyQlbnvErn/k3kQ==","signatures":[{"sig":"MEUCIQCBVFX7TvjgtM+kGIHKYYcgAsAwZhepdOmswE6znreSDwIgXYfLNUnB3ubDsws/6AiXrglYfilGGpjHOIPXJK64wEI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":211512,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfHzAfCRA9TVsSAnZWagAAIAEQAJdtgEDwpk+YyQWPcD3C\nLUanlL8xoYl5JuxBe9l1xxaKflYcZvh4KX4vhc2ykZh/qHaGNFaHjcN36zoY\n5JI+me4fb1ldM9gVuD0AknE4Bq+irCJQET9ovSkPrFR6oXAUPMmUeHQgAiIa\nAROlhT32lvMJ01NhkxEFHhr//ptXCntCaldbmK2RuJlNvVYbC5MWcH40sePV\nO5+xUlcQvnyuI0b4SvxIGQt1NzqKe5LJgiC/utAtxix0/Esim20KJ/8ahgYw\nVXFbKsotcmsN6nb/fHIP7NxEzB8WNl+mXAM7+NgRquHdxJ0JnPDRtmmlWL25\neuuIlUsDAUxHwhzDnCW9Rxf9Bx3NK1d/bGfv2oP8TkZSvKjqYp8dm7HCtBb2\nD3AmuymRLKqAI8vF8cpqoWZpaMG3D3iTuZslykdtGepeMQVU9jKYTjABCNf5\n9CVnSjek6Wm0crjC6+Gw9E4lm0+FWk4mRrzbowttkmetMRSs4GDuqDt8lnC7\nOtb95F9hoh2kYE05MTRQUIOrDWPcz8+F/A8tysJBMo0QQH1ulWIixA5ABMzm\n+h3YAHxsvHhnCyHa2L7Kny1LuSAGakrbeFHaPpQwe2uwfwh0wGzGTHoeHt+0\nftcTSCJOkl2T3WLNrc5afRAWSiHZOVVoeXo4Qu5+9rrkQfsPTEj4lUJJgBzb\nBGo6\r\n=PUIJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b4607e708cfd7069d540b1fd6042775c4599855e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.d4274ff05.0","@material/rtl":"8.0.0-canary.d4274ff05.0","@material/base":"8.0.0-canary.d4274ff05.0","@material/theme":"8.0.0-canary.d4274ff05.0","@material/animation":"8.0.0-canary.d4274ff05.0","@material/typography":"8.0.0-canary.d4274ff05.0","@material/feature-targeting":"8.0.0-canary.d4274ff05.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.d4274ff05.0_1595879455183_0.5636971693645236","host":"s3://npm-registry-packages"}},"8.0.0-canary.b82d0696d.0":{"name":"@material/floating-label","version":"8.0.0-canary.b82d0696d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.b82d0696d.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"97cc82de29bef071f51e5b1b9031b72cf1cd91e3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.b82d0696d.0.tgz","fileCount":34,"integrity":"sha512-WEhmLJ716sT6kEuP9GOhT7yRTPu29wNnRhUKgLgQaxlo3+dGTeICAwr6HQ8DJnZAYjUBWwyxmUqfkjc2UPWw1A==","signatures":[{"sig":"MEYCIQCp7NhnBkwnBrsyYJIInKcxlR0P/434gPRL0DhTmYTnUQIhAKEd8F9jvV5mBKJB0MCaO+aeTWMX9Ow1DlM/hBTvd1z7","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":211512,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfHzHYCRA9TVsSAnZWagAAOSQP+wVvSd2CWkzz/4b3PCYw\nxqKatjDTxreIZNXcszOIbMUBmYLqfLI+QNwd12v8UzH020rZ0XJbP8OsfJc5\nffk2JcNXfHCJQvNoeJZXUMQXZCD2PMlmIwz+0qrjyzNehXHL0mHZlWnyhzB/\n652j0BeAguTvv5FS1p5wq5Gz1ZpiowEkxGCTa7ZqvXeXj3bD4KuGs92rPxJS\nAdYBQ0w0Dvq1TuvicuWR+WGYi0Tj2O4A5yqs+/hkw9A3YEjQx7K6ZZETqG3o\n/Z3LU/Be+euFnX17HKHV6X/nWF2z9zZuhOAtOmHpulDT4qsq3iwk/7atrsfy\nHv1FkN+9Ry3Si+tVXGZz5xrnFtuxN7I/kixXgAuOQYiPOzHPpyfUp1HBLm6r\nZFOBDWvg2nWy95/aLjL1uOR6r/Ks73MjUpNVTeBeYsiU33v78dfMTi/jOk5e\n5JCLaWTJv8UMWglmuw2uZaIbu73aJ4Zih8b1XyFjsmdXBeQNt+AxdqD8gmnt\nVGwv+6RPqbz+qR0D7q8n7nES+mDuEI4NbM69BstkdaS8CiSQ53DRqeWJ4qg0\nfaVZZhSTaOfaab5vtMqXznjU5DtpJdfFLbetIXkUtReSLgdegFvSPjWMEkRp\nIhPEjGpcqOy7loaC82QrjODYJsgs6iutANcpapYw9lxsQbMs1uHar25wYmT5\nvEPd\r\n=fusi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"914e71226c9aee0625b5bd1fff56b887e3c924d7","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.b82d0696d.0","@material/rtl":"8.0.0-canary.b82d0696d.0","@material/base":"8.0.0-canary.b82d0696d.0","@material/theme":"8.0.0-canary.b82d0696d.0","@material/animation":"8.0.0-canary.b82d0696d.0","@material/typography":"8.0.0-canary.b82d0696d.0","@material/feature-targeting":"8.0.0-canary.b82d0696d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.b82d0696d.0_1595879896499_0.9455631990290394","host":"s3://npm-registry-packages"}},"8.0.0-canary.c2852000d.0":{"name":"@material/floating-label","version":"8.0.0-canary.c2852000d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.c2852000d.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b7faf084179b136ef9d0cbff41e62f5988a9a93e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.c2852000d.0.tgz","fileCount":34,"integrity":"sha512-1a77le3+k1nub+vSSGGdvDNyIXZMmhRZQWOHCrG81l0RgB9j6bBZ2AsFmn1c4mcGuSMhoVj88tJMVYZqkYp9mA==","signatures":[{"sig":"MEQCIGoy3n7H8rBr9IvHJunXkYF93gNe4RV8F7/jY/Y2zr1TAiBn/Voq9b+lEE0d2Z63QQ189y0u6A6W72dmwVdidKGH+g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":211512,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfHz/2CRA9TVsSAnZWagAAnC0QAKQQmnPKyuTHm4wSHkxE\nSY2zijGrYJYrdfdiuKmU03uYfxW9QkzvWMwQIx4dodhYStJYvmbsjyUogGn9\nWZZXTewChbm+l2fcTh3HLm3NiR1ay24tCVFw1qeP4Tssd4V+dUMWvUfMfSal\nPenjfNXOo1zeMLTipqk2mR4EvBifSxZoviroHUQJrUC9Yq35DuaRvmoLfIdp\nAP3RrazaIUa573r6V5apXtnvJxXd0koihsLo/NDGzUALHn3hTlHKMhxWhomK\nCMf/TdDzGn9TE9KktHPJ/jJjnJy+tG12qZJ8JO0eRzOvMA+xTICz6PzLZLP6\naYkbpk3RzCZ3RWwoTRZHis6te8AnpyIw93FJ5GtxphvStqy1fXZzwsxQMghl\nXNSp8eP717gcwnS02YTyOopfZkGFD8bBHrA09wJ3rfqBem1PeNVTl3xGKvUi\n3hn7CpPcZ/kd1djzY6/aVA5mLYiKb6klcvTiFDZ+ypTNlc7NFL5guoC7jIMw\nVXMZwqJpOl1zM4XqzwE64zqDLEDjQ1JeC0EZ9FHejAkZ5i7MJmS5S2uoxWuF\n2KEoaj8YuPhd50Bzy3cTwl7598dd0l/eIc0twZgmAgQiAYm44YMnIQscpC8s\nw5fplOmuYTx+y5nxE1PTJphd5xsrunr6+OFUtW3EXsAfq3xwZ4MWsj8suoCL\nuy/M\r\n=chFK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"53080ff99f83ab326fefffad16cd09e449e79f27","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.c2852000d.0","@material/rtl":"8.0.0-canary.c2852000d.0","@material/base":"8.0.0-canary.c2852000d.0","@material/theme":"8.0.0-canary.c2852000d.0","@material/animation":"8.0.0-canary.c2852000d.0","@material/typography":"8.0.0-canary.c2852000d.0","@material/feature-targeting":"8.0.0-canary.c2852000d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.c2852000d.0_1595883509678_0.23206518804220067","host":"s3://npm-registry-packages"}},"8.0.0-canary.f86f83f54.0":{"name":"@material/floating-label","version":"8.0.0-canary.f86f83f54.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.f86f83f54.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1ba7284648894cad27cc28b744ebffcad94266a1","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.f86f83f54.0.tgz","fileCount":34,"integrity":"sha512-c8ZRNcfcB6tYWsWpJ/cNi2PSZPF0DsTswD5pLYu38Pce2cWrJYRZduOzlA4UqA0PLQKca7QuEXQ1muqgYRQtqQ==","signatures":[{"sig":"MEUCIDINFayZpElwHGnnHLZOjymAHYhxcjNyDAv4X9wpuH+XAiEAppuX3a6lw3cMlEspvgmif5myFnZcnobuxyTvggOGwLw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212251,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfH00ICRA9TVsSAnZWagAAL2QP/1zmkArVs+yZqjqFt3b4\nTpsfq4CzTWp9yidg333je3GjI6fbkAgt6Uw1KcbJ04/EljyPGgRAU1pLX5qx\nyp7dzjkDmIhv6CM+cB80GUral8fNzJkpbHa8F+iiXtOdab3575/8DmULnEVF\nZa7klZjs0Q9MgojWGOYvPJBOfb2KJ1F3YJZUxQhE0QFlRgJycj0dxbyrTUD5\naMlWDmhpR0AJwXWOt8fSEi0oF8dtmJoZOiqbJMvLbcZMDIkoUapmy0n/Svci\n6Ld6eCggY4jWtol0VA9tnlWYY2opYf5FdHK0u1qwps6TNOfW2Dks6mgX2fzF\n0aobth+jQRRZIXBZ11yTtCEqk3I3Hs3aFWMICG6P1Xkue+pzh5A2Mx9rs12e\n9FAZcuVWga8nwi/DvYO2kwy69I1SVwC1O+A5LZd6CFZp9kclWQ0YiKoZHEoM\nL57M4DAEkIOk5tCXUlvCqCrrn1S5xwyj3G6V2EvKbaUbGuvfvdPUSKa/TLlr\nWhAEK8jYlaehFvZZ0yPo72Bri4NRNfMkVFVG6whzOzr/6gA2cwN50gd6iEaG\nhpUMZBBlNNopT0qmH/gBGWjRcVivXYwjHnG+/Zn+VN0MvV2YnUzy/1uivr0d\nwAxzwbdZ05xPDu8nkuPbTtFsOqZdebx8prSOi8O9o/0eySVUWMUersFS6Y+x\nG+Ws\r\n=7y0b\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3c8abc334934dd33ace7aec681868717a4e26d0b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.f86f83f54.0","@material/rtl":"8.0.0-canary.f86f83f54.0","@material/base":"8.0.0-canary.f86f83f54.0","@material/theme":"8.0.0-canary.f86f83f54.0","@material/animation":"8.0.0-canary.f86f83f54.0","@material/typography":"8.0.0-canary.f86f83f54.0","@material/feature-targeting":"8.0.0-canary.f86f83f54.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.f86f83f54.0_1595886855739_0.778879270456309","host":"s3://npm-registry-packages"}},"8.0.0-canary.41eb1684c.0":{"name":"@material/floating-label","version":"8.0.0-canary.41eb1684c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.41eb1684c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1b63cf7033deb32048f46efbfa09aac5f234f180","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.41eb1684c.0.tgz","fileCount":34,"integrity":"sha512-EAHO00xczhfdu9AU8VAheFruxQABURHcgXGr34IrjSTlwaryExUXzeknIYSOrB61yRx+Z6j4Tl5DF5WApE5m9w==","signatures":[{"sig":"MEUCIQCKDEckk4koGbz37aZ0naL+2cTXghEYSMDWU/s2oo7nBQIgFg4ik6LdPjbtLvGTu/VXy1M52Ej0BovPcVLvLMrzS0Q=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212251,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfIGVlCRA9TVsSAnZWagAAinwP/3goviVXnrZWzt5+jhGv\nHebQgZPOozFS9dNO/3jjSCtIkjm4ai2g1PUomzAADX26+q32cd28yjQ3zOAU\nhf2YyPUh/HHctYg8w+rY/xOPcN++PyF9NnWkIsGnoEwPkq0u9qChryAEUAzM\nF3zqOOwcisFcOd+CQo9RAOuPgVMOe7LO4mORmbf0G5MRZw02eANR5y0wO8NJ\n+K6Z1JsUcngoA5uglk1F/LbsHFUmITpsN8UnsYzmrlq6vJQXLEtJxzZrs0JN\nKIPK6KjwhG60f+Xd4BZ4tBiSwdaBW3KoGCWD/GNFq5EfanW8DN5EuONADnos\nLoUqep+IBftW5ERKCSHV8f86Et9ZQueL9YFWrkAORTqmf2boUW3MFmm2FfmH\n8urvHOD+v04LwWnM0wTt2BeJKArzwMBzit1EBKAMcF03MijnCOV2BvjwkyAe\nHcqvucxdxrhaY2KYRUN8evh2CPPe7IyUU4ACzK39j81AMAGbrQukZBgLCKFe\nxDoKWzEBIKerFj/k/qTieBFU7xvpp6o5LLd+RnX4QIdD7sGPvG+3C76Xp94f\nzwBSgNF1g8PYw0tCse6zltnOkLGbBQfMJiG/sc15AqRZa9QNqyRU/Y6R/AKl\ngAD7z4I49yR9pFY9NwFxTcRBqEu0/xmeHvThbn0jMSu/aJuYUw7eaN1hxpfc\nSvNp\r\n=2jlb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ca556c545f0bd908ba57eb0e24e99d142cc05b1b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.41eb1684c.0","@material/rtl":"8.0.0-canary.41eb1684c.0","@material/base":"8.0.0-canary.41eb1684c.0","@material/theme":"8.0.0-canary.41eb1684c.0","@material/animation":"8.0.0-canary.41eb1684c.0","@material/typography":"8.0.0-canary.41eb1684c.0","@material/feature-targeting":"8.0.0-canary.41eb1684c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.41eb1684c.0_1595958629404_0.3719815218538711","host":"s3://npm-registry-packages"}},"8.0.0-canary.9e2f6c450.0":{"name":"@material/floating-label","version":"8.0.0-canary.9e2f6c450.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.9e2f6c450.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"8b13979cdf538ece064160e0ff63a36726c774a3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.9e2f6c450.0.tgz","fileCount":34,"integrity":"sha512-zX9gi7PAWFobP/y4vreNWf73HsWhEyHn15jwxTfvMGZm4vBDxw2O4odQ0efyTQL4JjxH0z8ZIYB+vZEp0w2MLA==","signatures":[{"sig":"MEQCIAQJ86xtUP91Kn3NShdvfQhl6BuuezNngGg9EbHh/2YJAiBeoKG2XSPmW9c+e7R0Ppr4o1PbST0osYPSX+ok2g/DOg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212251,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfIKkeCRA9TVsSAnZWagAAQCAP/3DBCXX44aPp+gc85gHY\nqrwTdlv2e/Ism4m7hBXb8icVDrHmQmRmN7ijchktkkd/YunzT5fsrRwOoES9\npJuMsIbaLGoBHJZKXagzmiefOcl1BgKYMYmMlzTzLcMmTZcEuXZwQppvaZMr\n+ZQEWI5aRmx3UEy4VjxDR72tNJGzWWcdZXlp4a8bovQ9ATHK4/gSnYEmqc8U\nT1H3hZVGzrALtvgfqm5c0Ab7n+gKlnYZSj6h+f1uqjinUY2/5ENepCH3eal8\nQWuy2C6ZH3jvigQkSQMGoAQMurSHER2HiWjwkOWqtrHdEd/fc7uFlVdeWS8V\noZ7hYJsRyBIPOhLnlFVPACwdw/mpUYucMLhd9L8S9hXdF1wa6YLrZgWJDTYa\n2wfVuJd2Hmf7t+3dhjEu2vwJcaALhqVhwIpeVpJMXpcxQRpaD0RwN0VQRvU3\nHxrLKKuwrOs/EXY2zaxa8x9jTlCEN65Ljfi0lJgLq7Z8kkuHcOPlgAfBK10i\n+qZTx98Ejw+JOUEIJsKf3pOuvN9QulsKUM4ISaVCOTBeDZURrmy4t0w4nL5p\nH4wLQro4J/awamgbV7leOVUXNstc0SGaspmuxZkNO+Zfx00xGGzobzNucxLa\nayTf/S4toAUdZ4aY5Tu7ncFpDeLV4jH6IbLBKRmiuHdNs8kMY6Q0JqtPLfsD\n/eRK\r\n=+5q1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"20a3870f861650ab884eeffe1d7657aa376a8ee0","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.9e2f6c450.0","@material/rtl":"8.0.0-canary.9e2f6c450.0","@material/base":"8.0.0-canary.9e2f6c450.0","@material/theme":"8.0.0-canary.9e2f6c450.0","@material/animation":"8.0.0-canary.9e2f6c450.0","@material/typography":"8.0.0-canary.9e2f6c450.0","@material/feature-targeting":"8.0.0-canary.9e2f6c450.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.9e2f6c450.0_1595975965768_0.4299187701614062","host":"s3://npm-registry-packages"}},"8.0.0-canary.e6950b55a.0":{"name":"@material/floating-label","version":"8.0.0-canary.e6950b55a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.e6950b55a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d92908c8e8336ddb086da47656b20a44cf7b5a97","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.e6950b55a.0.tgz","fileCount":34,"integrity":"sha512-zkS3Mg+v4i2eGrXf7zC5u5Jzan28x/upKXCobmquewNuMElWhRxd2Tp8HGeJeAk+Jyk0DQ7ABB5MJk5ipF4TVQ==","signatures":[{"sig":"MEUCIQCeZRQew8nawqhFDH1eFA4pDGAF2u8ezcTy+kas0YTdnwIgLesnPQjnSR7ax4qhzDnK7sqEVP1wlQwVJrnKlRutPOA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212251,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfIKwzCRA9TVsSAnZWagAArZQP/29Dwg46Dmxu9PB1oTyS\ntdufYOlm1E6pDBaHPnEfGVYWXO840+q4/NE4iUpXJVMfx/globDjOwOYJ/i9\nrkHcAEkAWFOqOHLw2gFoT38ldW3sYgHXoPoUT+aFOuM5F/GHdtU8thr2Ebno\nT8NABZEwlsUA/AJ8QhluDst0oVJaopqPwrtD5AicuzvYg9+Zt3hncUmrs8F4\nFgrGqGD+4cSy4dQvJQbEz6PnAfJ670pvGbFAR0OtN0uPxgdimRWdp1jJguO2\nJsEGE3jgRlLjm85Hw6gS+o5YlY99IKvByTQHLxMyFXBysIaFi54BnF3YVpK1\nGgpza9Q95kzVd/w53lh3nx+XYdbeRND8LkKjm6MDX8MT5KmEqVH3/gpvXzFg\nEGCH60iBTBAQEPOFJoWy+FhO6/VILMyX7sIC83TjqAjnGUaITl3oBLJLGRxf\nm/NKmNjbeS42gtpzljXJpqpdiB6BFeBR7YIPVN/ay2bIKWv2GeAlE+qdHqhp\nd30yQxuegn3h3IX/taJu7qnMDiYbPhYh7Dpsj5batu0wJQt2FZtnyBmqWCIn\ncZEiw1pmM9H4u982uw+OUN3qE0zIWEy+P+oUlwyMgRqPITy5Ak3JsIxItj8o\niZm8zSzAzRBhC2pvkpOoZdDPUNnkUr7hHKFHgl1WXZM0JFMCGs0bkVdJhbkB\n1IT3\r\n=6WeG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c71461d7d95f313de3fe5609fac67c2302432c36","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.e6950b55a.0","@material/rtl":"8.0.0-canary.e6950b55a.0","@material/base":"8.0.0-canary.e6950b55a.0","@material/theme":"8.0.0-canary.e6950b55a.0","@material/animation":"8.0.0-canary.e6950b55a.0","@material/typography":"8.0.0-canary.e6950b55a.0","@material/feature-targeting":"8.0.0-canary.e6950b55a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.e6950b55a.0_1595976754864_0.4507793065124184","host":"s3://npm-registry-packages"}},"8.0.0-canary.5e51ee38e.0":{"name":"@material/floating-label","version":"8.0.0-canary.5e51ee38e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.5e51ee38e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"695d166eef70777a6dde3d70e2c2ab4edc3605f9","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.5e51ee38e.0.tgz","fileCount":34,"integrity":"sha512-bh+8EJI+197piwCxfKiNM3xukVDtESIKh+HxX6nzIdZ5+xY/bNrV7Wu9r55ehN2zlNSS+SJjYnhsZT8QspNwYg==","signatures":[{"sig":"MEUCIGkANKAhxGjwNfI7EkN3DGynD5OVQcIcwFpgYHRSncjdAiEAgs3pMjRKYtZbcxmevTMgRCUHA8chpO0NhqS+7g348/Q=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212179,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfILG+CRA9TVsSAnZWagAASH8P/A1YNlLSjLN+8LClsWeB\nzZGQa9fv687Ls4SnmJ+R6wn75Agyuv8ep5E4wq+wWOcwYcbQhJeNFb5PuUMn\nN4TOsV8QRTv53pZanL3yyhzRcx0QxR/gJi8yg56mRYn9xDhXCfIM4CNfyL0t\n/vv6n4d3d71HIHFmu5vhlZSUsCtEAfuuAkNGFmbMvgAmtTDT5ueBnDKMA8Bm\nn3q/GLvsfOAw6mGkweCuk3K85OBV4ZC0QfHpO8XcqNeV/Opl9T9gkhFyZmAx\nV9OLk31Pi2Z8hBgyN8vm+2Z6lcaGU9u4oPjDVVr3tz5ogfnX1y0ml8h0sheG\nMl0On6ZhKX1JhkMolzUwvIkh2rq//La1kIXajnXuQcXARqDQmRAFqzqBsoFQ\nx2a89YbL/kYaURVlFq6jvsPLC51YzrJ3mUKErWpZvqQo0M2PGyhoPoacp+3j\nwNqGv74uayhR97SUrrOuOqtwh/YkIh3C51EwCpPLZpP7XqOFHPFo8AOt/OCl\nPeMI/cqedRZXzQEphJ54ZQ/7zyjaFdjrKA10dTX2W1H/V/de9hd9GqHkqNzU\nDH+8qGZz8Fa54ABacFROhrllz/MLziSpwkZG+qSlRou/Be2EUlZWAMc7zqij\nR+ul5ds/vPkluB46+sERzXiJa0zzSHw6e4k7XHwnLYUX47VuTvnmewLR2uxg\nBlai\r\n=+xHX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a7ac25d06cd849dbb8b1620235e913c46f5d7849","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.5e51ee38e.0","@material/rtl":"8.0.0-canary.5e51ee38e.0","@material/base":"8.0.0-canary.5e51ee38e.0","@material/theme":"8.0.0-canary.5e51ee38e.0","@material/animation":"8.0.0-canary.5e51ee38e.0","@material/typography":"8.0.0-canary.5e51ee38e.0","@material/feature-targeting":"8.0.0-canary.5e51ee38e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.5e51ee38e.0_1595978173687_0.34992169101035064","host":"s3://npm-registry-packages"}},"8.0.0-canary.a3898ffcf.0":{"name":"@material/floating-label","version":"8.0.0-canary.a3898ffcf.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.a3898ffcf.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a22a21da8ec5085c6d75cd21da0507c6aff5f77b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.a3898ffcf.0.tgz","fileCount":34,"integrity":"sha512-/TCTRsB8a+R1ELKh9DPl7vX1sJEXp3yqvkdWOTOExxxZDxC/PN/BiTv0MEbsIL1HvGXBUACbEgqwz55ws4yY9g==","signatures":[{"sig":"MEQCIGiUjdNiM3N5XYj5tMUufQoWZGK35g8BwHdyhrTYuYMIAiBzUvtgVKyFS36HjHQLMcwrcTkJGNEPPwDVXperag/Ayw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212179,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfIMSTCRA9TVsSAnZWagAAx84QAKNT4fatYHwH3kEeuSTL\nJeaTpqxeR/OiieRWdAZZEU/y7/hraapNGIHEO2JSNaAi6n3Ed+V4sR/ZfGGP\nSknOkRVeA1elqfXKIJn47/8BtEuepx9ukoTwwaw1AeSK+1w5yJY5/ET5Oe5Q\n4bzV8rQ2y2RWIuoLZg73xYGeDo/0p/TyY8hDL0oWzC62JFVEUbyDxO7hRdeF\nQoAy7N58/o5i++Qm9lhzVL5yqZfT3GC432I8incMnaQBbxv9tcUeNE0qkW8N\nMsOrvVB1mi4saXxJSPaG3N+KDba/G3uJemQgFoV9/yiXMHT4EQiTKu+YO3jJ\naVMJrzsEJ4YTxxcBidHzXc4XC3f1tNi4farHhgYKrxJ5mr4UErIAbDbkrLLO\nhfklX8oUY2NoNt3735LvgHA6wZsYBuP3ubrhthgo8zlCQ4BnGdHF0Ft9Odp+\nlmAQFEPjgoYL7Hlc2nwxh6YNWGqs32C998gfPiM9NG2kaiT5hmG3bAipGAmY\na82OoUClQOi9Hib93E1aj4k8y+cWmEhBCCE5lxTSWhyILYEsCLjeKtzI4oCt\nmbiRmcA+OBYk/RlrqoYfTGEkeijnu9OxEYHPWNfW4WyuercSWjtMfHMNhIHy\nb1I2IMnMYTzmfEU9SGZtYnFtDkEYIMEh9L+gqn1t1gJMrrM3CIuFWs6nDZQJ\nPgxl\r\n=Srt8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"4382580dcbfc3da31d5107a92231aa87122f3f30","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.a3898ffcf.0","@material/rtl":"8.0.0-canary.a3898ffcf.0","@material/base":"8.0.0-canary.a3898ffcf.0","@material/theme":"8.0.0-canary.a3898ffcf.0","@material/animation":"8.0.0-canary.a3898ffcf.0","@material/typography":"8.0.0-canary.a3898ffcf.0","@material/feature-targeting":"8.0.0-canary.a3898ffcf.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.a3898ffcf.0_1595982994694_0.2590577528418363","host":"s3://npm-registry-packages"}},"8.0.0-canary.bc5cc6c96.0":{"name":"@material/floating-label","version":"8.0.0-canary.bc5cc6c96.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.bc5cc6c96.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"690e3630d9beeb693f7f15df3c7794e786958b21","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.bc5cc6c96.0.tgz","fileCount":34,"integrity":"sha512-zUgo0pL6UA5Ae5fPbo3HpU7R70UbjknqzfxZFa0OKLPloBmHoSjpQW6BDymnvTOwnlGd+6b1nm1sSZcc80Kd0w==","signatures":[{"sig":"MEUCIG4BCR6q/tDHBgGoRZWlvTIg8S6KwjMLWqgOtNG1ss+hAiEAlfz0v8yWTgLwkeUzqXhu55pZgsnR7Ck/g8fLZvoi5ec=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":212179,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfIMeTCRA9TVsSAnZWagAAU4IP/jffHsN0KAEsUmvqCBcJ\nyIFpTPjPL7AGcGJZiXHGvK528ZQl4boPvQp0w1TJSK4tca0v+mMVRyQWgjGC\nU6kUZZcg2K2FmZse5zqYJjjDsV8WNI/jtzEIigxDrhU1pNr8iRUDR2xr3/+h\nuh74+ZoA7s7o58+RX1s9QfNSxBgB3+rO89Jha/jgpoIIWubohblffZJ7xmOz\nOhjnpVRfXmlMvuX3oqj/IBggLcETOmkvByf3l2VqKttYHanVAoqk6or/Wpgb\nWalPLgieUvgpd28JGoM75G6JRBfbj42eiskU4sENrqyj7KbZJDnAeBzpt45t\na9XgoB5k/1Sk2b9fcu8TrI6gGw+g9kLExe4Z1xqawL5Uh0/hzyDyi7yfq4dt\nxc5VNihZhffp+q06zt1TZfNE/puAWl2GX04yNsajarrgVHsB4hoo8NQqTwn/\nh9oP4Zjib6dZDS7LfQXe8iXkiW2/Yc0N3YGDnlXok+viLnI7GCQ+0gctxeC4\ndtBdKXKH+xOr/wm3cXXPbWMg2rg8bCJvFmaCL0BgRLt93XMFSIWY8a1sYyiZ\n1OhvggGb3nTNCrpK6zc5IEpgebAgEia5+mFiZh3oaLkEQRTK6Fdv3g+AO52Q\nZhr0Pkhskm55zQKPnvYmjaeZBAaP0z9fZlH9mNPtZS1tuEn0NeyoEU6n+zMz\nNxol\r\n=Cqxz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ef5b32f85df29f3c19f5f6960f0f2e58025012da","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.bc5cc6c96.0","@material/rtl":"8.0.0-canary.bc5cc6c96.0","@material/base":"8.0.0-canary.bc5cc6c96.0","@material/theme":"8.0.0-canary.bc5cc6c96.0","@material/animation":"8.0.0-canary.bc5cc6c96.0","@material/typography":"8.0.0-canary.bc5cc6c96.0","@material/feature-targeting":"8.0.0-canary.bc5cc6c96.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.bc5cc6c96.0_1595983762736_0.5225182542111586","host":"s3://npm-registry-packages"}},"8.0.0-canary.9bdeaf928.0":{"name":"@material/floating-label","version":"8.0.0-canary.9bdeaf928.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.9bdeaf928.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3dd74eac5123dad0dfdcb14c51f615fc0294eed5","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.9bdeaf928.0.tgz","fileCount":34,"integrity":"sha512-VlDxIxks6ymbgEx4e/Bk7ho4Sa1KEir9zbuFMcExsjaYGCMgI6UVqNjYSbUq6Lp1tUDV5Q0XyZeH3pB+wipA1w==","signatures":[{"sig":"MEYCIQDt4da31l1h62DRXZxAZjT5wQMxe7D1814fFje10ScKzAIhAKPfz8Nux9zNM2HbpJ88Ru4Rno3SBKRxs+38ExtKEdtz","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222721,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfIM7yCRA9TVsSAnZWagAAnjgP/if8aIup8b60aE4lYr4h\nXGUnOSFMgZaSkPiNaYIOzsiI3WlOuB5tK9NUbAE8eNnb7UrDIwohK6hwk//6\nHMPCCXxl/8RfenGX8xmy3CdZ0ZepVL26l9xgtvf5TKNiHUwn3czOmVwULybt\nRt0kt7c8pS4ZHGvTbz0lda3L9L4Iz/QsQzr3Fpr6reGQWE5w1MJ970jN4C43\ncgK+VkSdtXP6ygQlcfbNpjKUDCZdg+nS3qMboTAtEDHDefFXtt1SjnfvIgoh\npppkJ7rPy16JDlB6Z0hDf+i6yzXgZjY6yFlbr2NFLL3NXTQeRRAyx1HSqdY7\n4HTqj5UvEXpXIJDN8GNvcECthxt3fizenjTcBTqgBwzCNUG7qemi5gZiLQQJ\nkaCPjJOZlBaz7NsTW202ysKwa+UIfKWzH9P+rY72f/I+Fvx/d7Je55GVOD7O\nEBbjxpLcPJwgCEXaulnD1YtsUw90jOEP/betC5e2D1Gkxs95SOw97Zb8iIYd\nBKzvWT2ma/n/xLizLmRetNuKbrKEmA2cttYRVZda7Tll5VFhaGWifOMdsXF6\no2u/pQeHZk9StxjBCPbRPN2TncJqTFFU7LR1PSvrsJG7oFl3lqCvoKZDfDhA\nO+tCMLGbyU60ZIP8R6c7W9k8Og59WFH03pi61+ATlmX/qLjhjbqhXqSgi0jU\nzPrJ\r\n=U5Rp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"0fd3de7a6a462365d56e724dcf32c2c1890f553c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.9bdeaf928.0","@material/rtl":"8.0.0-canary.9bdeaf928.0","@material/base":"8.0.0-canary.9bdeaf928.0","@material/theme":"8.0.0-canary.9bdeaf928.0","@material/animation":"8.0.0-canary.9bdeaf928.0","@material/typography":"8.0.0-canary.9bdeaf928.0","@material/feature-targeting":"8.0.0-canary.9bdeaf928.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.9bdeaf928.0_1595985649852_0.689411222891305","host":"s3://npm-registry-packages"}},"8.0.0-canary.fde2c1f9d.0":{"name":"@material/floating-label","version":"8.0.0-canary.fde2c1f9d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.fde2c1f9d.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"31638a5a96227a0287804563e02c249d7c3af843","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.fde2c1f9d.0.tgz","fileCount":34,"integrity":"sha512-QxN55i0pkVgvIqnhfd2NUeAh+509oFXJZywaLsM1RwwSiN8sQtTunH0bgBUsTiAjXHiOE/p7BxY1GKJihfr0zg==","signatures":[{"sig":"MEQCIBxvm1KrAIvU7mnEyhNQl1nKx9YooQy0sspRDE9oQ2L7AiAJ+Dk4vddMeKrmw4C8RHNJfRfqY809fLtD6ho3CoGIJw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222649,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfINJNCRA9TVsSAnZWagAAHsIP/0C1t0SSkkhRb9Oqr50K\n+CcNOVghdUXkYD9wS6V3hQaKf1QVNKpBWfZILdpM43m/rxD90Fo4/nJPykCa\nFmGZLwN0VaM/OBbkF6raIYJjgZPJ+u19zf4o6zCQxJTq3Lq/F7rBuPhNWW+y\nv2augN6tuOYVg+gl/tqqx96do5T7lpHimDLpUqhVLwdcHaKcJLjfomNZXJJr\ntjAGl9IJoqBQrj8E7XR2xprTbnPxeeptVPA+KKN3f6kgcro4hg5ib8g6XsUW\nhBxr9HZIQTLop8Zphs8lt2UzVGg5n3sXGAV0k6pJY77YlQNQ+Qvwvin5FNRl\nbmXGFAbektNzgBz3MrUI6KtjiclNW+4sRM7JQs0GL9VUMqjKHo2EdoE2yyOx\n4HXU5pvNcdx6M1WNSP5ReDT0+lJvvvubEBq2VhINrcek2y217VZdnrp/mByu\nizmSqOKDfWWxG7R/UQzkLoPeIySuh/FOeqFMNOP2CKJ8+t/kP1kVTfp6cSqG\nnJEO6lr4u0fgIVbdZDhaDZN4EP0I0F7OMo37FxHc3lj7BJM95/MzJbWL9WV/\nAvFxavYVqjwCmcqQxpaSsnHxW9H/fHwdsDCa6Zl2TFQutRN+pMcHsvw4cB8O\nOhZqCWfnnkP0E8vKjlfqn0W63RS9/yOlyGkO2N1TlDcqsYlciQpJxDWA+B6M\nIRlw\r\n=x0pa\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f2de51610533bd781edd8339c8555a3c03546e3a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.fde2c1f9d.0","@material/rtl":"8.0.0-canary.fde2c1f9d.0","@material/base":"8.0.0-canary.fde2c1f9d.0","@material/theme":"8.0.0-canary.fde2c1f9d.0","@material/animation":"8.0.0-canary.fde2c1f9d.0","@material/typography":"8.0.0-canary.fde2c1f9d.0","@material/feature-targeting":"8.0.0-canary.fde2c1f9d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.fde2c1f9d.0_1595986509016_0.7238348388374811","host":"s3://npm-registry-packages"}},"8.0.0-canary.6b3876d5d.0":{"name":"@material/floating-label","version":"8.0.0-canary.6b3876d5d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.6b3876d5d.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c2f28871e53e7b1f32f4475847738655243f1774","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.6b3876d5d.0.tgz","fileCount":34,"integrity":"sha512-C1vlHJ4kBV3ZBGvDiFZvoSr4UdepyW/qE/Za/DxQvagjK2J2TNJ4uxCvGYt+3DQNkj46QwTdhhmFHuL3IztfVw==","signatures":[{"sig":"MEQCIGSJ1LDMxBzj1RloN5b+O/QV1mFQkc25XQbiRe6gR4GlAiAEMftqa7aHS1G8Iyo0qIX/18qWW+rKeSoQCeH9rwwZJg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222649,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfINMwCRA9TVsSAnZWagAA4m8P/R8eHQwiNrr7iUp9GXX/\nIrKAn0l2+dZwEFU79tTO8UHtnSJ6IDBeQy4jxDimdItwSTlVnpj6LRSiqhe+\nWqPzWbbH3kjfG18DOJIEa1JFpVP0MZs7pN+ZYd1I1zRvzkp881f9UcagnrIy\nrBdoR7yl0KvekBDCvvC4FJ4rEp9dhVCtc5G7i/tOa/2X32fLDYPyWDfELihe\n8A7WtFOQoktRNLB5BEbEsLZPlKiupwvNPmy1hELkJQHGpGuim3DKCMkvR8vu\nD45kZ5cnzWVtYbdlQP1WZMrFtKRp5d7MiVrrBblgpzHv/J7oZWybRWuewWwH\ngclOf5aGKga1LnXthSWglYVXMO3c/uDKECT0DfbSmwxBiOIeX81XD8D6A3on\nNqAtusZxg9H40NngzcziYLAC+g//c0YRSd4wTppRugA2gxLxaWXeZGgodDZd\nL91iHdgDy/tW+NomdJuiatZGXDFKDzAom5OtFyooU0C/3nUrN25ke+8NA/mh\nAKxjAmNx4uy5ScCJ130aFa3dmYAAMpBiftNQpyTPpK6QIqPlTpxFpFqaUK5O\nE1IRyFBs/hsEvICum9TTWMy1R7xZrd6ZG9oNobs4wKTmq5RHaIBN/kwizL4/\nz/oWzfh7OWb+MZpT5gixLpdt/ArIrZnz4Ejh2eSpWfLOvVqjyfb1fat2civf\nC8A2\r\n=B0QR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3559342f661baeb39f2e70f1172040aba07dbc1d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.6b3876d5d.0","@material/rtl":"8.0.0-canary.6b3876d5d.0","@material/base":"8.0.0-canary.6b3876d5d.0","@material/theme":"8.0.0-canary.6b3876d5d.0","@material/animation":"8.0.0-canary.6b3876d5d.0","@material/typography":"8.0.0-canary.6b3876d5d.0","@material/feature-targeting":"8.0.0-canary.6b3876d5d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.6b3876d5d.0_1595986736011_0.028144733656763732","host":"s3://npm-registry-packages"}},"8.0.0-canary.30ce17873.0":{"name":"@material/floating-label","version":"8.0.0-canary.30ce17873.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.30ce17873.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6c6fb1798611fb8c8a8be531f2f9bf7e33757573","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.30ce17873.0.tgz","fileCount":34,"integrity":"sha512-RZdlsKRQK9NCKl57iyQQrkNsHHznKG86WDvjSwnAGdy3IZzI1dZLQ66qnSFwPCc/ylC/hZ3dBrjlcTtLSDrwnQ==","signatures":[{"sig":"MEQCIGRBK/NYUvpJmQ9pJH/66B2wAdNrnajUgbZtyoH/3k2iAiBq8k6EgzKDfxaw+sI6N4fvjO9O6Xw9zOV6f4QDIcB5MQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222649,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfIa6RCRA9TVsSAnZWagAAy7wP+wZ/rdvGD9KoLH49UyND\n39BkBBghnZCVSX9729PaGqgnW3SUZgXnVm1u+E1mO9DRzcXsc02IFFIDxzIu\nP5XBg8Ewqv7qDhv0DsNoptEcs8LsVCLtKujiumkWVw1ACmkJU8wJWL7Xk1Qi\nkATf3EDv6+cSibjQ8cy5HDO3GzWs0tzEX8rW9waYpncqrV5n0rgA5sM9xtQJ\ntQr/e3maA1XzWZzc5WOWcBXp8swmYnoP1UOEhbLSW4QQucQSfzEKMqwSP7M+\nbZefcAZlvDFQi+rdpymOIeKska+rf7N6yfeAMqeG/k6cN4Gff2yE7pDegTXj\nb9u0N0yNbRlw7IhWDPFNNRsGIoOlu9ELZS10ifQOFNCuCVdatcCt6/vdfGMz\nOjIVE7CqoRjswndS3khyNfmp5BCdKVtwOxlFM8AveawriIMS4v1jur2JAr0Q\n4hIerB7iR4rMxT3xg1xZgJ0cHW01LAtxwe/HSZuFMMtAPs5QRUuAIixxCAkU\nTgqjm2W41kfkjis9CvNcRoH1yiba07sYl5+eDxddM3ix23XGhPc+hJB6dLdV\n1c87uy5WUraaqjezKuX14/oYzsAMgLyDiROGWAA4K/rh7DR836yyfMOYBwZL\nDRHbRf1XuYgtTX3bK3kaSNewsTCpPKHSifcA5G2pBc08b4Sg7Zsf/g2I3rso\nKWn1\r\n=i1J4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"88fa0309b6185f09fffdbd61d0c3e16f53c2530d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.30ce17873.0","@material/rtl":"8.0.0-canary.30ce17873.0","@material/base":"8.0.0-canary.30ce17873.0","@material/theme":"8.0.0-canary.30ce17873.0","@material/animation":"8.0.0-canary.30ce17873.0","@material/typography":"8.0.0-canary.30ce17873.0","@material/feature-targeting":"8.0.0-canary.30ce17873.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.30ce17873.0_1596042896958_0.857728182460207","host":"s3://npm-registry-packages"}},"8.0.0-canary.f6bb43bf0.0":{"name":"@material/floating-label","version":"8.0.0-canary.f6bb43bf0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.f6bb43bf0.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9153333d9fc92a1518c721aea3cc0050f8e23d7b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.f6bb43bf0.0.tgz","fileCount":34,"integrity":"sha512-BpbxOrrE8wxAJgShF//2+gl29nqviPD09GHsxRkyqooxMX+9FbMokhJ1BFRsa0mz0bdl4OI2AoGlsRxXxLPYEQ==","signatures":[{"sig":"MEYCIQCfpTsby+lHSQJn9Ch+3A9lxCFmIQLU4oWkfpu92jhfXQIhAP/Ua8NZqV4FQZ3osvmU7oWZ30dk/HOAh1DYyi1Vd7wY","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222649,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfIb8gCRA9TVsSAnZWagAArjIP/RmvehrqxyjqgJ3btOsP\nLOi0WC+KY+bwKPHoJwuT9wjrk/xXXM6gMZr6sERrSHueuZWkSc9kb+yzYJAz\nyETfh4DaxdcINIUcfbmtaxgTBnV19WNXZc+4GiTeV30vdBhl0MAyX8jtRjqi\nVyHAiE0pb0gZu2YD0fYciwInCB1EpkIVSWLhrms3Du6gb0dL0m3z0L7oUVCn\np3KU27mkE7O3ly92WqvnH4ZYvPe52cQJnqyQBXsbXyexp9g5MbPCK1jQKyBF\nS/Tz3LvkEd/tb9zU5zpZzyOEzvYUT+eYazuoocub0x0Ab4vxF+XsBwMIygiE\nE+lJ2rSAJw9217gZiMIZUUoTnWPc8bsX2IQntv0ToZFTHYOPphufZliDdVyl\nfbcw9zTMa65L36i/S34V8crd3r4yFLN7IekaX0iX7MMh9ZMuGNjDFOQX62x5\nHBxd4COwueYChhD9CmzlLp3GtBm4SWoO0XpgWfKoWGSSDLlTo+sXDqusZhvY\nuax/IkgMRfAPwgrXbJn4nltP3xeK1s4VzQAZLRTzwTPhNNbo0NLvqY/vl9UA\nVMvF5CAAQi2FOZ4cO2nhGVdZS3u/EWyx5FqkieCZG1FCW14eFyn8PTQwmOcW\n7xp9C6OZ4rbkVWtxlpFnZrRjCvWJMncxAUWP5W4fjmejwrQT1cLTV3G3MShg\ngCBo\r\n=FvTo\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d511f86ad9ca4460730b732c04ab497fd558d515","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.f6bb43bf0.0","@material/rtl":"8.0.0-canary.f6bb43bf0.0","@material/base":"8.0.0-canary.f6bb43bf0.0","@material/theme":"8.0.0-canary.f6bb43bf0.0","@material/animation":"8.0.0-canary.f6bb43bf0.0","@material/typography":"8.0.0-canary.f6bb43bf0.0","@material/feature-targeting":"8.0.0-canary.f6bb43bf0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.f6bb43bf0.0_1596047136165_0.02857057952387443","host":"s3://npm-registry-packages"}},"8.0.0-canary.6af75f6ab.0":{"name":"@material/floating-label","version":"8.0.0-canary.6af75f6ab.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.6af75f6ab.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"969b7008b6f19074895db7da7a448cba705ecba9","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.6af75f6ab.0.tgz","fileCount":34,"integrity":"sha512-fKZQh6mpued37nJ8Zryw4iNIuqWWU3YX0YKTId4b3K7y8d9uqXQ+9E6368BWhmNYNR8TIAAnc8UpB4m6LUZSrA==","signatures":[{"sig":"MEUCIC5hFuYRRQJhtNZZbeCR5dJijgc22cKSe+BjVP3MDcy+AiEA7zKIXmZq95+WL8XA77awnkhG9I+I92DIfK5pJq5jg5I=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222649,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfIg3cCRA9TVsSAnZWagAA6YMP/0eL4TgrCzIBywl++td2\npXNkTqW9dqUn8/s3oQMJbgaeX+0roUomOZhFQXPThyxFAvftySmUfrh0pTr+\n7LzYlCcK8+aM++MjTm/5qvA36uHSevuoHXhFMHyL4hXihrIVwBQY10BXi3JX\ngT/RWxGSGMOuX14f7nagI8hmIZHRuVL737V3t+OSyAlnernmwIrtBaG+tLpv\nenRDiRKXFs9i35D64fNIXttFSOmurHQbsFtOBTNO5wPgM2/Rh8i2fxWrV383\naxYKqBqp1Ike6c/hnVxsgQ4VRIkXHtZu8kDnGsN415l8XjTeuKc4QC5V29lc\nOstqvTBub8Ric4J6WDUm3XV4BiwRO4p0XJA5UwEyTmCalf+whq2JOzQJm0m/\nLc208CekaV8irNKvrjaAYXsd9AE8clUJOOUV/ina5LP84BvFMtZmRZRELdVr\nQkY9M/kG3BmK66MGiudQJ6MvfOk/oLkgagssINRVADylpxm7zCSY9V33ujfi\nrjRdtFclDE6xcu7PhdTQDUujiLVM4Q0BcIIejHz9WRaoIwWsuXbB9vm8n/fi\nSsQOGJfJv8QfeKEjOyfAd7OY72s7b07N1h+QgKmrlaH1ldX/dOWRbXe1+ReT\nrlgVxhuNRm1JMRiR9iEzSnv769E558WfVB9TbonWJZxexY5jA9mnFqBuZ5cL\nQTaH\r\n=ysQM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"44ee60f895715b8f7c0a7da67637babfd33452cf","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.6af75f6ab.0","@material/rtl":"8.0.0-canary.6af75f6ab.0","@material/base":"8.0.0-canary.6af75f6ab.0","@material/theme":"8.0.0-canary.6af75f6ab.0","@material/animation":"8.0.0-canary.6af75f6ab.0","@material/typography":"8.0.0-canary.6af75f6ab.0","@material/feature-targeting":"8.0.0-canary.6af75f6ab.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.6af75f6ab.0_1596067291707_0.9939011003305886","host":"s3://npm-registry-packages"}},"8.0.0-canary.42d7a65aa.0":{"name":"@material/floating-label","version":"8.0.0-canary.42d7a65aa.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.42d7a65aa.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1b22176dd14ea76a84a6f6d1d686c8f411534e31","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.42d7a65aa.0.tgz","fileCount":34,"integrity":"sha512-azWOPuRLTqPSkz7KS7RjrMYfzjxBLD55ZdZ8dgx6Qp6wNi+zA9uWjJlSoPbZpoz1slt/ruXg3qKn12I04TOohg==","signatures":[{"sig":"MEYCIQCmByJV4bvaxvf9RCAWOfGWCy7nS4npcrXQ78lZO75q4gIhAK6N+H62g7Hv0Spsfbzbf2VZBBRVqyIZYqsFO6qw7cnE","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222649,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfIg/5CRA9TVsSAnZWagAAJpEP/2hT5bUpTaN+ix+406DQ\nM65dP8pPOHU9XJD5NbumacvgDpZC7D32xgSYVNqn8scc8I43vlR54tg4A+M9\nnQlHHnumqFLDSGfa63ALvZ7zeVdAbB3yrho5/EHuCNzksrSQ/KITKW/L7zos\nhRiTiIRPtX7CcHyLuqVV5C8Lm/WuXNMz2d+C2SuP8/vVS3kcn4HeIDeZp1SV\nV5kJ04KlBVuxppWVt9ZCydlO1X6osWD6jPxxh5hRtWl3QAfVfegtLMlB7sfU\nODljp/qStPwFxvK1iRzwq7mMoaBe5tTQQu9kuPa5EeoVOZwg9ylbwIaj1GRX\nazcP/lnKrTlgUFATdQNK7XjGfgrS/k4f6x8gXDwwqehuQJHlNAjFI2P5VxLJ\nJgYtA1HhpmSgmaVxja/GaI6Ww3KoLaIhq/aaHsy4B78hWKrxxF1rDLvsDR5m\n1jzjietRvzf1eFDcfG556tl6eSlC6Nsqzk8qbKBwfEQ6dMeM4lTxeuwmqv3d\n7DZOmPBTr/lSR3LGZvqh345tfctFNjJ+RuZ1lSnLYaL89VDKYc0SKs/p3GG7\nOxrwMvCaH5UjKzeAXhJwNkYRH+QYR/CO4f95DBTeAruqSA8PUmpXDG6oLQj+\nczVqD7qgV3ipovHXV5JbwUmoH+lrBGMcSjCAp9O/h/3iP/nkzhRlHPqJGC/9\nHAUe\r\n=git3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b6645573c0460e7bc8187d1a21ef306b674e1017","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.42d7a65aa.0","@material/rtl":"8.0.0-canary.42d7a65aa.0","@material/base":"8.0.0-canary.42d7a65aa.0","@material/theme":"8.0.0-canary.42d7a65aa.0","@material/animation":"8.0.0-canary.42d7a65aa.0","@material/typography":"8.0.0-canary.42d7a65aa.0","@material/feature-targeting":"8.0.0-canary.42d7a65aa.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.42d7a65aa.0_1596067832556_0.9663853071366841","host":"s3://npm-registry-packages"}},"8.0.0-canary.85abdabb7.0":{"name":"@material/floating-label","version":"8.0.0-canary.85abdabb7.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.85abdabb7.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6a2ca748cae6e2c65d142d090b02490857a809dd","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.85abdabb7.0.tgz","fileCount":34,"integrity":"sha512-ZFkUKzrysnj6/2JKBreu/wRqLBGLTBJ0kvvFOjsxDcEzeXv8QfNi66flb1TvEzDqLOj2mugcuCP/m00g+j1xMA==","signatures":[{"sig":"MEQCIFebYjc+NoM/nuJEYuWgraZZn/HcO9U9zD7ehbTchzomAiBGNLep+tQmzZoHfRj8VaPmSh09uQd+JJ5o9O/K0vv5nw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222649,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfIhEhCRA9TVsSAnZWagAAN9cP/REDL9FMFWGIVhZwiMTK\n2o8p0aXwTCQOQW3bkhBcLvjl4oNn33Rfyc8QtrnvOy4UzD1VP5vK2DLVbE4H\nJaQiJVkYXxc3CyVyS1BuZY7216MUXOqKwFYPlgQyn+9GEi4iq2DXNBdxQjvC\nUlcG2RHzhvB1YuX2uvw4K21oGlcXu7bVsyDHFinD8E2bFyYPln7bzbWqemrB\nMOpiiaqvLSCzPeP5t3x0ysXV9XC1MfArbUHfRwZaDAT7rq+eSV3DIZUikKR3\nCZEi0ssIG6cAPUXfYQKmJHofdo7yqEjOkF/jq0s8O3frt8AfZwaweK4aHLLC\nvHUuy1uzhZdq8xLrFbPlG61K2nv2DxmJlGRpWG7z6vJvcu5ckcLxewdH2Xnt\n5MfWnqe/QhYGSwGRfOruRffL2aHVFPJyu4q2ASmQKzGfINtCXy8UNta784DF\ny0F0Q0sl1OgPXTk5s8xE5OgxPIw0aIcLlkJQN4pVDu8u7Sv0OD4d/T4HuGen\nmb2R5qTwUNb6psnUJdlQECaC67fdV9HgL4PAmbCgdDTP/fm1cCqefrJXK0AN\nyYACwYst3spwTCgkvc5Nlgp8OD0h8kWsVLSND9Px4T637yKRxLHfYA09zT3W\nCOg+EjFhVWcwnvro2KBiPQyY4/iKG1WQYEZSlaOBnYiFbRpQgCBU3KkHGsJE\nHp+2\r\n=3ma/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"4686052ff6039efa085c0d360393374ff4b2143c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.85abdabb7.0","@material/rtl":"8.0.0-canary.85abdabb7.0","@material/base":"8.0.0-canary.85abdabb7.0","@material/theme":"8.0.0-canary.85abdabb7.0","@material/animation":"8.0.0-canary.85abdabb7.0","@material/typography":"8.0.0-canary.85abdabb7.0","@material/feature-targeting":"8.0.0-canary.85abdabb7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.85abdabb7.0_1596068128908_0.7271876396051824","host":"s3://npm-registry-packages"}},"8.0.0-canary.49fb20ca3.0":{"name":"@material/floating-label","version":"8.0.0-canary.49fb20ca3.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.49fb20ca3.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a5f497804af55a6a9330a84b76c3037941eacba7","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.49fb20ca3.0.tgz","fileCount":34,"integrity":"sha512-x/jfrPaahnbhR9F2JZsuzgj/2Jh3o+jj7ym13Qfy9tm6FduXAuhcF5wSuYECtHLylV6KbjlicbcX8GTxJp33+A==","signatures":[{"sig":"MEUCIANRag5RZPVTIwHvXMfLCMzHZ8wP12etWECcAqBdRt7RAiEAqfkClU8cLTC/EuqPtv2ynk6IBC4Hmb3B0oSrZoWuttU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222649,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfIiITCRA9TVsSAnZWagAA13sQAI2opsMFJ3cWuX9XUuQ8\nd96aJK9ZH5cj8SCV2C2f7Ca+MDn+HsG11jI7LMQv24ezv60OwQv6CaPcBj59\n8yim80W+LQvlfxmjcFUTaeOK+V13tAjv/D/ys5zeuDKym6mNQ5ksnCrj+II4\nknamwESZjc9huxr57KX/LnMWdYz63XdaSPPhrbjZg2AwU4cf4PyMNiSBTuoG\nFQ+7K/aOHG9cmeTPpRJLuZ9ehcmgzrR/ED0g0H9i0amhQtJrZ2CiQOlHCpl7\n/fsDTFKsJXvnborRJzyk/p0d+FKk8ZtoR08+uRlMtS5B2LTlEp1mhJHbS1sY\nmOZGbBjVmlRADkovHoSw4ca8N7Z4ubh5iOS3l4bJlVDkB18pjPOpOWloClV3\nSYKiqY8zxpleZswoNwyZ4mDJ3sEXuq8HpQ1QAkCIpth0bM3P0cMB4G0TsgL9\nIk3d84h2mT5PLXANBcsB4Bf1/KraoaA8kgde2YNWouKA+SA4GecD7RgV73GH\nTYh+0bwgBhINlWWSgt1XZi8whgbk0FPyZhegsaebdqXgZ03lIHLetkZDL63O\nV4r/K8FI9Z6D/ZuhaqlZgvOv1yaScELmwWpVBjVQQPluKznENsmk9+c7K20W\n+vA5RS4otsBngcA7do8QX1evRTtfTbt5wzvDPgIJjqP4BMydhx/TCXCRnpic\nhPK6\r\n=rRG4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"9c66ae7fdf6570d9cf334102b5004c5a04b628fa","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.21.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.21.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.49fb20ca3.0","@material/rtl":"8.0.0-canary.49fb20ca3.0","@material/base":"8.0.0-canary.49fb20ca3.0","@material/theme":"8.0.0-canary.49fb20ca3.0","@material/animation":"8.0.0-canary.49fb20ca3.0","@material/typography":"8.0.0-canary.49fb20ca3.0","@material/feature-targeting":"8.0.0-canary.49fb20ca3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.49fb20ca3.0_1596072467241_0.378522436146032","host":"s3://npm-registry-packages"}},"8.0.0-canary.962d4abbb.0":{"name":"@material/floating-label","version":"8.0.0-canary.962d4abbb.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.962d4abbb.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"8e288151632981956db6f5b855284a3a8d0d17eb","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.962d4abbb.0.tgz","fileCount":34,"integrity":"sha512-MNaRiB510lN4xafLV06dIXDkBA0vxmkZBcftIP7tecvb1J0P4FkZOGBQHFdOPOCVwJOt/HTU7YVx8igCCYtVTw==","signatures":[{"sig":"MEQCIDXuu7QPSv19bz1QpBO/RAnIWElej7PCkqxXKC93Qy2dAiAFsR2x+GzoWT+krD9MPvH5Zbjop+BXYzOSAasxY7bo1Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222649,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfIvDuCRA9TVsSAnZWagAAR9YP/ReOVJ+3vNOzjyT+5svE\nU+ZJAVXQezoiWnHPoboOh2UbCkJqe6rjjg3IkIZfcFtYzQkod2YZSl4U5ELf\nqwZXelGkyueFZUzXY2w0Mz5aqspMoGUUWkbvv6Emgnb67u+ELKWeBuoI6Cye\n74j5LtNajICGBaa2ALnVSM6gvOaVJ5CZ6VlU5Msg+faa02IcdWhzUbW40avl\nze6xbxco2i4ACa5eZOwxkK3Q27/GCRowudWatsk4bqoTW6Pz3bYJV2BMIUfo\n//McpwjjImZ1Ux+6x/9gh0/lk0G89pIojXnh3YMf/9nAO1D+gGMCKS2qyh1M\nmnBgVyxlUBmfFgBy0rSKAJtkIvyXjqAh6kDE2EQSzePZt/AujJtCCJatPBWU\nloXTIE1cim5kX6OYiWWdjVNo4gdP0EQCOQp4i7ds3iDqScCkAo+BV80mVa6+\nsLmFJ6b3utX4PdkLomAnfukGvuOevZfB+LD/UgjyHAcGfdJnM4/JQu9K7GeL\ncoXs3+Ecz9wR+FjbzaqBnClSq+nPNABf6Tp7YB+vE1LF3NvrDSF5WGwZopTg\nHcvDV2wJEsV32qhDbhpAl+d/iDH/jS6z1h0WAGMP/vTTbGzPPlX78/pZynYH\n8B5emfKa9KQUdrOEhDktDsrQ56Zj0p93FPaaT0HE3CF4VWBfCj4mkhSKfERI\nFT4z\r\n=H/Y0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d373d2867180ff5f61fc4d7afb88a8825cb5cc9b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.962d4abbb.0","@material/rtl":"8.0.0-canary.962d4abbb.0","@material/base":"8.0.0-canary.962d4abbb.0","@material/theme":"8.0.0-canary.962d4abbb.0","@material/animation":"8.0.0-canary.962d4abbb.0","@material/typography":"8.0.0-canary.962d4abbb.0","@material/feature-targeting":"8.0.0-canary.962d4abbb.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.962d4abbb.0_1596125422142_0.769607374704963","host":"s3://npm-registry-packages"}},"8.0.0-canary.2fcee40cb.0":{"name":"@material/floating-label","version":"8.0.0-canary.2fcee40cb.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.2fcee40cb.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"63a98f41ad94e31198b330b15d12eaa84d19e74e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.2fcee40cb.0.tgz","fileCount":34,"integrity":"sha512-aAm6gGh44QjmVoEEElHYCXN9HNsijk1Prv2D6sYvRsCZ15siQHtYBKzYwDruqrIMYem9K3mD0bYYh/BRMLeeug==","signatures":[{"sig":"MEUCIGVR0EPgI8bjtzf9HQCUMLIznRphQ86Vdo1mnQ8/X99cAiEAwqS36/tHcQeL2gSu6fJHnBhHXIrkaHKewnrDIVtu/mE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222649,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfIwGlCRA9TVsSAnZWagAA6hMP/2ranXv3oKM9NpfstVNj\nC8UhIo8t3hqhfQMrq8EksELa6A2K9Izq1bjjLi48flnz1ccfdxtHeZY5VTV4\nd4xJ3MYCXWhrhlzMGghW2Zay2/BPzy4f4l87F3a4psLM6zubC2ZVFLpzBW/p\nv9j5xxse+5hlgJS7d8JCeLwOdAP+KXxZ49bT31jZvNseACKg4m5W8hIrC2m5\nRm0ts3hfNkrNo0kYkKf0gL5SNX1uWzDUTaewHay5pgcGKq3RqhpIg+LDctfT\nypAyFJ6HuRXPz2QNaySKEeTi23SIv4gKb3+ZNM3QerTgS1x3LfmrUilyjYGU\n1fNrRdi1zi1ceodwJ9fkZJvKu5K/eHO62G1fni9ahYDBcyTyqn/CDlDtu9jS\nVnXX9t1NzNz8pVY7MkAbcjFtj7lPJi1mDAhsPeom0Ys4JjehwJRnQLQ5fv8L\nNQ8+8Qdsr8ahDh/TxLK0hLinHDDU7jPOr57zMW9rdSyNf95pX8i7zIThlRnx\nhyCEHM2dL0XOu5xoVIfQtUD4Od8zoPmjOqGb5a/Xlxsxm6OhCHBcLT5GeOHE\nWyheBaopA7IN/u/s1X6I2qLv4em0oijeM9OuqMsNvCKL59sD0n6sPI9vo5hS\n8iAcBdxXN/Ox9fWOiai/Zc6ZOg2KA76ydSMBPyXzSov6nwwk/6/zvDGYnYAb\n3Y2m\r\n=AnXQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f769a8a60e9cefb9e0e6306a96914e8e4b4c0c90","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.2fcee40cb.0","@material/rtl":"8.0.0-canary.2fcee40cb.0","@material/base":"8.0.0-canary.2fcee40cb.0","@material/theme":"8.0.0-canary.2fcee40cb.0","@material/animation":"8.0.0-canary.2fcee40cb.0","@material/typography":"8.0.0-canary.2fcee40cb.0","@material/feature-targeting":"8.0.0-canary.2fcee40cb.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.2fcee40cb.0_1596129700567_0.341178417159556","host":"s3://npm-registry-packages"}},"8.0.0-canary.bd5987f5a.0":{"name":"@material/floating-label","version":"8.0.0-canary.bd5987f5a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.bd5987f5a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e1c0f3337c792a27c682f1135ad6ca36c78b4184","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.bd5987f5a.0.tgz","fileCount":34,"integrity":"sha512-cFCb8EGEv0J6fmK6xbEtRK3me63yHdFgdXFLjXzZeuJcOiUYzN0OQ4TD9Af//XaW7Fi0zb2nrhmgJw4t1C7Bug==","signatures":[{"sig":"MEYCIQD7fEebjGbVBesf69snGE0JK/J4ywsHhy1OM1pweIjKxAIhAJZzw0vbdRkUAtn2MsNItKYWGfrydExNw1e80plMc2Jp","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222649,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfIwdrCRA9TVsSAnZWagAAHUoP/3yRZD/8A8X2s1om40C9\nb1yGEgT3q3lv8aXZLmrqVz+he6kJF4ksBofnF7PTU3EP6wgsyEI4Q2hcOgID\nAXCmjDvj6SUyKFuHblYtHJlhX/f7Mz1viGjBgyxSJUCf+FCO1T6qMaceYvk2\nVYdI7ulj8kuQq5E2aozPhuCdApdyVBiWtasoAMAD5VkdF9N7ehYe/P1njg5l\nWoyk6AoSDzAd9JoLe+VepO7qqCmR3wVRJOtCX3gjL/FYczm5efUDA1OYGSh9\nA7M7K1grcThvUcglBYcLjwfXHk0cBMg0vVSsawwVMb5/+jNWd/TtQrwqjKL9\nInfUnEiyPiCBvlvs5WdY5DYdmQ0/1MBnTmHoqhHpXywFapSGk5MbXw7t2S9n\nvhfhNHlc1J1sZVPT7UCff4TWJF+nnHGaLljZTV0P/VXWj1CrQcJ4Px2Hv2Cs\nhqXOCjFv2OULCWweSsROy3+phBve906aQYtvzcJCtJz2l4GehmdIwD1zjv5M\n94MmMwfDPUqd2ukSEtosC31+JZmkAOXxybnU7zPfW6WJEWS8o3AHWbR3JpcU\nV0axKQd5Ugd5zJ2422PP7hiCmoBf6AsTy3IeyyiNSQ7D2jhC68WNjMizADTx\nGAkS3pTRaeE0RF5Zq5iNE4N/FrdzZcvEYm0f5sRbkX3C+VEkkx4b8GGNMp4Z\nHBcz\r\n=OGNa\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7825c698a6686a8ea967272c1f150363b3845900","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.bd5987f5a.0","@material/rtl":"8.0.0-canary.bd5987f5a.0","@material/base":"8.0.0-canary.bd5987f5a.0","@material/theme":"8.0.0-canary.bd5987f5a.0","@material/animation":"8.0.0-canary.bd5987f5a.0","@material/typography":"8.0.0-canary.bd5987f5a.0","@material/feature-targeting":"8.0.0-canary.bd5987f5a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.bd5987f5a.0_1596131178776_0.3331900201419198","host":"s3://npm-registry-packages"}},"8.0.0-canary.005e86a9b.0":{"name":"@material/floating-label","version":"8.0.0-canary.005e86a9b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.005e86a9b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6a5c6cadbcd3fc065b2ee723b67aed7bb3b05d84","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.005e86a9b.0.tgz","fileCount":34,"integrity":"sha512-sZdoBNQBb1Fk38hcudWVUu7J0z7K09g0mCamM+tfDbvY37ZvvkaQkjE7guwX+ctlDOh7PpkF2Iu975BU2B7osA==","signatures":[{"sig":"MEUCIEDDVNkqZsKsyai6jc2wpnSl+S2fjTgAL/4F7cWpXdNEAiEAqG62UgDDAtIKYa2fOJ2DB/S1cB6L7+IVWwzwUOebA10=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222649,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfIwqlCRA9TVsSAnZWagAA9voP/1VZiDQCg+Ixrv+EYDib\nUVAY7AZd6ZPaCWB9BT9k/ig8E7r9FHrR4cPQtuvNMgeV9sp1vHMzFJJSotAL\nzU4pB3RSOwEESFApUMHOlUk2b7pb8DQwbZr4Nd2V6whthN7rhNEpNvu8LPmF\nZ7PyncQjOaK8IEjvCeqqKUJ8BtkVz5Xw3f/qXAOcoPCukX6pWW0VutDmdgKv\n1E0In60q1iKFJGhW++yeGfI7oy38PFVe2eofpHWJGbBkRFKbupIe+rqv4TSX\n87P8HWf58cCFxsulv8qDfcGgXRuk5vnHHBpnt/CHhX4OZz5J2n4kBixruKRT\ntgN5oPIDuXXxJtyaAxK5U2PvdCP2fyxge66gtEq3zwUWEJspq2+9pMgeAyE/\nA6uEsf7jMzrSfPawwPJgUpQNeMQBPWJyW3s4cImoD9CWJmNzMg7iUCgao8ph\nGPnG+ptcb9L8AmFS92MC5X2/wpnSokYTAtwebLS6jW0JOox/3umP2Y+XQtLd\nIzqfmSP7a2TZalcFHgjOHZc6emUjp0YNWbQLE26e4pIX5svdVE/adO3/vVI6\n6jnzNGsdQnAK3o0pyhRex7ShFGzBMBtfDc1JnocaWeMEI8gCZTFnGBwBVfDy\nevJSc8LaEwHs3LpjoFppLyfGZlyoanGJSdcd3Vw6B2wtz4NgN4S7lKA634RJ\nGTyn\r\n=omKd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1c429f861ddbb35ec8588ea55cb1845296ab0218","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.005e86a9b.0","@material/rtl":"8.0.0-canary.005e86a9b.0","@material/base":"8.0.0-canary.005e86a9b.0","@material/theme":"8.0.0-canary.005e86a9b.0","@material/animation":"8.0.0-canary.005e86a9b.0","@material/typography":"8.0.0-canary.005e86a9b.0","@material/feature-targeting":"8.0.0-canary.005e86a9b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.005e86a9b.0_1596132005399_0.3851180574608506","host":"s3://npm-registry-packages"}},"8.0.0-canary.e309c7c68.0":{"name":"@material/floating-label","version":"8.0.0-canary.e309c7c68.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.e309c7c68.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"38b4f1fbddfde88a690799a62ec45004eee591bb","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.e309c7c68.0.tgz","fileCount":34,"integrity":"sha512-4v7yGm3Q6b5UuC2J7tJti9ZHp4b/kDAuJKGDoTCVB3Tm3d9HtP3qwYgc8iTE6In3GKt4cIguVMdV8LEY258h+A==","signatures":[{"sig":"MEQCIBiKWFe9zva9YjzD0sI2XPDBHxZ/8hZhU7u3kJdFSCQxAiB0hMLIYHKTJ4o+z5PSAl+FeIXleBhuSN1jnEeymnEgxg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222649,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfIwzJCRA9TVsSAnZWagAAy50QAJqBUhfxbBHSihY9R7oD\nuMHnTLJQ2lbLLZg+7sdeJf1EpKChUWv1acGKg9yuVfsAUKlmchrEimgH7bdU\n5uE3TjO/BuqDF3hErQ8vQn117bLs9+jdoLTgMjs3aHnH9MS0eKtDrsw91YnL\nJFz8g8oNy0+7Lcr77XnQ+OyoeEEG6XXsybZEUwrHoBh/WWnZ/xwo074yK6fd\nx+Mqrh1tbICr7vZY80uw6tsvi2VSCL/joF4MDRqfFvHdZzlK9KSQozTnqL6D\nTNyAOils+RYDZtWuKvOKADKg+xjb3KjBI3FRZCmdZRjaAKnpGv567bG0kW7W\nYRj64zZ9tScm5KYL65W03hpKDWiNZXy5fZGe4A1Yb1cXVBaGgpQwVz1HzyBa\noz0KMO1q+hlR/lXC6Rg0g8n/BblgyUCzQHbnhNf+9Hguaq9PdOkDOzkP75W5\nS+vQaYjAQ3DWu72hMZfRBxPVicYi3MK/ddYhzenQ3HYGbKbB6+JngPlYKCHj\nZSluqY1D4n9RogHVkAnanwnxF5K4Jh7Ko+sYA9MSjbGd4oSyIOXQCBJLcHYp\nOpwVS0p4gBizc1OxcmSS7WJTGK+s8yOmwuAZkDbDP69RF3vHtaupntH2Fa8L\nNVL6+JETxH+3rNmReTLVANROjzriXV9lXDKvn3jT5vTlLCsMe6QWmNwYBKGd\nv5Dv\r\n=zLXm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3ea460933f859061781daca3ae127802388c28bb","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.e309c7c68.0","@material/rtl":"8.0.0-canary.e309c7c68.0","@material/base":"8.0.0-canary.e309c7c68.0","@material/theme":"8.0.0-canary.e309c7c68.0","@material/animation":"8.0.0-canary.e309c7c68.0","@material/typography":"8.0.0-canary.e309c7c68.0","@material/feature-targeting":"8.0.0-canary.e309c7c68.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.e309c7c68.0_1596132553338_0.3832671849864562","host":"s3://npm-registry-packages"}},"8.0.0-canary.935a51cc0.0":{"name":"@material/floating-label","version":"8.0.0-canary.935a51cc0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.935a51cc0.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"17acd4f8d21416e98f82fa3faf7f0f6232b21eb6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.935a51cc0.0.tgz","fileCount":34,"integrity":"sha512-dauWYLFg2iKmRLpMFGNA+eFPnZW8XZ8GpmSxPrU8Ea5xzcZQQBX/3BzOj/CpgMZNbQCnQNRDe5TW5DnlxKsrSQ==","signatures":[{"sig":"MEUCIF8bGPW6ywsHjYjzehIeZ9NdFyucLE3I1oSrPpCcP/gZAiEA2WXMa/0iPQSrA8D3LTjXk8iYD9r3BfqJbso8bXsdBew=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222649,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfIw9yCRA9TVsSAnZWagAArQoP/23A1Ea0XCsLqJd04Xg6\n1HV63Q/TyELnnrPd9Nbj9FHzby4pEbMpkoNBHuXF8MQOgOpb4FnaKIn+plyy\n6l6AkU7FhMCGzQLtIhtFWDXw9yGm60PT4JayLyiyPycOi+cLG74Hn5IWSAw+\nWViMZ68wSfI43v76ozhNNZnMOXYyGEF3BzY1EbAuYhhncysN8/UT88VMq6JI\nWydIz1hOctKhnR1xUDB6IFpvCho7YUZrUh2hHFBgsb2EUhy3MbV0Dc+b5n/y\n45dFjxbTgTCu+bfH7VwLxIP4u59U4EL8138rfjPRISkM5eKP8+TxB0yrf3F5\nboQaJuW4YCx4juYN8t8Ihx0N9Y+2Rnzpuwo8YWj3++idlhD0rSanVrUKh+V2\nWplz4eM1lSWv0DVQ/AbnEi2ipzEqtt07BMK/P9iWxrPSaMZpnrKrJXKUPCq0\nqXpbAWDEomOfXb97JcNenlZMKVj1JUUahDnPHijk1X0Lso4qNSJ94mXAZW+p\n96Z8uNgeRYm86BtCJeVcEj4UesgVIBywxyqS/G+lr08nEzpdqBZuYTiS9Y9r\nMVWIsVErpuPdWTWeJ/s9ypBGuQ2xTMADBkLXDATaxzCzl1JZFLQeyUifyOsC\nYUh4FWDjZegv8u8GyOQlveJZCAHpRMy2fdYyAXWMLjZ8jZHR0hiD+oXRMStr\n8WxH\r\n=oz4U\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"79622070723d97d5c4052839435f92189e8fb6e6","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.935a51cc0.0","@material/rtl":"8.0.0-canary.935a51cc0.0","@material/base":"8.0.0-canary.935a51cc0.0","@material/theme":"8.0.0-canary.935a51cc0.0","@material/animation":"8.0.0-canary.935a51cc0.0","@material/typography":"8.0.0-canary.935a51cc0.0","@material/feature-targeting":"8.0.0-canary.935a51cc0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.935a51cc0.0_1596133234043_0.516500022528247","host":"s3://npm-registry-packages"}},"8.0.0-canary.74839da7b.0":{"name":"@material/floating-label","version":"8.0.0-canary.74839da7b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.74839da7b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ded1a1f1a6c52952f2aaa1302718c294d09be164","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.74839da7b.0.tgz","fileCount":34,"integrity":"sha512-gkWfIp1E9WTO0zgr7yJVPERBf/AqvcrFVKjEabKE3IQI9XfpCvRLlxNqjJLiYP1wLYhSFEsXFdvN0qSfs0yyow==","signatures":[{"sig":"MEUCIGjnnuMS2KA0qoqFBHXyXnNHaG5Bijk1eNcGvApZ+2DqAiEAi0EdpzOkuhmGraNr47grt+6tBshtR+bdLOkSqSMaKvQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222649,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfIxIFCRA9TVsSAnZWagAACygQAIHEEWOORfY6sWjLxP8J\nGdu5wXXfGpAVLzToLT972DYRVB7GpLhUjOuHGaIqkLh0Jh9oq38jYA3rcOCr\n6y4a4yb3l/cAG9/Pqv+ZgFha/wBGlTMAqfQlb/Yl227olP4vR099X1uBZSqO\niDAg5Hj2fEhuOvjG4pDrq78IpseF9d5TcKJwHN2XxQoygoTfdPvZMVCicTvK\nkzQhQqcJl0cadUiKpnXrks9uJivNGDBotPRG7Eic/MxiLtWHTrw+EukzYcMf\n+ahsrtlQO9X+L2Pj2BkNdDiIBgGZIJ8iyIPYCL4ZXYwgDfCILp9EYVDUOXoH\nbX1K8VMFz5aSggzsGmykZBgHrFc9zkCTF3kPC+ge6MZfqrjEqmv29op4/3uO\nQhvHvTliWJ7r5g3jS+IqdWx5knxfyT6733CvKdR9Lymb9FaNQH4KWSxKEemc\nzx5RITI6nU2gBa6CCPEUBQecH9e2EAOBQLucsBOFKbECzg2ptOhESWzb7rtd\n8Ya7ZAoYvoa6wyCBZ4F6wKpppRccPvFzKiOcRX9ns9Q41GI+bDEn8q1TI10P\nxeUVTFEOJjMDtTLA58BkpjG0ugWmt3QVeoNbv7WJ76Rr3/mM64s6Ohg8TuMA\nlhrczbWNPPMZa+7XRYay1RR2ZNw9FpSQYnrH6Kr2BMC04YKSf/ToNFcJvosE\nZPmS\r\n=Bxph\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ad186768bb65467a86f70e827e74fee089e25811","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.74839da7b.0","@material/rtl":"8.0.0-canary.74839da7b.0","@material/base":"8.0.0-canary.74839da7b.0","@material/theme":"8.0.0-canary.74839da7b.0","@material/animation":"8.0.0-canary.74839da7b.0","@material/typography":"8.0.0-canary.74839da7b.0","@material/feature-targeting":"8.0.0-canary.74839da7b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.74839da7b.0_1596133892868_0.9181394936958907","host":"s3://npm-registry-packages"}},"8.0.0-canary.f041a48c9.0":{"name":"@material/floating-label","version":"8.0.0-canary.f041a48c9.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.f041a48c9.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4d73fe3cc75ca6c4c18c5db64a44c5c165224e85","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.f041a48c9.0.tgz","fileCount":34,"integrity":"sha512-jSmaYN4f767Rh+4TuXNLQRBfTo5B7SH6HSUtYDaieELPNYPrtn9mC0efNHd4luwjNn2UizMOvHaoR3Me2h7z7Q==","signatures":[{"sig":"MEUCIQD1mAoip2LGMOYOLWVQ/dlD9TXINuofeN5HzsgpXj8MlgIgGwutUb7lpauProf1g1EQ0wBd1YPhJ81NJrXST2jtgF8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222649,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfI1DiCRA9TVsSAnZWagAAwxwP/0YQGSL0uq4/m1TgQRpf\n4QK+YMjehuQOmXTCcJM1j8UHYD6zOyxoTPDTYbitROlZ0IZBMYjNLMqS5kZW\nV3NIPjVGDtJTu7c5LSI49pFqA2Ym1kiQ2ld43etbJCea/rsL41aEmxdq/NKE\np8HI96fxYpg6wn9Ko/j11kUeuMPybvMYcSo/j1weoPzANmolkaGVuXbC8xo1\n1SHhbnXBEGCwGM1/W/eLxKyw9JBSK9rzAHK8Xijarl7+vFBpxGafVbvTIYZ2\nD2ZK7nAkvRLuwDs9T9i7339c1SzAX7OGn3NJOimJGtI1k0egzEub9P5X1xwF\n1HccW6owUmaBTYyOUfVu9cB5vlVVA3W7/RsXogkaSJEiROXVBWrNtblULbRn\nrdfh9rQvd/jyVh3Vw8pfLnQN1RaUlT0GbUY6pEKla/LS5T3NNbqdkHs7ipqT\nmCepT8gAJ3ITu7bcB9Asjj25aSltXs3HuGwJ0pIx4SS3C9dKULoWgd1VnZC2\n/npU7WRnn0bTQjttHndPpbbjGFJsg2fZ7JHcYbnt1U7tmGS4UEC4J8m3FKpR\nHFNIoGy7CwxiBtUSIj7zhUAtwhWYpt1BCY4Bw3TutJQ4rEE0Mmh1fWjTj7pn\nFFzjL2jhYM4VDkAjTzgFH5rM0Z/Ghb0iQoLDAuiLfjGIPC3ln1AokMow5yLX\n4taB\r\n=uYTB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e37611a41628785b7c1266cd53abdd9da0208c00","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.f041a48c9.0","@material/rtl":"8.0.0-canary.f041a48c9.0","@material/base":"8.0.0-canary.f041a48c9.0","@material/theme":"8.0.0-canary.f041a48c9.0","@material/animation":"8.0.0-canary.f041a48c9.0","@material/typography":"8.0.0-canary.f041a48c9.0","@material/feature-targeting":"8.0.0-canary.f041a48c9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.f041a48c9.0_1596149985789_0.26575824970843454","host":"s3://npm-registry-packages"}},"8.0.0-canary.fbb1381e1.0":{"name":"@material/floating-label","version":"8.0.0-canary.fbb1381e1.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.fbb1381e1.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d9f9c35b347cd48fedfe1136b2dff2d499bd3c54","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.fbb1381e1.0.tgz","fileCount":34,"integrity":"sha512-MU7y2bYe65XnHa8wT/4KeLQZQKy2OfXazpatFTFJqWEZV7iJRpbJFPictO1a5DCtj9Ku0MLOTsmg/CVqfiNH2A==","signatures":[{"sig":"MEQCIFqWaG4wll37uHl7cPzZ83hleyT0RaPUMuhZlK1OIdOCAiBzzxMMkGnVJiawxXrc7YWbFKxXB79hfBALMU5HqvKMaA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222649,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfJD3NCRA9TVsSAnZWagAAsjcP/0HB5l7tgOyth1MhOW0j\nCrKpPRRoBKtUxcdlqg5nC5FCbC5jsHup5wCueOWqLnC63VZTWf7Tr0OrDok1\n/HIzDEfFeMvPN5MH/D5kPY+PAhar1TeD2DJSUI6jL9AIZmVlViYLWUZzdKMG\ntNPfNnhtP4u2EOEhBKhX7+ne89d5AnpZWAQ+gCDSay3m06HVvtBLeEeDNPJw\nl4OpYxEWgwJnCqX2PA8bIN3Bcgpbe+Q/eHQi3B3yDdRgSfBT5CZtmyqXJQuW\n39mg4ejbOTpiuPDjq8KlGP2lGdxKEZCb+nEEogBGssBIunSp8hEa0MCvyQvL\n3c5LkwmFjx17ceUA1zCn/Iifd8KTxLYl02w3rg3brdzBuPJnN+nTaOy+N6aP\nwdaa0sq0BYEcNjD2NRZStwp0jyoLh0Zjo0DlZdpO5yzS4yCTETbrLpCRTjFA\nb9crtjc7g9I5BIHUwNjhkZPvFHXqPNSNwKogPD/OjRSmBAtKioZm8ap5emfY\nuhZrNmXE9mvBFUQB+MnPyJNa25Q24BQSRm/zzL/Fhk/RKQnPyKnjbAuHIo7u\nUXFF22HL+gMuHMWWRo4QaqGiwazH5K0SNbedBZ9MQ4w7lU8+QToX1J6bdtA5\nB79WlhfC3R0sHI2E9kNKbLQtFTVQlyCFhZ0tsgojLDnSDY+/rOlVkV81cYX9\n0PpO\r\n=pafK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7c42a890f9b5f1bce3c7986f37f806066e6e30bc","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.fbb1381e1.0","@material/rtl":"8.0.0-canary.fbb1381e1.0","@material/base":"8.0.0-canary.fbb1381e1.0","@material/theme":"8.0.0-canary.fbb1381e1.0","@material/animation":"8.0.0-canary.fbb1381e1.0","@material/typography":"8.0.0-canary.fbb1381e1.0","@material/feature-targeting":"8.0.0-canary.fbb1381e1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.fbb1381e1.0_1596210637453_0.8296179944826636","host":"s3://npm-registry-packages"}},"8.0.0-canary.7f61d5785.0":{"name":"@material/floating-label","version":"8.0.0-canary.7f61d5785.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.7f61d5785.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f27388bd39269ccc653d5518c2bdc6263ebd70c5","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.7f61d5785.0.tgz","fileCount":34,"integrity":"sha512-4ZYQX8+8Sz2dVrcMv5GAYhoLXFhbZqY8ao93Hb6eK2BDJriIaX3NEYVQh9N+liGKX10B5rAS4fny1KvDW4CnWw==","signatures":[{"sig":"MEYCIQDDxmhEaQaSMn0vuDUB76VhXU7GQmkqFQHyLs0Bgpk9awIhAMIb2N0cJcNvirONzcVjN4XGl0FO6RVcuxwKVUX4JItc","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222649,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfJFN/CRA9TVsSAnZWagAAjREP+gMw63PQSyQfX4NX60Pu\ni+StTTnG+cUSBiiAsCUZO5vdCnKJIz+YsNu71AZO6NSeQ1M2NUuzgb75VhxN\nAMQ0j7L9O5GklxdsIHKaFDKmJSv7GKskrnr7c2AdptVJp+kLiCmVHLo6NED2\nzgjeDmoaTf5MSCcRgCmAjKNbpcc1WGIVRkW3u+WO4uPIW3i9QgQ3s+J0r89q\nSXP/FECUkvZetgEIHtfVVCm5lm/Vxf8nuF0g86C1PQPoW7WjO59ht7YQDOuI\nhL6bxKGZ4ke1/IF8qhcMAuxfWQ+Ep0RwthmshGLvG1H2B10LLHDtMCdH1nz3\nO4w5l+rrOAk2JE7yxwXzpCpCUHo2tsh2DRBN3KCE6Q1HRJIK7FkqfcVJET7t\nRsbbwLx+ELJtYGgBvmBwLih5OHSqb2uzVphL+7Y/xV53RQVqIhi89dha50Tt\ns4Y6YlMoWriI3HupMFbhWxNAS4dfhSLUYiSvXN4KIRntxxij3fanR7BEt+zO\nEG/PJpf9htxFkthNmpP/wN0BBZammkJ9KUm0a+IXEBCQMOB72Sy9cTZNOTRw\nVtekqGyeym6Ea+kSw0yTxwgANwzqiqOq1uOkzoS3Ij9cj3MELuGsfV6wbEDI\nC8ugAZoNTDyTIn7lF3ovYn9wMH6SUnUpTUkOagyGFeKoaJ+ZjC5xL5kYO/R1\nc9NO\r\n=nkOz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"beb77eaf7ccf3f03c6d830f96485010ea9e3d47d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.7f61d5785.0","@material/rtl":"8.0.0-canary.7f61d5785.0","@material/base":"8.0.0-canary.7f61d5785.0","@material/theme":"8.0.0-canary.7f61d5785.0","@material/animation":"8.0.0-canary.7f61d5785.0","@material/typography":"8.0.0-canary.7f61d5785.0","@material/feature-targeting":"8.0.0-canary.7f61d5785.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.7f61d5785.0_1596216191473_0.5920792725828248","host":"s3://npm-registry-packages"}},"8.0.0-canary.e1bc84d10.0":{"name":"@material/floating-label","version":"8.0.0-canary.e1bc84d10.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.e1bc84d10.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d41b6fe9f01a4e9495aeb66acadf8a5b5fbf8638","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.e1bc84d10.0.tgz","fileCount":34,"integrity":"sha512-qe6yJpVLusjdyT6Kylk3+rL9L5otgUa7CV0/BdWgOwBZz+ssIlDfvMymS7Drp86oSVHg97e6ADuj36qXYJV9/Q==","signatures":[{"sig":"MEUCIQCj7nEff+mejc6OiChjWNt+h9Y9nuOyKBtegyUVRUS6swIgNqchkxwTYYpG4Q+++/b5DIvh8kjoVBDRgpdZGhkEwMc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222649,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfKE6ZCRA9TVsSAnZWagAAiAoP/jUpQfMzi1DthM+4ZZjy\noL7mswKCkST7qO6xBw2DJHcYapIuZveLwCfDkXMPXlZ0NhyHHz1IvirbZGPk\nuzctGhck5x0fHJqmobjw8GgO5/000HJmx1tBH3Jzj0dAPMvOu+sX71EO3HQi\nLcr7fXbYfunxhfEJsFhzNNPMTFoGroM8RtfXv4HSUPtWI3ZYtWKM3I0u5BCg\nco3aJxiyAWuKoxHCe6Bn86w7/kEV6xgYYCZ0PTSUmbobL90aEKZOVGZNixw6\nLFugAqISjm4+f4uqvrKgmGGK4ZAG7jmbb93vzBkJ54jLgkfOFUA+hNZqtE02\nOeRqnnUpBURolyV2grfn+Cg/JDj3qdyq6AnIu5pNy2AVLJDG5aAGMh9rqXXM\nsukqsE5gkrWBsIrYOLvYrX9LuqWFHXJC98ulSGUKDuaMYJ0P0vhAf/VZfgRg\nKEF6gbe/M1KYiUybBG3TdedvfYRLh/JEiGg2S38ci7k+HJWhtwh/jDZ/WFON\nUsrVnwclcUNYqzkmi3kdDREMtFTjZnVPK776zs8iwPe8NXZ/COC+q8tGYzIS\nwv0/dwhGXlVjK4zW0pHBCRMBufYu0ZefqT2SsIF+PbaX6rlojrudOrdZrKbL\n3aAsaAAErCUNXrTW+MbZNL2t+UFfKbzdiMQu/giTN+cYqAxQcBj7Kha1FSdr\nbzyl\r\n=mVf2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"4752dcadba6adfeb006ee3689e295db016f4bea3","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.e1bc84d10.0","@material/rtl":"8.0.0-canary.e1bc84d10.0","@material/base":"8.0.0-canary.e1bc84d10.0","@material/theme":"8.0.0-canary.e1bc84d10.0","@material/animation":"8.0.0-canary.e1bc84d10.0","@material/typography":"8.0.0-canary.e1bc84d10.0","@material/feature-targeting":"8.0.0-canary.e1bc84d10.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.e1bc84d10.0_1596477080986_0.9499002845798052","host":"s3://npm-registry-packages"}},"8.0.0-canary.096a7a066.0":{"name":"@material/floating-label","version":"8.0.0-canary.096a7a066.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.096a7a066.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"df446e9508e6ab991deb29fea035e4f8e699def4","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.096a7a066.0.tgz","fileCount":34,"integrity":"sha512-ec+r6cZXQP2K/W4cbXkMdXPQvfmwddZreGktKpbsUtiFGZEjj5Y/yAPmXFSTUXIEpPpJDoF5GBOlADW0N2KLrQ==","signatures":[{"sig":"MEYCIQCHg/l46G5OQhSSqJxh78qQilSC7Riovql8x/Aec0d3LAIhAJGF6ebm7k76/6kGo6Ir5EzJOwgcrDReBy3e7VKc8ptw","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222649,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfKE8tCRA9TVsSAnZWagAA1VwP/ieV2av1i5ieAE1TtN8M\nzOdGW/C3FYiWcktUGiByLQUdeRO6jrSq+t6eSyS1J76g3nZ6a6ztrWqClGUa\nV7DPkIgCazC+kvnbUFV+HyXuC/nQpGy6Rqk1rqk0/w/id5hbVWWvWf5RGCSJ\n0/bePlAcJLikAVM1jKSRq5tJ3pP0DGzRhgXz/c9FD47OSxr6Ts0BXEODUd8d\nbwrgIQ8FauZTJDvTzVC5NW6dwEag4+IrtqYvBW6jbhnU0pBjTotqRWe896Ic\nBX7qHbeFMxxOQw41YxGUwlnRNn30X9oEjew6S3UdKd6UnXF5wCIa27rgOp4V\nJiI7zEVysItIO7RymVTir3e7MxY8BQJVHS5fV5LocVK/PSJDWzTflOz7uEuf\nnUGNS1WcesmIDx4cyGwfI55B+GfuqwKB3unoVQ7Sfj5xAtc2TzoqS5Hr6M1Z\nayUBtsHSmmhve1I5L4j+BDaDkymqrCGJZu0ENZC8CXW0euXYrO0+Q4lXHbl6\nz8TYhFHBDp4pLHv5XB5nramBkKuejoUwHf/dxjC27AvinRLG4aB3n3PqYnmo\nxYL1BczXGTI+9TY6peW2U2YrE07tOzru48i34rtV1PKK5zPyVKZ26688akYO\naR2v5UdAk8l6tdMvNhXHSPRmDkfTor5V71Arn+KCEhBvHlz9putxm+zXFzV0\nMxgj\r\n=8Tom\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c1f4491c464cef40f62d03f687af7b443805fb7e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.096a7a066.0","@material/rtl":"8.0.0-canary.096a7a066.0","@material/base":"8.0.0-canary.096a7a066.0","@material/theme":"8.0.0-canary.096a7a066.0","@material/animation":"8.0.0-canary.096a7a066.0","@material/typography":"8.0.0-canary.096a7a066.0","@material/feature-targeting":"8.0.0-canary.096a7a066.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.096a7a066.0_1596477229126_0.9906967846511505","host":"s3://npm-registry-packages"}},"8.0.0-canary.aa3a3e5a4.0":{"name":"@material/floating-label","version":"8.0.0-canary.aa3a3e5a4.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.aa3a3e5a4.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7130578f4bfe9b358f628790bf206a73b64348cc","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.aa3a3e5a4.0.tgz","fileCount":34,"integrity":"sha512-CoOfR2wC4PjlW2XgRyFf6iV8+WpZ41yAmLrlLMlfxfTqZcFDYjCYK38qZsW3yuH65Vzzlv7Ze7LpCtVQUFIeuQ==","signatures":[{"sig":"MEYCIQCTKQ1yjPof9YU1o89Vw8nAfbppTjy4h1hvvVAqFo427wIhAIMzL4PnV60IhikFfG5JXGcakT0/G9HCG5Qs+1V276Zj","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222649,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfKE9MCRA9TVsSAnZWagAAsQYP/jfgRNduzhasbLai2SDs\nr2GSfqg83z4S0opz/u+TFslNBvZx+ieGbd18Aun5pYUsK33ntTFtrPHMT/32\nv763bhXDGCBDyNbDynNWLAL/8EZSusO0MKIwSmjPCcf3jr2Oo3UDEGQnrJkZ\n/KSaop0LVFD/tGRJ9s7MQOWlO3k5h0XNNsEmukcLKvf1+6BIl6nSVO9WnScq\nkqttplOSDFpDKbhWfOL68isYiG+N3aAHn1msxB5p/zVB5FECeeu3qyhpQI/P\nO12j6TKor2bIEzSLsio4pUNaxIyVNh80rLhJBs56BmBvyjDiVMkMUpZyxH7C\nXavYzmNGR7JZPlYyp5bMP0C2Tr5kZnENaLVuP8TxMKGIpsANEMIbGqS65/Zt\nikyYcSO+CX1lrs1hl/T2Q7taZTwaaD76FWn3qjVExh3APUKpWCa5lqn77ab+\nvPXEEcrLfT0TV8wBy/P7rqZDI7hUKg387xlRyxhBx2gUiwt5L7H4N/eCbz88\nVz2GGHSomt8FGGr/4jiodLq3565IZXoBQwQkqzRN2mL+kEFAlyYJ2NMGSBBs\n8s2iyc02Ygg1VYK37Hr4Xd2JZmGX+We9nsbOdgfqHNvE9oA6i24M/nvNTUH3\no6tdBEvkl56n+cEykyXMGaezVCGA2xwQZKuaHXvL6DgCTehpT0N1VLX2i6dJ\nmnn3\r\n=wSjy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8e25515e9c171e19310cbb58630a760408b78c80","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.aa3a3e5a4.0","@material/rtl":"8.0.0-canary.aa3a3e5a4.0","@material/base":"8.0.0-canary.aa3a3e5a4.0","@material/theme":"8.0.0-canary.aa3a3e5a4.0","@material/animation":"8.0.0-canary.aa3a3e5a4.0","@material/typography":"8.0.0-canary.aa3a3e5a4.0","@material/feature-targeting":"8.0.0-canary.aa3a3e5a4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.aa3a3e5a4.0_1596477259578_0.4824307992628887","host":"s3://npm-registry-packages"}},"8.0.0-canary.5903d39af.0":{"name":"@material/floating-label","version":"8.0.0-canary.5903d39af.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.5903d39af.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ffc8920c7cc0db5ece437c52e7202ce0179e587e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.5903d39af.0.tgz","fileCount":34,"integrity":"sha512-AuDmjAys6qXNNnZfJJplzpG/YNBH3b+1JQ5p1B+/0HVcWteZYqlxo9c+eQMrJZ56oonu56CGhm4wz4+0yepJ5g==","signatures":[{"sig":"MEYCIQDSpSVzPvnYVDRBoj1DnsvnYkNR7ieMEuOBR89WQpy9jwIhAOunCdNLPKDxt7fnOtHguNJhgxAG3YQQIVo5XM9/QjvM","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222649,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfKE9jCRA9TVsSAnZWagAAZrgQAJVW0mV/A2uZH2fOcpgb\n25KbVCOjACzaYfk75Noithy/sxi+Hce4D7Rh1KSHkALsU6BplkiHQVA2BfOU\nvKvUJwOXaBXW/VBfAePQOU+MACMDjTETMrMfajstz0dundA8CbmRYtrSTnij\nO8y47tIrl++fWxmEJedHRG0dNu7+S2z9rCqV9E0VhyO+P/kwbGfkUqZaF8Rc\nGE8zk4SqZVILzT9zkmnR/kzywLnoGbCUpu8dJA51MwKOz/Se/We9sY4xViMS\nFtkRScmHtusJWG8ete/UjSuZvBQCQC+qV27RCfQgGSGSJebTgpGCfPq91vSz\nkRaIc3HpxlE4VIiJDLFlkDrG+ZGie41A33o4OdMn8abhDA+KTflBV9JU9SRp\n7X68UrwxnSVYOcei3Spbq8gMLhXv0F+oYFe7+OrjYrjJltSxi8MqLwPTSDfB\n1+GKHwtqGsdXl1X8vAEk2tVZCH6yC38P5Vck1GbOiefNS1P3lLLkTtsM8VGQ\nM3Y1lApTCxaFzYQX09KWxeJVMWXzYDrMhLVbPaUyrxFCf0YaU6IiknhlFoWb\npX/68QJZatvTgB1eNle7ybodXAX6EscCxVym8CI+tcaC499LRxlWmihmSN1O\nPLOoWoTCaoSR6SkHvJenchkY2pDnBdHSqzftBwcITDI+5OB3S3HQkPdZb7bv\n+ftS\r\n=b9LC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8a4f2eea8ac8483e7e0a1c93b141ea9dfaebaf4f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.5903d39af.0","@material/rtl":"8.0.0-canary.5903d39af.0","@material/base":"8.0.0-canary.5903d39af.0","@material/theme":"8.0.0-canary.5903d39af.0","@material/animation":"8.0.0-canary.5903d39af.0","@material/typography":"8.0.0-canary.5903d39af.0","@material/feature-targeting":"8.0.0-canary.5903d39af.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.5903d39af.0_1596477282593_0.71382069622782","host":"s3://npm-registry-packages"}},"8.0.0-canary.72258f898.0":{"name":"@material/floating-label","version":"8.0.0-canary.72258f898.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.72258f898.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"21079169712e7d767228abdd09705285054cf436","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.72258f898.0.tgz","fileCount":34,"integrity":"sha512-ri7zFy0S1rSg+v2jsrTT5Bo+3FgYv8hLljzeaEmWXGoBHf4wk8JUSRwgwJ1j7ep/CuZ8793aZXzoRxtwwIg0Tg==","signatures":[{"sig":"MEUCIQD+5lVGdWcdb7iJmX7AGs0Z/xZwA012HNAQVrzML1O05wIgNirq0h7Jw+g/kEYL3i4OjwkI57W9EGFcCPIlNPeNngI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222649,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfKLcrCRA9TVsSAnZWagAAKaQQAILtxYUjdDy+oG9Y2UH7\nIJATXaZ7bqnU42CjwKrkxg77AEQbqG+gh4SpDsPmzVExnMXtN07oqCDWSHwc\njYONkYVurj0u82xnDesaHN365cq5e0HNV714U0ao0D4KInl6NVTiD+RwqoLi\nXsk2fAi0p5xXG80cj3Giu36cH6SYtiFNzm0CdDJT0DyZoORnWE6FkKjyKo8u\nrlU/kHgxh++xpq3ePSpgOyLIjQaRgnMOBxf5sPDVwKTlQ5nDY64p3k/xUZm8\nNmSzS5Hg92nzGCMDhTX6PmYP3WiEM4iauGk80YnpzsRi/JCYi8bjXcqad+St\nLABhFDkwfB5QMNxUB2XKtzpEshWbCGmD4AQXKWsqWzrs4BkpjhJ6v7qp+tAZ\nBSSN5o1Q5+Cc5l42D/cDlnHzKfI9q4po5+FyD7JOuJHEoCagUm7qVohcqSjD\nRWYI/1mV5taAaUmp9FwL5LyFgxu2nGIYd0fo1i1SfNu8daNe5IIBSbwE5uCZ\n+/XgG4+e+iHePTsoKUKwcYYIdLZsWS0KZE9g4wy8NnznyA+wvJjabbCtR0L9\nIdjA6ef3i/FcTdL3V5UEsxn1e7OUPhxsF54F7UqST1LjLu/K1qCrJbVTjE2Z\nwsiOGrUJBB50wGqufEnuSdOKSi9ZffYFq3Bj9FIowZWmecefuC3ToW0nIsiV\nh2w6\r\n=W0Vx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ff2c64799ee2d684ba36b9cebd15fbe0d0ed17df","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.72258f898.0","@material/rtl":"8.0.0-canary.72258f898.0","@material/base":"8.0.0-canary.72258f898.0","@material/theme":"8.0.0-canary.72258f898.0","@material/animation":"8.0.0-canary.72258f898.0","@material/typography":"8.0.0-canary.72258f898.0","@material/feature-targeting":"8.0.0-canary.72258f898.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.72258f898.0_1596503850604_0.5763660636338084","host":"s3://npm-registry-packages"}},"8.0.0-canary.1b44b43c8.0":{"name":"@material/floating-label","version":"8.0.0-canary.1b44b43c8.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.1b44b43c8.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"bee597efc892dfb08bb66092bb17a97638f00439","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.1b44b43c8.0.tgz","fileCount":34,"integrity":"sha512-/9iiqkrk7I2q6DCN5+XEDo3iLABErJ6yhB2M4uOLv6SzASexfrGAUzenaxZ0/R0s/IsnpfrqiXNgxBaGqW2pWQ==","signatures":[{"sig":"MEYCIQC14gQQ9BOSsg07/N+vv1ps5Iy5iEFsFG+HvbSjfXTN+wIhAK/nMYDv5ExcHUOmPQYXfldgyZd+wkevjK3Opqrttfep","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222649,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfKZFZCRA9TVsSAnZWagAA85AQAIw/857XnkCgE2vZquHX\n+G8F9+QM4gahBhBZEXx/YWdK3+SlCb2aH513Q+PxRlDoiQgHqmaF8wEg6+w0\nzyEasqJY3ZesLmDF6hCDnn5VOkTCy3hVZElBjvX7jhsNiruSCsSzRhWU6uC2\nEZQnKgJ9Ay3yYeVTxkdIWW+nqS5HoQdI5dbcMAdFaPGMUjsz5XI02OO4U0h1\n+spUveajFCJwfwM9fwj6h/w7Nb20cFsT06cke6ACK+RpBBHGL84Z/X1slQxz\nOoy567LRA5s+XFUrghq/WGIJHzi4hxiPqpLbXZbMlDrU+UtN5tZMS3Iidcyk\nazjyZyo3o9BGMqQkEEtqRbkiB+YbPgIiUkj0EhX4PS+ClBJu/5tnsF37m3Xz\nAWuWKMJJ6ydu63gUhh95+lJHb91UXJyFcO2o/8HSHvgu2JCZAT9aAz/+QKoK\nVJqddpxrMbe1AxbTniBNnTkDhZ5ABPoI6vvgNDFNvbje89o7/fPqMBM+m+FE\nb3a9HgoDsK++iEaPqLfcTjjum+SupFZqPu1bOwaytSLYK8m1v9KaOG8x01uv\n6hEUReLSeBpEPEzHadUNvahQpXSbqzbKEq0Lk8hdsGKR3SZ+hIv1R/T2paS7\n9hrgzznJLX9slSo0So5i2FRZZJktgAVmNGl74C3VugzRtyeEWDzf4MGCNPTD\nbZqy\r\n=VJnB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"69ee70c646249b45b57e59e958f1ca6d8332dec7","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.1b44b43c8.0","@material/rtl":"8.0.0-canary.1b44b43c8.0","@material/base":"8.0.0-canary.1b44b43c8.0","@material/theme":"8.0.0-canary.1b44b43c8.0","@material/animation":"8.0.0-canary.1b44b43c8.0","@material/typography":"8.0.0-canary.1b44b43c8.0","@material/feature-targeting":"8.0.0-canary.1b44b43c8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.1b44b43c8.0_1596559704755_0.9491593752589378","host":"s3://npm-registry-packages"}},"8.0.0-canary.e9d2e2f96.0":{"name":"@material/floating-label","version":"8.0.0-canary.e9d2e2f96.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.e9d2e2f96.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"57156dd88249c5e9d3cb9b7acb2d15f7c26d0beb","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.e9d2e2f96.0.tgz","fileCount":34,"integrity":"sha512-DM64FumF8AnNz+vbj1gKFfR3wvcHglJX4iexXF+PPcmwEuRpoC+c2gkZYcKxoP3iBPztsChNbh6u2wp7q4tzTA==","signatures":[{"sig":"MEUCIQDMvdqgLfc0tLVUK8PklMgHLrxMXNRZxvyx2kqb8l753gIgBk1ssbIgxAd4f5EJBAjGEHB1h5S5oCkFWHt+wRzbs6U=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222649,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfKcP2CRA9TVsSAnZWagAAdXIP/iI8kNaAVLbQ1VLixNPP\nRIlxEe4ssOKma7qlnM1v28jEgiIz/kwN4yNgARjE8iAjrWocP7gmfh2y2VrR\nZg4JpJ7s1cuzhMOm4C405y+VAXN+FqerbNR0yFLZDm0H9DfSK+CFIDU1EjxL\n/iGSJg2eFJXhWJRk4tyY/lsQSCNOK3OMQx264hmY8TTQzwUjt5F2YgSlmkZC\nr06wwnRptDEF0mLhye7nlBYaeWvYR3scvujwFv/XT+6HlFgbANNZu+tcBpKe\n5ZUb5g+91ZxM5AhNrMOsFLxLX8l6jEKrbeYaZpkMe0gHVUnDCL+FpJACaqST\nuW3faVuYUpPWNSidQjLBCXuq/Nf37bb7zFfQiKCAiMe1yJwL8aRrQLUau+YS\n27uV+yjMitdPVhTsBsjPdyBpQNkCGcQRpBl7uZH+uZlTYrp7cS0DE1dRQrrb\n335ph+7y07KQEnw1DUOIkNUG1aVWd4pcysPdm5XZ9iLLGCX0eu0tkxOGkjxz\n+zvzC3Im9hNj4HIZKCYvIjrqV9CsAUfCfpuk0sNQjdRsO3jqlwqLwEOjDVSV\n2Qqs/gNS40OHhGTCJHZ7kccDu0l2zSNRfyPcAeGFA+dWnR3eClhl1nh+v/t5\nPYhObU4pmG0bpXEJ/xPoYJWe7UTRgmrjUmpYAHXICvP5QFkX2hRk6al5Sgim\nhs7t\r\n=2JaY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f6bf51788bc1f39067fcceced79dcc12b2c59caa","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.e9d2e2f96.0","@material/rtl":"8.0.0-canary.e9d2e2f96.0","@material/base":"8.0.0-canary.e9d2e2f96.0","@material/theme":"8.0.0-canary.e9d2e2f96.0","@material/animation":"8.0.0-canary.e9d2e2f96.0","@material/typography":"8.0.0-canary.e9d2e2f96.0","@material/feature-targeting":"8.0.0-canary.e9d2e2f96.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.e9d2e2f96.0_1596572661862_0.028556490950351288","host":"s3://npm-registry-packages"}},"8.0.0-canary.b9dff0a19.0":{"name":"@material/floating-label","version":"8.0.0-canary.b9dff0a19.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.b9dff0a19.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4c6f9d7881a261d9cb2809a493cb78698aeceabb","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.b9dff0a19.0.tgz","fileCount":34,"integrity":"sha512-0KDof1qLj1NGK+5meFWQyQZtiV0hi2xrz+sdwlIr0OCWxwKKNrcz1f9gwUI75Tq5B+Hu2MGG8dnSjBUAwEuuvQ==","signatures":[{"sig":"MEYCIQCB8iFgozoBf1wi80rd8+a2WZKwyHM7qpExN18hMWqudQIhANRDt4ojd5soIf9HEGL68foAqxOLKyC+oPX6RDXajD1h","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222649,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfKiwrCRA9TVsSAnZWagAA36IP/iepQGfbW/ftW2dGDRW2\nkcKGvhObZCH+lvpxWyEYM4/ob3Zz9RbVdonDaRkFAn+qa9e0fb+g9GUWaiox\nD76ThKhSna701eAc9KxhmUhvB02FFHHtzHpauuJYObkL1LtgA+c6qlM5B82O\n6YbVvIEclLET5wkxqp4PSfh8M+Ig5UQ+D7eXEZp24V2cYA6lMX3pIW/ITeB0\noZZWZYk755S9tczMZ5I2XnH7L8ojBs469l2cE69ofiv9L7ZZ/xUi06T9Jsrx\nxuaJH/bt3MskILAtjhQ6xlmB1EoERlyAPDqGbHBXZECHRkx/A16LeS+ABoaS\nmsb9Hy5Uq9Hueb/pXaO4PmTQB2oXXcbZUrX0tUbkqyjgrG4uCwS98jZXEhgk\nu3iPMC/pshF0xEYfO9ZO6dn3YGALQh+fBp7dP1Nfk0PR/24ySDUTAej3icq7\n4uLu71Gmcdn6IgZ826iPc6Zt7RsG3Z9b+kPCFW/Y0QzXjrgPqns+63jN075G\nduTFdONxu4rm6M5T+JJOSNMNBqfz74GQnc2fAW/1IxZoaBsavywbJGMSFpp3\n9CQ0811VRFxpwSoueb4Gq6r6C8+Qa+ODnl6p9FFO+xtu9NuJaEPzKChTcSCK\nsEByNzI+/5SoTW7QgEwrCc/Exm3KeTtBUbj91WVQBaUpFLr6Ct0s20Kmh7dG\nOVQk\r\n=/4vw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"dec2f9fa4c83e98bee860646fc2a65b134a7900d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.b9dff0a19.0","@material/rtl":"8.0.0-canary.b9dff0a19.0","@material/base":"8.0.0-canary.b9dff0a19.0","@material/theme":"8.0.0-canary.b9dff0a19.0","@material/animation":"8.0.0-canary.b9dff0a19.0","@material/typography":"8.0.0-canary.b9dff0a19.0","@material/feature-targeting":"8.0.0-canary.b9dff0a19.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.b9dff0a19.0_1596599338692_0.3128834241612328","host":"s3://npm-registry-packages"}},"8.0.0-canary.2bd09a706.0":{"name":"@material/floating-label","version":"8.0.0-canary.2bd09a706.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.2bd09a706.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"0d110b818b4f56240ae38b1a4c97cdc37f8cc50c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.2bd09a706.0.tgz","fileCount":34,"integrity":"sha512-wqoBu6hoA7wVBCai+h8MVQ7PA+q+RddBLmgVcWLBzKKwFr3Yt+WYwLb9W7d24eC6sNHcqlldhFMEO7empl4R5w==","signatures":[{"sig":"MEUCIQCe6xikUtMPsdCaxIamr9uj1lMhZLqU+ZT7i9fTo8p8QgIgCv9X/sIQ0QMLpPj9Kg4PP1X04krKCiUD1FC0miENSqs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222649,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfKi1gCRA9TVsSAnZWagAAic4P/0DSVg/eLNVw//5jEiMc\ny8tyK1KebDdbBEnordDosCWo9WF85bFQAY/gdLJKl0YjGffNtHlV1c9L/N1i\nWIJ1UucmnNXgBXYyrVIsm0kiGqeGSorIfvc3i+YQuTqmrjQ1jU1c9OqO1PyM\n0H5eDKRgRrOOkiq6N68ivnCxL1RvvTyW09YQ9QeqvLAART3xdyH5ML6oVEQj\nxuXr1aC807IBp4RieVO68qybF9f2PMQcr7rzgWHvwgx3t9cPMM9WGJ52peMI\nZvYOJUwc2C+lOuXiW3ibBf6Hxcb+q7vmigYBuvdNHH508C9NcgiF/SRxqfCK\n7iVsbCnUotYicshe9n1iIjNao5Sv4wq5DAfBUCHDJrNY8KhzY6M5XtyaE141\nc/UtDfj8I1Bzz9zDpYO2rLj+CcEFgH2PZzqZ3pBjKME24cD7qJ+48JCRRJI7\n/Do7bPwTQZf5eLgeSlDSy7+9fzKBgiydxtp0Wz/E9SYebaps7RdB7rbfxcvk\nY77qdWtnRnN74SVxLZpwYRgTDgpUUOYhWedRtMqi01rLEPhkxHKTXPXCJx73\nZ7uZmujDK4X95503bxzYUrcyd/6F7djDAP7upOfEdBpywBRs19UBEFkX1bL9\nN7BbPagupi3Wq0A5shu/VUN3MNVKW15ZmJReS0gGognWdGsDrkxrnYgl7V+Y\nZm89\r\n=8zSf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c8b061f3fa8ffaf5214e79fe44f6c575216a1808","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.2bd09a706.0","@material/rtl":"8.0.0-canary.2bd09a706.0","@material/base":"8.0.0-canary.2bd09a706.0","@material/theme":"8.0.0-canary.2bd09a706.0","@material/animation":"8.0.0-canary.2bd09a706.0","@material/typography":"8.0.0-canary.2bd09a706.0","@material/feature-targeting":"8.0.0-canary.2bd09a706.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.2bd09a706.0_1596599647730_0.0051471063164987285","host":"s3://npm-registry-packages"}},"8.0.0-canary.e0560522f.0":{"name":"@material/floating-label","version":"8.0.0-canary.e0560522f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.e0560522f.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4497a257b7cc9bf76edd11e503cb05ca049966f6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.e0560522f.0.tgz","fileCount":34,"integrity":"sha512-r/SVUMlHlMk8+NmEkJg3kFiGYgUH1Jn0HRodhSnNPP4SJ6ap01k/tTH6YzFNbkLqCljynXEOwWfBZyQ8mena0Q==","signatures":[{"sig":"MEUCIQDszqkuL9qlJdPyYqE3PpRYi1mKF9RAZCz3uF/QZTkNVAIgOUlyoM0k4sGK5BUNkt2PnDj0yetpEm6Ra6sgEacub4M=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222649,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfKupHCRA9TVsSAnZWagAAeE4P/A7iwuWpC2nHQDIaIlgl\nbufvS1lSz/yWhCxrFW6S1xm57d2jnRxEzj1Te9NdYxP2A7q0EXcU9anWSMQh\nBVWkJALLBCsox3jXoqYItrwXTpYPQ04SenvNyxll+trl4vbkjJ1qRlx5tnmE\nBVGv9N+Hvj15Hask/c2rdZOh6vNf4jAadWzHtiALRkuSi2yUQsBEus4K909X\nQj/3oAxygrQr+mhAttIX/Qh9DAQTSra9w1wci71fzScbCwkRJ9GyaJVErNw7\nPZkjwhtZx6ZqQNk4A8bemSk3GJbT/9T69DNknZ7VpxEcZHHt+zxEkH5r958H\nNLEZN1Dz/Sv1u+0SbeYt7s0I7O74TSsid2y1WazZjsSNinpMbCTRp9fsUBcF\n4tLDbUVb37UDGAPpr0QzbBopLFlEEiipxK4ZQV1mUTWPobI3+/hwXIdLKN2C\naVbBtdLIxRCx2VxVpogDJcJR8VPc7h8+qZMeha4b1/GyS5UV+KRMscdFe3uO\n8vzy8N+4YxMDEO0Ufuv1XiLe0541pDXSs6M9rNwBYgSjwAtDrk58M5p6A2wV\nnXf4j6NApti7CD/I9vNOSIY9F7p37ZMJMluCTt2d7wg4GoChNg6nXCfw2VCN\ntUbenws5TbEa4hW65GjZcbT7j8s54zn1BvP7tjRvWXkP2HS5hYWvSs09zhT4\npURI\r\n=K+fY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f4f71f168da3435c5dd1bb74e7ae0c54fcc45746","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.e0560522f.0","@material/rtl":"8.0.0-canary.e0560522f.0","@material/base":"8.0.0-canary.e0560522f.0","@material/theme":"8.0.0-canary.e0560522f.0","@material/animation":"8.0.0-canary.e0560522f.0","@material/typography":"8.0.0-canary.e0560522f.0","@material/feature-targeting":"8.0.0-canary.e0560522f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.e0560522f.0_1596648006440_0.41662822214416817","host":"s3://npm-registry-packages"}},"8.0.0-canary.08ca4d0ec.0":{"name":"@material/floating-label","version":"8.0.0-canary.08ca4d0ec.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.08ca4d0ec.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"0487dd35da81ccd6f85e5dc70d6477f7550166f3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.08ca4d0ec.0.tgz","fileCount":34,"integrity":"sha512-4A30gSilW/XoncRVRYQUyuRBteRY0m3RLLiPOWegzfu0/+6PhwfBCWsECcZTgdesaYoFG362j8ukYLpRnnboUA==","signatures":[{"sig":"MEYCIQC4XLLrVkOm8JoKoy101pouXmE1NFjwgcHVo8l4+gyM9AIhAMjFyImiCkGDa6iTbhC9Xwbmt1bzLeW7PQiPEi9ife+T","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222649,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfKu7XCRA9TVsSAnZWagAAEqAP/1bkq/sQun2m2CiPVR3y\nC8d2Epky745/qffC1B69gdHGjSbeu38CTmzGqs47KByTOUK0nDSYFTjV6lkE\nojkUce8SiTUAhpHT0iPgLzKpanOlPtcwzqjkpkP/hwMTU+SFd8HFaaioS1vs\nkEyEHcZK6G04pkCwAPgJCpZgN5nL55P6I1lnjAJhnTTbe8Dp/opmLma7JNIP\nbZVdcoR455j5+MviijKaGmojqibOzhCFpeUxrIJzbICejNEyCzxV4EezzoJv\nf7Sh+GpnJVmxWVgB6M+ItVMj9vCYf0/OUPxrAWkLTTp0ZbR83Zz1gkYJCFx2\newMl9hw6odlG3MpY3D2f/Yi99Ka6vmTEcqgnJ/R3u8HhSvbHkrk1crS90Smt\nH4nCDmbZ2lU2zYEKptAJPiNkZJrLD3I2NcARpOzRLW9dBDjgJs3oFMZGqASN\nKUWMjS5iEX5aXytHjQGcs+dw45Vcv5PvA5GJIjBViZ8VlftOEpAbBSaLpth9\nNCp4VL42xZSAUe394GQrJqKSYKSQmK37VmOAvhflbn37ti1nQ/Lwtc7g3heH\nMd9kcmcwuYdn+8/9PmQEPFSyiMEJAfwEdZi0GXZwN5FuLg2t+Xj0/r18wjyG\njUVOYfAjvyxJ4ajmkTEbHQwrno6E6CkJFro+WMBlSiTp/2DxoTC4PcJ62GT6\nLd3O\r\n=7rQn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e525a44ae67401224e06885b43f10017ae70f9af","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.08ca4d0ec.0","@material/rtl":"8.0.0-canary.08ca4d0ec.0","@material/base":"8.0.0-canary.08ca4d0ec.0","@material/theme":"8.0.0-canary.08ca4d0ec.0","@material/animation":"8.0.0-canary.08ca4d0ec.0","@material/typography":"8.0.0-canary.08ca4d0ec.0","@material/feature-targeting":"8.0.0-canary.08ca4d0ec.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.08ca4d0ec.0_1596649174952_0.37249948946231526","host":"s3://npm-registry-packages"}},"8.0.0-canary.08090126b.0":{"name":"@material/floating-label","version":"8.0.0-canary.08090126b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.08090126b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f9803c7b34132492d10225c3f6d8abf5bd8c7ed9","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.08090126b.0.tgz","fileCount":34,"integrity":"sha512-/+XrUzqWt28Ek8Yqo/rqtyWfRpN/Wb2512qCnrRJUXgTaQixR7G05Z1+QBqrXZbTSvRSbp6zcvGj4uo8507Kxw==","signatures":[{"sig":"MEQCIFEwF4MoP2APo677t1QpsZv0BnCP1+YaGequgatpNpozAiBgw3zkiqWpfA72aZe+ZDWaDaTXXP6UXeAZrN1mzmfozQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222649,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfLFrgCRA9TVsSAnZWagAAv2MP/2dWx7xlRcsEicBdLV2z\nY70cJYhuitQrAErzj0iT9a8iNNxtqjAE8oJKRHM2Fx9NKr3e9Hp6bsXETw/q\nhzOQIPi6HYHKulIU3sGj/d32IR/+4VCl6e6LCH/GddKc7Yrb8mdQMtztWQvb\nwXK6VWxD4fG+JU4BSLIAuPfYS8OL0/PGkjWf7/lV4a+yBv+JtREGBPbOm6au\nIcbR90+nYkE8WGZxzXKI6+gH55tVgc23GAXdB/uXJv2InHIsuUPm5Z/DuHL+\nZYWkqX0SPjBrxqM0ntFHN5qLMNm66VxE4Qv/SyLYMnp7RSRMrhZBEk1xaVw9\nIYnEjAlEg40h3lRXhXtVNvjvkwmuN9p/6f2mBnyeynT7dqAkuHGQSS44ZOfe\nvFk4QsbsgUOCl7EdsIBLyja6IOsc09Cp5dptsXF2g6c4QeQOeLAGyEYz/Zvx\nXa95lsCCKFhHlLgn9L0AWQRV55mSadjCRMex8upPkf525N8ipP84bHHv91WN\nVTs2c4lqvq8hWJUFTHvtuytgpDiGSkD4wdXY6H1b3o+8wJIxf9yq8J6TWdEt\n0Cec9d1SuAX9o3aSDB3fd9Iemi8xtuf4A5jeOCRdfIycxD9IrgDVAPjpAOEK\n9ZZKbluk6JqU+8YDC2sg43D29SD73nZYbWlP0QVKCoKqZBC3tT03as/PkaAL\nsKWx\r\n=liGN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"92703c0a9dad96887725176e28a4ac83640a3b34","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.08090126b.0","@material/rtl":"8.0.0-canary.08090126b.0","@material/base":"8.0.0-canary.08090126b.0","@material/theme":"8.0.0-canary.08090126b.0","@material/animation":"8.0.0-canary.08090126b.0","@material/typography":"8.0.0-canary.08090126b.0","@material/feature-targeting":"8.0.0-canary.08090126b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.08090126b.0_1596742368151_0.5015608399070455","host":"s3://npm-registry-packages"}},"8.0.0-canary.e8bf5b2ac.0":{"name":"@material/floating-label","version":"8.0.0-canary.e8bf5b2ac.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.e8bf5b2ac.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ad43985fe93829793737ebe46a235cbc73aa114b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.e8bf5b2ac.0.tgz","fileCount":34,"integrity":"sha512-qF7LPCADVbyMnLh6jf7ymAjp2BfPxlF0hSyYmqvCkvDTpUQaq1Pl0scmx41dr8AS15GTdrrDobekIN4sNHQbgw==","signatures":[{"sig":"MEUCIEzWB6XeLYibGthq6sDXAes3XbQgNrhA0xYHVpoDhIb5AiEAyBnFYAxKFX4rwu0oaM/ekRuGIqqsso9BzFxZs7sEn9w=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222649,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfLHsOCRA9TVsSAnZWagAAm8YP/0zSckw9a3DtG+dmlm3Z\nOs3Mx/gXyLo/Ay9c8v+40ja5wJ5kmr9akE7xteY10PAZoGHvfbrq7DskdNde\nJgMiIL6Yf7evYNArKs2g8p9Fv6ezyzM8pfgEa+TvfpKZ8Aa1/pIbLKeCBshb\nptSFkbAAd8V6PPYJcFRIhb5Uj9QrjU68EZCxUv9PCTTODlBCuwdFBNrPT0qd\nbnKVXD84QsRY8PwcS4YZGcU6h3Zne6qP9xmWycnBmT++yFZjZabqr52TaiU8\nZIk3bOmFJUWn1uwHW006OpMb7jivV9+1ooEZdY2hG+rAjrDgDcJ0UkOY76w+\nYkPVVMHs8pJEusTnjBN/mcmerD5Ok//lMxEFKTdw+i7Bo1WoUQP9bBX2nc9W\nfxd5ySAExYFC8OMbpTNdYNxwGmqFgOy5MSmrbNqw+yIxsZt2/UZAfGIriDKF\nHZjFurIz4uwlmRbgKES6Eg+hX20VxlN0HNavtik0GPRkys5t45h5Rq+rudw1\n3+kmX4L68gFHwdr1dteMbVOjeRBXnfWm5fbXepptm+WDpiz3n38z2UBjhBRZ\nxZf6crixKDvNX3iRGgNO8Vi/QXjX87VZPzUS8Xg00evGGUMnVR4DrsmLUHu/\npPqG2DR3MnkIMRV/2clPR0XPwJcNCTRuO+0UsAXp6GXvs0B6a0CsxCplsM8Z\nblXY\r\n=UEvc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d5fe47cd91dcff7cada8ca9b587eb8a924a211d3","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.e8bf5b2ac.0","@material/rtl":"8.0.0-canary.e8bf5b2ac.0","@material/base":"8.0.0-canary.e8bf5b2ac.0","@material/theme":"8.0.0-canary.e8bf5b2ac.0","@material/animation":"8.0.0-canary.e8bf5b2ac.0","@material/typography":"8.0.0-canary.e8bf5b2ac.0","@material/feature-targeting":"8.0.0-canary.e8bf5b2ac.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.e8bf5b2ac.0_1596750605769_0.986597056637071","host":"s3://npm-registry-packages"}},"8.0.0-canary.e3b746208.0":{"name":"@material/floating-label","version":"8.0.0-canary.e3b746208.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.e3b746208.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"423a86c10dcb767cdbc157befe5790e55e676e8d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.e3b746208.0.tgz","fileCount":34,"integrity":"sha512-vUTgU77eryyeQwgQehzEec3XxJriwHEAkDrSI4w9wH5vrf8DEodkEOHuxZu2W/RWFzx79Rr8SKqHK3DFVf/8MQ==","signatures":[{"sig":"MEUCIQCxz1+qcQvbbuXxf1N20R2QMEt6RmysNUSRSbrOgokBcAIgFk2sVGcdmQ4STxFJlaMNg10ikJ6IJb11muSOTPB0roQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222649,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfLIOrCRA9TVsSAnZWagAAZwgP/RmJ3PYGow12KacQypb3\n2BXInv21HMYXR1Dm51JFeOu6EbbqKh45eROb9E+Ff9MxXkFazzv/6Bumnu3f\ngC5sW9TD5MJCZTLOFvX8tW3RjNLUzdltWfYVlFnOE+JwqITXTzeJqfsUVzRC\nYoJrFG2VYAv0oJMr4IrBYvXdQMinFw+za4khVa9m+rhUkyXOz9DJKueZKwd2\npxt4tpaU7slS3XgW/Ate+rhhfRh7LciXwCLvQKfnFzqhY6bGnwpAVIealmJd\nycr1aDJnOe0nBUICAI+2w1VeFwoqdylQ1vbiyuY+RAVpvGrX/ZrRTU4P4J8B\nEKoy1UIQIe1AxHjc/aes7+YMErxDZWAjYHrKZpMJ3s2m/kM5v6nfPpLm0Q5H\nrAyqlUDDZnPm7OE3chd7PkltayMXxd7mfVME1G0X+yO+5oDvDHG1wmj7/baO\nwHbGnfM4S3sy3D190LUThVIObv3CKsSdiQ5+0DdZH19RC5A2Q+G9rWrq6bCz\nNlAdiICSWSQyfjFwrd/A8ZQwdjxF1x7fpSCerNv6lFIs1CjwxBYFjjQ+YD1d\ncnZdijyl4KHBsJxzBGdzxPHsyXYkrLNSLMb+kx5VUrdX+Owh+iUwpQJT8wfZ\nTPvo+KjYuyzejcif4AHDa5/qid6jIA9nrbWQwHgp9xvVqEys1DA0zjuOR0hr\nWqb1\r\n=MiqF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"565f03445fdfa2cc653bce8f5c730176a406e5d5","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.e3b746208.0","@material/rtl":"8.0.0-canary.e3b746208.0","@material/base":"8.0.0-canary.e3b746208.0","@material/theme":"8.0.0-canary.e3b746208.0","@material/animation":"8.0.0-canary.e3b746208.0","@material/typography":"8.0.0-canary.e3b746208.0","@material/feature-targeting":"8.0.0-canary.e3b746208.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.e3b746208.0_1596752811277_0.8871570271161573","host":"s3://npm-registry-packages"}},"8.0.0-canary.96a640534.0":{"name":"@material/floating-label","version":"8.0.0-canary.96a640534.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.96a640534.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ee50a555c0980b2b673302cfa14d67c7ba4a669b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.96a640534.0.tgz","fileCount":34,"integrity":"sha512-jxozEDdlQTGe5iI/JAu/vLCdVkchtpFSQw5yWyQwxT8mOOhRQTIOxKkwGyJoYqqfErim9P204c+UebZ+2Q3yQQ==","signatures":[{"sig":"MEQCIB8aqAs9uEqWYzt6iaF+vo0nHYPkWnWvFcSvxt4z7na1AiBsbGdx7Ggf1tZnt8QUnTDZCmQ7JL8d7O3svcilBBzAZw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":216403,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfLIcgCRA9TVsSAnZWagAAGQIQAJDW9j9XsUa1Va55jK0O\nwzowBKfuGvWTxS+s3s/1IP0cinS+Ah57Wv7g5L9GmRx2+w1jJ9kHMwwu10KX\nLxt/VeJuu2nI8Va1XUBmDU2CmIt812BFFHa9UvCQvYOUOHiJ7cVO5M2T4pyJ\npRKkOGLDgMuDxym5lRJLaX1MGWzDBJrZzeyuWSsa39PiJrxYMEY1oSu7qPAb\nwVjWezRUpjrYPT2CfpCdDy04lvOB7E/APNfkonVMJTpBdxkIZXrD4SUsBm1R\ngX/+IjW5U7eczrcGSGda52bS9c1+Jr0n4/X75lztk5b38po29ZI6XIdRm/Yg\nvDogcVpZWfnaBB5szFnTEXeUyBxXfB1MLmcBeThkUD5FIgevEWbIQRBWuP11\nl9rwMHQzEd5QGIon/ydxH5F+RaORhAv5w7Ck0ciZyTVSougkgmT6/czKjykI\nIRwa+LnI0Bzr8PKCwoiN3hi7sX0EngVjaIn/cWDREVLoN3CNMIKyXeG/gzjg\nsMEVD6U8BpQdFg0YRj2n6F2apLbTXPRIiMd+XNDuScf1J6vNAXmKfKwanClr\n5yL20lEfuPOKaLC6hconIWNdglDXpqLrD6TYAE38kfl2eSNjdIUk7szYTuj/\nQkceQj5+0pa3gIg5aOLkr8ThbGFLjbJoI03MUATbMRJBt/fOEx2mKz0NZvDx\nYAGu\r\n=zptA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3363a6ead1437d646dec8eb21cb2d5c5323e8986","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.96a640534.0","@material/rtl":"8.0.0-canary.96a640534.0","@material/base":"8.0.0-canary.96a640534.0","@material/theme":"8.0.0-canary.96a640534.0","@material/animation":"8.0.0-canary.96a640534.0","@material/typography":"8.0.0-canary.96a640534.0","@material/feature-targeting":"8.0.0-canary.96a640534.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.96a640534.0_1596753696061_0.6338156419195144","host":"s3://npm-registry-packages"}},"8.0.0-canary.9f9aac825.0":{"name":"@material/floating-label","version":"8.0.0-canary.9f9aac825.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.9f9aac825.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e54facf373fa07b11a92f348f7f6d1de051865dc","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.9f9aac825.0.tgz","fileCount":34,"integrity":"sha512-KG5GFQznpHl96BGjdSHe/IPDv52BVP+PnQhcMNB5RoJJbtkNxhTn0F43jUEFEYcutYjUegh0e16fqyP+MyTRNg==","signatures":[{"sig":"MEQCIAGerUIOfYgoOIPnt/xb4jM0i3443Z2gU4OjGXToRxsRAiAkfNFvhwNHdU5BnyMv/SlZfuq6TYhnKpAbZl7n6N2eBQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":216403,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfLb7TCRA9TVsSAnZWagAAMLkP/1szQWHwYhPdvA6JQgZz\npD6809LA6M77TZCNwPUeLhNl3+iXWjTpvbwoNFNywQmk/FuQCCjjKoFum1hF\nplQCYwJ8dtP2FRU3V5FV5hX6B65Vffbx66qvEM8Z33O1Y+DOhWsz+AzHZ243\n2q2L04LgWTAcTokJlgVdKsoDFiayOwQrV2w2Ogvhy3OdS9hO9xqRSRJjV5BM\nBfv0UA+zTQVt1YxVMcY9dqmD094Y6pyGz6ZlfWaKomkmNOnXlt0jQDW24m6q\nv94ktKXbvdQ39xAYMnBgD1qMQ5F/zTgtAOGMiIF9S5r/TWgTkmpnl3eRczOQ\nYvoZB1TBvaDXaS33KeDhPtXS43p6PTSIPW9lKPcTHc96EML6leMmXq6muqn/\nxYqNvSyz3rg/UbUK18GSIjBSu0bUWQ0kA2mjAj+K2tJ45KRMgX4XvlfAAUSi\nIfvjVFmt9vN0x8tf7WufMNK7VsXJxxsGo8Y/8D3NzuYKMtUSHLLWuW16XtHz\nz9j+eo3ZLlXgz22bzJTMUpoqjhpv6pGGo+POpmxFJ7vcFFDUPwhFFMjwm65l\nxRcT0vCdYTlgUz/f0lWLXvgf8CHVXuuELs+PBo1uDCkcVHq4UqNmpuojYEwD\n8mmUIg0gNpJ0ustlAqMHPZdZt5SxTKFBGHlMXpmk0mV8do7J9+TcOdqKoArZ\nRIKa\r\n=QJgc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b417a722353dd60a63448761d24a06d325b83f7c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.9f9aac825.0","@material/rtl":"8.0.0-canary.9f9aac825.0","@material/base":"8.0.0-canary.9f9aac825.0","@material/theme":"8.0.0-canary.9f9aac825.0","@material/animation":"8.0.0-canary.9f9aac825.0","@material/typography":"8.0.0-canary.9f9aac825.0","@material/feature-targeting":"8.0.0-canary.9f9aac825.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.9f9aac825.0_1596833491480_0.7389584480873621","host":"s3://npm-registry-packages"}},"8.0.0-canary.fc65fd00b.0":{"name":"@material/floating-label","version":"8.0.0-canary.fc65fd00b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.fc65fd00b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2c4725affe95f563dac40321a4a8d4f6e9bb133d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.fc65fd00b.0.tgz","fileCount":34,"integrity":"sha512-gMV8ffrfovhrE3ASA2Y9k9CVwavIngZgHt9T4L/Rnofox2eCpvXsdpuaVlHJFYdNhREiQiym/n6PMF2+sxpWVw==","signatures":[{"sig":"MEUCIQC8UE2In5a0IVu7NAz57DPtS4vc/v6WfIROkdR43in5xgIgPplOeepi9Lney3Mtt12EnBzAgkr/N40soEWggizxaAk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":216403,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfMWXBCRA9TVsSAnZWagAAUYsP/3cIflAtnv0G/QPgbQgz\nYEtxE6lTCV3fyvO1AGRgwKZdghcmFbCOSrTwLJH3+m+0DDYzMM3Y5mxeeI2z\nOor/oq+UzD4CS1Jz3gdKE38ZOtw5w9VyrWVtD7fnpW/XRZBLgrBFW3OBlYeA\nqyR9m+Rg33C2ZABfqAQpxVnaZIi76JTFwhu02RiJwE4XRw2xvdv6HAgwYsJD\nwRqk3lqkQnZY2m105BYvrrr8+FRskR766bxXjwwNZt+AL9OksGn9gQL/Ssbi\nE87tNbUAu1vp+wwpHZOnXwlOyinCvAf/4CTqIJIIIc9dkzmDdkW6pzhXAZUn\nMArvNb+FdcNHQSMYmi9vRJoeVXXbV3ricpd8D60gnyIzOKBpvXAAI+Wust/i\nmlM4I3r2Dsh7ZtaUTOnng41mpEjbHnO9bGMPRn0kTa0RV1oYhSXu8A+9bTO9\nKkHn8F5uPHCG+Ky1rdzKfCwKJuqOgbUl7qvxVn5bA0E245uRK5DgZJe51ZQ4\nQVWi9koYyHg1b1Ebu6eWldm2nUrXJaUFORSW5aTme2JNXQzxC9DlipOpna8g\nn9oszwHoglGwvOBztx0YfS0pPYMP9O9GFoLm2viyLskr3zyfBAzm6+weIQR5\n8ildgGY0bJsN+Lw95aXRimzEPoZSWihIF5+Eo0vkv6gyi0863zMSSyP46qh+\nMl2/\r\n=7dKz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"fa39d9d1e753796086537bc71b6fa2d2aa21a3c5","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.fc65fd00b.0","@material/rtl":"8.0.0-canary.fc65fd00b.0","@material/base":"8.0.0-canary.fc65fd00b.0","@material/theme":"8.0.0-canary.fc65fd00b.0","@material/animation":"8.0.0-canary.fc65fd00b.0","@material/typography":"8.0.0-canary.fc65fd00b.0","@material/feature-targeting":"8.0.0-canary.fc65fd00b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.fc65fd00b.0_1597072832617_0.5723548249775017","host":"s3://npm-registry-packages"}},"8.0.0-canary.02e372c5f.0":{"name":"@material/floating-label","version":"8.0.0-canary.02e372c5f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.02e372c5f.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"19e77acf3a7a4134ef55c89f914ce174154dfecd","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.02e372c5f.0.tgz","fileCount":34,"integrity":"sha512-kNi40vwHEdxJGTYsQwJ/DZpkIxUi2bdmus4Sj0xsqc8oiTD8FgsXIMzUWASErLVoIZ7Hgv0RS0+eshE0kjHGtw==","signatures":[{"sig":"MEQCIGEtNzhDRgD+GT+BdT58Rgay+H+oLoR3I+TXwknqjkEUAiBf1EGKR+abtXVAq3s8c4UtEQl8P+lyozqN8xpjOEUxSw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":216403,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfMWxfCRA9TVsSAnZWagAAR9IP/jebXPC3QVRRR7EeRiC6\nvNYgbtsDSb7IVquBi2DnBzr2g+YATDqAkTwBWlcYnSucP2flyIrNq13gI2vk\n50SRqjVFA7q1CSgkhA4ZU0zSB+26hV3XVBG17UOANwoenpyzKf3dF20nx7pY\nKgk4n1hDyhX1ccrjNPKsbHR5u+MMnFJxeAtJVo5vGiseK+MAlDIWvz2Qwilv\n9ba9C0afXuCm0klqiUMhMjV4jt143mF/kBKyAiWG7mpWKTv2GaqNn/esBCnw\nNsm+2sB6Kwu4wiy2obFcD/prC5tHXkCrkNooOGDOeNQPhYd8j5i2CcqGNR0q\nRTNuWQi+bcTgwX0xypFPg5AGJghlYLdKY4rT6wLsyzfqb5CmhzPkpC5HxuRo\n3ctKFWfG8Eg9xpg9HlWOdq0AICfcJKmpF6EkoSWMeIoUee2HNZ3DoiAQ4bGG\n35WGH7fzoOIezvEJdEHXNOtjFW/il2Cb++CjQPYyNYcOvkKr0IntzTk3daRl\nDIUU/ft8dm6lPTdcs7PaS2/RHCL1b7570NkAat7Mwid6SwhRwIn7TwhD1MbI\nMASMait2Tw1t0ls7cN78HxoG6Yi2mTN/jb+TR8WI62NV7prXlZeC/NVwNuuM\nDzRMhU84iSrH+DDXJhskxF/nJmW7jdtjoLSr3QsUTOTRvB0DhkWOdNYl4s1d\n3N2m\r\n=GTCC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b765f8699fe12742bc2032a8df7cc23807ec94b9","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.02e372c5f.0","@material/rtl":"8.0.0-canary.02e372c5f.0","@material/base":"8.0.0-canary.02e372c5f.0","@material/theme":"8.0.0-canary.02e372c5f.0","@material/animation":"8.0.0-canary.02e372c5f.0","@material/typography":"8.0.0-canary.02e372c5f.0","@material/feature-targeting":"8.0.0-canary.02e372c5f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.02e372c5f.0_1597074526946_0.304318298689811","host":"s3://npm-registry-packages"}},"8.0.0-canary.66669e3b6.0":{"name":"@material/floating-label","version":"8.0.0-canary.66669e3b6.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.66669e3b6.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c391ffafae2fc78461e9b8db05e14b06a53fcffc","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.66669e3b6.0.tgz","fileCount":34,"integrity":"sha512-HOUwUV9ubgeRkkwss6Mti7EN/Zer6ZK4Jx3lckBM1xBnzASyHNx/Em/gnah17Mr63DxR4GcVhTNZSPlXGKYdyg==","signatures":[{"sig":"MEUCIG+bqoVtDKZw+k3DZ9D89PVKThFGQHf7ZMqvzTfHYy98AiEAv6IpgQ+KbdYMmtsk8GT1omS4V8cQuSYMOtX0jK2yv9U=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":216403,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfMW1OCRA9TVsSAnZWagAAojUP/0WxpI1v1PW955Tlm46P\nm22vP7rs0McqtPk5P6JTfTh/MtBLQFuzktQBs6kw5nnNxrLQ6n6RD6KP9f4O\nxd6WjPYsEpsZEx/UX6/hEcBpbedNQm13Sg2IhvfMgvI43FcGl6z3elqQdV3Z\nMiVQQC+urHvdzMewvDIi5OW9Y/jfja0W7l5aXOlEB49FzA21y7ppFbsZiMND\nqGjxshtqPXSRYtXoaHn+l8OIw2rufO0h1DW4SqhCq32zGUbKknimANdGHC3M\nFSAfVuNhF5O+GD5pBFr5vBZD/DqpSGSxHbrJ54WIVJmMo9lA48ReKc9IaGYf\n8tjg4OkMLzGwYGjtxnR3cVSupG2K+QI2HUQcd6JBcJNDzaNR7j9l+U3ug+9+\nfuhmlfXZLxg0e2OOBpAZXN9g/EWbF/JyNvyUH3qNV5T9/BjXsi8G0S+8wCoq\nVIre1/AlkkfmQk5QsAMd59MZfkmjRiNz9op+0lawEHH7WpzJSngKwzJ0lLpd\ntW1AXbLDQb58dU1oxLRQg+HaBrDVAHKwI8yKXOZdGorzn9UjRmDhP3gWckhu\nu8CedBOGuubuOsaXwuUruxTHHEgBkXJlXahDLO9J4F8fDpDVR+zGd/3QmKKz\nFUorJwaXjCd5z4L2EbCojBgNVOwitI7OR0v8i53nIIsc4Ww0s+tfVlZbbmRP\nkBN7\r\n=6iX5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"96a6a7d492075777ad5f7692328b3bd50153bd16","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.66669e3b6.0","@material/rtl":"8.0.0-canary.66669e3b6.0","@material/base":"8.0.0-canary.66669e3b6.0","@material/theme":"8.0.0-canary.66669e3b6.0","@material/animation":"8.0.0-canary.66669e3b6.0","@material/typography":"8.0.0-canary.66669e3b6.0","@material/feature-targeting":"8.0.0-canary.66669e3b6.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.66669e3b6.0_1597074766102_0.9041109659249353","host":"s3://npm-registry-packages"}},"8.0.0-canary.6d1ea9761.0":{"name":"@material/floating-label","version":"8.0.0-canary.6d1ea9761.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.6d1ea9761.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e9cf729464957a3d4add7d796a042758bfc40831","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.6d1ea9761.0.tgz","fileCount":34,"integrity":"sha512-LBCrsvqevMAH5XlvzYMQVyFfYMouQ8syJkJs3QndaCwTlvy799kELYXNxTjwT63Tdw7dbiYIbOY6lxwSovZp3g==","signatures":[{"sig":"MEYCIQDBLFMCm7F87GWzMQSO/AR7yV71DoJ6Vurcl8ALwFGmPgIhALUJRjPWIelTBI6sfCThKJJPNBMMPVbTOe5UYT9eo3r3","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":216405,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfMqukCRA9TVsSAnZWagAACh4P/R3yPxMO/0eB8ntAZKfG\nfsbuoSau6tagJxCKdbYx3fOSmhwkMory0VfJekKeuwQjXH+1AW5oUJRbLWxC\n7Pb4IVxlEll6b52Xpa2NsZo1BDCVPDjsM7Ebe48kdD8lNwhc2EvLt+N20/Pw\nBNTotUkp71usAW2uvrVjCVyf4RfZCNVtPDgfb2HqbfvYlCOepto/LvkKrZLn\nosPkAcwQ2sh7yuQqy70jgsT50Dw4/4iqq3M3czCLHGdP2YSOMiTtf+I1IL/+\n8RZPIzi8/kuJV8QSDeMeK5CG/KvOa0qhMoV9RSobA+fZNavUBfkDkzWZMAMK\nGRbjn71InIFYH/3bufbP5jy0XP70SL2/rTODThSor6gOhwMXobnHz1xbXVP1\nI/ZkhHAG/uy4ktY3PEc5PlvAYcaPNa+r8KYdwV+jIf27Ek28/SexJe3s5/Wl\naLi63I+kobVUWMnVWlrFXxjeFQ+JfG2pH4hkpLyKtNG+popr6ov4Nee3XO8m\nwsOG51AoWWnniCoQ+VJfA4b/x2NXx0KUohZks5NRL0ZqCqx+OGY01Sb7wvWb\n0lvLdybJLSV+fsunxTdHbgior8g3xWgXjkBNUn19Y+HGri82cTqXs3n8BZxo\nUez+ziPW0RLsqHQQ1MP2GOJsnPwvcx0eTtoEbA3r0ETH+89g2nDDl9eadF32\nn0rU\r\n=i8DY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2539ff1cdb03aaa0365880e59b2705e6f6ff4229","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.6d1ea9761.0","@material/rtl":"8.0.0-canary.6d1ea9761.0","@material/base":"8.0.0-canary.6d1ea9761.0","@material/theme":"8.0.0-canary.6d1ea9761.0","@material/animation":"8.0.0-canary.6d1ea9761.0","@material/typography":"8.0.0-canary.6d1ea9761.0","@material/feature-targeting":"8.0.0-canary.6d1ea9761.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.6d1ea9761.0_1597156259891_0.7572599180485338","host":"s3://npm-registry-packages"}},"8.0.0-canary.79414bf9f.0":{"name":"@material/floating-label","version":"8.0.0-canary.79414bf9f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.79414bf9f.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"22c532c11250eebbeb5e9947533cb94cbd2cebc0","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.79414bf9f.0.tgz","fileCount":34,"integrity":"sha512-3asos9DwibE7gnygP6n8lOREAcstGv4SfMDwnm27J9E9sqehVq9K+xHSp3eWla0VKsyODZQOb3g7KxnQw9xEVQ==","signatures":[{"sig":"MEQCIDwc+c7jBVeV11TytdomkflJYEeRPYfdzLD4CdHoFmfeAiAEOB4FCbTNhGUop7cwGL9y6fhPI9n+wazN2nkoF9d2jA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218037,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfMusnCRA9TVsSAnZWagAA7zwP/RR82c8S03Eh/9gwGc25\nPMFXBrfayS5Ls2jAS8jRX9r2KmxVqpJmS84+9Lxl6P8B1lmepucBvqSSG0YU\n2WG9riW6ivY+9G+hMRABd5nghHKwrVHyKYyol3ks1bGGAAV1Sz7DCoO4vvH+\nX48s4zjDxBLHdz5xwjxTpHODTVNx02s8KqtKtoyaFKB+msuQdX/uvxequGnF\nJNOq1OPG75paKdfOCSzmDhuAOjbnraSUwuhg0YK5JXCjydhHODC7NZ/rHw1v\ndOoZwrWm5n7j7mQe/B708dzvXBiE7idb5lZLfrVaolosbNIi0ixkgpS/rLD8\n2yvs+03l4A1SrQJT6dbxHsCTWuXJF3AAv2SUT6YdQzQx/6Slx4X+ibvp6sN1\nuT232kKZdF2uMK6erN51oA7WsEGGVqtwAV4wsGxuAypZLMlBvMX9ZcgJitIv\n1Z8oEKAiFA1mTCQy4GA3GIBuzFJPY4ijVzgnGzO+EejcdA0Us8K0NhQjIl6e\n/dqcvX9YCvNoyA/jseFnzEyRCvwwjSXQRxLpuYh0qORMqkfzoBYqmuK0z6rN\nTJ+VLu/lBxVz5OV0lhkztVdkQqnU0ls76e+FSmsYEvh3Gteoz/oufRaZl3uK\nrDKTR5dRvp3nuPl7Y/ANj1mPvLEyXTrIqUcCxdS73PJNgUQupC/7iVk4p+gV\nblMJ\r\n=kHGW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3101c6ef84c1ef8d9afdb44b6b6b3067c2f5723c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.79414bf9f.0","@material/rtl":"8.0.0-canary.79414bf9f.0","@material/base":"8.0.0-canary.79414bf9f.0","@material/theme":"8.0.0-canary.79414bf9f.0","@material/animation":"8.0.0-canary.79414bf9f.0","@material/typography":"8.0.0-canary.79414bf9f.0","@material/feature-targeting":"8.0.0-canary.79414bf9f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.79414bf9f.0_1597172519222_0.43053789051743463","host":"s3://npm-registry-packages"}},"8.0.0-canary.85a5272df.0":{"name":"@material/floating-label","version":"8.0.0-canary.85a5272df.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.85a5272df.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a2f8474d092d965c6543db132da2c433908918fe","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.85a5272df.0.tgz","fileCount":34,"integrity":"sha512-MtBR3r8z6IU9B0KdydcuVW7kxtIG6Or5xtY8dK2bybiGxCzuu+/jMuEzbAOox6D4mJC9E9He0W+ZxU8zTA8j1A==","signatures":[{"sig":"MEUCIGnMhuCe2KfIeiDn5lvXim1MApUBiLRxmdF+kvKWBu32AiEA+qJY9HnRSC7BoJwgUn+wtVgcvPNv/UVIWbUehgUjzak=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218689,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfMvq3CRA9TVsSAnZWagAAknoP/2X/ar90NwxWCtJ4p1yi\nO+D46j6ccF34Kq099zoVFrAJiDOaCLNvdhqrzbthkfwiN4SQPudwrsq3HTfH\n1CUEo0Tz6h9TgkinmPHYHIQ/DVcQqB7YN++PSckJJIWSjQfpKGSx4ifVCmJi\n9K/MpbQdpcz+MQOcY65Vn2Z8Ul2OR8dPOBiVyXLDS5RiHee1AipjgrMsttns\n4tYj0WELh/0epU1CKFY+muBZiLYzKbeORuK+xutRI9Ih5V2JvxtsbajFKjiR\nviCw5hWNMgjtu0yqmFzwO0vTJHFjbflf7aJ07RG4sur50am2xyOWw/lCkVxu\nHLBpjmcvn1qKdf/lPIZk9kP7+cOouDicD2yMJqM5l7PgEf1Y/3UQNt+aQGOg\n+Rx21+y7MAKLm5mL/TbNwjcr8EoQTVx783tDWTU9E9XYcG9KCxdr/26Jq5Ho\noyxiunhoiYgzO8JIxzQqkJRECvAiHWnA6VL5BRH0E8Hq9Vpxd+3IgCTKfYEo\nIltt55GqU/mr8rW1f2zcw8VsXNZAlXGI0NKtPfB1j7xqsTlnzeCZWA5BAYaa\nUC5F7d2PgETnfp47KoF+vjxXEppWNbHvvB1iWiIXb3JocBRBN02YL32HktAS\njDyc4KCdnuHp5xP2REkIvdWLv9Q7kzYiUlgzMzhAdR67JFYVbd6FgFRnCxKb\nF6+f\r\n=HuEQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"070016d39c8d62feb1148d71182053d37bc35fc6","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.85a5272df.0","@material/rtl":"8.0.0-canary.85a5272df.0","@material/base":"8.0.0-canary.85a5272df.0","@material/theme":"8.0.0-canary.85a5272df.0","@material/animation":"8.0.0-canary.85a5272df.0","@material/typography":"8.0.0-canary.85a5272df.0","@material/feature-targeting":"8.0.0-canary.85a5272df.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.85a5272df.0_1597176502598_0.8813209534619892","host":"s3://npm-registry-packages"}},"8.0.0-canary.fda053eb8.0":{"name":"@material/floating-label","version":"8.0.0-canary.fda053eb8.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.fda053eb8.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"311cc938392883506473d31011c678dcbabe5bba","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.fda053eb8.0.tgz","fileCount":34,"integrity":"sha512-mzYEythLzmH3dY2fUUMriOMZDbGPoc+dHvhN2FTpmDo01gaJjtc3PCzUw2zIK23lxamC9ZjGXJfLH8gayMBTyQ==","signatures":[{"sig":"MEQCIEQQ3mD0ve++YtnKQBZydGM9iLzaVW2pqiacti02GZ7IAiAwvH+Tt+xQqeHGymHX9xqRgQdcgiN4xCRqpYILy6oa2A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218689,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfNEtFCRA9TVsSAnZWagAAEesP/3EYpEplk8pjW5kpoNbM\naFhgWqs5iFlIwu25ksb5aMcPtB3nF9+AxmuCFZVCrv6JRn/ZKZB047+N3okB\njLK6/N7tSSG6yoiozedsFSNZOc2ua9jeuz80Wx2mH2YGogyPIh50KU3G395v\nb31e1IJk0e4jgMd31rgmwZs8kzt9XvUSNzGZ6zpJQEcwLljA5xCAUcokruJ8\nzaXTV/y2x8GmoZEby1ob37aB0zmOe6ItXDLBo2basZXmFadx9ERElUBSJSib\nBhyQCar6HNDm1YY7M0Qz9QAVuiloWlBObBB5Pk4DpY1y1WD/eFmkbxc8QfBW\nHxuQYykcOALRe03eY9IDczzwrh8mfu2J0tUN/jlx1BXpKv27QVmI2YH2v1p7\nvAMurKZQUNz39jVm2UdK+o6RUTDUV9BqcJAGOf6dfip2yFxV8C9Ln2l5jJmH\nL6VN54IO7uHDBlNhiZCI0P/F9uzijVqzbxfhStqbH/8vXTxeK/miNDZDElcL\n8CbKCOjrHsz768VTigS6kWChulgHkaIstj5lYbRb+k9h2n8nbjnzxQWUC3d6\n/+CPw+JYeslb7DdDgmAJIdWUf8zfm6+vWO+5TXrTUhsbOxSqCGniMi5ftMq0\n/gtpkvOlBPyRyU0082+l2KTiGQ4ZGeEkSRD70CUHOpn413Xi8cPoKGuh+XoS\nJG65\r\n=Jywi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b92b594784940e2fbd248c33d60198f7f2e0ff71","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.fda053eb8.0","@material/rtl":"8.0.0-canary.fda053eb8.0","@material/base":"8.0.0-canary.fda053eb8.0","@material/theme":"8.0.0-canary.fda053eb8.0","@material/animation":"8.0.0-canary.fda053eb8.0","@material/typography":"8.0.0-canary.fda053eb8.0","@material/feature-targeting":"8.0.0-canary.fda053eb8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.fda053eb8.0_1597262660966_0.07112789618369364","host":"s3://npm-registry-packages"}},"8.0.0-canary.760873445.0":{"name":"@material/floating-label","version":"8.0.0-canary.760873445.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.760873445.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9528a575e68887b8b6769103da835b569db2538b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.760873445.0.tgz","fileCount":34,"integrity":"sha512-bZR1xtyC8AYQJY0UoWaBrCY4yJcDNDDuqvigJ+JQ7Dr9iH9qDtK8epO7BZu9Jg8LBE6i8JXirBYzRAiD0XabbA==","signatures":[{"sig":"MEUCIDrUzxESJM3cG/K/AjjzYHI8JExgriP/5kuasgwCZFr3AiEAgJ5ywPYtfVcqWKE05YRBCMVHZ3F3L+4B3RIsK5v8sg8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218689,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfNGJ8CRA9TVsSAnZWagAAG7EP/jL3JVYqPaJrB5P4s4jt\nzXYjEI2q39nAmCbG5Se5r4pMDtRT5ET+AQoV3dr+VnrkRlfdQGWOOwIeSxPe\nkprJbwu+b4K2/se70JLHztshvQ9TAV22ZYzqKUaa4NjntQOF+e1H3RSagPJI\n/6eJJWlmIcE1nAiUtjO3m+qs2s638QICzlSAp+ajIgD4yZf60uFa58DjZcCs\nYdnmDEJ/8gHQlpgNdVJEL9fjcg/kBaxOpIcBhImgJSMk9vqugIixkl3dYjL0\nu2HCseIuf58SOhAeC/DtqX4FPLYiXko6KGGwN4/Byyt09L0/C88E039ay/4o\nAd+8VhMHT0GJpnl+0rsAqeubYKw5TJOue4u8G0WZVT8aNMnnM1HLpuoqDdj2\n34iIxZZRa808gIxH+1ZDL/Ke541mNjncsm/hOOwwoSKauj6kVIzqp+juQcAO\nRNbxwc9uvd9s218PyU9Rrd55PrPw5UNccdplxJQkYIhxEMtaOWXXpeZVSIaf\nl/ccDCK8PlsVUeF7DFQ2BxShUP/Bdehu6iSbPadDT5E7HpHgAnYI9+Qj6LhY\nAcYumRyFbz8kflAsKeqSS5bofEapEd7pFtbFtNpQCGGQJD3ZRJdLKpUXWnvK\n/zZU0jR5SzBBxnyvuhU2fXwsoMpTnDiSql840kqRg0V/MvmFaZDcN4pISoUZ\nzZfa\r\n=Kwvx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a830629b92051950e9e15bdd288ad87238b7103e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.760873445.0","@material/rtl":"8.0.0-canary.760873445.0","@material/base":"8.0.0-canary.760873445.0","@material/theme":"8.0.0-canary.760873445.0","@material/animation":"8.0.0-canary.760873445.0","@material/typography":"8.0.0-canary.760873445.0","@material/feature-targeting":"8.0.0-canary.760873445.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.760873445.0_1597268604064_0.9176882472530923","host":"s3://npm-registry-packages"}},"8.0.0-canary.2f4711a30.0":{"name":"@material/floating-label","version":"8.0.0-canary.2f4711a30.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.2f4711a30.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1a032508f4f8d99d76bfde0d7851bd11f4d5f548","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.2f4711a30.0.tgz","fileCount":34,"integrity":"sha512-L9RtW9DNWq4nP6S+8KmDc7XAn00b5GQ5pCSH7gp/A1Vk5bFUKsz3A2dOpQRxxP09MSVkbk0onDMKSOMkodaDOw==","signatures":[{"sig":"MEUCIDMPhH6cmRmTuobvRp4MfoV/HXygwuBh9wC35jXY+VtHAiEAn/GGHf2WWY2fzLZGvQX9RJPfqSkK+aoOyH6ha8cMIT4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218689,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfNGTRCRA9TVsSAnZWagAAmT8QAI7+1sFAybMcO2lqiVHo\nvpZbgwEtgPR2c3bRCvJSeOqQjQRGNWu4jGLnxr84MdjX8UvH4QWc1oUBgN6l\nTDLl3P1J1RNw8zrSUQn/cP7EvEfusBrWuRPpVqLN5nfzgQNstDs2XaY+3KmR\nKjRN1dB0Tk/YmGUhpZxrInU1zoRgp4CrJAG4TIG7JZ7PQWzS/+O9IjhZoev6\nmhjXQEhMuVWZ0/tzWWqdFF1d4/jbdqxFqpf9WMpCekKVHqOaJC64R9oIlIgx\nAAPhZIAESaa2O2X1gZzENRFG5Qe8JB+jLv0q5JTe/btvu5jXNO0Sgag84n4d\nebcZb2DEXVj597Hsgxe5XNTGT2CTVeRuUsxBZvgpXZFOYGFZ53Ntu7Fgadkq\n/oxq/LuKLsc9uezlH5OSY7ga8Hwm+NjiNRyJwjxATQCbiHnGg6vHPvyPTJ0S\narKKiN0cC+HyvFMme3a1szeHVoAfalLYSDUIFAcHA/XVZzY8LJekYy+CLW9v\n2Zt9Z64ISqyCo2t5VuZgYXHGnVPvz4tW5eU2e/3qk1s0QW5XZgQXG4rf9Jl0\nrdh4wBhy6rxd4zpBsKTEujEKdl15rfbQ7iPJjAp0DXu43PGF9LmB2ckEPvkb\nG8icM4wxUyfCdDlbBDxhQxwpT6cEsWN6j1flnn273qA0+wQAA88Vupu/D8c2\nCj+4\r\n=WcSI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1347e5c15ba848f3525dcbd08fd0b11061e94116","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.2f4711a30.0","@material/rtl":"8.0.0-canary.2f4711a30.0","@material/base":"8.0.0-canary.2f4711a30.0","@material/theme":"8.0.0-canary.2f4711a30.0","@material/animation":"8.0.0-canary.2f4711a30.0","@material/typography":"8.0.0-canary.2f4711a30.0","@material/feature-targeting":"8.0.0-canary.2f4711a30.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.2f4711a30.0_1597269201124_0.537064999202729","host":"s3://npm-registry-packages"}},"8.0.0-canary.2d72f3659.0":{"name":"@material/floating-label","version":"8.0.0-canary.2d72f3659.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.2d72f3659.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"da548c97dbc148eb93ddbc9f20f3a809a9737f8d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.2d72f3659.0.tgz","fileCount":34,"integrity":"sha512-JXoO26b13inP8eaEv08tDrFYXBAqy2wJOv7rREuLkaWysTs1Fced4vVjFm+OZImv53SJH/XLz8H2Yjy/eprDQw==","signatures":[{"sig":"MEYCIQCacWK/tPhECtA4pj9ssni0YwjWddPIDPY7CEK9ERMvMgIhANm4Vg9UFlkl503SVkn0izAMrWmZT+6SMLbuBP+B1kr1","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218689,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfNGaVCRA9TVsSAnZWagAAtkUP/2avI7orMFJM74Xhvmo0\nqjSbY9ttBW/aI52F5n2m61OzpRtMC9wfaJ4alq1pJ+RHolWIcWIYsoq3ViE0\n4jikii1sebnFRU8Jc357fL6/IsULV5h8bqTju4IqF7zTjt/VsZQoe/O7JkHA\ns/oQHtsa3CqLq0uKEDbcLqh/u3vkTJUX6UC/mbWqbfh4r5DoLv1aZ8Ab77HP\nI7EjOY+E0RG9CCs07A7t1HO4qyN1JqDSJM94wUAVVeLI571kzXYuDfaVQqRO\nHcS4FFuq0yMbwKfHeeW/tEnhR2gGkmWWLpydhKK1dX2sL9N5BQMma1cpts6R\nMUiH7nCVfOqD+KHmR3nyBxo5iwv+kcU4u+zBaaeAxJwOanFK2MD39CQ62xw1\n5BYlWGY2X1/lEcGrQjh9GsSkpeD4stwc/nwBEXSICOyVHEMThpyIrnHvJZGy\nuPqU72nEjPZWlC8ka/mUn/9wG7MzQSAeUihtBu3IcXqac8ElIxIHtOUHv6m5\n2is1DdyQhncm1A9nBYZQ3pww4GdlWMx9HFfz9kA9Nu29t9ukxBOM2HGLM/z3\n7Y4Rt1Q5LxJINtMXqYHKRkFb3J8oZVfjQdn53Hy2wBH0G/HagUNN9kH6TNQ5\nsv14tI2/JVDF5vunfu8g/sHVfRezhuMVTDPtHGm12Te+2mqYZRgNbrooX6qF\nGMfE\r\n=b07Q\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"de40c24a4d850a3bd4269dcebba821d972e01c19","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.2d72f3659.0","@material/rtl":"8.0.0-canary.2d72f3659.0","@material/base":"8.0.0-canary.2d72f3659.0","@material/theme":"8.0.0-canary.2d72f3659.0","@material/animation":"8.0.0-canary.2d72f3659.0","@material/typography":"8.0.0-canary.2d72f3659.0","@material/feature-targeting":"8.0.0-canary.2d72f3659.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.2d72f3659.0_1597269651563_0.1179707714967062","host":"s3://npm-registry-packages"}},"8.0.0-canary.1fee70a5e.0":{"name":"@material/floating-label","version":"8.0.0-canary.1fee70a5e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.1fee70a5e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f316d63c693a8a5f183ff437e17fdfd635b011e1","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.1fee70a5e.0.tgz","fileCount":34,"integrity":"sha512-CHf4nssWbduHvHllzxLwWL1P56HmKauF5XcvzwsA0QKS8rt7TOBL8ROeiZchUf2YZezlVf0haaaIoqhh6BmeEQ==","signatures":[{"sig":"MEUCIDBgestCpZOKDVQyEmABVFiRQWMuXQ7W5I3Q37tw8BTFAiEA2854gS7CMtsnqvOi7ejJipr6tqDcZ6bepQgc0al1rnc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218689,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfNHsxCRA9TVsSAnZWagAA4NEP/RAMjCW1v624mHjE1EhC\njRh1Ju3uelf2YYokWb7nh61LgY8xw8dqPC2EHgCPTetkW1/ps+RsU9TrX7pw\n3nrtAJaTupFExnKZlv7IencEOQ5eAlbAfY8BeynNoIc+foaFxO0C1qMtUn9a\nYbG/9/WmTsxNwrCJXJIMiEb/NoynDD9Ku0KoaVHiAVsynxnEllQWT78tDVbA\nxxHhJc5DuuvXyuNuETYFx87PJ6I3lcA/UaySdycThYmUmM28j9dXaQx+05mF\nk28LsTi9fbpKDc7MfrUI6oNHXf7lP7gOUd/rajqZ2PAMrgJ74FOiqNw9ZHzs\n5mccLo08biXyZSJlB31O6s63X3TEBLjstTnAfuVtd/x4fQm8H1bzrLORijM/\nARoPvV/48RMJ2i+4RQTJXMc2Tiq1qAnShOGwCUbfE6IgwlNAI287t7yttUqz\n7jYhWtvQaF1rHGfah42uStKXBX8yLzgoFCPazxfmVUlJ02nB0uL5ifZdtXAn\n/X0Cw/dC5BKDhxUeX2lgOUrrbhjKKESeLA3qaN0VM9L3FX0SDnjzzyCkUY86\nuabDI/O35tBcwVdz1TeCocu7w/OwIpsk4Z1IAGzeXNR4+ohct7kcFuG84yIn\nEmAzJv4dvB7hibbeZHBsNdtmogvbPpIZKs1BzGn3w5d26UP/+mM9mw3w6XVp\nIFnv\r\n=t41r\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2e5eed4b73395e9cae47d93ed6f34f0dc0467c28","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.1fee70a5e.0","@material/rtl":"8.0.0-canary.1fee70a5e.0","@material/base":"8.0.0-canary.1fee70a5e.0","@material/theme":"8.0.0-canary.1fee70a5e.0","@material/animation":"8.0.0-canary.1fee70a5e.0","@material/typography":"8.0.0-canary.1fee70a5e.0","@material/feature-targeting":"8.0.0-canary.1fee70a5e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.1fee70a5e.0_1597274928947_0.02199798869560543","host":"s3://npm-registry-packages"}},"8.0.0-canary.023f3fa34.0":{"name":"@material/floating-label","version":"8.0.0-canary.023f3fa34.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.023f3fa34.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"716d1467b89751bf0b9ae25451d026ecc4bec1ab","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.023f3fa34.0.tgz","fileCount":34,"integrity":"sha512-f7GRe4iBUl4sRylv4W2eeYvRwzSNuGR2tagAf54YwM7SoElDkMItMDulm/iEsNE5tlKzDJ5gdDlKquiWwOu5RQ==","signatures":[{"sig":"MEQCIAHf1KwWk4n+f47UUKOUNFPt9tf98nLNo6hrz3TJ0o/UAiARmAOZ9EJbPp8z0586oHtUlZ1G1nTZ2N7/0AalX1gSgA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218689,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfNJOBCRA9TVsSAnZWagAA+qoP/ihDqRKqw5/sHqRHG7ZD\nWUHfn4UYePhXrgwZ9NgSh4lbiZmHfop79y7a29CRIwEBj0ghwlcC9OCy1jmO\nx003rHO04gAnAmJRvrF6q110ZS37Bdi2tMzG1dQ8KtGuHTU5OenCRVSPluob\nlx5gy2E7hVbynyyC9j48lJ1qdwZWDFPfGZ5hD1TU8cQl/7quxgbqjl/+yPi5\nZRf4O/GwPKiaagM/mNaidegquRCS4RBW6PpJ6qRawAiLsM8+M2CFWK3MsQ9T\n8nn16Xb1ZUB8LHT8s4i7xzcVHF3qhb6XfXIDRjDciXEPAS6N5zbhF2UhhDnz\nf3igk8VZjLUnz85GC+Szc3FJ7yc9PmM+HkWLimKxrHe2zSFH+8ptMxuFi9kS\nuy+e5k/uRaBfTiSCVzeCyd0IcObI8EU59PYD+QwJ49j8YggbuPWdSHHiMJfe\nTLxs//mHAXxDCBG+8vaOUnGq/dipjY7Jo3a6CsZ81YydqYc7mUXkrJ+6tR2l\n5FvjuhKpIt/rn9J2MpmdHtCNoG2bFjk0BvAaposBavvvcaybV+6UOBbcBAkN\n2E5pkqmhbjNl67K+6cAYhQlWoBAGDJg8D9zCyBnITCPO4wWbpagIDu3oK+YR\n3XnUAQc6ziGo9UVOz82ETqYFCC9vouWZRv7zXWiZ+DUbzJRi43WirOp/joZW\nWPBh\r\n=L/3f\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1a6538d0b407fd8e7a7de8e39b4ed51bcefc560c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.023f3fa34.0","@material/rtl":"8.0.0-canary.023f3fa34.0","@material/base":"8.0.0-canary.023f3fa34.0","@material/theme":"8.0.0-canary.023f3fa34.0","@material/animation":"8.0.0-canary.023f3fa34.0","@material/typography":"8.0.0-canary.023f3fa34.0","@material/feature-targeting":"8.0.0-canary.023f3fa34.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.023f3fa34.0_1597281152650_0.27609586561536537","host":"s3://npm-registry-packages"}},"8.0.0-canary.80f3a9e5d.0":{"name":"@material/floating-label","version":"8.0.0-canary.80f3a9e5d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.80f3a9e5d.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"aee09826e8eb5ce1d26de4ec78d3665ec8c9b172","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.80f3a9e5d.0.tgz","fileCount":34,"integrity":"sha512-UC7JPn8sOz1+ziKjYjcWaE9mNiMUwEXJ+paopRGypc0Xtd1DKS+AkunEXAMYUhup59aUx4i9QzP+dlXZ9sIU0Q==","signatures":[{"sig":"MEUCIQC8M9tYBba2Bz4CrU3pD/58sL9whlmmTk9dxUAqawlrEQIgClSh77Awg5fHXimyU9EqrSna6Xw7DnUbvmWfnfINokY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218689,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfNJdmCRA9TVsSAnZWagAA24YQAJW1tB2JDsxw/gkDQX0k\nuSDiGLk/7uSS5lTtDu61IVEm0fVAO4szTA3DGzSkEKHE89xsVCcldqL0UkV/\n64XdDUTscNoX28zcqOBzTgmM1g5qcBApOkxSc6DeThvQjzP0Yf7GJXU3n4U+\ngwVpiCtKy/W+nDa92n26lm4ZNeUSG0650vmmscpw0NUOuQI4ciuvu3Bi07JZ\n70+QDtJThBNv27rUm4q3GlN4Iw6Q8Xc78WfeMyTA7TwJEJ0bVLUwDYwm3ASu\nXvtoduMe6JlKpILS3zLG+ApToGpjstMlgVTziwHxUOV0YJBSyBF7f6Vu+0bo\nwkSNOrBe3NRpuNWRLkGjSWDGq1xUE83NXNMytmU8v98817SCpMcVf8Oz5zBI\ncuFNPWTLlzaCmXK9eaENAjEjI7/LYcqflPKr7CmMeW5YBXQJQXN6x2mFwyD6\n5NiKsrTt6NQq8qKNCawucm1JFW54eVuIkVdWyKQkU3n5M0bgBlxrJXAd6Kf0\nl44rlXtZH+GTVO8hb7NyY/pyVM0dxNhAqVMXMO5Ie+MrOEIQprOtiGgVKW1G\nlAx7XKefuE8gdmd+Z+7dbanYdhZOX8+47UPZpn5Yzj6cG2XHSFgKBsB7+FHf\nL99hHF7Gk7oPZwuHImB84VZTBzQhBn9tCATD13osNUjZ0nqYdruY9SY8c5GM\naD+7\r\n=Y280\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e47018f239b51581a67186dcbea3f4167f5ea3f2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.80f3a9e5d.0","@material/rtl":"8.0.0-canary.80f3a9e5d.0","@material/base":"8.0.0-canary.80f3a9e5d.0","@material/theme":"8.0.0-canary.80f3a9e5d.0","@material/animation":"8.0.0-canary.80f3a9e5d.0","@material/typography":"8.0.0-canary.80f3a9e5d.0","@material/feature-targeting":"8.0.0-canary.80f3a9e5d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.80f3a9e5d.0_1597282149997_0.4977945210677881","host":"s3://npm-registry-packages"}},"8.0.0-canary.a1dcfe97c.0":{"name":"@material/floating-label","version":"8.0.0-canary.a1dcfe97c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.a1dcfe97c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"dec83810d49b001444f28538aa3ce693bd54cddd","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.a1dcfe97c.0.tgz","fileCount":34,"integrity":"sha512-POKoUgdJAcmu9BLetFemLCw3T2NkpGsKCZR8Y4ZEqUzjIYSvV6hQIvwVhQVNGclAtq744/aBIhNiAErlWmJXJw==","signatures":[{"sig":"MEUCIQDVEQNK9RqNolnesDEe6Mw2LLOt3TQH3Utoh2PLpo69kwIgIPt5DAulZRil9OqbHFFtwPyKJMSshH9vhtKI41a3WCk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218689,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfNP63CRA9TVsSAnZWagAA1SQP/RzmManftpdAnPcT+WgZ\nylm4PnTM38nGyOIctiMul2t5/159T8Ik0gfHbx9/Wb5Go7sEe/NXom3xMI6J\ntxopXvA8nXsBHXw9kW3BKpUNTb5Go4ATwCBeu2nno1qrxh6kV6Fnk/G8+k0v\nMyKIkfk3+Qe0JQkXWSF/P0QIOWYFLgmWZIfkdNr2HOyNyroBaZPmW+rFkLjk\ngEfy2Svog1ur2uAuEoPmaiXjQ9ckjxNEUYcRX29GWgLNVTyUpQsF9zkyssBM\njeQKnDtIpINWsPlM0fTINZhXYEnUjUkTEYlF8+bYo7MQOSeaELuNt6r33Tmu\nAO+UFhtedZfvVc51vODW3jOeRqILQyBAgK9JaJs90UhejIsYe76aqz7IqhAH\nrECBFeW2VEdB+xa1I4WUyZaOaUkFoVdTwyUciiQjAV3FL2w9Z6i7HrPxB3qh\nhNLL9LI4bmcmDOJnZQTamIK2cXTNde6uKZabEPXfmwU1vrwqtLERrnK4VMie\ncwOjTLMhgdl4BqTzC/lC16qGEaMJl2N5jx+Rsce/TEv/wnzypb9/eNspF/tL\naDDb8agWaLqr+xku+44ptkiw9aXPmKImMqE8cXDTtg3FF9sVtOggW89loEhG\nXUI7v3JGeA+y4ZPM9vxJA0Em+dfMBAxMkaBAa/U3edo8brn4LN2LpdKs3EUY\nw3y8\r\n=KSo8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8ec1483dd23463f0239974be9a65ec22a6b54715","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.a1dcfe97c.0","@material/rtl":"8.0.0-canary.a1dcfe97c.0","@material/base":"8.0.0-canary.a1dcfe97c.0","@material/theme":"8.0.0-canary.a1dcfe97c.0","@material/animation":"8.0.0-canary.a1dcfe97c.0","@material/typography":"8.0.0-canary.a1dcfe97c.0","@material/feature-targeting":"8.0.0-canary.a1dcfe97c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.a1dcfe97c.0_1597308599410_0.5733561636145263","host":"s3://npm-registry-packages"}},"8.0.0-canary.af332d5be.0":{"name":"@material/floating-label","version":"8.0.0-canary.af332d5be.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.af332d5be.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"757768d10b549a6df9c01ba8fbdf8b39292fed68","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.af332d5be.0.tgz","fileCount":34,"integrity":"sha512-kLozQv0pPt4PDlVHVRAr67siGORpg3BW9tcOdKKvU4YJofBulYV4nVhCLdM45UG/oY6iYYF2Nt7fWqjkGMSu7A==","signatures":[{"sig":"MEQCIHuPTHP971l8BY5jF/6b8ME2MCudCMxkemVZCkOBa0YhAiAH5tKspHW/aedk+uc45snDGS6nMzMJkMjJErHnxl8iLA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218697,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfNa3uCRA9TVsSAnZWagAAphoP/3gDDubF1rBcHpp96ZSw\nHaSmdilLgV3dYH+yP4d9NMmwAJ85KAeqfzA/3t74Lp8Y7LVdskTJPkBcqsVc\nddD5LFaYzbAi8pjhVM12xKOKBDdYS9fw4mQtih+N6mrTWyjfu5cHubI3o/fk\nRtkZarwMiFVsw4ayx4IDJ33T57t2LBFpZuhxfr43zewby9mK+kLmWclfFa27\nS/QXeoe0nuc0gzPapA+p4Y1Jg/rX8RjyH78n5XG3dyKR+q84sKz7yRVoEZu3\nDuqWaEWpktTQUVcMibWj+H/bW8/tNmBtayj5DTsTgQrQFADI+KHpCjVA3kvm\nKxeJjEipb/gFOfHfshkca3NV30RQWe+3NaSLhTgbLd98+lK4miafv1UCKtsg\nPRvJ3zpPWpn/uD2Hew2+auoiDA+MpicYOa3MjCHyoyNsCHHhdrkEyAN0F47f\nCl6Lp+02lUEpSeFnVL1jrqdALtk6NMSei52BPfQTSF2CbS269rmnhrrS873T\ngXbWb77Cz7FxoWOxauDdqWGroUkaNETtIKPjyqcwAhMRGJVAfdlSPQZwoMOB\nruC9Mi9ZTzs9Lhbm2j/FtB+O9F16j2u9wywKJOJ4GE118VD5fzr4JUmgYisW\naae9a4Q4/5huIqAyTfze2+Fj+Q1PajpvWjn7MFiymFtP6aGpTSfE8sDRYhww\nFFO8\r\n=kfXu\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ecb675d071cb76738aea95a2d43ef88a134275be","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.af332d5be.0","@material/rtl":"8.0.0-canary.af332d5be.0","@material/base":"8.0.0-canary.af332d5be.0","@material/theme":"8.0.0-canary.af332d5be.0","@material/animation":"8.0.0-canary.af332d5be.0","@material/typography":"8.0.0-canary.af332d5be.0","@material/feature-targeting":"8.0.0-canary.af332d5be.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.af332d5be.0_1597353454138_0.16405845695674803","host":"s3://npm-registry-packages"}},"8.0.0-canary.7dd4567c4.0":{"name":"@material/floating-label","version":"8.0.0-canary.7dd4567c4.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.7dd4567c4.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b3d47a9e44551937ee13e3dbe8656b009fe7679f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.7dd4567c4.0.tgz","fileCount":34,"integrity":"sha512-3eyUD7jXnb96Xsc0ZdVP7f137zv1I/o1TDRvlZ2LAxs4LBa1UL9rEK2bEuaZGjAI39JGQZ7dVm97oJfGLJN1xw==","signatures":[{"sig":"MEQCID0sbk7Gt2Jo3nNVpwgQAysjx0DihgYtIFklR2WU3i52AiBw+ybGzL0lICfj5HsVisZBdz0QmIoFoJGxmt7efwSj8w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218697,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfNeABCRA9TVsSAnZWagAADjgP/2vpWENRnQmMu9HPCykA\n9pb6+9VNnJFCwPmOeAL1FE9xcGJVzCOfJ1huRNaQgJIY45dblUeEFjYkWDWc\n4X8Eg1qw/fkpiSXLt7p/15J4uZX90iImY2FVZkfJ0Bqtw/W5YDwCfkQ66BjI\ndNSUxv8wMmRWw0Ph/LlJ8BGlAK7hDhgdBvO9NOkZiPJ0LUitQ2vX2Df9RuF8\nB7HKFflyeanFRK5s7kqbMEqUZ5YlE9hwzUARrSyIw9S95eIJHj1fyVOCyS5a\nCAwU2ZQorINVyxBTPKAgE0JEtHOfkSn+/HP6c9ex8N5wHZZgkg4HMbUSo0kf\nMQba9LIfaLo+a2KypNNekNuuREKPOaDPQm2UV0Yn75VDOceQVX960ZN7XeJg\nsTSAcRgrifV92zx/BJYl+21f556JPc6UMVkU7Vy0zYkzMWoj6vgaUZ1Z9pST\n9Gzm/W8PgwoPyw1Vjhc0yBsktAXkYgcQj2gGwuY+5KUx0wHmLeyXjRMDxvpH\nPgxkbYK2sPh8xnjiEAFqyxl1cdk3irFuJ2Fndt+CbyU0w8oNUvU2LI0HvSFW\nhorO5SUVzu4PBa9TrbgliUGUq06vrctGRXt1uC88aNsJBufAs/n/ljGmYIk/\nuRt6LvfGo3re7n1cQdOJ1MGkfV/xq7aYSFwWXOS9/ANljnmS5neVQnM4qiiI\nte19\r\n=9hTp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"515ae143d426f0329f0a745e0ad35113761376e1","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.7dd4567c4.0","@material/rtl":"8.0.0-canary.7dd4567c4.0","@material/base":"8.0.0-canary.7dd4567c4.0","@material/theme":"8.0.0-canary.7dd4567c4.0","@material/animation":"8.0.0-canary.7dd4567c4.0","@material/typography":"8.0.0-canary.7dd4567c4.0","@material/feature-targeting":"8.0.0-canary.7dd4567c4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.7dd4567c4.0_1597366272479_0.23778069268160973","host":"s3://npm-registry-packages"}},"8.0.0-canary.ff870005a.0":{"name":"@material/floating-label","version":"8.0.0-canary.ff870005a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.ff870005a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"70b0951044e1c7eb36b3f0e141c46873babfda77","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.ff870005a.0.tgz","fileCount":34,"integrity":"sha512-dtz4z+EO7gfcyjWsTmF0N3cUv6Assl7spMjbDnjaYq8sJtalcJTFrV3n+oS+9DYjrDQs8Bl3IKPgGzgG/AfbaQ==","signatures":[{"sig":"MEQCIHWfZwk8M/IChcnTYjJ8KvnKU+ugmdNGB5pP0oVZ8d0IAiBRHKTWnjcpKaHJ46qH1xjBCfpHEiGxrU/7mGQklgDKXA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218697,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfNeXmCRA9TVsSAnZWagAAuikQAIySBsCuK5wPLpDr4om2\njSx+iZqHxP+Ndp8iwwqeHJSP4rFixp50mq5CawYch7GH2pwCa6RZqa5Pv4lA\nTfmOp7f9BKXV3dKh6K4lFX5ifGy2UUTwJ6VTpdAFXMaeRr99ni4x91UxSJQi\nWN0BVOb3Gr3mKqPoNisc9d95RakIVhpltxayhFj8NRtwpqpr45vpya6uJAt9\nVppSXQgZ0TJetGeBkygS62o5k84rK3TINmBv1ioXGrszliZRImJglMHPbKo3\nf15DQ1fGQXsxe04TYni2d+tLp5MJ8gCN+8OmSd/9IWSMxpY8KqX/4Uwdge9D\nzr/w4hqs8nEjmcPGDLMbGez8jNKqzDO4pnNkOhf9pK65oUWNBD4L++274913\nfICR7inuZvLUiHAftvyTNFgMsEsDwRvdQda0Vh0IrPTJ08nLFY/b3o9Z5cqa\nyZ07sl36bbCu5j6BJ7aViXRnBoA3mCQYcbsGR4Tg5U4/qBdkmmgNsAiE075w\nHkhvRl1nMKp4/+pekyoh7rpUoImjVeEV76bMOSNeOrANC2E5ziRJwmAevDTn\n3u4Pk1u4wmwHA7HQLex4G6DX4DNhfyh/P0PokhKtbpm8I6d2e1zNkMHsk9Hd\n3V1E3W7WQz46CB8T6cOLHFWtLcsdObl5Ltx9NN5rk6ElowgcNDx1B958DG9U\n8iq6\r\n=fwHl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"885c1d5e1cf217db1bcb8176917a25d6c74575a5","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.ff870005a.0","@material/rtl":"8.0.0-canary.ff870005a.0","@material/base":"8.0.0-canary.ff870005a.0","@material/theme":"8.0.0-canary.ff870005a.0","@material/animation":"8.0.0-canary.ff870005a.0","@material/typography":"8.0.0-canary.ff870005a.0","@material/feature-targeting":"8.0.0-canary.ff870005a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.ff870005a.0_1597367781592_0.8046356796354348","host":"s3://npm-registry-packages"}},"8.0.0-canary.150f427a0.0":{"name":"@material/floating-label","version":"8.0.0-canary.150f427a0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.150f427a0.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f7f47062d76a07c0eb8c7491ef49651d8735b5f7","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.150f427a0.0.tgz","fileCount":34,"integrity":"sha512-PrlsHRjofj2Ota4rXtPzRx+No9/ChjIH2wXs6kCWhF82/7SH4u9yFTPNi6+86BVRBLnt/ftgtDhJab0OPzjdEw==","signatures":[{"sig":"MEUCIQDFDdDA6uZ1NG6xUnlt3wvvZfReKPv/Zti2fgL4cCeL1AIgROIQJtJ0Uagpb9xg+1p4qJnCianWlcLIGlQk56V9A7A=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218697,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfNpHNCRA9TVsSAnZWagAAP0oP/0g3dTqENy2DH+GOWs6l\nxQL2scWjAfE7FP3EvcNtSFOqUVpvbiumVaM+toSacjdM5hvqmbjy7R0lkIfT\nfSLZrSjL2IYuIXDMkiwIWiU7O9Y3HXsg1Uq/7MyoV98RDfpq4SA3SDbwEutR\nnFjco+2fQzlvdZgc45Dd7WeqDImcXTBx2NHAAi1m1c5IUfu8t9BoYF9RhQ/g\nq2xQvz7idyl7tP3zPgdMATrWo4ZHfEXsrhNglH5Wtg6yaZs5UXt4nCqxMoRa\nZLs9cDU8sVx4oeELVz1X3qw6JIZT+aGgefOV7S3zL429CcctHN9bev4xsoO4\ndHzqLsFnfqLV5O/L/LXx6iNIM6MiKfh7Gp11mk0QDnMIyVHKOJimMaWI7nDA\noLsiTosuhBlkBt6Pw2vZx2HgspJzNGOpTfa1sE1fFRy1+gpQmpa09WThBa8a\nciXJsPBC/AyylVx2Sc/ICxEaBoa5w+tIR8EeyR34Ahka9VRl56W/9RNQgZuL\nXZhu+upzFO2Qw0SJh5H8pKejwNq0EyW4hWd/GK/j6JTxvvmrYlXYGFpyDokY\n/JEfj/X7sKyOQDM00ETw3N2rQjhvEOS//NP5fozyaRruhnUnM1sdiZnw3ZZF\nL/VHk3avrmVstVABGPG03s5NyaEMP/SM1KE28ivKfGKDYGp20e+FN3lP+kXW\nqTWQ\r\n=hiIp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"9250d38c39aaaa2210225133bd9fa4da3739df3e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.150f427a0.0","@material/rtl":"8.0.0-canary.150f427a0.0","@material/base":"8.0.0-canary.150f427a0.0","@material/theme":"8.0.0-canary.150f427a0.0","@material/animation":"8.0.0-canary.150f427a0.0","@material/typography":"8.0.0-canary.150f427a0.0","@material/feature-targeting":"8.0.0-canary.150f427a0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.150f427a0.0_1597411789141_0.6741480819364767","host":"s3://npm-registry-packages"}},"8.0.0-canary.bcc58290a.0":{"name":"@material/floating-label","version":"8.0.0-canary.bcc58290a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.bcc58290a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"759d39d537492e13a4511e762d3fd08312e3700b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.bcc58290a.0.tgz","fileCount":34,"integrity":"sha512-sGyLUM0+b72IdZ8d/lTm/9rwwE1JZx++DRRX5TevsmiTg/PYu1n4om7TwUbs3egnqc3rmcwpsWDeSJ4sM5Hazw==","signatures":[{"sig":"MEYCIQD9MtOfRDE4Q1jetAID76mqPL4/YBDjfZmMKbn1wMRmkAIhAMV6XT++knZ+rLjF8ECd+XKZzmmfY2TdnqT1diqEHYFo","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218697,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfNxy/CRA9TVsSAnZWagAAzB4P/2cYrq9HK1GzOn7UtMpu\n0WWSb1dFF7QmsSYbQQo2+W/2DWKHHACfN69q8ZKxPJ8asqT6ZgkQhhHAt47X\n1wjmMc0MdA+NkF0tZEU/2HvekVfFMfvOYUJOsOxjI7mG5plEjA3tKNa/tbOY\nB1lBGaFSig8WwEotQPk1LRAKHx26jEG5TlSdsoLZAG8QaCd8NuOqP5HauYvf\nVKxvuuQZ8l+Ej78wX2IyttLDYTbi8kch1FQXwe+Y9KLAd/LkaZP8jS0PLg4D\nCrhKVDR6Lkf9m3uxa13/nPAgYwsespAFg1Np4hPnoJ7/zx29g7hJlviF3zs2\n9L5asu87W6sCsj72eU++9WBUBv7hCUqDxLH6FEoqroTDTrfhqc6x5o7DX4Jc\nVIzMchABU4a5Kai+7kWITXm7VYyBgLTZob/AreJZPW0Prc0H8L7WhDV2qaEk\ntrALHWltiLcOVgu0SWXu9Wz5e0rnXJEKkrf23b9VOjCKT0FNCpthpZLF7HDA\nqFkBjoWk5S9gWKQBjccvv8KNDrtzE/ePigSjcnKeE4mO0vf4P9EKWykrOgZ4\nTe+vfT4MJWW0BBxgloPgzsZ34kTaiIl9Ykg8HWi+VEWrYf/O4zgdrijETgBq\n+wzB4jQO4a9qEuzg0ROEBPgx/by33vk2hLAT1ZIo34WZkSbs0tKYyB5MwDz0\nJan0\r\n=27rx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ba12c8e781c26c6169e16b167798237b5ededb54","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.bcc58290a.0","@material/rtl":"8.0.0-canary.bcc58290a.0","@material/base":"8.0.0-canary.bcc58290a.0","@material/theme":"8.0.0-canary.bcc58290a.0","@material/animation":"8.0.0-canary.bcc58290a.0","@material/typography":"8.0.0-canary.bcc58290a.0","@material/feature-targeting":"8.0.0-canary.bcc58290a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.bcc58290a.0_1597447358589_0.4578003656919345","host":"s3://npm-registry-packages"}},"8.0.0-canary.4f55400bb.0":{"name":"@material/floating-label","version":"8.0.0-canary.4f55400bb.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.4f55400bb.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"269d2a8055d0631a9e0700c3c6ff50a840ed01b2","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.4f55400bb.0.tgz","fileCount":34,"integrity":"sha512-V5MnkW0sHmpBjq+PlXxPbIt5cBok7zpLagd6KYL0RELa51UKTnO/SJpp/n1aF6rfSwt/dO8dnSiRBZ24The7UA==","signatures":[{"sig":"MEUCIBgivIffGkKx04gOPDGcNOFjoftOz5bol1C0HD7YDIK4AiEAzG/8heqNsHVQgxZv17oYsH+MmGHItPW9+ozcJHVa75E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218697,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfOrKKCRA9TVsSAnZWagAAFZ8QAJzdq42nnwKC450L/+mq\nIJk06HMaU+WGhUDH2BJ0jLPqINLZzh91NX4YlRKg3keIbCjqN0rtxb5Y/4qn\nm653/vK6C9rPwbcA/PSNaOK7/sJdcHEgaEnzyW5BbGRxzQjph7n6aSqCvLks\nk30Zf1yyR/xYtHQ6vhyTat09OSI9jnGR5R63l/a4Zp4RLjVHuMdPxI6yWVz/\n1efXDu2DuYILjX4IG9XWzSYNw93XOVn/nskdngcoRpSotfawqIukaNN8cBk4\npplfGKiw5cFmEWLBJnIDU87xDY4Q5Gg9dy8i3dzwtfuhIOteJFwp6u8xruzr\nbjHI6pR7LA5pfWqLEWMDbhTIRQ6G36UqurmtvBYyWpfoI20kUzXXlMOVpkhL\nDCofzod+uhrwMhywF6DYSSAsrHhFQWEkKvQ8oSpAZTgC+Wv4FQrDpim8XtwU\nn4i13f75b3vabyt4p6daUI5eBjXzSZQV3KOV+vtM0pzahm9v5n1L4AsLy+S6\n+WzRgjurEwmLbYFl/NQIA2oMeCcKFhiGPZblhEpWzRiRYCJhtKuQjMGpb5XZ\nZpK2e8zXD4zgscrmzrL0iSddKJtPqQpL8T+39MnCgFLR89juvjjwlocVosKl\nkacRoo/Yd8kg3udD2xUSXelEG8tU69Sht/PAfBHhc9DmLb0wDfCGf2qupi0z\nW/Xs\r\n=43SZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a9eebd86aa2e631b994a71291827e602b842dc36","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.4f55400bb.0","@material/rtl":"8.0.0-canary.4f55400bb.0","@material/base":"8.0.0-canary.4f55400bb.0","@material/theme":"8.0.0-canary.4f55400bb.0","@material/animation":"8.0.0-canary.4f55400bb.0","@material/typography":"8.0.0-canary.4f55400bb.0","@material/feature-targeting":"8.0.0-canary.4f55400bb.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.4f55400bb.0_1597682314018_0.9730889127379367","host":"s3://npm-registry-packages"}},"8.0.0-canary.000d64815.0":{"name":"@material/floating-label","version":"8.0.0-canary.000d64815.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.000d64815.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"630faf5bcba0e0ffcb7ffb1823c0e6bbda34bd1a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.000d64815.0.tgz","fileCount":34,"integrity":"sha512-ANSsXYWlFi1SDQ81qPXWAmXv32yIQqR39TOlvh5s++62vMOqf60TzPFRcC2RSqR8357tQCEfADFQ7l5rNc35OQ==","signatures":[{"sig":"MEQCIFxrYRpIQPIUCO5ISYyZ1PBk3HgDuoclNaP7e+U5oZuNAiBLYXJoXS4Ju2IKZogo2CqTpRuIz0/+Vv5SIetsLNkY2g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218697,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfOriaCRA9TVsSAnZWagAAQoEQAIrXtPcux2BtTh2rB6RG\neNU21o0xzRpsWce84t0fG8UTsmiKxisuZMbWc/ViguMIYDqkDhRTSXR/mLHJ\ndjdl/9qhQzPn/A2TUQ0BimiyUim22bD5k/xTHxJAqk8UUGvEwd78CIfqajmZ\nlcRjzF/ZGAI1RYXmaFWd/xqBlxu9h2oQ7o0g0ewfkbZCSlctVr5BEe/O1Ncx\ntOELe2LTWCqKZt6TOxCSYZIQOVThvkw0+vVyP7rSkcK1ldKZ7RRaUUIxbIxp\nrrHAEvfd8zE0WGiKwXWB9OQdc3A+PgJgWZ3MBzqqhdKiiHNZLAy3dz0cihM/\napr2w2KTO9yEKoLl34UQpLV4gsjT6oIr1E6qSeg1Z33gRyw7f9n4l7W3rjGI\nzaY7NxVuC12XA7kjXexePILPbkZNPYG6x6yLL8RGpWsbbNcdNgSusQZ6mBEa\nmm4AjlgeNCCbYEPsANmtaLG8Apq4v6Nk96A3lp+Gbb86Aq64NYVchQc8BgQv\nVRuqZms6AWHD063dZV68AvR7xLB/Vuvpy7BGsDBgLqad2paPcnTXkHfxWk25\nLvZcy+z+Tti30KNBz3u8S5SEdZ3SlWDk/xzBz/DmnNJhSl4nBUzBtYoNgZ0K\nN9t2U9B5+3qwYyzAUXT7uVsidtxIUIwT9X9gem2eRaltKN82hB6upnLfsSqX\nY+I6\r\n=DLNf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c8a69943d64e6f468c2edeaf1fc6204d372a9fed","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.000d64815.0","@material/rtl":"8.0.0-canary.000d64815.0","@material/base":"8.0.0-canary.000d64815.0","@material/theme":"8.0.0-canary.000d64815.0","@material/animation":"8.0.0-canary.000d64815.0","@material/typography":"8.0.0-canary.000d64815.0","@material/feature-targeting":"8.0.0-canary.000d64815.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.000d64815.0_1597683865549_0.16803940159439001","host":"s3://npm-registry-packages"}},"8.0.0-canary.defa599a8.0":{"name":"@material/floating-label","version":"8.0.0-canary.defa599a8.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.defa599a8.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"fdf78b4a06191ee065b3ad1772b1cbd0e3780ece","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.defa599a8.0.tgz","fileCount":34,"integrity":"sha512-3r49Tj2c73HicXZoimOuxPTYBx7hqZbpZVeznEF7gf3gilmaPoSbuBNMz/xTeow5liZBF14xe9yZbEpVqWZBhw==","signatures":[{"sig":"MEQCICJoFMeJ5+yQcmq574/gw+B64vH5M9Iam4jM26s9QaEZAiBeN9HGww0tVUa9PevMSLPOh70mCVxMUF+bRa4pixGyhw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218697,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfOulCCRA9TVsSAnZWagAAIqUQAKHXZ/K+jCdJWmEU+/e3\nkPbje8w0UZzeo7XBHh3bwDptndWSwbgQGZuUo2cRYk1oPu9t0srsl+W5/DF0\nMzetGMzM0ock7q981RKkZi7m1qoyuwotujidzVAeKIubn5LEDAQtxgHbbEpj\ni90OOQyEGNKREpd1h0sa/YV6+hABds4PswC5ET/v3dx1zpqc1wYGIuU8lruZ\nq7bTUbU/TPwTq7hxLgTLMBt5BAf3Dk4vflaFpWnrH1K+scveC6VGvbm87Ns9\nCSBTcMN0VZnGNuYkMbl5e50FxJgOLF2bPn4pfd6+BHHHvNaVdOPNNar+Ls6g\nm+5jJ60PhTRnrdH/jHKkPXdZYHmHoCvycfSo+xMLMf+veuk52KLq19TFBIYo\nSU1g2Z0QnK1spZeNZ2eTyvSF6AAGfWIOydifDTQkI9NVmYP7rqxujV9Lr2vw\nWg0eql5vyBHC5ZOv9mROUaOdalvTXSjLa0NwYaODkLBZlCo/CmL4GSGcRSNH\nz8BYsOkOImTJ1gfN1iFB9QjwFfR8l/Ej6cNG2h4qISRbv8y4eLaflzc7SGWB\niUuxRypW2eewc76cLT0irFLBWhUSWnv/b9UZOOSn62jXFFnrl5Td8p8hRGml\n8z6eMf6w/GMLYhFFHA5n6NfZ5OZPn81+1igHpMCt3v6LAMQtwZdZnzw1mGh6\nG7k+\r\n=p9ZB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d3ddc8cf9af988fc4a02f26feee3e4ca0184dbec","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.defa599a8.0","@material/rtl":"8.0.0-canary.defa599a8.0","@material/base":"8.0.0-canary.defa599a8.0","@material/theme":"8.0.0-canary.defa599a8.0","@material/animation":"8.0.0-canary.defa599a8.0","@material/typography":"8.0.0-canary.defa599a8.0","@material/feature-targeting":"8.0.0-canary.defa599a8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.defa599a8.0_1597696321456_0.5059855606848387","host":"s3://npm-registry-packages"}},"8.0.0-canary.66b8ed7e6.0":{"name":"@material/floating-label","version":"8.0.0-canary.66b8ed7e6.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.66b8ed7e6.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a6a4c19c47f870ced3dcd28df4a147602ba4c16c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.66b8ed7e6.0.tgz","fileCount":34,"integrity":"sha512-vZOa5/4pr6u64jH0oRb9JvXseOtvMiKru0Muc5iQH0flxP5cwzhZ+OaW4Sw9hDvHfyolKvyvO5Z8i5lZaeWVNQ==","signatures":[{"sig":"MEUCIQDJy3c3HgqH79sDqXJUfg7FJ9rdgciIqmbNRQu+dVOQNwIger6iuupgXzs/NHQqGMHn2lD/djmCG9x6kx1n7vVqRNo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218697,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfPB/JCRA9TVsSAnZWagAAOGwP/24D7rVC7X5HzBdLi3zq\nhydkFItEaaT8ii7Tz2Toh08MtxCUS/wjQ2X8I3vqbz8f9jDIK0WFR5Y8MwUT\n6qFcsHI2V49vQLExiHxpCppmnwoNH/Az7vuc7gMVd6mTzOMl9v0L2GRcyKR4\nEgHbc9J34gYFx/T5XNk4r+MuLBXienteAzV8/ID+I9t6d4RPF5YwLtmo0qvB\ndcGsJRwJpDEQorKOJ+Zv0tqnPRV0vRC6PEjZ1fWKbFPC6aka6sITOuyOl/sB\no5FeoqpSjThRHerexPJhtMncTSsRChEBMDvHfztc2Ks4WYEqNquDr/8a7zG+\neOdgPxrBKzK4mX4FizgkB7oT1KxeY2+cq9W/VQeo14cyKjak5ydWUI1Wzg02\nSJ8X6Daa90vUZ0P0zKoS9ItXyd28F4fN3hnNpxJiQlZV8fdZvgnDfWbkmd62\nm4Z81+x77X9Fl5+Y/EXMGAL+kYFMgGjf280PI6kjkqXKXBistjjUi7ZydrtE\nKt6MUTlLGIWPLHlsUAFNJjHlXL4VNHtv56DCS/oFVCo2DtIKr0yoX6D6g0W5\n6I8Pb78C4rJ5lM4mgunSKwVm29X0qucsLBwgwUCp4LT4hlo9qtzmKXZcx4No\nwcjyLmC1mHTD4oXvX+EZSttkQIJLjvyY+5kLbVWsnkDjpp+PnphXtmXOiOOP\nbtjG\r\n=XRa8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c23c9dce18363cb6806c169d5a516da2a0fcf89f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.66b8ed7e6.0","@material/rtl":"8.0.0-canary.66b8ed7e6.0","@material/base":"8.0.0-canary.66b8ed7e6.0","@material/theme":"8.0.0-canary.66b8ed7e6.0","@material/animation":"8.0.0-canary.66b8ed7e6.0","@material/typography":"8.0.0-canary.66b8ed7e6.0","@material/feature-targeting":"8.0.0-canary.66b8ed7e6.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.66b8ed7e6.0_1597775816532_0.7259820878186587","host":"s3://npm-registry-packages"}},"8.0.0-canary.e2b1033df.0":{"name":"@material/floating-label","version":"8.0.0-canary.e2b1033df.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.e2b1033df.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6b9503be52c061b389dc04c1913396d92eedcde6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.e2b1033df.0.tgz","fileCount":34,"integrity":"sha512-3mgiaxuC32kwWosroEED9roUzZcbPiCrbb+XHGzEhHL3qtKAbchrDPl3nz9jknB/KUcyPBQ/okHS3lFtvXHt2Q==","signatures":[{"sig":"MEUCIGdt6WOdBkf0ckRZCfu3tVBWG0En8q+Ho3oVCxPNPhS5AiEAuWQvRNzcj/WMGvdr0Il7G7uFuVTX/c2msNe3jra+0oI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218697,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfPXJ/CRA9TVsSAnZWagAAFS0QAJp+6qoMxoYjaSd3lzZW\n/VgTkfY/8kVrYND3L+fPh/9QQSsRYJCdF8ygNXE8hd5DzCrMlAYGzYQ5xW3S\nw6cYoy1ul9s9vJ22O1F9gJhSgwytVNXla8yhT9N+iQq+c1tBw++py3nsdZOt\nHoB+jqkiGWnD7bUjjPoyTty8DK9IMQCNEhDWyLjVVNc57AsBTF9PJJkqNL9Z\nri+DDkv+rHn+GL9LSdO7RpwG4TZInOpE14zK8QChqg3REpFE838H0CSvCqbF\nGIlg7mVog6028TONPlVW74uvJms6sC691yCNAThVei+wH58lDOrd+4uBB7qg\n+gXCf5c5wEk7nu5IBxBAExD8jyGs+37t0Z5H+ko5FNcQCJsCij7OBpxvBZmV\ne32+PsAYfJy6CD2hwP1K4MvpxqtHn+0RE4kfPqjpHcUwetl/LFmsGGdMJ6ef\nYT1eBDZ4B6DKwSTFTxW4os/nbPEDTbpp/xCjOEb/uwba2cBh0Vo6Ku6zjjPE\nW2GC1yBZ14e/QXFVU0u7HEOJfozdZ+PVesQdobZNRpNFTVJJSf5jKZGeqap0\nFC+z85ks6EKukQRyM45SZKaUYVMxa8PWolD9GkLIyRxxC3MLKHQnA0cFnbvN\nvq5pmFi+EDTiKT2+POsDKwbp9UAt6xA6x4E5QK0mzLc/2+buMd6soond9o0o\neDMt\r\n=nrVg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"763ba6b73959bf0639ed8d0c9656a53b18e30c1c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.e2b1033df.0","@material/rtl":"8.0.0-canary.e2b1033df.0","@material/base":"8.0.0-canary.e2b1033df.0","@material/theme":"8.0.0-canary.e2b1033df.0","@material/animation":"8.0.0-canary.e2b1033df.0","@material/typography":"8.0.0-canary.e2b1033df.0","@material/feature-targeting":"8.0.0-canary.e2b1033df.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.e2b1033df.0_1597862527266_0.09972545501135044","host":"s3://npm-registry-packages"}},"8.0.0-canary.2e8c3dd2e.0":{"name":"@material/floating-label","version":"8.0.0-canary.2e8c3dd2e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.2e8c3dd2e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4bec006e3e0d6eda7c2dfe3217ae38c4b0378677","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.2e8c3dd2e.0.tgz","fileCount":34,"integrity":"sha512-FZs33D7YRRtxqPFaaGnj0loIaBJ6VqcBZhwMrboG+fW1MbJU7tDQ8w7O7u0tdeqMxQQKHraD7e8ZUfoFy1HFpQ==","signatures":[{"sig":"MEUCIQDKZU7j22xMmsMwJdvOeNpfLrulD9arRm7YJerQmv6XBwIgPhON6qlqykgcqm8MFrGnGZwwx5VrqbZkhpR9mvIZiXk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218697,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfPXxTCRA9TVsSAnZWagAALqMP/RWu71RxvMj0ci7de0W6\nsMDqcSnOUzy1iYhDaV4/lVPX44pV5tB7DxwwRyVDSjuCuUTJuEw7URlAmKBE\njmF0o9SFfEVjyC2mhzRK6a2+bpQW15zO4uv4CbZNQ5uhnGGwwrQDpbYkUAVp\nkXYchXO63ZcpyCHJpJFfvLfmpjrDSODi8HIJ8dXI0lB9bKWUaPfnWoVsvDeF\nH7IvdQrpo+Rfq8/mn/nNw6UQQ6Ai0OxMAwFxUd79vVDZNn3AcGh4G+fkeWw/\ng2kHs5i1iG7GakEmd5m0fvPppJEC8WzFaUCVrOifB5x2jhy2Z3TpQWLxxzav\nWqMLv1A/Qf6K1SM0l75T6eZgiyy7+HGElAGsnjTE6Wcr2N4tHaqxxgv7IWSc\nzwUAfLBJh+NwiNa7BJdRofSwOqYfggrSrM09V5kW7jCZ8MviyejD3R0tiX7a\nJrgTledD2dMd+Ptx4HPhFjtuq5w0MnxICoOk26NyWdYUAXo9yysGdSQ52Mr9\nWFv/C+x6mWG+UxlTLOK+s4+T/92hNHV1JHSBCBLx1v15feaPK2CzB8KITkWx\nSwm5sHAIvo3vsFodhw9ugT/oiFgYDcFChKyupGyiOsdB+X+WdPNzRXnDL8oa\nZta84FS9THcaBWivxE/jkMs9Um0ntrPIB+O8TUdiu81yjdontflK6uQOVWMe\nlo41\r\n=bPTM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"237ca1e061b4efa53d623ea5dc9c9d670d5c9da0","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.2e8c3dd2e.0","@material/rtl":"8.0.0-canary.2e8c3dd2e.0","@material/base":"8.0.0-canary.2e8c3dd2e.0","@material/theme":"8.0.0-canary.2e8c3dd2e.0","@material/animation":"8.0.0-canary.2e8c3dd2e.0","@material/typography":"8.0.0-canary.2e8c3dd2e.0","@material/feature-targeting":"8.0.0-canary.2e8c3dd2e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.2e8c3dd2e.0_1597865042968_0.3637714163126735","host":"s3://npm-registry-packages"}},"8.0.0-canary.b2e80a5d9.0":{"name":"@material/floating-label","version":"8.0.0-canary.b2e80a5d9.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.b2e80a5d9.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d4a9c9fc54c390cf0bd954a526748536ef3034b7","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.b2e80a5d9.0.tgz","fileCount":34,"integrity":"sha512-DQHbcXHqtlQRyTWMZbchjASeJBhVKOodxvY3RlyfOi3XWS1VBKhhmh89aFozEJ/NDBQ6Cvb3j3wvOk5R9Z5LJQ==","signatures":[{"sig":"MEQCIAiMEqOXZ1TfbG6MdiPBziUFGLNUZpE9aw52hn+v7kCcAiA9KLBtc6ze7NL5snBxUM+2+D3WNaAdMS5i2c61zpvQ4A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218697,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfPaXYCRA9TVsSAnZWagAA10YP+wZvqg/mnrFYE4D4ARrc\nekfHQggwIL6j+G2J87ZGFbv5H/7SXoBlV8wqGKUhpJkpcSICPKYoAAhI9fjt\ns2eXYVsxez3wZ5xvW+Xdcmslx+lWUm+ketOE/pS0ltdJoO0mu068HhycFfP0\nb7A2xBkjeZoGand1o/hY9+pEX4Zq1LQ6pE3n2+LG+6X75ezlB9wkucD2fDsW\nAZiPjf0p9pyzuuRfQpLDbPt/Cq/4pKfsp+8U+c86ycvenbuRH4+lF87uq3Hv\nbtzxBvKIw8LXczVIXMIBgpC+fDRxMwfSx9U+Vjd6mwLazqCiuNXllh/izHMe\nG2gKJ6TWR874ufYiitgyUzjLXuZMj9bTILi18+0q8HYcwsLtj6js9p0BqkID\nVj9fFCmXzx/IJtF40Ucihi2o4Bcbk5UrY+ZeCdTsYFGrmjNBx00b4U9OKCeJ\n6aPqQ64YbRjCBFCjV9AwKLz2vg4jsEdhWR+n7UIRQtjaF/+h4AMxSUe5Jim7\n3b+lZTHp8cJgsR+vlLkJyPUykHreIKX/9pAjCwFupPxnVUQClwJAkOpTxvKW\n5luOuqQJ8xyIHnHJrKDosetr43D0+JF7t3xKWJxw42A8zUi55vPLiK2FpLac\npi4TWueNbXSX58zivaTnRS13a17h7bN1hCPXG8bvKRMAo8ZYwrhbqbJpwMNo\nJrr/\r\n=KEJX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"84085f6b072572fb6b09623a5f0b35bb95db6fca","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.b2e80a5d9.0","@material/rtl":"8.0.0-canary.b2e80a5d9.0","@material/base":"8.0.0-canary.b2e80a5d9.0","@material/theme":"8.0.0-canary.b2e80a5d9.0","@material/animation":"8.0.0-canary.b2e80a5d9.0","@material/typography":"8.0.0-canary.b2e80a5d9.0","@material/feature-targeting":"8.0.0-canary.b2e80a5d9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.b2e80a5d9.0_1597875671823_0.1348300080257372","host":"s3://npm-registry-packages"}},"8.0.0-canary.ff88df637.0":{"name":"@material/floating-label","version":"8.0.0-canary.ff88df637.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.ff88df637.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"607e9f964f04ff3db36d4ff33ead50e0482f652c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.ff88df637.0.tgz","fileCount":34,"integrity":"sha512-266uiYEK0xw1fy1NDTjvcOJq6HaxSO9mYfNcJD/6BW52Bejyh/IMvaywHcg/jpLM6GIBNeIbkvloD3EAHJvWvQ==","signatures":[{"sig":"MEUCIFs4w/9v2GpdXSUnXhyAlHfzNVTmmGwkWwx1OkZRPZC0AiEAzLwy1bUXJboyFCNmbU/8lnWY0kPxBtKpA4iJBfEsN/4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218697,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfPaigCRA9TVsSAnZWagAAwf4QAILlBKlcV91m73AgOVEB\niPUyLVuN46j+qSYsJ2eibQZpFDQF2ytuupUOLkpUoon5sIdKyas/wUoWb3Ao\nV8XLhnirQr5uy0Kt6bwfxNWs/JJKEZ3LDj+mzAq4cMzMyLEAZZHyvUhRfHar\nYD4up8V/fsHlYw0ZVBVx951n1TITwaXbM7Q1hIkNTgkxbljpJLSF8VqVq9FQ\nJMOhVi+h1jWS3891sDqRO4RDToku7+yXepg43PehoHrPgyCacnmIpUTTuEoG\nk3r6SWhdomi0/cfcmqlrGXx8bZT0lBNms7nY841xggUsMqt3wAhTDF0+K7Hf\nmAC/9njfJ42yWRrcWJh5EJVx0U0TrqJ8VGcJYNAAdTJSa9NmAVLXag8N2k2d\nSkL459G0c36kGpsuzFlYJDOUPuEKqRXp8a7pNtofxdwr1+mSDkOkGxXgcs4p\n6IZNz/VYtu5jpHkxHcYzaFAFpctt8KxVZu2Li5xj1RIu3V3zAHlbpoj2zA3+\n6hYZfUjFlgEn6aZp7kaI0GAMC91bV7xb9ZeaDSFvJqxjsJZUs5oKbzzWAEKJ\nj4AHBq6ZopPxhSjYEWqofGPvO+2yKFQyASEwFD+PR1V1+5kgOdtL/nRH8Tp/\naPM41WLquBnkIwjyQKNOsra0HTUFeXuCuuFjO1mFhjorfN1HbHl9/nO8PCUM\nFzqd\r\n=G9Kx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"36ba8daf061692c2f915513485e71707d8eae239","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.ff88df637.0","@material/rtl":"8.0.0-canary.ff88df637.0","@material/base":"8.0.0-canary.ff88df637.0","@material/theme":"8.0.0-canary.ff88df637.0","@material/animation":"8.0.0-canary.ff88df637.0","@material/typography":"8.0.0-canary.ff88df637.0","@material/feature-targeting":"8.0.0-canary.ff88df637.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.ff88df637.0_1597876384184_0.7640587902728562","host":"s3://npm-registry-packages"}},"8.0.0-canary.32fb314cd.0":{"name":"@material/floating-label","version":"8.0.0-canary.32fb314cd.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.32fb314cd.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"0a8e2940097d116235271dc76f24631b06c66026","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.32fb314cd.0.tgz","fileCount":34,"integrity":"sha512-9SCkcj8gcvAy/Eh8nvpVwIto+ecWANsl8PTBV0X9Q2qvXxlxrE9CXc3L+oLWdgWleLHDWXD/dpsPNHbwnmpwLA==","signatures":[{"sig":"MEUCIQCxVOU0BHOyOi6aZQAZkFyNKXkV2yNTR9xgFLdQCOD3nQIgTNODC8t7b8tAUPtfrx4bl/tTf9fnM7U6tinSX6rqAMQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218697,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfPlJ8CRA9TVsSAnZWagAAWNIQAKGyIqv/BfS7rQmM/i/p\ntnIF9ZUM8/PZ2ZLy8QADI+iie3DczwyuWPbFpOBJLMLV/otpZ5WioXWOO4PA\n1uMA18rhcRL+PTQDa9Nizi3NvnJUQFK+AxXodK8jeNL6n5LJbWlFpqPLPKUW\nzxugvz+cbWvh0NPY6yWNX1/APT3X/8ruVXZ4zoMOrpbPeO2HJhvnD3nkI5qq\nNE5hxvJtBS0Ze0KIraLayWw0Cd/X53Jn6IuAbj6L1GKX/2b9LEicZhoET159\nggzEKnfshIate0Z3cFfsvh5wWvz05aB88MK2K03HIFbTosBCo4Iu07hsBzyk\nE82+Oq4+O/yOdxoFBROhP5qztmGn7+gOxUJt6/5FlOH7PfIpf2wTKuUu/fHX\nBJ5pDv2rD/tMdaJPFhBtOWVCepzxfRx710apDgr2mCl7cXnL93mP8b0mxC8l\nv1wnRTYPw+LO5dsov3TBN5UC45Dtwypuo/08xth1vD6R7fdvNdtQrhzz2hpc\nmzWsHbiwUgF//G6CEr0ZqKqQ4T4tHUp8vIKblo3wxTDHez4Dc/awy06XDnB8\nF/61aUL5Uwm2Ik/DSESZBHw9bF4PuiVrLmwzVjvhmmWjs3dJhkW3znkH/kto\ntw5oWQGonStUPrBQIOx8ECdRw9Fm0EzBJvI4VlTHsv+q7e0IlBzuANsGlxM6\n2Wlf\r\n=dj57\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"61108ecdbe311b101b1b87763e8f3283dbb9dd50","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.32fb314cd.0","@material/rtl":"8.0.0-canary.32fb314cd.0","@material/base":"8.0.0-canary.32fb314cd.0","@material/theme":"8.0.0-canary.32fb314cd.0","@material/animation":"8.0.0-canary.32fb314cd.0","@material/typography":"8.0.0-canary.32fb314cd.0","@material/feature-targeting":"8.0.0-canary.32fb314cd.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.32fb314cd.0_1597919867620_0.2162521288410535","host":"s3://npm-registry-packages"}},"8.0.0-canary.546277d32.0":{"name":"@material/floating-label","version":"8.0.0-canary.546277d32.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.546277d32.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4ebdc5be28b91acf48975f2607546f53465ac93c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.546277d32.0.tgz","fileCount":34,"integrity":"sha512-/Yd1tIxVqa92F+VDQDC15kLAro41Jt30D8b8qToEG7f/90a4EZJgkJH1nfuM4ZheiGBICiM+1UJFLtx82qQ6cA==","signatures":[{"sig":"MEYCIQDwyhQvwbtGvNK1IgOQ3SB5+Rq2khEY6rTZsYtFWeaJkQIhAI8zxeJRRxLFrCTNswFOhDs23YaHmz+n+Us+aLaAnru3","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218697,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfPqglCRA9TVsSAnZWagAATnAP/0pHSZ0VkVYE3kWZ9Zjy\nThTFgAaLhsr3kjE6NfvGOAvXSFRTsho06CjxhfYiNicyE/Bd8nGetc4Badnb\n2o4dsoqQ5a5+kMS1ucsXCUbPpxo+94df7pduoGDrWXVXVVMxgHSl0lj+JSex\nFZUUhb0MPUZODm39dUyCemje746DU4KULiVRR8wu8ijra8yCRRIcFoLBhUr8\nzYHgkGZlWQwneth3lP83K+zlU+03ZMvo4A0Q0HhoGsVGQbE1TvtW5wrHkSDN\n/jaxGP053TDqV6/yhIiTNNb8vyR3xgDp7/2vw29q9TMyY+52VXpqvKVyDL8F\nBgwlsembbn8qqDVZ/KEU+21HxbTMHgLQ48nHatJyeGzxOg1/bfdNzngG+pnT\nQ9jaY4LZ1seI1NHIWCiWFU63dyzKAQCvTt2j5UdoMq8SQ/+x5rCAqls+gth5\nLAqk1jNUMBN8ucAk8xZhc+RyM0y3SevCrZ7fuaMSpiHVosoQDbPTc7OiXi9i\nds2nMQH+55SG0Oy/8jztfFsJ420m9YhNkxVRRQMA32A34JBlqanYy7qeNaKS\n7MR/Xkw7gdlXu7oFAy2H5XKx6x5IcZFmjESGqgYhreVzkf7UiUuEnUzfHZUF\n/lkHqBeo5Gm5VEeGu2JfmnUv7dG2U2HDikb6UF5pLCtjojl5BelJLtkwkgkE\ngNGb\r\n=UCx+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1d97622107fec59bf3261ad4f1f3bbe21fb1ff62","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.546277d32.0","@material/rtl":"8.0.0-canary.546277d32.0","@material/base":"8.0.0-canary.546277d32.0","@material/theme":"8.0.0-canary.546277d32.0","@material/animation":"8.0.0-canary.546277d32.0","@material/typography":"8.0.0-canary.546277d32.0","@material/feature-targeting":"8.0.0-canary.546277d32.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.546277d32.0_1597941797091_0.7182568782159333","host":"s3://npm-registry-packages"}},"8.0.0-canary.da72839f4.0":{"name":"@material/floating-label","version":"8.0.0-canary.da72839f4.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.da72839f4.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"799508faa254ee813463b9ca1f48c1b214c6a635","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.da72839f4.0.tgz","fileCount":34,"integrity":"sha512-YXjypHM4kII7NQsUB0nA4ZwByPoQ2dLoZKkYwbqVuZRgg4fTBxkgNqd25sx0fc9k9C8V0k2izsjlWKxkPqFwQA==","signatures":[{"sig":"MEUCIQD+2x6tDyViZ3eElRypQfshvgHYfQAh2oVwXU+xtpZPSwIgKTbwh4IRY+Q4OOcNbVpHOH/mb8l/LYVRuIK679jy9w0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218697,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfProkCRA9TVsSAnZWagAAp1QP/2F9a9Mb9ar3Jc+O5Mlf\n6pRs5VRF9UKkwOxFzp/OvDrXfFnAk2wu5Tj8k8VeAumWOt2seJxLHOBMZNpw\nFedIK3y2QgEtTUepNX08hGn2PDAYTCLFkyUiJvFQF9SF66pJsP+XWRaqGLuf\nyExa3FYtVe6ys40BT5X5vKo4VNQmrU1MVyfW+HAnVNQyHg8RQX+lcE8Qus8t\nDTXz8osV1i1r9RzMBct6hZt1/YuwwaR1IB3kADy+M1qIhfoN3HzWrcrZXrZM\nsWOKUxDni6OKsyYsxx94tVRUI0doHo2E1jr7hUza241uLo+jxGdz4D/Jvxn4\nmZTxVLvuOmZLYMAphgtz88mDg1dFz4sOcdWnOrGeJQdiuRzNPkL3+60BvHff\nVoqktTNaPvmH5FppmX7SpdNTxDZtaHzoyG7vHRfQNrRmXH+hf7dWihAj2b3S\nvRDbVX5/b5oVn7snWMNkCBLaXjYpqbTE9GVBgiaYTYKor+2kVskBF5LqPRWU\n4fUd8L+o1ZztV53qQtfBbTL5/UV9aJqYvtX8iWY6+J+M8CsTaqLdfu22DPLz\naix7UPhF2OzHWvB4wu4dxOKNFgMts6Z5LbVhrIoeKsxkls0mSyhiYvWWrf2r\nPjtcj9QlBR2rleCs+eVhtrfkQsGNY+2R2+dlx6RMFMOsYDPDYO9pbVCyylX8\nqAyg\r\n=Em0W\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1b42b69de51cf24aa95c09d0e08ae1e644c71335","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.da72839f4.0","@material/rtl":"8.0.0-canary.da72839f4.0","@material/base":"8.0.0-canary.da72839f4.0","@material/theme":"8.0.0-canary.da72839f4.0","@material/animation":"8.0.0-canary.da72839f4.0","@material/typography":"8.0.0-canary.da72839f4.0","@material/feature-targeting":"8.0.0-canary.da72839f4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.da72839f4.0_1597946403793_0.7906292781224094","host":"s3://npm-registry-packages"}},"8.0.0-canary.346069ccb.0":{"name":"@material/floating-label","version":"8.0.0-canary.346069ccb.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.346069ccb.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b9a52a661db14d7bbb549dd3831792d1b42032d8","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.346069ccb.0.tgz","fileCount":34,"integrity":"sha512-8joU/Xbasd05I2hA8tSe+FjyVrRh4kPU18YXcVRRchqSAUcaHBbWej/NRUz3TQBa4f46rub+SlvJGzgywEAV7Q==","signatures":[{"sig":"MEUCIGps45teOqtw6TkR1QJnynRNyW2MXOn0lXsKKMhLV9vpAiEA/FaJuNTYvWUMTgW97eUm54j49Eje9aeBnwt5mLsdAXE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218697,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfPr55CRA9TVsSAnZWagAAidUP/1AC96+CTveWhYnARSi9\nS6D7oN1ejestCsTT5Skd5h3SQDLlInw8gL2r+oqnCkBF6wVupPjYEHbDqFET\nBap1Wew8XqlQacoXUcwmHdQME1XItpnBdciv1SXTm21PeNfrdeqJoXD4tBfu\nLopBrwhhb5G5Cy/NBcfRgBKVYTNmRJG75SyfDFS9Z5mFHn2zW65G4I485Ags\nlCdM9ppIrosZg7wYXDkmTPSwLYRz97uf0daxL9dX16SGAd460hk9OJcdooXh\nfAXMCz6gShrrdqPTE9GIeeHtizNy5P0pczhq7SbJjY9otc2+0kEZCT6VqitS\nSE3rGpQ4tb/tL8dwm+qM3F0NzeC4q0q3kxxqyfxd+rwwWfPz93a2HjIvslJH\n/mvZ9hu17foi5IbQHjhWCI1JyFHzjwFrkZE6uhEocDGHFmWBpiRUwa6/mYBB\nWejjP4rVk+do1Fk4j+mI9lHMgwityHAn6s+b4Sc3k0PoW7TcnAyP5dhMjbvv\n/S/7xwlLMtxsrVk4HCsEZeK2Bm+6ZYPVUlH+7YnPEE+ooILVN78/DJ9jlyuk\nB5kkU87Kf1mTc4EoqyNIDEDYdDRRqkpFI+QW7xXwRmvvE3DzMr8AbVfaygQe\nARzKeLi7q/85tAleA/hEKdpABFi4dhapfMGIe0ypdWcP2SYbST++CjvOscl/\np2Dp\r\n=FIks\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"cf298389e23ace16c7e4682ded1e492e489011be","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.346069ccb.0","@material/rtl":"8.0.0-canary.346069ccb.0","@material/base":"8.0.0-canary.346069ccb.0","@material/theme":"8.0.0-canary.346069ccb.0","@material/animation":"8.0.0-canary.346069ccb.0","@material/typography":"8.0.0-canary.346069ccb.0","@material/feature-targeting":"8.0.0-canary.346069ccb.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.346069ccb.0_1597947512482_0.2026565139376102","host":"s3://npm-registry-packages"}},"8.0.0-canary.e27c5802f.0":{"name":"@material/floating-label","version":"8.0.0-canary.e27c5802f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.e27c5802f.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c16165d7bb0876368049891897e0bd8253ae5c1c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.e27c5802f.0.tgz","fileCount":34,"integrity":"sha512-Jq8n3R9day+CHABA3clxzVzYsE2NG+5Xrh+sCwxU3ZcdCvybGqCTx876Nu6XHWJyNptPPZ73szSbhmLjVRvgEQ==","signatures":[{"sig":"MEYCIQC6cWB0hzJVAFEN29lm61HdqUJzpcC9a1NoQ9z34Eu4rwIhANX3yJghB1QUFFTdjZI/B6LV6CIXcLoFvOJMbh+vf+lH","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218697,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfPsvHCRA9TVsSAnZWagAACwwP/AiQa5paz35g6WOauihv\nMl1dwmDovTZ7GOXFYqMDjq0pjIr9wht5ormj4qGhPUvL78KyHKSUgmbqfr2x\ndOUV9cHvD6MQY+htfda3epHD6k+WoTQkEcn4AKfxfpKRN7x9SLWoyl1bt/pt\n7PXms77vYPFpD00XZkZ9wguU3WLJL4HXte8mixoG2BRJ9/92dE+xIqfyMYZ/\nllcyo0e7x8Ssr9wbpwIFxueEHZdDGGvtrpu+CuzdJgYKwcllfmY8piMVnDU1\nQ/m4WDKVlaIhF3tcTwi9dZS9QnODLYZvIV8VxXOZkiyxPlbe5XCkPn6LDGzc\nru4/fNT1LtYMu+h89V9TqIlEwNRrVvyUR9LjjcdR1EK2rUy1hw7HQmsCSez2\noSrWktgn5er/cmRcWP0oR+6fN1e+tuPR09NNHoOxWddB8cPqwQPzfbCfKEWf\nr7+XyiCG4xtHIwjVojyWdo/ABSRiOad+XyRV5PdvrgK5XOLF3C+LG7S2wtQ0\nuSM1xUfCTmRZ/vxUonvQDh+wamcAU2ky/yU0CAUyKB9fd9pDf6hXBgZpJcTU\nQUUOJJzj+E/BJZ+W1saNX/NqooL0oSx9Xz6qDVBt6PoHTUhR2qyVs3spmnzY\nGDK5FXyj0XOW9weRSVh+kQDrOj8P71iKTDpjCHuSYB+sI95DJPHF6WdCKH6f\nzIYw\r\n=wPv6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2c9246ec446246e8fcad54982848f7cd5839f69f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.e27c5802f.0","@material/rtl":"8.0.0-canary.e27c5802f.0","@material/base":"8.0.0-canary.e27c5802f.0","@material/theme":"8.0.0-canary.e27c5802f.0","@material/animation":"8.0.0-canary.e27c5802f.0","@material/typography":"8.0.0-canary.e27c5802f.0","@material/feature-targeting":"8.0.0-canary.e27c5802f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.e27c5802f.0_1597950918606_0.5889030990022301","host":"s3://npm-registry-packages"}},"8.0.0-canary.f4532b9c8.0":{"name":"@material/floating-label","version":"8.0.0-canary.f4532b9c8.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.f4532b9c8.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4208816accaf7525e6e2f6da51f5291e4a8045d6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.f4532b9c8.0.tgz","fileCount":34,"integrity":"sha512-X/pn7wbMERHXg7v3a8YDiav1N3lvhJBw0nArEARFKXRnhffIdmH5OuGkN9ttws5j2LaFGBZPvKJLpukLWDsVww==","signatures":[{"sig":"MEYCIQCWckSBBzOO3V6BpMoxEQU6o81X8IrJWptLNqG7oJ7gkwIhAMdNeDrh8A+wyZegDMHoUUm77N7TOdmJBZpYJ2x2Ig7V","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218697,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfPtXCCRA9TVsSAnZWagAACsIQAIifNzcfjG98Key1vzhw\nLXxixL08sZcAAUjZvGGEB1U0PvAvhYN2drCtiyYTPyflylnDLVqTZS6Qhzpv\n01K2JcRfvJ5DPNr/RKWl3Yvw5Iz0cE47IBZB6TYRnuobaB0+A4vv2BdikwVI\nhNpkpN7rNBIZndX+DnRPqIHTg+gLiurSyt1HDQNDPZav7hQGoZ0Mq6s/qx1v\nL4fEdt0uX8mXJqUk0WBc8C+31j1BoA5kDD+E5a4eDIn2H/LXUIx3GFYM4JWi\nE7PujLQ3RCubcdi2hIncKdTYhHVV0bilqG7Wh7bmLDU9lSaX1JcxQsQmd6qM\ndXFRLOvY4Vw4h6sI6+UxVUNLv1AHMui21SGu7OfY4EQDBIZtlnx1/jqyGYCV\nPRh/0azrdmJNI4oSoip5t2PxfyZPbiQKjZfQeyDOlGaUfnmB6JpEDAYXBl64\nwfu5kB2qyysdxZSDlRyoy/OjyC/V6Z0IwrTWkbClSyhKiYuz15sAWzmcwYcB\npfgNBq8EaObY79h5rsv27X998NRtY2SYZAOnqBeYVPkXaUkvul9/t9/jpq62\nUzbpOqHQ1UPtkwk6tgvT9wEz2BZdcwC/V76ZaNiAyB7wpvh8VjZ+R048kIfA\nHweX1MYeuEjfCvhDhCYnoeS2Nyiy4r8T35NRKodmM7v9nxZ6fYukD6qcz5Aw\nHCZs\r\n=NuGV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"be56493a06963f21f1f5343fc6db3accdc74216d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.f4532b9c8.0","@material/rtl":"8.0.0-canary.f4532b9c8.0","@material/base":"8.0.0-canary.f4532b9c8.0","@material/theme":"8.0.0-canary.f4532b9c8.0","@material/animation":"8.0.0-canary.f4532b9c8.0","@material/typography":"8.0.0-canary.f4532b9c8.0","@material/feature-targeting":"8.0.0-canary.f4532b9c8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.f4532b9c8.0_1597953473989_0.5411050175956682","host":"s3://npm-registry-packages"}},"8.0.0-canary.fbf73c2a6.0":{"name":"@material/floating-label","version":"8.0.0-canary.fbf73c2a6.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.fbf73c2a6.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"dc4e38fb5e6f9c0782ab295f51c8ce446cf46503","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.fbf73c2a6.0.tgz","fileCount":34,"integrity":"sha512-XuWX1pcdgXcBCjjXgEGvaSDMaWXD5Q2ggkj9RYQJD2tVyJZDeGsLuf8f3cEac5KFtzweFfnSJGfiN/8RsbsbXQ==","signatures":[{"sig":"MEYCIQDy25KpI+dL51ldJOb6qeszABOQOH4L+F650f8lYs1K6AIhANPgGOW6T4fEjQy2ttZ3kble+Qx77I/F/mNSc2UdbyHM","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218697,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfPuXcCRA9TVsSAnZWagAAtqcP/3D6/HO3e9XKI3Yu8F/F\nwt332VpBFD8XLS06o9Z1RyBGhqRmxM+nusYMKsCF+dPhSMkNnHgYA1HuuU88\nmA04MtgEztwDZKDzKZ+w3JDTk+PSccvPyCc/gkEXM8At76yOqk6vbybqQfK3\nF//zm/mlSsKNLjPuVkYi0q8RAlUTTovPe4Fa3o9WUyUNQp4HDBJVODEeRH5y\nGDucALbmixFYTcbnXnsfsIH4fxcyumIRSHCaNMvnQvmFi3VCaNThe2AE9pxH\nLe5+r26wBjguVHp0+n8bKQgQQtdAfy2shsIKOVExBeZSa4MnAA2oIU6qPwVI\n4XqGGXWX6zVIk91s5WnILjNlu18x4IOFyGztP6kvrTnWLFNZvFW3WQzNL0I2\n96eK/fjzKhf/TAS1girQxMYGv6iwri/zCOcvniURBbNPxFXQm+WDdAvtI9IZ\nuElVibTg24akO3zy6QK5/1l7RJ22ug+cC0cQW3gUoVrxF+YcxfW62DWluBpT\nQGxu/crq55bHiWpqi3Y+/pqXEE0mI3PHhu57F1P1Ieg1VUy3cIyo7qObF1PP\nbD0+43REnVSY2slHjhF0bD5Kd+GlKQGlJTkix0o580EIjm443l2GsEi5Mzfh\n3Bnlj4U0gPo/ieOwsOrVzal4MKm7AzoUTwJlRUTtITud76yj22Emtl+bJ2WC\n6tPe\r\n=Hxrz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"64db59647b6d726098d0871993ac5c563d92be26","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.fbf73c2a6.0","@material/rtl":"8.0.0-canary.fbf73c2a6.0","@material/base":"8.0.0-canary.fbf73c2a6.0","@material/theme":"8.0.0-canary.fbf73c2a6.0","@material/animation":"8.0.0-canary.fbf73c2a6.0","@material/typography":"8.0.0-canary.fbf73c2a6.0","@material/feature-targeting":"8.0.0-canary.fbf73c2a6.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.fbf73c2a6.0_1597957596423_0.8920866060756718","host":"s3://npm-registry-packages"}},"8.0.0-canary.cf800124f.0":{"name":"@material/floating-label","version":"8.0.0-canary.cf800124f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.cf800124f.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7392e93f8e7dd8c41d3d48c6a33ac0a28aa2d4c3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.cf800124f.0.tgz","fileCount":34,"integrity":"sha512-7PMNkrrtVT1D5BsnMwbDYFMmynaEmKDXK7JepqOyGB0KUH9VPGtzQsMH+qMTl916JvSDB/myTaBvtSMLGYKvzw==","signatures":[{"sig":"MEYCIQC1luZvFm4qzwaYruab/H5K9CRvAnFv9eF7ZwaFEJYmZQIhAI57BBLyKLQ5KmNiw8SRZBhgu9WPUm42sJwR2HYzGKFs","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218697,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfPvCtCRA9TVsSAnZWagAA+GoQAJrpd8WLIiNKbYauCfXC\njYnQnFr+YFr2EJAN4i7INmynLApyoCKmD5PgZWxbLcfsei6EQdyr3EHCnC+Q\n9HFpS8btMnYS5Qfo6KRmD/aiuiNG8b1dBZJrOriOfLNd22qKsW94hfc6rwtU\naQOhHgOS+j6D0m0/2MDnCxJiIO29FpsNGVgNBwjIOCEv+PodRHMboLXTiHhr\n8/EWMbhj8YiY89Z+Tga/lWTIwXXeYwHXjI4Sa3IFdSrQLCPpa8A0dm7G2V7K\ntX5s00bbsLlij4nXsO6fVFvT7Iv3uKckEBHs2SBtN033w5VwfAEh+gYi5GsV\nMStbx4UUe8Z2K406jRAGktFRwFjlaz7s3LCmWkg2qde7KDiUz2Cc3wRmN9ym\n/BM4pNFrf2S4z2bfExROcy2ZtVHTbE7A0XHqm7yFIyCQof11hPrHkAT9XFxh\n2dEUZuyok/VZ36cC2Pq9SS/5vFOmLqeX7MhziuzxBzLACEnXIcGmFE/XIgte\nqMaIjQGNQcSP9KTHN336kfxDHL1kozKFvz48ZamFo0+R1iS1eD/5aCtHMr3A\n4teCx25+/nfV7CXqvlmD+MaBZm+6603TLAnUKVmsXz96qqhDcO3skGsyp0h9\nnES3urZMM7C3f5LFGiLF2qAk6XFAIflVZwtSI9v1JOEt5XRoH6tmUCvFgSPh\nSvsq\r\n=jjDi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b15bab8ce97a47831c29a3b0acf1c34e0533b8e5","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.cf800124f.0","@material/rtl":"8.0.0-canary.cf800124f.0","@material/base":"8.0.0-canary.cf800124f.0","@material/theme":"8.0.0-canary.cf800124f.0","@material/animation":"8.0.0-canary.cf800124f.0","@material/typography":"8.0.0-canary.cf800124f.0","@material/feature-targeting":"8.0.0-canary.cf800124f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.cf800124f.0_1597960364961_0.37947036932748013","host":"s3://npm-registry-packages"}},"8.0.0-canary.95e4eeea7.0":{"name":"@material/floating-label","version":"8.0.0-canary.95e4eeea7.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.95e4eeea7.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"738a830d8b23ca2175ecf44b6f5575cdad1fcf8a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.95e4eeea7.0.tgz","fileCount":34,"integrity":"sha512-MfjQJax6bfPKmr8BRXuxpLztcjltiqrB/CO3802Ex4IV3y05FBaEHfhwX9pTt1EoIP35cT3NqUhENRK9qpYtdA==","signatures":[{"sig":"MEUCIQDMF9ZoKPml046KaIEjPGLlNbQZ+Ews3yAZFdZs+Vj/CwIgOY69Y6b9HpEMxDwTy4M5oD4FGeFjWbYuo/tBIQdJzOM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218718,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfPwc9CRA9TVsSAnZWagAA9t8QAJ81jyHQQcWiG/ihZ2+N\nygUUGxHLwcb8YowvYGeUREljUTlDcEwITueeCuOz8MkV9j7Skj7fFIfc5ZB2\ncI9+Ajv5b0FvrkYqDOUYpXAskxnF85DT+plXtAQfGDBc9GGIQIbKb5a2rxVA\nTe+ve5x4JOPe5YcIEwvCOqmNvBdZbp4M8abYQeKMb5RVFu1POOfs75ZIh4Y/\n8z3NHeS8oBGjvXgNwoZt1kEnrI/e1QjDDNEkMs3BbTrwqRZM28OfNQI4caYH\nKzV/chP50riwsu06kwlU0govEZlAyXKobgh8Xbe/KIwMGpjc5O71rx+e97SY\n/IaIudfqEX1ewAu9p1nOPACM2rijrsXpGSTlF0up3FvQEiFzGtiUSrV4mVEf\ni37s/+eZ2n6JWWw+uGJSxRtOmbmJN8MwQIUNlgOP1Eat67MxWnvDRPXvF0N0\n0Gfd8o6edsyBBf81Z4yV2xqpnekm3Qg4ok+HLyWYJqCyMSi1BwRaDSPpQXOe\ny1zJ2WfocC7CTQW6dlz61MjBZyQyNUYdcYc3CuaOtkdLicV0oDxeFtEaZxJ8\nTSIi8zVVJYaRbtrpLef4q0Az2+dWTq7WnofUcuQ9mtq8EYlRgEpZXjI7qAMg\n7pEWJ2D+YsgoKSGZfq8Mal5kyUrrVWLF7W3h7RoIQhG3Ric69DFKuQ8cHbYN\n86HI\r\n=CCI0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"be1ca8dd4a02de91f796aff6f2a9fa745f02df13","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.95e4eeea7.0","@material/rtl":"8.0.0-canary.95e4eeea7.0","@material/base":"8.0.0-canary.95e4eeea7.0","@material/theme":"8.0.0-canary.95e4eeea7.0","@material/animation":"8.0.0-canary.95e4eeea7.0","@material/typography":"8.0.0-canary.95e4eeea7.0","@material/feature-targeting":"8.0.0-canary.95e4eeea7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.95e4eeea7.0_1597966141353_0.045705398871853875","host":"s3://npm-registry-packages"}},"8.0.0-canary.91ab1c62a.0":{"name":"@material/floating-label","version":"8.0.0-canary.91ab1c62a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.91ab1c62a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"239a177c2ee7f7a9f341164d22c242ec9b377b4f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.91ab1c62a.0.tgz","fileCount":34,"integrity":"sha512-PrcGdk8k2mCsYFEzkXOX3+DtvOAvl8HjyYTSplHvZ/Z2jG2H7WCBAGh4w1qp175XQ6EyWz1AEcfwiGJvVNQCSQ==","signatures":[{"sig":"MEUCIQD59M47lzQ7rwdu+IxMOUWZi7g226en1j9OBLRYOVO4nAIgA5STOeecvy2WIutoYKJK7Vv4HS7d2HF+fLjHjJGh598=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218718,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfP+Q7CRA9TVsSAnZWagAAcJIP/1brksM/T5deK12TDdoG\nkJRnFrP4dTn9gNKzc+/U+Lp94doFfn9uTmeBly1V/IAKBKbp6jQFS3IIkZDL\nuxHZZcmxwpmiF3RuXYH0RTvMI9kW74LygHMXHEKskZYPvHBDJnFsnXhSOMMM\nlyIP7PuHdbZTJZ+YTcS9Re4loUEL01YhFejwshYtNq+1wiaLvHgM+wQuYk/C\ncThgi3ZUlCE3SCElu6rrmcB4L7NeDlLNjlmYo0Z+Vm3TN2BpuxhINvwBeUuW\nrRZcJZ4VY/Nx/gLzr26CRPC+jKC0ADhsSdFU3lM8nvjZFdOQ3YmTEFm0eyI1\nrlz6bayOfxP9UPEwkZyBRpVT8+8D+5YjbSEbXzSutzzbElhDWPvTqYeheTOk\nFVER2DTjQWFp/VqAwu3JZT1r88iAMvvucmjt9lLKdP4OxFyyWENJpdb7jREr\nc6LelFt+iqbB+op7vDV0U1Duesa7BARAk/LIr8WNy34fP06iS9w0hFzLKIaX\nPjF0JKLnICY2bQNpeK0XPmzUbKtzWBytWXJn1e+aWyec9OLssb0NJ4i/LbUK\nLMOS58ICYcSavCljvM5hfwJ8MRLrUyl/Cl2YCnPYQgH6ewpOh0gzLv+yg0yh\nxFifCo5iAiejFC9VYpD4EmTCjrLqpgzatQpU4+SZNevjXl3ABMytp0dI8qxp\nXE3D\r\n=R6FG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"389b1e8f2b60ae90730087557ec80e133f0e0129","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.91ab1c62a.0","@material/rtl":"8.0.0-canary.91ab1c62a.0","@material/base":"8.0.0-canary.91ab1c62a.0","@material/theme":"8.0.0-canary.91ab1c62a.0","@material/animation":"8.0.0-canary.91ab1c62a.0","@material/typography":"8.0.0-canary.91ab1c62a.0","@material/feature-targeting":"8.0.0-canary.91ab1c62a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.91ab1c62a.0_1598022715057_0.34751993453981767","host":"s3://npm-registry-packages"}},"8.0.0-canary.58eaa9f02.0":{"name":"@material/floating-label","version":"8.0.0-canary.58eaa9f02.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.58eaa9f02.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"0c369c2004a64130854b05017b5c1956c12091d2","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.58eaa9f02.0.tgz","fileCount":34,"integrity":"sha512-Oa5Ph2kwLgNANHBOoBC071rxMiSSc9YJigtYxeEourJF3xk2zCpZDX69ANos4rTeiZyuDapYbTQ6UCNlZP4t1w==","signatures":[{"sig":"MEYCIQDjrJIu9BdTxxLK/O0flT5tYzpv8d6LtTLxjIk+PJB0qwIhAPOL/L5bzxoM6OhOjqVuks5k6gbCa6vSC1g6r9YrLuwe","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218718,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfQCfgCRA9TVsSAnZWagAA+RkP/3niYw1Fl7sd9wXp8SYm\no6igQRaKZXrlYGXFF9uNe3Xi8jv+z8/MW5iR+FQoVXjynV80eoYfJPLAOkuX\n178hqATse5c+ynw7o8sIAo0unCNeRZ9i4EkhgQlL+H8/A5y6updYgdCukzpe\nh/yWjbbS7T1FrlFlM/WcvnAUzQ9dWgH6x2ZZrbJJcgk/ja4NakiJTboSwrw3\n1CmUFjK8rs+yp0+mZB3pyqp9rUD6/UpAeE0MgTUsT+rLryQU7mS+lbvJYJmC\n6eVY0xN3j+jKR2klu2D4lM49CRKfR9/LxpbLOKn0QZBZxLGqi751sYpol3hb\nB1AnCPkf3qehW/6ICq7/HdXZ+Jk8m4oEWU4F3zoFmjbLGg+YnnYXauBLGyVb\ny0ZQIuDDX9KMET9EOMdh5/CAtH80AxsMs0kJU2NnXvkVPqwW2wL+/itpVdpa\nthdJ/a5Paq70/zWiUPlXHyBXQoaHdEM6ChJjf4ySAKiZ2FknV/RJWiRrqU2I\n3YcAa2gf1O6kAwYmq52lFsJaA/TaP5ygXilBWX/7HepEVdBugFsFian+DEzy\nDtdSNwXufN0ma5TKs80PEOxHHlhdtcJh/CLMF/cVwJbcdKXQrtGI9q6t3PVi\n8SITjNGIvk3HWF2+9+hezVd8zK/lHFrszQFIZ6SsQd5xTI6CgYIVI9jVkZp9\nc4+5\r\n=TOPl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"9f3944d638392fa39379eeb30bd7348c9578f67b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.58eaa9f02.0","@material/rtl":"8.0.0-canary.58eaa9f02.0","@material/base":"8.0.0-canary.58eaa9f02.0","@material/theme":"8.0.0-canary.58eaa9f02.0","@material/animation":"8.0.0-canary.58eaa9f02.0","@material/typography":"8.0.0-canary.58eaa9f02.0","@material/feature-targeting":"8.0.0-canary.58eaa9f02.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.58eaa9f02.0_1598040032164_0.5586049732717491","host":"s3://npm-registry-packages"}},"8.0.0-canary.238216fc4.0":{"name":"@material/floating-label","version":"8.0.0-canary.238216fc4.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.238216fc4.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"06feaf127fbf3886432da2aa7a5ec59ca8d9428e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.238216fc4.0.tgz","fileCount":34,"integrity":"sha512-Y6fjooELPrwedIKqW7rHUX3d5JxO/UZKvyXIPGAa7yCo3MmlGLgXSf229j3LWxOO53DxMW+z+iX04zID+Sy6fQ==","signatures":[{"sig":"MEYCIQCnDNC+G3q9ga5ShAScEwIiMaxYIFzYqWmZB1ZnbUzOBAIhALXsX8+mgNDqz0G91FfwXQe9sL47KYthoiKaIpy2d9OE","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218718,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfQ9+KCRA9TVsSAnZWagAAkSwP/iSEhyNsuc3XgsXOpUxi\n48G4TLManwtPs3LhZmdTc7c1lYPGuCJ6GYkl/MQ9BAjkn2bwBezmPVuKEzCl\nIlXP/mc9B3DsQuYCBVUptLxIvh3wvOGVqzJpX1nBuj6NKtfTb/i6wtYOb1uS\nYLUsDJTWFDDcnqAwlrljbenkWqbL8Jn0Da8F+f9m6SK8eU+aRdABnvQhniw5\ngGNSzDBZV4F9vWPO7ysy+byVLUpYwQWxF5Cu8Y47UAR5dNXtd+2fngzvlQo/\nTSRDL0i30ePQmAfHdFjDeBtF76ly60zbyaK3yHP9mQHRIoRQIhyx00O1ZA+e\nG9wPrB+Gfgo0LdH+v/g07CI1YtnChDffzFa3mPoefBQr5dCE7Thto4RBDH26\nNmVrTLqhjRnUOYPeaJGdvmGPPqSwwivkhSDIPh+3ghoHnYMoJcorLTvcRCt2\nbkYsM/56Cm0fPYqbaPeEUg6W1xJDK0acFAFM57K0HVEhCharYtkbMAq01ckd\nJODKPze5fJMrYsVyG+JqgVuHdEBS1Y/mHeacNmxfYlSKHD8cl8b9n4T/tEm3\npa7GZdL5u2UkRT1MJnKNhD0zU86J5xpDdsWu4gAcA2RDa5DraAtXpXrA+vZt\nySv8cRfEaqZq5xxgxma44Mjr8B2ChLelHY6ufkdK1RVQCqNnNhBjkuEOij0/\nCoeM\r\n=OBL1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e224b287e176f866661b15e2ee791e17fcc44aa3","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.238216fc4.0","@material/rtl":"8.0.0-canary.238216fc4.0","@material/base":"8.0.0-canary.238216fc4.0","@material/theme":"8.0.0-canary.238216fc4.0","@material/animation":"8.0.0-canary.238216fc4.0","@material/typography":"8.0.0-canary.238216fc4.0","@material/feature-targeting":"8.0.0-canary.238216fc4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.238216fc4.0_1598283658307_0.5963584021329151","host":"s3://npm-registry-packages"}},"8.0.0-canary.a1c65593d.0":{"name":"@material/floating-label","version":"8.0.0-canary.a1c65593d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.a1c65593d.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6aa3a2724ae309b6f9cdf0dc41f88fd751d20e06","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.a1c65593d.0.tgz","fileCount":34,"integrity":"sha512-gvV8Jzsy0cXTsGnwJPtlL28NQTcTGfYUri4KXO1GEFR5u79d+KfWh92GB+r5XlUxu8C3OxssYZPjo84RTxBIGg==","signatures":[{"sig":"MEYCIQCYji5+wp06dMhoWFBucXFVnivr2RkTCF4+ElTWVv5uCwIhANWdrywiVt/25CXruKxOZoWZe8nkbZ2DcOoPD0xL7kv+","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218718,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfRH+fCRA9TVsSAnZWagAAUMAP/26Ta/0anHBCrM9+nqrc\nuIiCLlIlCL3H9r317XEH3pOw/a7DIqFeAhQT2E8uNylOhEjgHQ6m8GCNftpY\nXpJ7EjAtM3aubumzJzraHg73UxWn9+GaaKh1rybrkBiINDGBA4718u9OLg0o\nxVsYtxG2lBtr+fgC7DNtu27Eq2mwlQQlyYaK3zB6hj7tTW731APZVffty1wd\naCaFw1lNfWmYdgIdyTiNiilLZ7qlLVbCHQzUGIhm9z36hP8fQBreox6a0WZS\nHYNWQMJpP66mwpog2OnK2bIPlgm8Lf5kf3zF4EB2grNj+8HJSUFOpQwi5/t4\ncTzulZrSdeOKcti/elciX4cMDCWXk71FitH+wEdgooh4GyLlgw9NesaTpWvQ\nfy1Na53pDF/DFJFcsio9gvVQFNip0h8qx1/qcGu5G8o/448O1BDbVvTVDuHx\nmG1IQAvdhHaehIy25xzi1oOqAn5bA3q4CbG6dC1t3/fYznSk7zQQ89rsWI5j\nBCYtaKPp2k+G/ojQ2LMkbBaHT3ng5COK1/hB7lJzcGvLb1z1NzhTy8QEjrqN\nNVoGbygBZGZktLrN26kibbfDyDu9kzkN7/qq9UFSnHJiPcH2dgJj/sc0lMyZ\n0l4dz3lIMgro1BGDx9xAJMR7Y6j6IlvVQQV4sl2yGM/cyaLWNrXwr9k/4psi\nYaLS\r\n=3t6/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"71fc6b5e7b16ba7f6d37b724ad4982780c9c9932","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.a1c65593d.0","@material/rtl":"8.0.0-canary.a1c65593d.0","@material/base":"8.0.0-canary.a1c65593d.0","@material/theme":"8.0.0-canary.a1c65593d.0","@material/animation":"8.0.0-canary.a1c65593d.0","@material/typography":"8.0.0-canary.a1c65593d.0","@material/feature-targeting":"8.0.0-canary.a1c65593d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.a1c65593d.0_1598324639275_0.6210468905793083","host":"s3://npm-registry-packages"}},"8.0.0-canary.708cc09c4.0":{"name":"@material/floating-label","version":"8.0.0-canary.708cc09c4.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.708cc09c4.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f86d97067e7ef9ca7045b04daf6173eba7055083","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.708cc09c4.0.tgz","fileCount":34,"integrity":"sha512-kL7w0hmsb6KtXcUJtV39Yc/F4LMXvG0rggUudJIa1L26ncSKe5OGViyHEfUk9Qv7kkc2HkGuuh0oCgzh3iF3VA==","signatures":[{"sig":"MEYCIQCav7LH+VUeBbQjAZEWZjcxIU9Ao219x/4r2+awuMheyAIhAOoDk0KRHmo7/Zc5KooJWX1aS15KpVMv+3b6blWzXxKl","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218718,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfRTSwCRA9TVsSAnZWagAAeCIP/jlHBschQ6VMkpG/s0tf\nnxoIjaip6QieMEIz5Mdjj1Acdq40Oj2RIuRqBfAimBDRpSPkYIa/6NzBuf6C\nr1wgd/48ODkOFAY9ZFQ5/afFzu0qTz3og7AkAnhdJ6yEhn51Oin1ug6xxpTP\nV6zUkTfUkIn/94PS5m7vMz0gihe34EDh/NROLZjuPXJzuH7Ha3s05x7Ewfbs\nm52Q1FtPfueBVtoVNjE2h+Bnk8YDDzvAHOwewBYJ+CARkDJSqoPgetNh2ozI\nt6zL+V/cwyUkW1/DuShWV2ROgRFxlpUZ8KTru3f7HeBcsTcxk+fjDEVVi+E+\nqo7ATKT8v4amlXg/rkBiqF1hIZoU1/KO1HFoy5u+ADKRW0tzuAKiTd7wh+t1\nspjrhJ/nr852AOdEiMu8kfXPRQtUGF4qKAK5KzRdSVmvKj/ZZz7AXocGbkLV\n9o5ty7bZDAbIA2HJwWJxhvkJ1vkhzr2zXx5inlfPTK4vXWMlslHiWJvu2yCr\nqjSW6QfbBdAMFgQC+qjtFCUj/J7EiWxpEdBs6U94m88bWN+6BngqKc/2LfY/\nOm6rrdYBltJerhyVh4QTJYLn6PJcaeHg69yzAAQ4da6Ss9KwTZ/voNKVAYc/\nUkMKN4uVPr55LK+wOmHJTLn/yvX1+xcnAL4djlUkprOEHFMdSJAIVaHpRUNd\nvSv8\r\n=wEOT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"41353a40a8a6a80ac6438fa702cff9ca690b897e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.708cc09c4.0","@material/rtl":"8.0.0-canary.708cc09c4.0","@material/base":"8.0.0-canary.708cc09c4.0","@material/theme":"8.0.0-canary.708cc09c4.0","@material/animation":"8.0.0-canary.708cc09c4.0","@material/typography":"8.0.0-canary.708cc09c4.0","@material/feature-targeting":"8.0.0-canary.708cc09c4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.708cc09c4.0_1598370992150_0.40230436101518685","host":"s3://npm-registry-packages"}},"8.0.0-canary.19bea2ad3.0":{"name":"@material/floating-label","version":"8.0.0-canary.19bea2ad3.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.19bea2ad3.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ca4e877f048c20d3ee87b7e1044504f24580b271","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.19bea2ad3.0.tgz","fileCount":34,"integrity":"sha512-hU3jcUDQ6lbQH4ITzjpqkc424rFch/giAe+dtcs+0eX3Z8pttZEF05jMREBZSVu5ykJ/t86QTfLUwuGKudJtJg==","signatures":[{"sig":"MEQCIC0is9/WsctNs7/jYEDhpnIsHB+wq06iTf4c+QW1EwP9AiBDEMProAtZ4miqVoeocOLihFllHF1ZE/Jqaxok+DfcBQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218718,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfRq69CRA9TVsSAnZWagAAWRcP/0rjpXVZzZbOsraz03Bj\nC59DXTMx/jsEl0ju+9NSsv6CpKCldjifnz+iayN74A/wxVf9h96i2C/20AS9\n92jc5lWZl0HW5RfIpeG1BTALKYa98Y6QotZ9Z95UAI39x9UKIsrBJLbQHZFc\nsaRzOVnj5pW8j4q5nZLxVxeCY+nViu1JjVKlDMJbio1yhHeX1Lhq1YsVB1vw\nKF4X6VAt1IOi79JXDd7FsJ4HqeKwch42D4EjMFj6Y4ZLVPxS+pR9hWs5P/Kp\nLKX0Kt6SPz+xslHjasyHw3sez/bS5XipymaEbjwvbC95OPdTHdYvgtCRZ3qS\nBWm2bqmrZaiklWVodveofcBtK5/a4KnGSs8gILIg2pftlcbvM0N1vXTRZBEp\ndUwFIUHwPX5uUYOvJAEucUFvFKVB0e61+ffLdqYRfoKRLP4jZPXLO8/bwseS\nWJXr2v9xckLqjwzWdoctkC1HC0bYkwNxDMvcBRDqYfV6lA8zYuxiZj9UDcDc\nqxWwTrPYPSeRVjb+ZvqLp5OQZQAxvYFW+0VJT4GX284vAJw+zyHXcKvxnz/7\n5fu5TLYGg7IngOEd4QRMn6fzsq/kt+utOw4evsH2pQH8txgB4zYlyaEJMKgw\ncmUgWvHN994uJuqpYNweecRXpa7WCyMzOqAoI35HwiBT5C3AS3r/iKHAGY3r\nJDf5\r\n=oqvj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"4f1ed83b6a09dd3e7d24508d420cd99be9dd3893","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.19bea2ad3.0","@material/rtl":"8.0.0-canary.19bea2ad3.0","@material/base":"8.0.0-canary.19bea2ad3.0","@material/theme":"8.0.0-canary.19bea2ad3.0","@material/animation":"8.0.0-canary.19bea2ad3.0","@material/typography":"8.0.0-canary.19bea2ad3.0","@material/feature-targeting":"8.0.0-canary.19bea2ad3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.19bea2ad3.0_1598467773515_0.26773286969921006","host":"s3://npm-registry-packages"}},"8.0.0-canary.911014711.0":{"name":"@material/floating-label","version":"8.0.0-canary.911014711.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.911014711.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d90d30e3b13931290bf868a1f47ec91c2f47251c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.911014711.0.tgz","fileCount":34,"integrity":"sha512-tQMZG1em2l0/+9r9AF0RttTqwD+QG+7sq87LIrxRR8hzEeqQvf+Hb2Sp3NAlIOPpQAWiII+PJPgZuv3uysNWpw==","signatures":[{"sig":"MEQCICCk91GT/Yj2Tml8nY8fWu6615c3jAU37ycXWZl3ClHkAiB3KfinQ3L9Z4oO7sEsnmZIWWMrHd3QE3eAWAXS60dm3g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218718,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfR9psCRA9TVsSAnZWagAA6PoP/1O8H4xiAWzDjU/z7QkL\n1JMVlIxQx/vxZNgFV79mLWXe+wIHmJ7QIDyz50I4P6IkjnBalAby0++GtlAx\n1HTbkrNLks2P/7O4h0bYRlEoko1ExTHImaHjf6q1Q8wt5a76OoDrWeuzSyco\n4uMVuN9C3CsvO+H8Q4l0AcVjIHO0RZSc/Xe2xMvo6QcymYNlTBJTTWaeoWNb\nnj3rGFO5FNmHvTsWmST+8fMLcVlKsmSjhhD/AodsF9te1xN6f3mISqXbpgxo\nWfCAS5u/pQ/vUfdDdZsQlwIb4O1neejBp4oEW0WvhgkAK9/douQvdA7OvpND\nf2VRHbWDbYHNTG5Vut0uxfoGSPmDVuMXFNHfZGq3AQ99Tk4giExGh54mr5R6\nEHY5NeLyzu/nv8752zGyU3YCLfwNS5V+ML8pi+rJU4+zWbIeIEbjz38o1OPH\n6WqGe8n3/YlhWwIa8tebOIlfVEYvpmjtmq43KDXLtMp/jAX1rn4u6aRLw6DT\nYIkCPeBlKPYucfg1B98izUSOYOd2Ty25Yjb23/DPM/VS8e1NsKFSn3Mg//bb\nmyIc/tvcZOmRfCoXIowHUxMMvUDUtsjbplhtKo1MhgWEum/h4g30u7874nPk\ndezOAppH1YjE+w8o4a7/HZT1nAKDsvzGlBAB4BH/MIy+CmtaXjAJsCww6cE7\n09n/\r\n=qt97\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e0563b839594887804244d231bec5f415812fc4c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.911014711.0","@material/rtl":"8.0.0-canary.911014711.0","@material/base":"8.0.0-canary.911014711.0","@material/theme":"8.0.0-canary.911014711.0","@material/animation":"8.0.0-canary.911014711.0","@material/typography":"8.0.0-canary.911014711.0","@material/feature-targeting":"8.0.0-canary.911014711.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.911014711.0_1598544492565_0.8990275908450134","host":"s3://npm-registry-packages"}},"8.0.0-canary.d3387f54c.0":{"name":"@material/floating-label","version":"8.0.0-canary.d3387f54c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.d3387f54c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"8608ad07b0ac3163ff2cc48cb52fbdc793c24be3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.d3387f54c.0.tgz","fileCount":34,"integrity":"sha512-3jetYiIHEbFVtlzTcyo140S4C6VuJgHQLhtmBassBkgF83IVYeoOh8vdYw61sR5PsuVI65yHPdPLTCNEVNmDVA==","signatures":[{"sig":"MEYCIQDA5ZMOme6WvGoWSY99GIrBz7mkP5Thrf7BETdLDysuNgIhAJGFsVvJeFCDqFp/iT1Nq6aqYJZWZ03n7AP4Jk5RU+XE","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218718,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfUVg/CRA9TVsSAnZWagAAOBcQAIoWIG4MAKoI+hu5djD3\n1LUap1/FXd1kFF/Laok04ibmGnIDcGLJ2EfLsAZWh//KXPPpB66AE5kpgEm4\nbhj8T3JLHxv1f+63Tz5fSlYfMLRSXewuv44fU2CIumhLJvtTqksM1g0TQ9hd\nZ/IFjNoy1JutF3IsyjZcIT6wUzBmnRXmPiF5j7fx/cl3KykjhaqgjEAELLVn\nClYYzMGaRuZnW4BhdW7WyFaiuxLDe+PfJT2kAAd7pHSVVL0199RI9pxUWOLD\nYFRZV7eE5dlGDku4B3MuU+GNeKK+eLEttxvuUC7UnzfYEAg7cu4vOGkHsUaC\nUJYRJRhNe3GzAzgRmFR4+TwqsdIbRIORk2ljoy5ygYo5rr1+VShirQwQiN67\n3NCDOILukk+SkeTXFul/JIYlT8UNRTAqTVja4MKSZxtRq9mebHr7cWTx6VwT\nbGvKL6Jwa2XJRWTBJyOf9cW7JwFu9R3MgyxDlUydJU3USoH0HLLjOJSyx7ql\n4xeu+QztOkifV2kTvzcMOnh2ezq4CeOP1Pbc/yylKqJBqOFoeOJk8EUmXSj2\nYJqyKCVKSGWCDvJxT3OIE5uILX+C/lW5EA4qprD0MmJAzPlE2SvVr3kcGgdz\nKnTff5rrv7cc2UZrQssOUPJh/BSh/5kFB+yPJzHt1kEgbY7NMIvZ/vnFC0zk\nNzGl\r\n=BgOa\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b8c159d735641688e2fc1631ac7a98134ac5fbc4","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.d3387f54c.0","@material/rtl":"8.0.0-canary.d3387f54c.0","@material/base":"8.0.0-canary.d3387f54c.0","@material/theme":"8.0.0-canary.d3387f54c.0","@material/animation":"8.0.0-canary.d3387f54c.0","@material/typography":"8.0.0-canary.d3387f54c.0","@material/feature-targeting":"8.0.0-canary.d3387f54c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.d3387f54c.0_1599166527037_0.9100665555108707","host":"s3://npm-registry-packages"}},"8.0.0-canary.2ccf996cc.0":{"name":"@material/floating-label","version":"8.0.0-canary.2ccf996cc.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.2ccf996cc.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2c8f49be3f85cd1e7e5e3997514e808b3cdb8520","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.2ccf996cc.0.tgz","fileCount":34,"integrity":"sha512-2G9JIF7OprDhTDnqEPHg2OKLmCV3lrisreZwGJLv2VDFnWwlXgdWAzAkZN8ijpDr43Mj/zswONkkL6G+AcAweA==","signatures":[{"sig":"MEUCIBD3hPeb5qdkpczi0XdOSGb/alfYLPwkPth8iSbPcXTIAiEAi3l3JDK+2csdrbPRUmL2vX/NPdI2oZ5wYOzhq9nZPhs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218718,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfUVhcCRA9TVsSAnZWagAAFJsP/jUk/ZuAph5uneoqx4Sh\nld1R39MtXNEfg2sY/nExIqIGPilPVIEwM521PSDBEbL6ueuaztrgPK5cLPtb\nkvOZpY8i1CLtgRLp9S+g+PD9283TH9Kf6KwBlyYtG78e6wJDqi69U0WKXQa9\nX9stGQSnNyqgk0uS6FFxHwYnjudCXirh9V1/hET0eDmdmlJDWtqZcC5j+cls\nvKquXTNvMLHldX5wbi5TudQausqBWKSm0aQkQytWd/xnsKJNdTUlH1UIaKJl\nyyqYP/VAOLU9Y7FsNnlWBrwderNL5Psh4qfPEbmmxzURfYY0BBNsJrdp6PrW\noDvSZfeznLzaIHXMs4qkLplXj2QVak60LdkjgkVBDS/wtW3iyOtE8ETU3L6n\nq+UjpjACqesu9m2KdF7npzsbbZN8YsG68eAFR8IC6pMsAtHtf+hoUi+WrF/R\neYkarJThG1pTWqFleJzNL/1CF8AZH9bw+se8twoaieo/2VGwqjfY0cQv/QBm\nl2tn1x7OC4ihPDqxsbq9JGTEidKp2IpU+G2IKdcIAibXcE7iJjqurK/cOKVn\nXk/kZCdRwhPa7T61k6CXK0BjnwhFASAIJwubZ8jNp1lrQfal7FWFriMl1GG6\nezQ+0vsTsaYw29ta1jaL4ziLKGgHp69HKl0qz0TXuoUj2UIslT2Qvq6gGPOm\nYeuu\r\n=UqvX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b295adf5299f65a654963fa774da90dad3e39244","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.2ccf996cc.0","@material/rtl":"8.0.0-canary.2ccf996cc.0","@material/base":"8.0.0-canary.2ccf996cc.0","@material/theme":"8.0.0-canary.2ccf996cc.0","@material/animation":"8.0.0-canary.2ccf996cc.0","@material/typography":"8.0.0-canary.2ccf996cc.0","@material/feature-targeting":"8.0.0-canary.2ccf996cc.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.2ccf996cc.0_1599166556150_0.8443382204072811","host":"s3://npm-registry-packages"}},"8.0.0-canary.744bfe5d8.0":{"name":"@material/floating-label","version":"8.0.0-canary.744bfe5d8.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.744bfe5d8.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ee18f42138bc923e766895df4355014871be180b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.744bfe5d8.0.tgz","fileCount":34,"integrity":"sha512-yTMnzZMOpCpefhzPpEqutiIljYa3woE0+iMuxlL35dfvZphm6BGDcAYWcOmGMOzd2uJ8yQSwfi1Pinm6+9leGA==","signatures":[{"sig":"MEYCIQChaA2lfHaRkI66ncToOGuxOIMf8Dz4y7R3pLI4s/ROUgIhANWR5vskaRmiMhEP3LTSM4/krNuWf1qMq2Q9qTGfGsk1","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218718,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfUViJCRA9TVsSAnZWagAALhwP/i07rBDC6fvvCMDNdKJT\n6d4xIguV1IMH7syWYPEZAtJOJMEsm3kh89WoBzLkNYzZf5s5vvHgPfTdMAUx\nSg2IDw96bIJPSwrRpKPwcCN0RjgUHiV6oajH8gophGrtI9jbjIzohlltDJU7\nggUYMiWBnfqlPVyG3LgmkibNDhZ9E5rMD0tpOY+aruQ5BIpr1goSYtWA8jx6\nX8QuzBf6+4bQ+FP0UF+1QdhDXpnv/RA7V3qBk+IdgRnGqG5MpWFTHY081WWr\nROfj+1ir5mWlTAtvbC6ASLKnvRtiQ0mpw1kw/qlW+JRwINEFoA5gYK2BTdLW\nhBfT71tSHoSL7tRZQZKG8TD+5uiyQiU1hnSNLdv1Z6G4VNKhjDBBNRIMTkgQ\n0a5VuQr9Q+atUFYFP80dYcKSHlevD2uX5WQu5VoQY055YvSQbzK4rwC6/zcu\nFLWmhDHTsIYF5F9+z4bmq9K5Pd5LQRvgY5toZphxFRG9s8QEjeX5oztEQ4ah\n92AhcEooO127LbqUZ0Lh1HsupMsXWljqRudGWDnQ9D2UACc2jYb/XUH/lf8s\n3XoI0lIA82VuwR5JIpj5kqqZ7Uoz5cd5A6ckQf8UqXBFwxIdgT8OMPIXD1Yn\nxtRTnzoIulkJd9rsYzX7c5avEACENxWZAdak+4H0RYhbvXEZXuJbhs2dnoYl\n27PP\r\n=TQZT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e8e9d5605e05fdd50b88c6ce659dc2ddd8ba768d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.744bfe5d8.0","@material/rtl":"8.0.0-canary.744bfe5d8.0","@material/base":"8.0.0-canary.744bfe5d8.0","@material/theme":"8.0.0-canary.744bfe5d8.0","@material/animation":"8.0.0-canary.744bfe5d8.0","@material/typography":"8.0.0-canary.744bfe5d8.0","@material/feature-targeting":"8.0.0-canary.744bfe5d8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.744bfe5d8.0_1599166600506_0.6335153817615713","host":"s3://npm-registry-packages"}},"8.0.0-canary.78da96eaf.0":{"name":"@material/floating-label","version":"8.0.0-canary.78da96eaf.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.78da96eaf.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f89b88949e47bb1549d9875468595da481f72918","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.78da96eaf.0.tgz","fileCount":34,"integrity":"sha512-4gGAuQ6aQ7vWufMNZ6Kwb3ZqNZTIHJlKx0PmeFq/L896NlGPwhMWz2kO76rRZWV8L26+5wG4F+b0ZdN6MxSyBQ==","signatures":[{"sig":"MEUCIQCa5ONzhlYbncN7tTOk/9bEdFfZAXUxoNViCPuwwlkGygIgIv+c1pKYvwyC+3RI5Dl7jHoxcwHE+g7YvN8TAAMrOKg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218718,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfV9e6CRA9TVsSAnZWagAADP4QAIZPaYjOYsrA9wS5O9YW\nEVdW0S8S9Ufq1Fa7ubv/zYZ+CqwNhuObgn4SvhLaANtrLnoRTL8XyJj9xhMk\nb1YhmqzT4KW4MmR5bnzZf5DXOOFEBPCyQ44n4EOWu6qAeh1UnS3Yq+vTC0hV\nm+sFaBmq+eqFivtCL3DpEvT67Rsfe34xvCWFcG7KHAgmKe0VcxtaTuUsLbu7\n8jYNbbis3w4J1doK2ASxO7j5DwWf3gTT0uQhFGDHFYIxvMjji+dqugKMDvbC\n6TvLop5jCITmnW56Aowei7NEZ4fkRHN8IBl/jT1hmQdHy6tXgps3OPU3kmPo\ngYSTpZtjG9Ujto8X8LD1hz8qDS+7TUzV7rB9igjUP4oqMaXeBctnbZanihsA\n2ZV+YU0pv4a0D9WnmjPR3Hf40f9eTq7NPp5gGQg1IFnk6mpNJ/lQ0tzqTB0l\nv/1Xlqj15B1ugT6Fq/ZDkAThgLHl7yAnBLrBLP82eaoAoGN7LYoEf6zMfSB7\nTyDngT3qmtM0KiQw/E5eyyZbuupXoWbsAou/ehzOqvQdh8dPk7oop1tenMVk\nLgAlkjllRs5v0WYabKViRz5SicJMK8DU+MBawPPTlQEB1w1Rx8Cpy69y/9sb\ndwL+XYW9Z3qyGmfAiF/v6M65/AGNVnWEfuuraaiJhvxVaWkVCutJDDQ6LB4/\nOy+c\r\n=pXHV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e9750a8b0ebee9367eee7e514953a1b1ac6fef7f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.78da96eaf.0","@material/rtl":"8.0.0-canary.78da96eaf.0","@material/base":"8.0.0-canary.78da96eaf.0","@material/theme":"8.0.0-canary.78da96eaf.0","@material/animation":"8.0.0-canary.78da96eaf.0","@material/typography":"8.0.0-canary.78da96eaf.0","@material/feature-targeting":"8.0.0-canary.78da96eaf.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.78da96eaf.0_1599592378254_0.738817746554139","host":"s3://npm-registry-packages"}},"8.0.0-canary.b0ed593cc.0":{"name":"@material/floating-label","version":"8.0.0-canary.b0ed593cc.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.b0ed593cc.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f84d2fb9bb429d31a6ba6b3ab7e418e88fb2a2fc","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.b0ed593cc.0.tgz","fileCount":34,"integrity":"sha512-tU6Pyzin4EB9DBSCaMniKPGJWgo1+ZGr75287pX9qJZI2e4kJJs9Wiok+S0v/eQXsR/u1UBJl175ceQMc9mNAQ==","signatures":[{"sig":"MEYCIQDqyyCpPrgFJc3j4gb/bJ3mGaovdoEMV1usLGMoIPOGLgIhAI72oInL+H91zyP1/aZwUIJrtUpsYDiTSJKYL9dkE2Zr","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218718,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfWHMrCRA9TVsSAnZWagAAHdAP/jzd8nf1kG+fYaSwuypB\ndsmU6L1REEC8NkmJj4B/0UBG4q/KrbUms0ZivED3goJxFP1OZBc474yWHuSq\ngiN9mw8cFY3vr4++JTTFbHV3rZ0dMeK6XcgXwcJVBbLRWEg1SCb8qHzoE2tH\n274dLu9x54K0c47/g7HAVoUjwVT8RRr2PZnH020L/mzoMa+7TJ2JBw0szFzA\ny67MRCLsMO6SV33sKw7rSzizhBBZRnURwoWuTCZ2COGTDdssplwQtgOq46Ww\nIedjmFg+uqA8qfzOCFjSsa/OYfUURVQ61nG/LtQaRi1Uoi+Kg8kKo/qaU8zu\nDOK4ArTgf4utkfmzImoQxyeYIVgxsk15kpQA6hDWjOOEf266vlnpGFBlyaAA\nJIB2GszgSNevbk9vlV88ljyYH9VM5smnNh091Wyn4IPFGWfguDIux6q0JU+5\nafPKJR6Y5uUkhMZ1xBJKqZg3VxCTG86qquUqGC+2uBY3jrWODnZtG4JerWj0\nLuSLVcD+pFRO4G/ZP0U400smeiFdspDDOLUFUKz8/WRO8t3mpy4+prnjyPoV\nOeqNgLGupSDcV7jOY/5gk1DDxgcsKJRzxP4ZtCDUISKiTAvgEyYbWYxXqQuR\nKA6wkufd3wutHfcGJTGZvC1o3ajEMOe6uLfwVDVK3nkmZqsvL6iLC8RWhjRO\nqw4h\r\n=nrpN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d4dd3b56db446c52c35f891f9a19896a2b762f0b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.b0ed593cc.0","@material/rtl":"8.0.0-canary.b0ed593cc.0","@material/base":"8.0.0-canary.b0ed593cc.0","@material/theme":"8.0.0-canary.b0ed593cc.0","@material/animation":"8.0.0-canary.b0ed593cc.0","@material/typography":"8.0.0-canary.b0ed593cc.0","@material/feature-targeting":"8.0.0-canary.b0ed593cc.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.b0ed593cc.0_1599632171049_0.015068899111929657","host":"s3://npm-registry-packages"}},"8.0.0-canary.85a1fa9ea.0":{"name":"@material/floating-label","version":"8.0.0-canary.85a1fa9ea.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.85a1fa9ea.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"aa5a8a88f2ec0d86737a74968d90d8190958c0be","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.85a1fa9ea.0.tgz","fileCount":34,"integrity":"sha512-A8rNqidoPw1qCGg9LHX7hHXPk7OQGx2wYdkXEh6N6oQe/eZgTm8eVJJxdESQV4qRWRjzJY5Q/NDZGgTxO9qJTw==","signatures":[{"sig":"MEUCIENKI2ghpKudF1Rr7m/cHASHpA1Fd83yAw7wXadLgoCTAiEA47ygDaxfEOaLVx2MWrJty+Rt1reoYPt1wGi8hRrF7cI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218718,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfWpZPCRA9TVsSAnZWagAAW7kP/RSHZOlzZmeiAIjwBNAp\n2zJQbS7FEHzXxsQ2UpxP/YF1bkVrI9kP25+HPpAwzo5UgkI5+u4n84O0dSSB\nA9yK0eoVMV2TTA8vdxC5XuSEwxdVSKKE8UUi54Ohz41cou8lU+JQg9z6qzd1\nZMfg4LMERIr+JZxIbSYoo/OUA5DbmmlFg3tKNQaW3fcZZwOwLlugVMnhuu9g\n+KWSO4i8q2v4BfNrRE5OWaH3cpEuntMDEFcdxB0QsIHLHQV0ZFM5ioQEKZ0v\nrf3lCEqCA364z03gPkGWFZq+YR1gM6xwG77E/qrCFOdxJilL6r+9kEhYv8GH\nPjNrqitQ3L7O2UPez+eCu6LeU/VpEkJhexN+UJM3vw1tyu4KBzjnTe6MZjq0\nSYlbRX4CiuFQZMwFOlli9wEoBnqGtxP3nJFxE+evt9ScrYwkIeeDwky+AFUL\nX/osw+EU0eIufDct8sAMB1C+ARRwIavFfyQxv7kX2+YhPG35air8jV36kMr2\n+wMQXKotLQPbEdMioIKEu990XWJRyyHFz5wln0DJIuakQZb0V+9UzBTmhGl4\nJQiJSbV092xQN1GN0wUkWxQp2cZpcgkd9bBVqF5MFfNQIBfOYrQPhcz0aIPQ\nxRhByfcHsd19BM/VZ/1DOCd5wLCAkmYipXHm2BlwSRNamUvJRfkNTW1jTcTF\ngTvU\r\n=FKyQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"96441cf0eac61122c48c43aebac2e249d5bf492d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.85a1fa9ea.0","@material/rtl":"8.0.0-canary.85a1fa9ea.0","@material/base":"8.0.0-canary.85a1fa9ea.0","@material/theme":"8.0.0-canary.85a1fa9ea.0","@material/animation":"8.0.0-canary.85a1fa9ea.0","@material/typography":"8.0.0-canary.85a1fa9ea.0","@material/feature-targeting":"8.0.0-canary.85a1fa9ea.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.85a1fa9ea.0_1599772239338_0.6068444971383491","host":"s3://npm-registry-packages"}},"8.0.0-canary.0bc41a9c7.0":{"name":"@material/floating-label","version":"8.0.0-canary.0bc41a9c7.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.0bc41a9c7.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"33f56a2851dd53a74b95cec6a1c08a4a8047818a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.0bc41a9c7.0.tgz","fileCount":34,"integrity":"sha512-7zRzJPVtbbIwCdZkcYcHN3QzGFJcorEgvveWLqNtxZHwmu61jbQc8Qr/4aUjJkCrmCZrVgm9jS730P2yjXUiWQ==","signatures":[{"sig":"MEUCIHs795B0N0t5yar/h8oBYBbqak4yG4+SgVZkktOt/gNfAiEAgk4kpUucL78GxxaAe41H4Xv1ov/81vIWIzzyXo21UOk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218718,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfW7jFCRA9TVsSAnZWagAASSgP/0Ad9B8iCp73B3YG6Z0B\nQX3g5TNDpq+wau09bfsBUst4qBXxDBKiopUbtUZqP6iSdEA3BlCgGzIPc22+\nGG2kQJaLpj8G7Tt86i6e9P9F95wVVTv22DCq6hlGnbIcxrYIxKUf/TGY0SAp\nYDUj1vYlGwWGnulb4J3N0d1RRw/TU/fiiQU94zHH/wj19WPAKSDKlXJVaLD8\nLSI6zhPVg5UCOCPRD0JLQ3Q2yNus+NmBH5Uq6dat3FH4ZeE+ljq7d//mGJBe\nXl+MbOcUUtPPlsoV5p1qUyO7+PdHKEMnhDX+5lbWVEkr0KyM826h6VGzREW/\nLSRTx0LRp6ISTVpigpVQh1xn8/cnDrTRWDqwQ9/pyRmsZHTSnbjrJN0a1kj2\nUfYA0diLP1USAQYmzh+s3+6EfhuhZi8uvAyuM2dcWH4MEMhDYQGHuMUhemwa\nz1/XANv//VZepUD7+LvW9DYheSmiF+ttcmZ3G5Th20/qX/RktVklgFydxUJZ\niWyd1rbjEn5yaz6ruBoisPaYNNdWXFQZb33ZGxvWMXaP9f8lZRYFNle9ajsV\nh8DJOFgkfzLGBLO0W5epPCTpPRFDzQo8g5YavRPOxYR2r97kRjqVLt0ShwXH\nzOLiQcfrsJ7++LG2T3tFDSWyKINkGlaJCStJh2rC/x6lWgvOQ9D8k/esLgwJ\nm7Id\r\n=TiXc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f9e2c4fbe617a115d220d49782884d15a0d9ff51","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.0bc41a9c7.0","@material/rtl":"8.0.0-canary.0bc41a9c7.0","@material/base":"8.0.0-canary.0bc41a9c7.0","@material/theme":"8.0.0-canary.0bc41a9c7.0","@material/animation":"8.0.0-canary.0bc41a9c7.0","@material/typography":"8.0.0-canary.0bc41a9c7.0","@material/feature-targeting":"8.0.0-canary.0bc41a9c7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.0bc41a9c7.0_1599846597340_0.23286069492471606","host":"s3://npm-registry-packages"}},"8.0.0-canary.fc0eb5013.0":{"name":"@material/floating-label","version":"8.0.0-canary.fc0eb5013.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.fc0eb5013.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"dbd6f44d870a19f6da8b94206298647449d28e00","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.fc0eb5013.0.tgz","fileCount":34,"integrity":"sha512-AZQKeJ8faiyl6SixDpGaxoy3a3gjR7KfUCCp6ZP6Lv6oj1aJqD+s26G0QY8HiO2RvUtOud9hgHEa6Gn3ylhjOQ==","signatures":[{"sig":"MEUCICpMPxxtvohch49kuwqTX/ujSWk9iKzku5sEyzYkfmE5AiEAzjO9Qmk1hAMBDsGyvAJJ+YUT2lXFIzgBdNZISy0DQ5w=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218718,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfW9ZBCRA9TVsSAnZWagAAb18P/jY18x/9ph4Sb4i6kdPL\nheEQVizlG5KHTSQXer4h0rlcfxwT/gc5qbJkNqfxsyYBs9fZR/+Oy/w49yCI\nI7jg4O9vEom7/TduTkj7i4OwFe6r8q7p8KdKCCTLhZZfwq1o6mmUBNHg8M5S\nM6iwwdN9fml9axwtyBxCUsc2lxNLp4kNf/9af1LYAemFGq9alPFcvdzS+g7Y\nPZ6BWeOpnPcJxwFgFmPyr7oY7H6rQExKgxFUZvS2Ft0c5eL+i0ZhDJZ6Di2v\nDmWnflwwgEJpbT6RlKY5ewGns2CxL9UIt4f6df/r3wf8Ldbd3EXRgWMKP5EX\nk0xLDBtfAJTtcEFtktZWIurDyWorpTEVOoPYdC0ApMnzGuMCO81u5adlj6So\nArLWKEa+iTlDH2hlAgUVlEyJ16Yv5z8MfoS9/G9CnBvGzr+QeHh8n5X1vFLc\nZ9FipiZU9mi5DQl05VviRgyb3r/PxQ07kTY0rGTnlfx4Uh8gBMmjIjak1Ti0\nrMUP6f/atZClDGbkg3IkeV2XGX1rSCnq5vCtXVskvYnZdBzrmpyMJTWUEgHb\n9ED8xP4JejK5MC/H7QvKHo0ON2RZ1aDBsNvl2NvIl5jbgBJSsRh6Gsqz9WhX\nDEneP4ycwbh+FXgLdps31vwoY9UgiMa8oDWtcEd4i1YDn1hCPioqdkEmKel9\nfvbW\r\n=9+pe\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c6572140acfb45fa86b79570328d75e3869c40ef","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.fc0eb5013.0","@material/rtl":"8.0.0-canary.fc0eb5013.0","@material/base":"8.0.0-canary.fc0eb5013.0","@material/theme":"8.0.0-canary.fc0eb5013.0","@material/animation":"8.0.0-canary.fc0eb5013.0","@material/typography":"8.0.0-canary.fc0eb5013.0","@material/feature-targeting":"8.0.0-canary.fc0eb5013.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.fc0eb5013.0_1599854144524_0.5874914672092246","host":"s3://npm-registry-packages"}},"8.0.0-canary.319bf66de.0":{"name":"@material/floating-label","version":"8.0.0-canary.319bf66de.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.319bf66de.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9cc1aa3d07432fd597c9847ebc7d1362e3b53404","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.319bf66de.0.tgz","fileCount":34,"integrity":"sha512-8Ne9Bde25RoHoz/Zj1uRij6aBUEJ6mzTNL/FThrPf36rRP/xyz8hNaNllwJ5aTL4OBTotLe4d8+atcgb3kfLsw==","signatures":[{"sig":"MEQCIBlai0/G83+VUiYQRSy9PnWfb7ZEc5Z9hnfHD8XpZFCeAiA1FJOc+vWPPtLU9WNsnMOPGgl09uTyL0hxhsvUFAxZJQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218718,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfXAPfCRA9TVsSAnZWagAAGm0P/3HgHaXHDoSGlcet+/Eq\nsSOgofMASkVHhvzHJpGjp0WcZpGQWWJS2Z0We4pLyywyVnSHMgQsiF6ibtnY\nH4O1kllY4Oqy2Iqc0fNp2DQxMGkbT+ukmPXUPEKR38W5H97T0Qh6QWd9Mh72\nmiAWDhrOUUvoCNR+HVmojCTAhqLXNkwSMKG1AMBQgyG9QHxCpSfEuAayzkH0\ngOMaK+OAZUPgicr9q1/96XKuNfr6W8+7VC9V6gso0K6jODN8iqCvHTUCN0N6\nzbHIOXQacSYcEsfulTYxNKrrcMLao2ciJLqtM555kh49NsbXyLCY2PB0arZZ\nljTElwb9yMEuFrli0z8zZqxxHw9iBPpYBsd/SwpsLF0+JAi6SOsipSvmaSNT\nOLGhgyKXB8kpw7oAeGiT69funUH0Z4sixpaaIm34qL++fS75Kxhhib4eFxJj\nX+sIvYmpU7bD2bNgYpN6czNZsJw9b6gXsVwsyXRV+vtQPIT/g2MXPLu1UQnm\nsqztEBH0DaI8Gwzc11e/y30t8RaihKxmbgjz2Ird/OWd16DsuMK+CNbE4IuY\npzT/nUMXFXqQJQI9O/Lju9ymde27k0BGAr987MOF91sU4/SK7KByH8cv2jDm\ng3CH8DauZJ/AIZneDA/wo0caX6XdXfTu38+Kqv7/qAfHCZHHpcxW0I+nYYy4\n9sGV\r\n=ON1M\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ba4054064292bafde40e53fcc87405c8dcad24b2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.319bf66de.0","@material/rtl":"8.0.0-canary.319bf66de.0","@material/base":"8.0.0-canary.319bf66de.0","@material/theme":"8.0.0-canary.319bf66de.0","@material/animation":"8.0.0-canary.319bf66de.0","@material/typography":"8.0.0-canary.319bf66de.0","@material/feature-targeting":"8.0.0-canary.319bf66de.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.319bf66de.0_1599865822818_0.5873276297824499","host":"s3://npm-registry-packages"}},"8.0.0-canary.5bfc305ec.0":{"name":"@material/floating-label","version":"8.0.0-canary.5bfc305ec.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.5bfc305ec.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6b961901e0710e622e7d981e3cfece9d6d4c723e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.5bfc305ec.0.tgz","fileCount":34,"integrity":"sha512-MbC/HJU3zck0iMlq8mwRSRtnIIQHmlCb+B9zQkzmZRyHYLfv5xa5ReLBzQdv+4fZydEUutgYJurjHyAvGUVgBA==","signatures":[{"sig":"MEUCIQDhYXBy9I6EJ4f9vu21JC6H1LPkxVSpFrRoj+P1mDIS3wIgKolukhz3wibyxIZcet+l4z6LwR2orturO/sR/O/Hndw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218718,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfXqSICRA9TVsSAnZWagAAbXYP/2CgUMeb5Yot+7uY52y0\n8IDygxgdHFZehmkxenNqGxxkN3wKyTlg7SWLAi3mZDheqRir3cOtMumdb15O\nIXHjF3RU2DapbPWhPrMY/ZhgAsE2+awhxopxYGAH8ca4u9YZ+dsC+FkSSxs3\nAUXyiDnsh2okXhomlptxYrSnhJJlGL0d43wqpk/8m1L1TLjyHzsTfe3rTZ37\n6QnJoc9wIvctAGKXI14UHTUBTZYPr9mPnXcQ7ERrsvxw1HZkCdWOuAI7DPA4\nKtLtxP2XBxzyVbRRF5Ntpz+q2YT9LHOi86STmyvGNjMnG7P9iCIaYd7XhfgN\nxmkp/tzZ8Xh6n14ho8Or3sdYsZzJ3sikvTg5fwxWNbCnW7wlzyN1+31ySCg4\noIa2VSyKRSZC2omGfOitP1KMZBxtcdTlExyKmcjfW5Q0dyvlVYMrud3ZC941\nSDi8lOPOMvwFyVxGPcTZtO5G7lCGlA8ymZHt1ffMirajwJGavq/16Dao83nf\nSG1H0rNzBgr7T11ZdEX2Nraw9mZxZXP+k+WvRjvX7v0Eul3Pn711KH26Gi6/\nyYf4KcMBw2aaRqKfIK2Dg+hx/lhMkr314f5AYJf3AJdUMmxM0tHirNSamaHY\n3w75Pq+HlLj88nwwvP1hY+xLcxhDtUV/sfzXoJkn1gciKI1epd/cN7n3xNpI\nbP+L\r\n=nfMH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"96c0c187c7fa544c1f5303e96ba3e85cba86e5c2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.5bfc305ec.0","@material/rtl":"8.0.0-canary.5bfc305ec.0","@material/base":"8.0.0-canary.5bfc305ec.0","@material/theme":"8.0.0-canary.5bfc305ec.0","@material/animation":"8.0.0-canary.5bfc305ec.0","@material/typography":"8.0.0-canary.5bfc305ec.0","@material/feature-targeting":"8.0.0-canary.5bfc305ec.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.5bfc305ec.0_1600038023938_0.8459644409653735","host":"s3://npm-registry-packages"}},"8.0.0-canary.83d83f131.0":{"name":"@material/floating-label","version":"8.0.0-canary.83d83f131.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.83d83f131.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a2f5d0597dd99f963fe5ef095a2f82f7c7a486f8","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.83d83f131.0.tgz","fileCount":34,"integrity":"sha512-k15tGlpzqlmikXy1d2htS85kwUKqWa1mu/2B1YQ/dgB8m8HONcwyANl7DPccNIeCaJGjVMfRm6gT7hRMRA4qKg==","signatures":[{"sig":"MEUCIGr2Jry7lJ9n9wXYEOnQvfhumbRD/Az5XwsgnHLjclMjAiEArnS7Sb3t5MR5H3VBqGIJSi4D5AMWk0cQJY9M1uGGw7o=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218718,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfXro0CRA9TVsSAnZWagAAm8EP/22FpoNwv/rui/27YY4P\nFw69ZB9zkMUEacwk3P0Zp1fRcIJWFKTgvH6Q0p+mF8dwR40RI7dV+h5cS38X\n22X/2g++0fXafCeY3ujK5+6Nn8bopO4kILHVek3ECCtmPPdYURkppbpzfZmg\nt270dQ59w/4vQW3sbY502OjYzpc96IUCO45IW6ZnwKZ+e4ylrUjkf+hXxKae\nKJ8cjOv/+/wN7AzhK1rYoYwoEEz5ppRdzxJlNrzHkgpoDvOAkC7wgf3VMGrK\n9S5n/NHsq0Wgp+GPU3RyGXEr+3eE9kF0b3n/Jx6xyQOJD8SHcNByKBUGXQdc\nb+hAubLaUYTJ2Qymuwr7CD5rwgZ+d9t/379kc5F9AaLANzF5C/vJEpKgNoW2\nlFIZf0/mBJzngO2riQ/xvEye/V1iynev3eThnyVoxV1HgC0SlQlU/Qz8c3jL\n02eh2VPBmT1LD+hQb6jeiXZ5s6fscmViM+zYzkEWDzXiSa+bAlLdRWqrck3B\nx2o4cMBLlpgbB+Gr2Jac5mG/deloXdcI3p9MZmAd/Qr/Yxf+gpom/AspLRg1\n6rVAJp94J1mvRFIhyv/Zg6pYEKTYfPCGUXf/whcOpLXhhtRQn+2ouNhdnYge\nLZ9uz+K6cPK/ituJaRymAxkpLwv6tqYPUM9PWAHOe+yvBiFvJpK+bmrGwhz4\nAfZA\r\n=32y/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"520e8b604c3cd3e7ce96b30f4315d576bcdad3e5","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.83d83f131.0","@material/rtl":"8.0.0-canary.83d83f131.0","@material/base":"8.0.0-canary.83d83f131.0","@material/theme":"8.0.0-canary.83d83f131.0","@material/animation":"8.0.0-canary.83d83f131.0","@material/typography":"8.0.0-canary.83d83f131.0","@material/feature-targeting":"8.0.0-canary.83d83f131.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.83d83f131.0_1600043572456_0.5198456421610769","host":"s3://npm-registry-packages"}},"8.0.0-canary.40d8e4726.0":{"name":"@material/floating-label","version":"8.0.0-canary.40d8e4726.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.40d8e4726.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5e263928c00221115208f1ecb4aa3850e63d2750","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.40d8e4726.0.tgz","fileCount":34,"integrity":"sha512-Rqjf3X4WoW8wwyEASuOUiL7dlBWd82IR9s1w3uAMCiqLpeoLEByWQjSxJXpZZNNbJKmW0BKanYb5pdRBew+78g==","signatures":[{"sig":"MEUCIA78MtwHGeweJVM2nmQjWad3yM/UKSGSECaBpupnsZYFAiEA1A1K+oHqzTJpqRDMfrqpxdZJEM+QEOWH4p+Gk1JT/6U=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218718,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfX/0CCRA9TVsSAnZWagAAet4P+wai2apPtX6PaMPELcHu\nBT3HTHeICWtr1cfN8HxSfufJBjnd4kB7NdUVAYZyoDte4/QhDV0ChIlLorZJ\n9c89v3SxmG0Ik1w0sQmMbdsSThyvpx7KbrOf5Dgj1BHhpR2oTNPNZA4WEzvK\neHdf/E5phnhYGgbDmooZy4FvZu4zQNYscN0ngVtXfKi8y3Mg0hlUPcjOEP2O\nGOX5y1tzLil0AmPncNYZ3PpdqbVSasEhdVvu+8QU5uyuqRHQALptJAIwG9S2\n9ZBehpzQHDYXNPogp2oHmRq0J7omlWA2CbM7qQrcYKZ25yZuUbw3b2+/uX+J\nWQP7IL3GDeaSlNAQRYreJ2ATa2KHV5NStkisu0JYqScvw5dTlbq125Zfdiwz\nQJw0q0g54+LgQXIvQ8n//Zf7nxwxCygGhKhy6L6nK9r8cYhXxNmU2C4MeXk8\nt2ha19GXEbX2/u8NTukwekRZVmbXIkax2FF51d3M0dGdXOYxjvYcLESkZyZ0\nKEAvqKs5sKxfUDRFjBcaNNyUiSLYBFU4kqxILnohvHNYAM/WktWgSL0AfUVF\nEBX2xMQ2tPicm53jprEbdBbUcu3AFcQPrVlhJd1NKIIldOAlMtoORSh3ZFVD\n6jD6gsEWeBo8A85XSiA8jnHK/QvIWmZ6cPpLU1OwRFZ6Lg565tpch3g8M4qm\nU7v9\r\n=UXT1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ba2736b8bb826dac383c6f8f237a6584247d5198","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.40d8e4726.0","@material/rtl":"8.0.0-canary.40d8e4726.0","@material/base":"8.0.0-canary.40d8e4726.0","@material/theme":"8.0.0-canary.40d8e4726.0","@material/animation":"8.0.0-canary.40d8e4726.0","@material/typography":"8.0.0-canary.40d8e4726.0","@material/feature-targeting":"8.0.0-canary.40d8e4726.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.40d8e4726.0_1600126209859_0.14024197335050537","host":"s3://npm-registry-packages"}},"8.0.0-canary.c25d70a31.0":{"name":"@material/floating-label","version":"8.0.0-canary.c25d70a31.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.c25d70a31.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c3e131d77592f249f9ef1c9ec481473e92e149ce","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.c25d70a31.0.tgz","fileCount":34,"integrity":"sha512-8MhCyvdnxi9Qzx8fDPGxvw54sIo3SmGR8o08tY5H5DvHIOcRfu7FTZ9+CT5Y/q7PnuvDjg6A8cFKtNHREdYE0Q==","signatures":[{"sig":"MEYCIQCOAXt0hViOftt+Wn66NcaxImmdCXth6ZpEY/l8wo8ItAIhALBHrYhDzjdWUE+cJJC/RrzisVH3x6i1urI4XKDEKLXr","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218718,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfYCb3CRA9TVsSAnZWagAA07IQAJUmk/Q1wWyLfxbmcWyj\nQ2zGXfGyoOdJRMhZMiuMBRPV+lPszICBk+HmFXPZ6QoLa6gl3OS+pNOXH1Hm\noX3pvsQwWlTIZYO1xX3PA/69G62b7baLo1JRsSZL8uaiRfLFk4Y5IlDXI1no\nVGE7iiYGqDpuJa4LrMae0fNuRwOKLMF2H7k7K7+7eUr+CEJBNG7om4BdQkHd\nTZXMLXZwER7q62gGvF9cYONN2ohYKe847Sesc8/reLxMt1VU0ffo1xmgFEbK\n5NnbvTswWImaNVwNYKI0kUf6PR9mphNBIejQEWDIKT0fUNH2xUxbTKAPpqzR\npJbfHvkcCPvJhinmvSdNmSLRElPOWodua/toa9BdW2E8DQCTkVUUPEBZFv4w\nZECsiPyC0KVW+oEik7pO1tPWNKeUk2gdJ7axcECv4bUz0h7So+UT4uZDeSXF\ntpblXlf9eDF77EMfTq96RiejfXvy9TuY77iak69CwEGJrcHAfPTcRkk8Bsca\nOnbFiCUMc2nOW1jYPeJ5+tFoqCRcSPsi8w+tb0PIrNkEuEGxjncpZQby990r\nKFVsk4LN9Ju8itSoaB/cV27OIvBgFLt1BwH+GUE/nZTY869+gi7IAYkOJWyf\nIrRBGyDZFeorLwlS7jLMV5cNwOYj6Mg2WtmtARcKmqAgKghH0ddo7loi5Ufk\nLYYp\r\n=4BaO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"23adc9426ee1c32d146e601987be4165e56c7934","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.c25d70a31.0","@material/rtl":"8.0.0-canary.c25d70a31.0","@material/base":"8.0.0-canary.c25d70a31.0","@material/theme":"8.0.0-canary.c25d70a31.0","@material/animation":"8.0.0-canary.c25d70a31.0","@material/typography":"8.0.0-canary.c25d70a31.0","@material/feature-targeting":"8.0.0-canary.c25d70a31.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.c25d70a31.0_1600136951379_0.5123045150502372","host":"s3://npm-registry-packages"}},"8.0.0-canary.d52b165b5.0":{"name":"@material/floating-label","version":"8.0.0-canary.d52b165b5.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.d52b165b5.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"cfac554f54a9ed88d1ea4864496b990e44a3c8d3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.d52b165b5.0.tgz","fileCount":34,"integrity":"sha512-yYvHyM7JdvbMeLpbVvDvCe9MEnxO1MsjLkycOtfoZHfC+EG9mA77LYdcRfxyauBIhHQCxjy2G6+vzDcuxewfoQ==","signatures":[{"sig":"MEUCICYvZdDdi0B7PVaefBikqP76Svu+42UOUMtOpoJAVXzqAiEA5kSL0d/ktbT91T1uDyyI39RmOYBHSNV/AaklcWEK2KM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218718,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfYNWqCRA9TVsSAnZWagAANfoQAJOrbFQD3RnURT1+xmWD\nZQqVzbFVbZ+OS5QOomPInZOVCQElI8DIGeOuN4QprPWZmyTx/W2OXP5CtMSQ\nQk+mjVeU2BOC0qA6wx63AuQ4/SpPFaJTv/+MJSvbmiUw3rBy+nOzj1HTNWoz\nQncbFm5ZDP1ND/h9gUwkrovRSl/P4RMN797wUiv+w2Lf8KPo95Dm6ydKRaks\ny7JksnaVRvXyoiwtjG/vmMQ9PwcsthsHKdWj58ztzDvl9lBIf18xjyqRi/WQ\nIa/f27LYnJITI4Trf4I7INrzXJZKxPiH+9nNXGWm5Gs+pM5oRZurLmx6CUZ/\ngVEQ8Dp7VIyU+3ubiCotRx0VevEMsGaHCBaSMWoGflnsoguhJXTiA/69eI2S\nHyzsrAc5PhrcL/EBIjKC9s1BpPkCNyWUtolAjARfvVxnf/ha/oKMwJ1xXIrc\nTaukVMPG1KLbhD22NWqAc6QEred3puKkIKn7lQBYOboWk/G33bBvb1+TIz8p\nqvAaoS+Yj/Dycpgxrs0fCXCMHIaJznRzBxgja/nxHL+OALt+ls+56eE7x87q\nUytkIHIDSq09aDuvznBS99duaTAoO6Jq8W79wtwX0hiwLmkiiv9wuNU8ez8w\ndZUjYVSSLdi3pxGlTrLys8HOwMJss4DEwES8r0Uazh61A/TbcdI2yPrW7cTG\n6Yo1\r\n=iScd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"19ac3399f14583da3b2ca5e37a0ce783539066ba","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.d52b165b5.0","@material/rtl":"8.0.0-canary.d52b165b5.0","@material/base":"8.0.0-canary.d52b165b5.0","@material/theme":"8.0.0-canary.d52b165b5.0","@material/animation":"8.0.0-canary.d52b165b5.0","@material/typography":"8.0.0-canary.d52b165b5.0","@material/feature-targeting":"8.0.0-canary.d52b165b5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.d52b165b5.0_1600181674077_0.5117196949811353","host":"s3://npm-registry-packages"}},"8.0.0-canary.a831d4799.0":{"name":"@material/floating-label","version":"8.0.0-canary.a831d4799.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.a831d4799.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1dda2f5503ee41da9ed5b021dcd355de580aa483","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.a831d4799.0.tgz","fileCount":34,"integrity":"sha512-PTuZ4sY8OPVJd94wz/eWEhcc0/Ike7yDdKALp9T9NKC6zpwhrzmZGlZxxTzc2YzZ/gTOfcvpSHbm7VJwaFMTGw==","signatures":[{"sig":"MEQCIDenD9yyW8N6bAMX2Td456S+k++DbLk+8vLBXfyW/y40AiAfZPlsrFdhFpLjYaX1vkzXzx5gXut1A301gwCUssV8yQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218718,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfYP9DCRA9TVsSAnZWagAAUpEQAKTKm48RxkUEk6VLX7Q3\nrJPi0Ye8f8YH3HmSs5jGKn6F9pBfAtvBdHd67rXs9KbT2Y1hbaLxR50w6wAg\nr0qbL/BxgQui3nqUfuOEAycZS94sUp/nLJIATErN78jL4uEm/qC52lcIY5/d\nui+PzpI55PiwKwOZh4kqAwjqXHqmni0d6mug2zCRXD0hthICONMnOI+nt2wE\nN5Iyf9DdLA26e2c/aOEllimhgZoAYNZclm6OPhWcRGHiVerU82Ovqop8kQ5F\nHX7ZkxRLabgZgELEF1lvFgir/vJRVv7RDOS3Ck05X/aHrN1l6o3yHwx6+njA\nDv8+hjAhC4i0heblTSKPjTKNUGWvhTkC5vYMsSIf0VMQjecdQA9RERFUzbEi\nVGaT7zF7NF0CWQM7lfxIwp2qLK3WE0vWRxnmpAqDd9rcIFCRbgDUYknjoWG+\nbYyttZ4/JysSedhWBz9YGRvuRNNPVcem9ay5/Boc5BPymp2Ue4ewihsj0hhd\n/6Xjscavb1n36l1W7EYFNNuQGsPU7XsC5YCsvadGX35e1RRoCYUmfqfSJhxV\nM49Drfm/QMEDdsNq0joOzD4IZ28yVrF/1LIi77ImS2kCQ/KE0tpqV4luGbJy\ncRWhm+Gx1t8/ysT832POHHg9eH/Fb1sxeR2zxKYpBtGa7olcok3BRktrCKIq\n/ZdF\r\n=rQYR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"fa7f461e7963e1bdb73e7811d2f70b0a07acba16","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.a831d4799.0","@material/rtl":"8.0.0-canary.a831d4799.0","@material/base":"8.0.0-canary.a831d4799.0","@material/theme":"8.0.0-canary.a831d4799.0","@material/animation":"8.0.0-canary.a831d4799.0","@material/typography":"8.0.0-canary.a831d4799.0","@material/feature-targeting":"8.0.0-canary.a831d4799.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.a831d4799.0_1600192323183_0.3949445796238098","host":"s3://npm-registry-packages"}},"8.0.0-canary.a306aa488.0":{"name":"@material/floating-label","version":"8.0.0-canary.a306aa488.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.a306aa488.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"89223c84db2504f128f429de9179437fb51a387f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.a306aa488.0.tgz","fileCount":34,"integrity":"sha512-x9v85eGFvQK8VpBIyQ2QYwcCcZc7YWZ60CCxstV9l70+AnBvJ8sHKul1faa4ak4hamWtnhtpaTU7+zh9vbvfPg==","signatures":[{"sig":"MEQCIAVCbsl7zEzGhogiKqjrEzRgBzgFKMGxNidN6qtFM2PwAiBijlGTBy9BIByYRH7+3jYOcvsGEzLxpUTPBkjsUxO4TA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218718,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfYrTPCRA9TVsSAnZWagAAx18P/iWOLTFdt6WfeR+JBBNR\n1Derf7RVAc4u7zV2fNJygcCVNpVRCWRE8xcQOzg6ge5nxf98aB98Ch2DLhPl\nNULI6Ca787WFTIs7W7fKCD5QHS53oPVH4MBJV0ozaTXSNhyTCXMKmpu0SfMR\nsKEJVeqUhXdVPXeWKTwU9fz4Cv/Z3oVOswBhUgB+ySxbwX2BpNlbnbCTFUcL\n6xGO5moky88xCf+WV2kHKeWSvDAVjz1FMTipavvrZJHvn2UwICprdLBwPZh+\nhyGSh91T1HSV8lENnQECRQErGLeY7XDTfC6jkPg0Gei+oIqTH780Ll2ASENE\nqw47sfo8ASdms7aTQJTZvmj2okFOe2sCvxqJK3u5fqvFuAzRPMV56A4wRU6e\nELaj62hgbX+fKJpakDkUKPqQAQBVt1ilujKRf20n1g0SHWjZLbQ+lQYJAmH4\nRbh8p2xRPEARkXx8cOawSK8gTAylcnMXpN8xaUwyuGe8+ntTw+O2C1j9fQGm\nLQxE2qqSBbc/8zMKjfAy6NBsOOZ+IHPA8aItiBI6+/b0IYdDw5vveV/sirvO\n+M87gwfTbrE2RYyuB4ApYPfQDUW1zH5nTvk1NssEikFmmi1zfUq7D5sxBr5B\n0UA303afScQRv+CDrq9aImol1oQT7Z7rkJ+W1Cd1dw1zoVIALh4QA9R4DBAY\njRZB\r\n=fnqM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c6addec60d43eb106ac774211ca2af4b04d40f1d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.a306aa488.0","@material/rtl":"8.0.0-canary.a306aa488.0","@material/base":"8.0.0-canary.a306aa488.0","@material/theme":"8.0.0-canary.a306aa488.0","@material/animation":"8.0.0-canary.a306aa488.0","@material/typography":"8.0.0-canary.a306aa488.0","@material/feature-targeting":"8.0.0-canary.a306aa488.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.a306aa488.0_1600304335237_0.0189037698212966","host":"s3://npm-registry-packages"}},"8.0.0-canary.fd608ff66.0":{"name":"@material/floating-label","version":"8.0.0-canary.fd608ff66.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.fd608ff66.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e4854a26f0003169312a77cd7e2cf5730b9d18a8","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.fd608ff66.0.tgz","fileCount":34,"integrity":"sha512-fRsxhHrO9xnLdJid/5kChZNmpeBSnjCLkLsTGvqSFrchI4vttXL5+9QWGIkGjVfyNN7O5wCvcoHryVuMk/2CLw==","signatures":[{"sig":"MEUCIQDIQgDXyC4m2DXlLa6Q0IrlV0u36ZiP+i9EGcxDFnHWYwIgbDDX3+lHPJLb6DJUuLPKv20DKRc+ocdGBDWWIG0Aqgc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218718,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfY3HyCRA9TVsSAnZWagAAndAP/0PEVgrW1DmTgZcBMFz4\nSCHY7kuBWys3GG0HeBUajcnZrvLItkMGp8d7PKwN/cDRQ6mkro2jqKFfVFw8\nb1ORpw1eWZAs7v9nvY1tFy1HADCIzRaQ07xB2P/Cc07MjbcP1WLGRU9a+HVn\nBPooMcb7ouzHrki5x09F03Ul8+dbbm75LXUuoxfi3HcxlHuX/+8FtpQmLCe1\neC9aU4xwl3Pps9oULhpOsyTjnuBXjyMfscnlRqYK3i67KdoPRW5EatvnQfKM\nS+3z6TsRyNZBpCATflgUtMy2sxnoWJ6p72Fx6/QWZZ4FWhDLX6QgR8VY/FlM\nTJalp3XOLbY7S2hLXB6uN0lp+OAn4T+p+X8OR2wmhpISkG/Nnc01BaFgDPAC\nKXW/5ez+//u6NHajeQYo2ode8R3AfyyrNgfsWbxcL+TATI5en88D+Ynl+DyW\nhmUiTm1ShqI0ycPBX5VGbRMeYB7Feuz/WzERHVYR0+QNHYUToNmg1X4+RZu0\nIYbyPkE6vyF2bfymWuc4v0ErGiQnBstnxHTvn9lOgtNNy91bzXXs236vn9YB\nH4DabdnOmWAkDqcfNU2Nu5qYfTcw2SQA6g1O3+dYYwkBzV+Hua3d/Vc6MEDv\nwpmAyr/idP6RBRRr0Xy+Wf9fjwBwpnLMx2+WL1I/MiTnsP5NylXU7J/ch7vv\nT/gQ\r\n=S1v2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"03ec88b3967ad97da4309b1dee0b9764edcf89e1","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.fd608ff66.0","@material/rtl":"8.0.0-canary.fd608ff66.0","@material/base":"8.0.0-canary.fd608ff66.0","@material/theme":"8.0.0-canary.fd608ff66.0","@material/animation":"8.0.0-canary.fd608ff66.0","@material/typography":"8.0.0-canary.fd608ff66.0","@material/feature-targeting":"8.0.0-canary.fd608ff66.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.fd608ff66.0_1600352753514_0.7527187669161504","host":"s3://npm-registry-packages"}},"8.0.0-canary.3e435ba57.0":{"name":"@material/floating-label","version":"8.0.0-canary.3e435ba57.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.3e435ba57.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"0287ef8fc4faf9e2659a807f0bdac011f91f98c4","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.3e435ba57.0.tgz","fileCount":34,"integrity":"sha512-TlHQgjs4Wj4unFOZOpck11NzI2/YYjstfiE0PWoacx494bsXaGnd09viW4fBkPAuLtR/CkS/3JDJ0ozt8knFCw==","signatures":[{"sig":"MEUCIQCLAEadAvwUT8eQsraoJJXBl7ZWhA0UbU4N8vNBUIL45AIgF7VjoXHPiaS044JyxQ2YKd0sfcZ8umA6MS+AUxyNCRc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218718,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfY3X+CRA9TVsSAnZWagAANsUP/2LlHMzMgcMdMWEoWVy0\nob88kQYrF86eHreWxyqaLwWVHOBo/+ieoD4JyUc7IEI8P3vU5GUgXDGZ3mAQ\nvlYsyt3Dy4BD2Ay6krf7zlEcWYHLR5D4V3Lm3oX6GS0rk0FRFhMiwhgQxsI/\niY+ZOHSPNOp/SJIFZyMhv9GhXcLa0qpeYmrX9oGY0z8HF7dKrrXh2qDPI0Y9\nXPF4jQTCsiRo/6KveUEnO/KAMShyigi2dsfVqWcOjCYl8kGBV0BOW1sDYMqi\na82IJ2FSwrZEaRTUprhfnUUpLW9e8VDr9wV11q0YDe+1c0dd1CTD24O7/dnM\nU2cLCaZXi6FC6HXEB+ldzJcTwP0XPGOmW4V56UL+eGOnf2MQQtTdOl3f05IY\n+92w58UJYYdb3uRc4dQ1lFR+1exAyDyo0qwhVbImz014hH8Q0bFbZdAv3Xh3\nidfNwzlKhYi67aPOZ8MHf3ZRyuHtmlLGaaZ2D3CWBPRYmhuvFzCFxfU4BhvU\nieK6/7SyMMtd0yo0cI8F7+C9PwmNUUDzNxFOsStveoCODB1W5XsdHc2oQIAI\n5I4vl4+iysBfjAQsHJ+ObOiKJ6Mcc8c5KAmtQtF3e02xC6eocR99dsjbQI/E\n+0DwgVBOIQrVsA5ohQ12wu6zryS8NidzHYp4a4BiBeANuVFg9vOxRZaXwZZ1\n4cwB\r\n=12jK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"15ff2ccef4cf94fbadfb06cb750ee6de035cdd19","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.3e435ba57.0","@material/rtl":"8.0.0-canary.3e435ba57.0","@material/base":"8.0.0-canary.3e435ba57.0","@material/theme":"8.0.0-canary.3e435ba57.0","@material/animation":"8.0.0-canary.3e435ba57.0","@material/typography":"8.0.0-canary.3e435ba57.0","@material/feature-targeting":"8.0.0-canary.3e435ba57.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.3e435ba57.0_1600353790384_0.7382240190520168","host":"s3://npm-registry-packages"}},"8.0.0-canary.c250ec52a.0":{"name":"@material/floating-label","version":"8.0.0-canary.c250ec52a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.c250ec52a.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"aebbd6a6b59e813f281959fb09f86acaaad3b7da","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.c250ec52a.0.tgz","fileCount":34,"integrity":"sha512-k2GCsM1XbOolQlbfdK4hWVPfL4mlvhqBLdVBEzwezGk9wr2wzF2lRQUkxeurlMLqp2K8zUbCAeah7JgDTO7igA==","signatures":[{"sig":"MEUCIQCulAEaBruhO4zD46BRApwrkXA6NWHbUBxBG0CK7HHTfgIgWEJbRWVnHf+2bFsiVQGMEcBSu9IsrFGzosnymBm4PlA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218718,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfY8LECRA9TVsSAnZWagAAAk0P/jsfhnzjOWYDga7Fyhrj\n24fysLBG1xWNq7W4CB0gr8/sLo5dvskg0B7aM3+y583qkXmWuBLEjYmKA9s6\nAKhCrx/0WMlMSBJpAopsuTX8yYDdyfqGZ7EXhH19ylQ6n7WDkAFuhUGyfDZa\n+beigN3tbk9d5V07xf4BJXMALaaUPrwAoxPr/dbI3TsQwvG85N1taHaqTs0f\nCNg0PXT9HwqWL8KZuXm3Qs6dO0+U5CFajh09VKK9JqRxH+2Z9vnEjPVwI8wS\n9qfUBb1OXaNJs50pRH7AMZwm9AK1L+xY35MB/DeZERbO/oY5z6uDnQ4WBZ0E\n31fC3sNB1st7r7V7aDBQlA4fOe27lIpC8/PF7Vfk8f1GN82+HNWwH0m+Tj72\ngOJt19EfG7E69hmu3rmyrY7e+FROSBR0gMxTGTHDUGMHuCtnJYIkeJsJdPk/\nTg6/fNXsJWAhYZgcx218+5H3nUVP0KBi17aZNfEho2wnZrcinJchh0BkKJZ7\naqcYw2GP8Fh3wks90NLtjjcJZ6quKaX5Ws+0usUIZ2QcbSrl8CsWewrPa55n\nrhmvtno725xS61P9QvecUBP6EuxQkPGwUcyzhmjAzrwq9IL2C8sooudKbb01\n3LiTWJDIYMLCiY9ec15fq4zwcnmYoKq9+IZEVJlOIk6rFrxwoY1rbVHn7qvp\nrPxn\r\n=iwH5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e214ca7cd3c1a65ab89d2fe2b4fc899aca418adc","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.c250ec52a.0","@material/rtl":"8.0.0-canary.c250ec52a.0","@material/base":"8.0.0-canary.c250ec52a.0","@material/theme":"8.0.0-canary.c250ec52a.0","@material/animation":"8.0.0-canary.c250ec52a.0","@material/typography":"8.0.0-canary.c250ec52a.0","@material/feature-targeting":"8.0.0-canary.c250ec52a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.c250ec52a.0_1600373444054_0.7821652144415949","host":"s3://npm-registry-packages"}},"8.0.0-canary.e34e411b1.0":{"name":"@material/floating-label","version":"8.0.0-canary.e34e411b1.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.e34e411b1.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"aacf212c57806b844bb6bdf03a523a7d86ac6589","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.e34e411b1.0.tgz","fileCount":34,"integrity":"sha512-129EToJXfDsouuBhyvrjgI9H0vc+FtYDms/bHhb3yWW/4iq90U0KUglyO+N/z6/W6UJLkeKZOI6QQAzUYsmaMw==","signatures":[{"sig":"MEQCIH5tpIyfxO1h4HYHc93Dp6umGfX7GmkccfunMXaiQYt7AiB+BPx5dwAXr2yefyZPl/MqERNp77Bdzkda9uk2zNzBeQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218718,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfY8R9CRA9TVsSAnZWagAAWHIP/R3HQU8DKsDaz32l6ULk\nSLrX2dS9VLbAqLdaZj7t5Q77LVFe5UDPHi6g6BlD7KBhlxlqjXDFkRO/8O2V\nGZUSUcWVhuC4M6eHQEADsF8jcfF53wGvZqdvyNNGqMYxDFblGzWy/Z20XbAJ\nGVEiEJMPGqbYrVTujfvXGAJowj6DkJm7jTaoBZW39txxd7PX2cC6nWnUjyXD\nlR11KbwHzXPaPPH3kmlo+7hJysvXKmk/lW0F5xgd/XRUIZ3ttlKBpDzsJG7B\nJGupqZWtMsVJPjSP+ORRaMFhcHvo+fHKaGwKrHdXCSMTXxNlRhiQyLBnLRQL\nDzOWKz8q9kTQHs1hG0pU5yGlMj/QWTguZPnYz0Luos7p0v5ConuVojZDhhPI\n9nQV0lNu2KW3x6Bbr6Sep89UAPe4N3fCnXqglWN14wmFlthdjd9Enlr4yVGm\nl3ZJFhwCVgPdr5LTXjVpopJ2vezV3IGWsz9hVWKNYtCaEseU5LnATOHxdGcu\nBHJkaHZ27FMYbQ10tE/3En12cqOEiRgHeyEV1Jsl85+qFou419oX6/Nzgemd\nH6OiQQmAewue5J23JZHteY95voo9nLNUhAUHz73oS+Xxxi5RwEmRWshv3fBH\nOIWvSQDMKbtqnq3L2iEX9+XD+7ygaNcbiUwtjjvZVUoheoNwNT1mn+axdBq5\n+rk7\r\n=/vtZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"460337b237852aa88d59152c38df2b32b73792a0","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.e34e411b1.0","@material/rtl":"8.0.0-canary.e34e411b1.0","@material/base":"8.0.0-canary.e34e411b1.0","@material/theme":"8.0.0-canary.e34e411b1.0","@material/animation":"8.0.0-canary.e34e411b1.0","@material/typography":"8.0.0-canary.e34e411b1.0","@material/feature-targeting":"8.0.0-canary.e34e411b1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.e34e411b1.0_1600373884606_0.9024828834064367","host":"s3://npm-registry-packages"}},"8.0.0-canary.4e9343929.0":{"name":"@material/floating-label","version":"8.0.0-canary.4e9343929.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.4e9343929.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"badc1c81ada52883e186d3be304bf04a3cbb13e0","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.4e9343929.0.tgz","fileCount":34,"integrity":"sha512-E5OH1DtcvU3sBzAeZv1TynQQEtYA6tDBj1qqwGhrBfaDiknZYXL/C5dnVcWxidv4sNb2/UNOvO342rRm9PwNzQ==","signatures":[{"sig":"MEUCIQDUs3snBqidAToycX/i1PfF9ePON5+Nv2liWORglvZu0QIgUqVQnlIHcdJFUmdaJm2mMbVHU1fSF5LS1/USqSzLfcU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218718,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfY8ppCRA9TVsSAnZWagAArzoQAJZqp4V1mvb2qX/46H6M\nK8PYaG8ofT13wrP/7+raJrozdxxeu52XjkwxYEAsAHiQ4FxlPvPexRek23pB\nZNSnWj7f1Bm85b1BtfNhmFfbkEXNE8bCPD8UhE8QtloplQUOov+Rvw3tKMr3\nIKjnZ6FdhGEv+dRlebWhH2KqcKplGmdpTV9yBqPinZr6cR4H8CDTTgXeEKLn\nVVBS+uuu66dYY4VPkgxjGMn6NV9DHb6g31ctOc/+bKt7eCnSwqAYSHSys9V7\nM4cfNw698B+F1gHuQopDHERY62i33mFEqAV79ybi55YKZfKbDx3fWOX8L4z0\ng1MAWENzVgofNtzWbHqmyrUQ0c/JnlpH/Er1sbgFjV+6CAJ9cx8LjS1TbKsH\nDxtqoK039TwhCS2AYXhAnKyS0bROzQPAsh07zJmx6c63FGyl2OlL5vHVqx7C\nF8VlW3Wg7GUwBxTRAxDV2zZEsqp+DnGl7e7cbBV32d52dx6vGzVRfLj9rUn3\nfiBBv7CyG0YzdFNWiklUDcQgd20sI1/yIYgkTGsApwBEaOInA5LjTodLo6Kg\ntf6kMOjTvYEjnv9QpxXRq477tAxIkO7YDkXEZvtctJ3vBiH3BD7JoDjYoAKN\npZNH7UtIh3sNQ4FIgSRq9zamxnDsT8yXWay+9+H3QCriJTpoEH0GQYgE5p90\nnyYR\r\n=gjVe\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7bab75a521cc7f81a2f78587d2146ac140e3cfc1","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.4e9343929.0","@material/rtl":"8.0.0-canary.4e9343929.0","@material/base":"8.0.0-canary.4e9343929.0","@material/theme":"8.0.0-canary.4e9343929.0","@material/animation":"8.0.0-canary.4e9343929.0","@material/typography":"8.0.0-canary.4e9343929.0","@material/feature-targeting":"8.0.0-canary.4e9343929.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.4e9343929.0_1600375401251_0.13957708288426396","host":"s3://npm-registry-packages"}},"8.0.0-canary.4e5c350c2.0":{"name":"@material/floating-label","version":"8.0.0-canary.4e5c350c2.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.4e5c350c2.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a8d8ecbf718002e375db3a74af4af03a3180a626","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.4e5c350c2.0.tgz","fileCount":34,"integrity":"sha512-HpOf59vFJnYKVqwSdKRMWnJNT0cT7ypBhwZfTD16iD7nllBzv5qkU7AaAGUiRCuZ/qiM28YU5jH3ueyvVpex/w==","signatures":[{"sig":"MEYCIQD7y6ENgJTehOSJkEEeBaFsAX+0jAWfvpHWJtY47u+P4AIhAIQFE/uPeDhkzk5eug01LoRsbJbDpjzbO8AXX3wTvGFh","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218718,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfaResCRA9TVsSAnZWagAAqgoQAJ1M0dn7zT3tVez0WEUa\nbiwdNTnfB2NYBByySRJo0aCFLLRvftGBL7EHswC7BSFcqL33uMRCWWizsN8n\ncLCuYrYc/w5viSsCTli5iXK+NgFyPAxGfJ2+TadCX/y2TOjqCdTQ17eEfc2b\nTRXtL/IwKRK/7MvNEbN1izzkqpJlls31a1NJV7M3Qzw0i6GhCKDu6/202Ube\nSgeqeMaWC4h/LVINYWM8026G1Byw4l7+laHPl15Oi/hWdZLm+LdQvc3Fwt+L\nOwioex2XJSelrrYa3eSD95uo3vQMfypKKUcUGLAelKOC8mDygvoPnqKZ8g21\nccu2cgaPIfOIgzZDxAh8h6eJ+u8Kr0HV03vrTIkrxmLXkmMZVQvBWy7iwRw5\nlUIwemKk/UWwrxgUYQRkM9jzcEPsJfiosTf1iqWoAz6PS1oqNQciiEU6fYc2\nFg48j5omDRlqXhCJAiC+krJ/8Fik68/eru5OfwqAhXD49RlgvVKZwL0IRpID\nUL/5gCV/NJFekdODxf8dXI0SiYJxTXPMFG3aqnNA9BF3FO3tnfJH0j47nbGN\nafFOqxdAN4kGpYPEUiU/D19JXPBgUSutw3uhQIoAZRd9yvmFywzn62t9kcyX\nOBngrzZoWvkewakrARCcosGVb6QNKRYHHABM1U1wcOx7aM8LL3zC02ghoysT\nwZCW\r\n=+zkB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c753481bcbad808064a366112868670fca5381f5","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.4e5c350c2.0","@material/rtl":"8.0.0-canary.4e5c350c2.0","@material/base":"8.0.0-canary.4e5c350c2.0","@material/theme":"8.0.0-canary.4e5c350c2.0","@material/animation":"8.0.0-canary.4e5c350c2.0","@material/typography":"8.0.0-canary.4e5c350c2.0","@material/feature-targeting":"8.0.0-canary.4e5c350c2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.4e5c350c2.0_1600722860224_0.25097286602286073","host":"s3://npm-registry-packages"}},"8.0.0-canary.16c563ef7.0":{"name":"@material/floating-label","version":"8.0.0-canary.16c563ef7.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.16c563ef7.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"13c8cde00906157692361afb7b9611d00ff5eb49","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.16c563ef7.0.tgz","fileCount":34,"integrity":"sha512-g12BOq9nraokOt650I1CNx9rWCrHqHoN/axBFDGlk2iIpFnivRhZ5UDjiE827ZdWZkhxURwi100iwxYBLryeCg==","signatures":[{"sig":"MEUCIHR5wYUuRG5DfKk/JsIN7VpizgXkR4ItMzBCmyxYd7g9AiEAvMsFDhrJn3pM5a0tMfm4LlJqWEFUaAsSQqTbABTqn8o=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218718,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfalSTCRA9TVsSAnZWagAAsrgP/2+Gxd3cD6O2VZ/EgEDA\nLE0TCxYZ4im9IlyQX5flfgiXQrGlI2Ex053jiJz0/7V/pRvXi2S179KP1/Sm\n1P0vC8ak94r0+TXb8UP1fiZT3vM/FGQa98Ot2/pHBqmABQa7sUFtJ2pyKr04\n6mZSphRPj1B/QZbqWETKuz8/jOT7qTPj8Dc8SPsW5M/JMDXWGXqxhCPa0fZY\nYd/OtCceMfATj6ZbW2m0ziR5qDWdf7MzIH4VdNVl/i7pR6DlzyWjJCVp8Nls\nVC2lEX4qj5h6B1GH7yvz7De/1JTlXNS0BSE5P9FxOUYRBtFj9seKx+xwh1uk\nNwtLgSsuJDTJX7n/evnc87S9ggdUjU0O6PO8r3W4PH8JjDlOE3xu7Il0BeuY\nyTHNkLRTAdu+5ENctahvMZoAndZoZOMhDJd7VrqCKuEuL6v0NgSMFHufLh4A\n+b5LeXjnjjLN6oQIKlmQIUmJg6XNv62PBFjhsgA8LhsE7ds3tzEeccEu99QF\nu1HisYeK/P7OZ5rqAdxrRm0QMB2ahQ/YUMkmJFiqRbAS2DYey41NHJzqBHBk\nhN2uUASoHBPM8AT+to/ST8/TGgTCT3zKDnrmTpjy9PYxjW+hHzYkpJ5ZbiYT\n8zW4ktqIcrQ+laq0R+hu7K2TffkIKtQu/bWbQfnIsa0QRorhJ0AttqZcynMZ\n/pVp\r\n=p5c5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e3abdb235aa76184bd5171f68c237f58b8541f7a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.16c563ef7.0","@material/rtl":"8.0.0-canary.16c563ef7.0","@material/base":"8.0.0-canary.16c563ef7.0","@material/theme":"8.0.0-canary.16c563ef7.0","@material/animation":"8.0.0-canary.16c563ef7.0","@material/typography":"8.0.0-canary.16c563ef7.0","@material/feature-targeting":"8.0.0-canary.16c563ef7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.16c563ef7.0_1600803986912_0.27499362826626816","host":"s3://npm-registry-packages"}},"8.0.0-canary.fd8af3d43.0":{"name":"@material/floating-label","version":"8.0.0-canary.fd8af3d43.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.fd8af3d43.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f7e50587a07b81b64dd9bd6768c6fc613ff09e8a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.fd8af3d43.0.tgz","fileCount":34,"integrity":"sha512-d80Q6mKb6hL1RrAk4tcAUguPWNKkfAmjjok3KTzhMZJs7LX6gvG7Ync5fwSk7mmxCrbY9POJpOGWra518rQH2g==","signatures":[{"sig":"MEUCIQDEOrBEXNsuiJ0Gnqeo9qZ1LgGijpciTYNYPCdyrneJ+AIgR+Bzgfyse1c1jzCF5jvR1R5jdv+lLAlUbTf0kTpf1M0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218718,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfa6LLCRA9TVsSAnZWagAAljAP/iJ9hGzbk033Oh+Lcpqo\n3a6qUS7fN2Xa4SnTnGs/pPL8YYeD7Rc7nliIdwhglJ+BZuBDwdw+rnEMqP7q\nLK7Qt03hDUurbPWQ92Y3yl50AyvJ7Kk3t73LrxZ5SPykMyiUohwOkkc4EIkW\nk8vISfxcVZ8dgEpHg5ojxXMUewiYpd0Nrgouam2NB3bgPh+WG15a5h9kOnTP\nbZy+N/U1TkQP5f1qUSiPpndX5cN+anSwgFLuArEyEwRj4/L45QH7dUuvFWmY\nGvvkK7F9N0pSLv0vaG787EV65g8JI4nuecmYnZ2ZEqSi2617qYQELqQWWjQv\nvl+TNMZ9QkvPqUcla4PhjBKwWmLN7oYiCYkxceA8zbMTZbmm/9XosSSLfEo0\nAOpd4HKb378EgCmiL419voaXQsFlUXN/4sy2CTOEENCX/+uixcVKRlXjcrCr\nefdSdWPdr5GE5uvFIYmRwMjPbZrcj4rBMFoL0Ff1ERxC8u7825/MdmaKDGT0\nYn0e509GeeYjYnnh2sCBavpLaO3JEtqJWWbGN0KNmb5EzMqm0fK9mtmD8+BB\ndj/j1aKgaHal4ySg/5dSKjqjccDkfES4zJLWP/1sOJV1EurOW1385+DMi1SB\nyrdGMR0Y3pwYOf8V/RqPNP/Zjp+5n/LN4hIv/BxkPfcpQG/GcRLEFRoxWcUY\nHEwS\r\n=zXxR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"0f295a5eb9518e726dc271a945985bba278bf9e2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.0","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.fd8af3d43.0","@material/rtl":"8.0.0-canary.fd8af3d43.0","@material/base":"8.0.0-canary.fd8af3d43.0","@material/theme":"8.0.0-canary.fd8af3d43.0","@material/animation":"8.0.0-canary.fd8af3d43.0","@material/typography":"8.0.0-canary.fd8af3d43.0","@material/feature-targeting":"8.0.0-canary.fd8af3d43.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.fd8af3d43.0_1600889547314_0.5702940611955316","host":"s3://npm-registry-packages"}},"8.0.0-canary.d4cd83a85.0":{"name":"@material/floating-label","version":"8.0.0-canary.d4cd83a85.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.d4cd83a85.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b8b4efffc623390db27aa8354abb6e2d256805ad","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.d4cd83a85.0.tgz","fileCount":34,"integrity":"sha512-BsT0Mz3qOdKLpR//j+FT8EtPRx+15NmcdNtNZsy6UuPpR16m1nHIU0fm14R896titTTv/la33JZn8YkwlEwnsA==","signatures":[{"sig":"MEYCIQC1eDfk5J+wNkROlP3Ztat/wc+E1Ruoy1CXA1BlqJ4gNAIhANsqjmzb+jjRFgVaJf77LLfIi1LCRPqKQAdHvGgS4efx","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218718,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfbTtiCRA9TVsSAnZWagAAHAcP/0DrBOc6WgJVB9+f2Agi\nsKF7HfHjGyEkcBvOsc+c+5Skpz9YMwYNaPchnH8/vLNiWLLZ5ZyEG06EVpK3\n7dh35TIfTz7BcbfNnQ0IhwYxWTUHTjMZ1LGWTWctOCK3J9+P3u0ieX/AJjdL\nIOJEWxvUNx4GvBfaEtkE9GN2w9MDaHmDGTzAJHXIfNlGKE40OUgHQO6OgWGx\nZ9wDd/Mp/Z25WDE4JA8R40GkYONFXjtEbTtxeQA8R2j7gPi8LzDkl+nVwxCQ\nMUyI2Q79ZY7Agnj3wG5La1LFd52R853TPfzLkIuErokX3P2oTWlDioRRiA6w\ntK6blCl+bDNwTrVA+UiRWHuOAic14LP2scYhZaEiEmlOH14xYFDmZt4/7j+T\nJuLh2yOFhLW4njue+7cSKHVHSvY4CxUArXsPqgvy2697Ehz6MKMMv20GoDNH\nxYkE4ImdYKy7Mccog5HevshXOsN0R/atPsmkT8zBGD3BZmgwB2+LPahiGZvt\n0+jJPQnsi2m3op9uq52mBUlixdODrTGc9b2x2W0E07ZP6C0A8GaLOesYu78m\nx4CLRA/RI7WK9dEcqazMVNOausJ8W6z9rfD+n2iiTrrYpQI47c2oZTQVWxOa\nsrUv8RnDxybr6Jp6w+CXhdeAhc8sxuKiHENvGVh3dsMTQHzgfZCShb2umPxv\nMZqA\r\n=MW87\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"80cc7639dca83570a37de4bcf4d7501246ee8eee","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.1","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.d4cd83a85.0","@material/rtl":"8.0.0-canary.d4cd83a85.0","@material/base":"8.0.0-canary.d4cd83a85.0","@material/theme":"8.0.0-canary.d4cd83a85.0","@material/animation":"8.0.0-canary.d4cd83a85.0","@material/typography":"8.0.0-canary.d4cd83a85.0","@material/feature-targeting":"8.0.0-canary.d4cd83a85.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.d4cd83a85.0_1600994146093_0.7632176421785002","host":"s3://npm-registry-packages"}},"8.0.0-canary.199aecdfb.0":{"name":"@material/floating-label","version":"8.0.0-canary.199aecdfb.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.199aecdfb.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"34d3ce29b58604a835ec729c1e9a054fe2c3b975","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.199aecdfb.0.tgz","fileCount":34,"integrity":"sha512-QLQMnu6d5JjpBbZzzitkFKmpSTG9ivTHl0cEH0TG7bbLp8nEDyPVF31CsvNfv799imGxa7ZjGNuE++xsGCAEgQ==","signatures":[{"sig":"MEUCIQD8zi8KZRBJxqtqTzGcWjUWy5oLd2lgNxp5RdHfbmEmBAIgcOApKOc1TON+5Frg9UOfTuZUL7+YxRoR2RH65V+K/j8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218718,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfbhIDCRA9TVsSAnZWagAA0KkP/1lPF+49i6u5B3nkpBpM\n9w90bZYwPQPf6YH6ud1Z3uVeMUUjI0U/7me86CEshcEQiRpf/1qmWJ56xKxA\n3aO8soVKYk+R+aM5uOfwNnYIafNXAN1C7yPJaVgEOKD3tWrmEMgNZYtczuMD\ntrG6I6S+vSleN6CKggDUudFKWAcm1jHwTKUw0i9nCsTgpdglfTpUKLaXzM82\nNs2jeclztcF6PXMOid59EjvLzCDfXPA9Dq6lfzann1PegSKmWW0N9KcB70Cr\noURdmV3TGunRvA3K44kbV1hQDyeJ9BN58/yLv2aeuE0Q4DRqHPExtGzMLRGW\n+/j2DkaAvOl79mi7Or5u6OQN1A56KLWIRTi9fACHdftimN3i/CwQ+MWJMpuc\nIl5MD9i2YZAQxg+IxuVzuyGXiwfG0SCOJdr7zEPTHeB/6b66UXeBdpdaV6T5\n/ug8zqOKp0dR6AtvsbhfVaSJGvMVqHc9ZIOGZFZLxVhs43SPElbuMk1NE5qe\n3ey8488H7b2sD9gx+dW8Cf+tNz/+dbs6iLXXl5PSosNYZxUm/5+wwhVfRlTo\nSSlht9FtZQ6K0knibtfFQkr0ej8FS4Ik4P4GpEJmOW5x4z2IHo5DAs/j8r2y\ntHZF9OmTjMma8aTpF6Ip2WXcn338SgO4R9rh3OdYkFTqGQ+fW6WnhzQLFBNu\ne/Bh\r\n=kj5o\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2ced06dc0aac728f58cce508c7393aec959895d6","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.1","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.199aecdfb.0","@material/rtl":"8.0.0-canary.199aecdfb.0","@material/base":"8.0.0-canary.199aecdfb.0","@material/theme":"8.0.0-canary.199aecdfb.0","@material/animation":"8.0.0-canary.199aecdfb.0","@material/typography":"8.0.0-canary.199aecdfb.0","@material/feature-targeting":"8.0.0-canary.199aecdfb.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.199aecdfb.0_1601049091160_0.16326693474268317","host":"s3://npm-registry-packages"}},"8.0.0-canary.38ef4501f.0":{"name":"@material/floating-label","version":"8.0.0-canary.38ef4501f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.38ef4501f.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3b8633f67da83992453dff4eb4aa275046c40423","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.38ef4501f.0.tgz","fileCount":34,"integrity":"sha512-yUmSu7vISF3yaP9BwH63LDy23kqc8Bo2Cclw1syWM/j55aY3XPVaNk+n3V2AjsgxHpIhPphdPc7j0ibUExDiow==","signatures":[{"sig":"MEYCIQCnVamyrSn/r2PEhuc/c1/xIcWfgZ2pLO+gOIYzXXl56wIhAM2xL2sesv1ieCO/Oq0lq82snrC/Xm2q5mh2xgSID84d","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218718,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfdM1vCRA9TVsSAnZWagAAgLsQAIbDn4joZSkvNq7Lu9uy\nmKx84f7diAPu2aOQeR8jSbBLV4vECXq6JwMUtIpS3vTptNxnBA0zK8YOlL7K\n38jaUE/k8nu1fObL0/bKYvL4Fb3OcqgsKfXl/VIhfghpAfQKJfz61uPVGf4u\nar7CNfmNIQ+sc7dQIu1qcDNjKmd9xnxPG5wz1Ktfa4o7YoWtCvfG7VpGYcaG\nNmLhg1lco+Jm9ImrCc1CvIYehFO36QnVotcEZpgxEbb8JhbBoUNbvVIsH5PM\neA6po7RAJTeVkR+ZFzDCUeMKvQ3BbwUiWxPDymAZ7HtxzYmvYli5lfCgxD9c\nmwxooC3ccEajBhg5pN2vziOK8D1yA5yeULTqYK2fw2LdAStCQO8HpBBMlyd8\nlHzyTGENpmPA5NEzG8T8V3IgRb9HKAMom/zfUkVNeLcyoL428xtDIkz+D+1Z\nx1KmFL2SSH+vt9gn3qCSeupAEjjL7Cx4MfPRNF2zUbfBKA05xEKUsQMlk4iE\nxBUKJvnUHe5GHdy7fVz0TAJovWfa4tPYXg+4GcMQqZEli8VSccG7w4w+xe7M\n4BbQueLf8+axX/cisf0Kk1Xf2AS6hMpENDq3pv9PFgy54EBDskXUBnAggu0k\nPRUM53cOitf4UogmFyzsi6a8B9ga9rH/dpuQMELMUZ6vkUwTVazxx6sziVPT\n9hxQ\r\n=6M8e\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"bace3094edebc680b12a257aebfe6170928076ab","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.1","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.38ef4501f.0","@material/rtl":"8.0.0-canary.38ef4501f.0","@material/base":"8.0.0-canary.38ef4501f.0","@material/theme":"8.0.0-canary.38ef4501f.0","@material/animation":"8.0.0-canary.38ef4501f.0","@material/typography":"8.0.0-canary.38ef4501f.0","@material/feature-targeting":"8.0.0-canary.38ef4501f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.38ef4501f.0_1601490286778_0.07264414423428334","host":"s3://npm-registry-packages"}},"8.0.0-canary.774dcfc8e.0":{"name":"@material/floating-label","version":"8.0.0-canary.774dcfc8e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.774dcfc8e.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3758a0c7e01db858ae715cb48d629aeb0551d8f1","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.774dcfc8e.0.tgz","fileCount":34,"integrity":"sha512-cnrMuKQKDupiOZdotNR5HJNpewvrFPE3KyrUIOR0XTd+JXUF4Rz/6aAwMr8Z7kbspJ+/LePsAKJaYTBpIbOJEQ==","signatures":[{"sig":"MEYCIQC8V7XqYBQHqNjNSYoIoRXYJyblckVl6FPFWIKQ0LPLHgIhAMAXoBMlE9p0+dmmXl96xjEOvPDn2hTyiDLmgYzG+8/w","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218718,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfdadOCRA9TVsSAnZWagAAKEsP/17YgKy4WGBEqxZKlcKy\nmDR8euz5NmS0IGvaB/c9v+J4fhsRXLbMnRohxCTTLvluZivFbYUWhV++f8LP\nZ0rN3+hJ1J1ebUgzjzaOjjePA66dozyhoW3zyKoQxm1a0+OYAXZR/f7uX1Lv\noezJMiLF7dsiZ0ktBF6K1YjN6uBEsTx5Cfu8ls9naN/fNw2YZ3KkWtkvLXGU\n4RxW/wFvl5/Q3AKCRUL7zRDo6TpJSB8It/16rHWHgEZJsq34sTsEQrF99Fpa\nUv6OpjvyjxWKSmCa5nM+UUpY5hUkE86sfZzxC5EvAtL7Ikcv25WOimdbr/k1\nw4jBbgfUkUyqpBmjwozW4SaS0oXS8UXY7iMuWHLAq1ND9Yeq4/C0MlQIZRga\ntxiJxtYx5adzluqz+ohm13xthqew6UhaWdz2Aw2zu/NnOR4JkpkfyMRegP/T\ng46yZwkCCxAS9QaGT3icCNFwi17I+sKjLjC+0tRr2qPtQUuH349s0CdS2zY8\nMejjnGnUQPkmbEcsYDlY6zJQFrEPa+/ZthkkNK4GQybKQn/NqoPGYTmUJPiu\n0GwavdhqiYoT3xniWAHfYseH1IoFTuysCYZR+LyCTzXpwoNPfRMsJujzU8Nz\noXAOkxUYtktiRaBCWjjA0It+x/eyoCZPHzhCB/KsjEOWnG5+x7EKjfqAz3o5\nlf7f\r\n=hL4H\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"6c37b80b059fbd4c815253f3a3868578afcc1afd","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.1","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.774dcfc8e.0","@material/rtl":"8.0.0-canary.774dcfc8e.0","@material/base":"8.0.0-canary.774dcfc8e.0","@material/theme":"8.0.0-canary.774dcfc8e.0","@material/animation":"8.0.0-canary.774dcfc8e.0","@material/typography":"8.0.0-canary.774dcfc8e.0","@material/feature-targeting":"8.0.0-canary.774dcfc8e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.774dcfc8e.0_1601546062120_0.9959047094906699","host":"s3://npm-registry-packages"}},"8.0.0-canary.0f60323a8.0":{"name":"@material/floating-label","version":"8.0.0-canary.0f60323a8.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.0f60323a8.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"44fb0cc0f075d3680facb3fa7dda05c6d575f28c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.0f60323a8.0.tgz","fileCount":34,"integrity":"sha512-HQxViCXBtJK8JEIhSjwzjihUeOYG9tIvuzoFOnLr2R6YeXzrh5QvLInfT3jeo0A8/J74lSnEWlcZ9vgo4LyXBw==","signatures":[{"sig":"MEQCIDgiDXx0MLlYAzVoKCAH7VckUQxk8PLg9O8NZFsApxskAiAqHfd3xNJ1LzBPwxSmP57PKIlbSM8c8ALhCxWY4uU+aA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJff4A8CRA9TVsSAnZWagAAauEP/i053xqFd9q6l/Uy8QHU\nH+onuArIQl9JV5oQa2uvjQC/l4+IVrWUMp5Njm5AKuAN2VfpG6jd2O8Vckev\n0Evqo0J6udkYKEZYfay8zAPBKB+VuOekXn32Yanu4a7rTxNh+GjZmiG4slmN\nUg06N3xgwhLsXEk4cD7Oev2r1j9klExZBV11t9GgfhPjnmH6Lg4dEkKLCvGJ\nFRRQrskJk/IVc1M1XfhyIrThrqyw/grMkD8uV0OJt807aAyI3gIi36vRz2Bu\nHQKGsYMdEOmpWfQokQ0UtY3/7lxIVy/0e4UzY0LnVhc0OUJlcc+X/561mUtY\nNbnO2B3IkWIvD/tkcmQAiYymPUYUHThDt0D67c7UrjT+X4WUNPp4HfjNiU56\n2tTeWuMoWz+iUL10zyX07+qyHJTgXkx8B5Dcrhzb9HHG5un/Pfiz7NOq0Fja\nx3vE15+0v7H6W8Jav8Ln0/xSL3+vlc6vjRpXHM0IVy1OG93HZ5ezDzMqKLsA\nObsfGNj9DnR/G93hJPA7R43ruseGiuLkSbVYRgq4+q+bDgpj9QixQmbOMtJr\njG6Yhhz9lJDcSeOpKQlKdQpAmaT3eklHnwOGoAWN3i2vSyqjC2HSxfPmSavj\n8QpwuWrO/3LRd+j8TfXvJTxpuhc0EBToO/2EmewlcsFm0PVihUSpxkouusER\nMVWG\r\n=aNkn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"edfdb55487a31cd5f5130aad32b3fa8f369e6d0b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.1","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.0f60323a8.0","@material/rtl":"8.0.0-canary.0f60323a8.0","@material/base":"8.0.0-canary.0f60323a8.0","@material/theme":"8.0.0-canary.0f60323a8.0","@material/animation":"8.0.0-canary.0f60323a8.0","@material/typography":"8.0.0-canary.0f60323a8.0","@material/feature-targeting":"8.0.0-canary.0f60323a8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.0f60323a8.0_1602191420253_0.24343982098390926","host":"s3://npm-registry-packages"}},"8.0.0-canary.d71622574.0":{"name":"@material/floating-label","version":"8.0.0-canary.d71622574.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.d71622574.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"77d75ef83989119fe25a45c8fca68453d3347dad","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.d71622574.0.tgz","fileCount":34,"integrity":"sha512-MWKlAuOyNgotN8NQe9RXH/symK4uKaQe67UYoxUq755zL4mf+lo5s7S7d9K5FYmRoq4gKV39azDotR8qxb7UKg==","signatures":[{"sig":"MEUCIBwhq6VVzil5Z8Lw+d+8mQTZT79zgN6oqelTAHLzSM/PAiEAueZ2fHld5IrR7SpWjjsntvaeIvid6FYm2/zevz44XF0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgJCBCRA9TVsSAnZWagAAkNkP/RcTV4gwQv+8oTxROyzi\nC+VzhZPxLpzt/mjpQ0PqMjop5JlzlOHOUeppuGt8X+W/SXDRXEWnrar1viaw\nE+5YoYV/Q8gyYn9jafN19yaXMu+krbuPg6b1hWgvMd3s/qD/y7SpNqko3ZZj\nyRSONlINynbA7WtFbX+cF9QSO+JSTSG3GbSu3hy8Tlarnh+s6SRk+AKff2yH\nukBpnTurbPNiYCF3YbGmbvl7Bnc2FhrqEDd7TEsYpfeDBSGD27eJ66ps6PtY\nJKzk3Hof1v8wwCLF3QxRniPHH0VRoC1SDsWX3mQNhHQCO/hsPzK5pUxSa9Q+\n4imEPQtEDolduEoAGLavgDZfIcHj6+rY8Ufieo8FlkZ5xzeitBQ598WUIqXc\ni7GQvbMDZFAl8htfMAeE3atbGg8QpYBHoYQZD6CgtikvpdIpZhPw9/Yf3pEr\nUlzCOGbnM1WxRLEKJHKEH/b9FFNa8jBwanXmjhEhqawJIzNdx5CLzE06pX0Z\n3ObBFtlU2qVvoiHDRbw8CIdWtjD+8kX3y1JNOHqure8nOheIVztSXFeOzJRS\nScBwvqQ0YCSWycdTv50x7hIrf0INq+kqtUudpLtccwncXwpxuFQ9wLS9LHnK\n0lm6462SBSs7auEKT/Ood/XbI1PuOVFC/jUtDSIxUzZtgnmAdk8tOF9qadZR\nd1bP\r\n=GU4f\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"19a45f4824305f22d61cbf9deea0fef067dea3e6","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.1","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.d71622574.0","@material/rtl":"8.0.0-canary.d71622574.0","@material/base":"8.0.0-canary.d71622574.0","@material/theme":"8.0.0-canary.d71622574.0","@material/animation":"8.0.0-canary.d71622574.0","@material/typography":"8.0.0-canary.d71622574.0","@material/feature-targeting":"8.0.0-canary.d71622574.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.d71622574.0_1602261120717_0.43705615615265403","host":"s3://npm-registry-packages"}},"8.0.0-canary.7a9afaf4b.0":{"name":"@material/floating-label","version":"8.0.0-canary.7a9afaf4b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.7a9afaf4b.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"89401c51dcda01b57b8758e7d6093432e6be4c34","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.7a9afaf4b.0.tgz","fileCount":34,"integrity":"sha512-kBmfcFW3tqOZrIXhF+7y9zV4iOATnVb6pUQPXIKYXOoeJ4Tb8tKDTB4wicEwNpcGXC1OR/MxY8RV3zQhbgTDww==","signatures":[{"sig":"MEQCIFi9VYmNqsljSXhZH0qV5KVxL6QjzC161n6A3XpCyW7AAiAK5ujLWxaYQ2g+1XDYOTF5lmy0gi+OMK4yo05dl1IsNQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfgOoSCRA9TVsSAnZWagAAy/IP/2kwIdpMUiliyN3+7sks\nH7VE2QHIXLzjH20CGn0Of9MtWNGubLe6WuskLnIGGqWsOuBWg8kVikS2ZNgc\nJCD1uxFIssnFoufJtFmkXTVKjKKvKb3ycRX1Yu7u9poYkRwV4f8i1B+bYhHm\n0QYau/yP6cnDpu1GgkPMjcSGTqn4V689Reojd2h/QW3k85rd/uB+ZGN0dWZ0\nNW1Yal87PM1fsOFZjQanfPoxOPqmca2lOgRQmRyjbmJSNM3QQ6LHEAXJ3Da0\nLY9cztjY7ZC44MNiv7hC30SDqz++J02QLrLf6rnD6TB14d44TRJ62SxEufFX\nT2uwdSObHa9xpKZFAfALVNwNiOX2PO2dP3M6+rdTfnauagCI1XcEFijewUMb\nN/rE2hh6YEzUO1Rrit6SWZlr15V2Zz9nj4IFUyBNjUlUlkjygHQXdGruf0Fo\nSGPYtTbzmQ+KayR4vGCgWRRso/AmDXkRAy1ZsWfqRxezqKcfGAyFKKGC4CRL\npRIUZfHc2gk21XaTLR7Tb1oNNRnEIv+lT+nliM25WcXqfSqMfjgwLI3AIqrg\nar7MnhO8xuuy3MnuqAgwUp10bHVyC4Sdt41iUe8rHAwwtwHxM4ym7xt2r0oC\n7E5GYcY8s+nvQn8E/0rrMt/3BoBNSS+lJgXOa9Nxr6twzzJzoRSZPZQ17bqR\nvz8I\r\n=sBOp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"137d6fb8ed93c50312981c75fb37199ad460dcf2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.1","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.7a9afaf4b.0","@material/rtl":"8.0.0-canary.7a9afaf4b.0","@material/base":"8.0.0-canary.7a9afaf4b.0","@material/theme":"8.0.0-canary.7a9afaf4b.0","@material/animation":"8.0.0-canary.7a9afaf4b.0","@material/typography":"8.0.0-canary.7a9afaf4b.0","@material/feature-targeting":"8.0.0-canary.7a9afaf4b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.7a9afaf4b.0_1602284050338_0.7040916539680817","host":"s3://npm-registry-packages"}},"8.0.0-canary.8a39352c8.0":{"name":"@material/floating-label","version":"8.0.0-canary.8a39352c8.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.8a39352c8.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4fb2dd4cf63e15581bd2da2e91c21c30de4a0074","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.8a39352c8.0.tgz","fileCount":34,"integrity":"sha512-M4XvCyk4AV19+xQv0/CWNIfCe/1i++g1JD9F10PVySL8Mbrpz7PeFMRXnKrdBzCL/zHLzCR7nRf5DIkrI1RNpA==","signatures":[{"sig":"MEUCIQD1vMLkluCgJFJ6nLmRBExBisoP86/28xTCaDWd5hIphAIgVyhSHcAg6vdNRNqKmuV9ihYzN5yTwzc/m+CfOcpe8yo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfhJZ9CRA9TVsSAnZWagAACDkQAIW/4Os7S0TmL8jwEh3L\niP6I37Q0m53aDAENegc5x5eI1LTHdvKLxR3rGXv6ahvvDuzwtTXPpYlVf/I2\nTFUSKZbZn3RI1OggluiwEfHg4sSDSyF0N0DfA/XaUpdrScn6psWGBx51u52/\nNRiIG2myWCQGZp8NCPI/X73duKqt/vjHfr1FgfPdjTXWnWLf+VxAAMzgtbLk\n/b1w7cJ5GSZ7vkyBvY28wwUrZqtM6DDrlYjNX5F5qaZzXRXJj/PlM9bXRoKN\ntz5qMi5tnn+QWzqzPbm4FUPrY1ZgIbAsZrQLRurbdUNHMuG/ixb9Hcvf8M2S\nUScNthKPW9NbZMRU846gnwqTavjXaX0IYxIwBqftWGSXVkxRWVabCzXxZCp7\nq45hoxpTQGSQ604zMlYl6WB8CpgEj631TUWDtEiaZ34aPrjXp150KnYc2Kwq\n21IJP9zfdjh997J9wtm5dt9M9bmpDlQHKw8p/eSEr2dOTMyOvt69RyDiziKm\nZXBcddNaXTEHjzYYH67TYZIHldz+m53E7QvfuiPNnQmP1kEeoXfrUhFcZlXi\nwgKdd4muBgYKL1xrHseSoednts1tGhvOY3Zll3+75p2pQCnJ8vxEZxUBRIhJ\nJQm6DMTDQJR/xE4ilRC44Zakv/Gn/S47TGGuhd81qURA/97R5Aph6uvSGipm\nTSpf\r\n=biAo\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"cedb8cd906516b8d460c813039351e951b960c50","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.1","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.8a39352c8.0","@material/rtl":"8.0.0-canary.8a39352c8.0","@material/base":"8.0.0-canary.8a39352c8.0","@material/theme":"8.0.0-canary.8a39352c8.0","@material/animation":"8.0.0-canary.8a39352c8.0","@material/typography":"8.0.0-canary.8a39352c8.0","@material/feature-targeting":"8.0.0-canary.8a39352c8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.8a39352c8.0_1602524796691_0.07547653112944097","host":"s3://npm-registry-packages"}},"8.0.0-canary.790ca85fd.0":{"name":"@material/floating-label","version":"8.0.0-canary.790ca85fd.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.790ca85fd.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a7f851b9442d4f818c6811b2a52c3f84d019f78e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.790ca85fd.0.tgz","fileCount":34,"integrity":"sha512-xl5GBAv921CJuMIbqM4wxMiT3VCFpGLkZxEbwBT3ybjD5yp6MV12Y27us9ueyPJE5dByHWz/AWcmEd4ukvz8zg==","signatures":[{"sig":"MEUCIQD4kJkU05L0O4nDEd3EUnCq3oY7fG6Oy6YzzmWDjQkEqgIgH+h4XYuMn96CZECed2G1K7+23Gy24foniukxPgYNwvY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfhNEwCRA9TVsSAnZWagAAbAAP+QEPZuU6ZK04zJwcyWOh\nXHVBXtKvtGZXB8kWNb5LTJdiFQwN5Xc1CbF7Qe+CQE30R22Yf/eb0GeD8yCT\ndxn89UoglVigQMjFCht7pDXNMFlAVb4n0tpXMn/65KIpGk3G6XVJKJSK/DNn\nR2iVh3D7E871RAUc6qr1I9U7/xwCENCE6oop7uyCXcb7h1VUEmSNcAALf+ii\nhON6atFd9aBQBVuNKWd7mqe9kv+PqY7Ghb39Xpm+DGlChdcLfLU3PL5tfokD\nKA8lRTKtYNwmQ6NibQuneEiqPbhfCKuRk4aTqwCsLyVAZtgzxluu9JKArIfY\n9XcdmzQv/8ieTodhGUjl0eUQrRDGktIy3Owvx1hrnFEMszY8jaLNdJsI9DNJ\nhXf/Rh7HUDRcBpLy+uayZg8iml52haFa+MZTIOp5ZtC88LAaflvqDK5H96Po\nECgN2y5hdQ9ToVws3zNRPIHexaHgJw6EpxG8Y8XHpr2mce/ubOP8idauv/7Q\nq+gB2n7Va0khG7ZY6LgWhUGQbUGIvWy5c3OJzDROvJmgxh9KEhJQFpUoyeU+\nC3VYnWc68p3lvW8UU3oMQLFKOQX2HfgoXTgKgwHe4qUQqEZHCCYhFBR9cjhl\nDd/C45t/tE748b4+dfxz3FCwtKFSTjSOG+AMelQmis5aHus6j2GA5l7pQSAO\nAgon\r\n=Aoy1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8971e891898c4a8ca082beda756a7b93097f858e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.1","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.790ca85fd.0","@material/rtl":"8.0.0-canary.790ca85fd.0","@material/base":"8.0.0-canary.790ca85fd.0","@material/theme":"8.0.0-canary.790ca85fd.0","@material/animation":"8.0.0-canary.790ca85fd.0","@material/typography":"8.0.0-canary.790ca85fd.0","@material/feature-targeting":"8.0.0-canary.790ca85fd.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.790ca85fd.0_1602539824100_0.011162855363816115","host":"s3://npm-registry-packages"}},"8.0.0-canary.174c0becf.0":{"name":"@material/floating-label","version":"8.0.0-canary.174c0becf.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.174c0becf.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f632443701cf5fe0728ee5b229c20030cbe67fbd","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.174c0becf.0.tgz","fileCount":34,"integrity":"sha512-znVO1DS/U+6HEQxSBjtjffXnTzJMV+CbM76OAu0hGxxpVZ/n/Nhi0XbJ1JHuKrMqRpqIgSpetq22iyMS2sQkKQ==","signatures":[{"sig":"MEYCIQDC6yASWBSafC3ZtVQZOEs913SojkMpf9Y8zR2XzveqjgIhAIGzkiZuLrJrGfD/9f8kKtfexvENJpC0t3gkGZS2XQvu","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfhl9eCRA9TVsSAnZWagAA+DEP/At9O8Ve0KKOeB3zUP7n\nuN1SgAx2vL7I2CkHks62/myaXNZwjZ4TQsv3Zg1n8Dnbm7MLCsRooOdJEiMv\nwIOgVDSfdvq84noBmpKxtm3bAQcN+vPSwygr6eEzVRjRHHazMD1tICvTiDVH\nu1AY//dwUjl2EPANtvpczS28HC+annOcap4K6vQSYeu7j2QG2GF90apLL4oq\nWh7U28KbeZ1K1TTIlGDIwY7RQb0+Wb6EldzrHmosvTqJxnMCzZ47MLCA+nOx\nF68e7b07i6kFyonLGOUsPEBqZtFLbQK1PpunwWIJuccf8z/tZhkSJ0KU1rkZ\nZFhQZTNYcSDYqkNOUy/QWWxllOHIYjBHMCJqjJonOCVsu9oki388UasSllxv\nqf+V4+jJJp7DWVTi6oXHSRWfS8vtEEyYKxYwGwC0DM/9pVU7OPKp7lPZeDua\nPta+oVZQeyxAEX1c2cDqMS6Df+qH9S7fHx3OVCZn+3VAKAX21v9Pta7lo8sR\nUeZsi5bUj1YG+Q0nlKbeMpsLec94NSBhJiLwlFLJl57G6l9lLG9ohVoeZg0h\nAZ0GB43oqPeRlNhRx5QSs16rFWxhp/AvqCyDE+Hq6NufqgZsH62/U64k3O3X\n9opPXhitBg8uKejK/ZVFn2per8gdfAOxxxEhHhGBdKAcn/I6c28C0XKRgJw6\nKaDX\r\n=o+bQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"6dc7561b8695889178b3e884e84f5d9c3d59e100","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.1","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.174c0becf.0","@material/rtl":"8.0.0-canary.174c0becf.0","@material/base":"8.0.0-canary.174c0becf.0","@material/theme":"8.0.0-canary.174c0becf.0","@material/animation":"8.0.0-canary.174c0becf.0","@material/typography":"8.0.0-canary.174c0becf.0","@material/feature-targeting":"8.0.0-canary.174c0becf.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.174c0becf.0_1602641758400_0.0890732611481011","host":"s3://npm-registry-packages"}},"8.0.0-canary.c71ebfa02.0":{"name":"@material/floating-label","version":"8.0.0-canary.c71ebfa02.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.c71ebfa02.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"10d2f04ca9e8a7bf6585b3ccc331754d484db716","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.c71ebfa02.0.tgz","fileCount":34,"integrity":"sha512-1aibAYnRDx8xwaWqqt7j0lXQde8QocMm2SzBbLh/Ozc5eqw/k5QYAa7Br2v5jN+KpTobrDXaxeAklTOUiH6t9A==","signatures":[{"sig":"MEUCIDq6PjN5sHj0vTglugV+2jIXwl6mYxNrJVqgFYglb9RPAiEAgo1cPhtLDSTWd+FUyOp4Dax3cCz9zGM6r15K1vSxxoE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfhnvuCRA9TVsSAnZWagAAcc0QAIvShEFJD5t3zJ5udhp4\nkbg2QY0bTXZZeS0n+70O2l3wJLCglCb8LZ47EChXfzdo+Yc+1brsW3SLLTA/\n0ihR9cqWJIsJ9BdZXRfSADDg/W9FSjnn0s3V/eBbQdOkHBjhXJ/3WNl/VY8J\nFK8knFi5E7SZ9G4yw5Ogv8NmN/wTvtz7jhIHna+G5bb8XHdzG/fXwQrBVFcg\nEuRbiD3clPgGp7FUQ6qaMcSxKyLgKcLCQr6vRaFuTNZ6vCno3A60rUYG+D4G\nVrj38385r8L6vnv7LONicHpKm928LVDUN7D3IRVqdtHVPGldIdw1E0VdcSWW\nY+Jnq/lKUe/RTTsVOFUWZ3XOpyKKM1KPWFxYvC8YwdofJHVpCuKvl/mYzcwc\n6fvgy55yu7T9xtNCkF8AVMifi5rrgaAk4MxVvFb+cH2F0/dXUMQOveh5+OqN\nToAf1bI4xtNNuM+br2H4XOC61jikA0U6AKAy0CG0a5d0Z++SgQ5yEMyvdXzK\nxh3Hh5p2b7ofTdvTALYb9LB2xdUgKEeiOu/TZSQ5T+MDCgUFbGdjvVCeCVM+\n43xPwMBPENIde+wggSmEzD+AtzB587WkAm7bFwMvqBaxFx91NgOcwUXdj3c6\nY2iQQYYltW/z1dieusBv71MBFRgAGbWkbxtX/o/wc0TWUNQaT+fm1+rXUinv\nBfgX\r\n=eYED\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d1158a184d234471c81501e838b409c54f591268","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.1","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.c71ebfa02.0","@material/rtl":"8.0.0-canary.c71ebfa02.0","@material/base":"8.0.0-canary.c71ebfa02.0","@material/theme":"8.0.0-canary.c71ebfa02.0","@material/animation":"8.0.0-canary.c71ebfa02.0","@material/typography":"8.0.0-canary.c71ebfa02.0","@material/feature-targeting":"8.0.0-canary.c71ebfa02.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.c71ebfa02.0_1602649069712_0.05692661665208987","host":"s3://npm-registry-packages"}},"8.0.0-canary.2ab716cbd.0":{"name":"@material/floating-label","version":"8.0.0-canary.2ab716cbd.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.2ab716cbd.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a62c9ee1dd7f1d82c869d85d7ad872d4adb949ca","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.2ab716cbd.0.tgz","fileCount":34,"integrity":"sha512-s0z6pZJC6mSjjj7W/R3m7uRLUXisWl86GWk2GlbyPaYlTB62GFCpw+DNDYWwYslwbN6336ZUy2ynOOxgjEGsCg==","signatures":[{"sig":"MEUCIAFY5RRBQspremHKflgEjE2+Ls9WvLZtynDE85ZvjAbbAiEAjdfegX+0rRWZI+s71Of1soz+o2kaVl7q6nxQrx6Rmlo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfiOOQCRA9TVsSAnZWagAA3FQP/1H3tVLWiMuDmtDnffT/\n1Bdg16JLxBK0ZDac92UVqEl4/qM8RvGzdsHuES5i/qgUbzGco7gRnKwPNmya\nF81Pf9ZM6rp9BBYLT2vijlCiRQ77RhHJOTeFNIu3JLCwdkUuBa/kvByrUh+5\nT8jVOZKAGK9VUHi71xU6XwP7OssxJcGejf6qwfG1HRtT14W9/hokMttlu0/F\nU1rwb6e283BWuLqfwqKzcNnmGAt/xB1L8VZhGSatZqiSRXub7Ur6QOyurDkB\nd8wgpkopN9VwOLUgNDD+dDsWx479mOfo0Wvl3gO+/eqa3GAMTiii6jRuHP4w\nL5pKSyE6/7Q/iZ2rk9kIP89w02JCUwB/o0V2tjVrXIg4Zdgai+UmynC2IOR1\nqOMUWSdNIjEfV80NGBNH3oIZAMQVsehvm4mCxOaSjgCIwFlYVOujAY4HxcHV\nQF1tsQHt0SQaRS+iM5+LghbtSMen5NGlibulsuza1FeoZsyzsUPQFCftSC5E\nxduRhMv16TR4iwVvLNNfbSY8jLMBRAA4KqfjzjeXBRFbRu8AnTQCdYwzIwLz\nIl5534keeAal+r1foFE8uwayI0ZQpFvjb2R/tQarG49QWY2GZB4YdtkprRvs\nWjXSqI0qzkEw1rR6Sh/nwOpvF4KwHSXQO74xbz/0c18pWd0ikq2rehlQ31KK\noFW2\r\n=93IL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a3f41127e9d90f7e393ee6fa5e01829e52160131","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.1","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.2ab716cbd.0","@material/rtl":"8.0.0-canary.2ab716cbd.0","@material/base":"8.0.0-canary.2ab716cbd.0","@material/theme":"8.0.0-canary.2ab716cbd.0","@material/animation":"8.0.0-canary.2ab716cbd.0","@material/typography":"8.0.0-canary.2ab716cbd.0","@material/feature-targeting":"8.0.0-canary.2ab716cbd.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.2ab716cbd.0_1602806671990_0.3587086704528779","host":"s3://npm-registry-packages"}},"8.0.0-canary.43c1c5e2f.0":{"name":"@material/floating-label","version":"8.0.0-canary.43c1c5e2f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.43c1c5e2f.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1ca23cba2c35437a279cdc51d992a356d800a00b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.43c1c5e2f.0.tgz","fileCount":34,"integrity":"sha512-tWYnZb7bwvWsWK/u8qc91K2kNWig1eArd6TS315rIk5E53AMA81kDbZzF126cROKilR3hFipEVSqlTLKkCkElw==","signatures":[{"sig":"MEUCICAxSnfmewuaahT0ZH/6FtG42RrxKucpig5+5EtQD94BAiEAjMb/pFrHFoS3X5DDc6OhCBX0o8iSAvqDBtS384UFc2g=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfjZ3TCRA9TVsSAnZWagAAtYIP/3TR1+kXoXXfumQ5yvFf\nzqBuN9cMVE+kRu7iZQ7JL4zfdBB8ET2E7fAP77/e65oX1ceJayUKYYEgTOm7\n21vyMosIp+U9DzEqp4oywDwwH8TxeuHUCy5w+sqzRNPezo0a8FtxLODUgzQA\nck6AreD8IUePAzAZzFi2ExCKYZvIG9Bbr8LLKQqzAxK1jYTRMBrb235B4UZ/\n5nfApmzr3VRPFWdwk9idQ0yclINQDerg+BuX5WYDM9/JSSuGXeWxMOfIpVxS\nJXb8uaPfviIvKtPcSNnCMUNeR1Ln64ox0J0A1b9dRHsVa888vZNM3cj2qjZB\n5kAplb58CvRZCVdMj+CyOc8j4G/lYNq8U7YqWdEjbt1dN0prVMOl0vkMZV1X\niNJl7CpVo5jwiAayS2Tz8Wq/1PukvrnwWR4e4JBlPU0eSRjZZio2pPWCiKuI\n9EHCu1Bnk/Giq+lZMsvdYEoVIErB34omoWW6rSXERZO/nVRODQRk9PYb5OP3\nr15jkf6K1WfDNx5EvoBuOXbJY+pVd4P5a0hCx07PSjbXAqGF3huZwlDq+BJW\nxoSxKLZxRpfOWJP2TZzbDWmnCd57qHC2MdkopAJg6+ucDzRAZv0pHw8KsZVv\nxpjvUJy+ozJj23XMoaTgwfFwLt8hSKHeWt55KYDKZwOdoGrRr0rdeDq65PlF\nHWOR\r\n=yb5r\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"bae89543d5336b4583fd1519cb63078d2a5c39f5","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.1","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.43c1c5e2f.0","@material/rtl":"8.0.0-canary.43c1c5e2f.0","@material/base":"8.0.0-canary.43c1c5e2f.0","@material/theme":"8.0.0-canary.43c1c5e2f.0","@material/animation":"8.0.0-canary.43c1c5e2f.0","@material/typography":"8.0.0-canary.43c1c5e2f.0","@material/feature-targeting":"8.0.0-canary.43c1c5e2f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.43c1c5e2f.0_1603116499188_0.5979717683748786","host":"s3://npm-registry-packages"}},"8.0.0-canary.ccc64eea3.0":{"name":"@material/floating-label","version":"8.0.0-canary.ccc64eea3.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.ccc64eea3.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1cddbe99c18b0915b527a4cbc9ee1f02beab719c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.ccc64eea3.0.tgz","fileCount":34,"integrity":"sha512-s3pEdCxcoD+VBegMDxOn0ck27a4rkV16RMA9TF6MY4Fi3tJwNi3MnbcjbeTQ2ibRZYF4Fomp4ANxFj2k6fWzKQ==","signatures":[{"sig":"MEQCIDcY0KrJ2i1zkpgr5NNsqpf1+KIdHLuVIqckbjcXoI5hAiAFAcsY9wbrkdUKNtPrs0PhapVIs0hbGAbSklvtKLmdFg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfl1MECRA9TVsSAnZWagAATRkP/23TSfzpnqmhi3djbMMm\npzNzKFdXl7wZx49Lg/pWdjQCORmXGLeJh1lmBbrrZACyGduXqHyMktxJakoH\nWwmj9ilxOzcN5o23NNiCiiuq8+qrV1CjldyorlWKG25LAT/7926lDRAZjbRm\nXaAZCOnQoqNPAbbwTIED/6Qpc4P86/VdLFw7EjM/4PwC8LWH8TLWSux4JSe1\n3HB8k1XMn8eZY2NJWJ20fnDNwMUlb+5ZVhTOIOla1VrwFVvl2wqmtRA80wkV\n4KYe110gkeOrzI35/C5khCGKjx1NpouLhA31zeoW8nIeUnXOvyhPNmPRAreZ\npqiqVIfENE698//XkElDHqlk3esDp/PXPlh4CO0Lkrw+z++Y3izEdb7CAgdp\ngbE8+c3EWsKyJ/YBc7qWzd1IHbnAj6kJbtrSdOJ0e2rJaOCRYeoZG0ywzwo3\nUT14s5Qo++G7Tku9yWmY+aGeps62o0J9qBKqvLHih1JBkaWeKJfiRgRWtB5q\ntcrI8XhIppiVAIVCWbE1lvirlJH0Yk1alLW9LC6lxVSDKVcuqQRqMXWFXAR/\ndCD+vOerC7t54ic3oYfyC7l9ydNTH+xQz96yVetU0RD9Oa+lm+gzcqHVWOpn\n1ETXIj6QRPLRgPzBWGbMI/RD1yeDld4hq4NeM99W6UCcDRXYfKYdm7hHneFa\nYu+i\r\n=xsj6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"26df299f75c86dada6da463cae5df1b0277d5c7f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.1","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.ccc64eea3.0","@material/rtl":"8.0.0-canary.ccc64eea3.0","@material/base":"8.0.0-canary.ccc64eea3.0","@material/theme":"8.0.0-canary.ccc64eea3.0","@material/animation":"8.0.0-canary.ccc64eea3.0","@material/typography":"8.0.0-canary.ccc64eea3.0","@material/feature-targeting":"8.0.0-canary.ccc64eea3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.ccc64eea3.0_1603752707968_0.16160711874886924","host":"s3://npm-registry-packages"}},"8.0.0-canary.a79cdd019.0":{"name":"@material/floating-label","version":"8.0.0-canary.a79cdd019.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.a79cdd019.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"bec05fb6e291ecd2098acc8fa2bfe5233df431e0","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.a79cdd019.0.tgz","fileCount":34,"integrity":"sha512-MLpBX7RnusLPJUPIi41hVGBGXo+tjv9/oMrsVPgzPOF2c0/ky4eLpjvD6E9pXX6zPU4h8rUodtJP7rDIrhyeqw==","signatures":[{"sig":"MEUCIHgPw1h8+Mm24uBhUFy/0X35FLs9GaU2vI1JJCCmVc4TAiEA5V01Ut9BnAGCddV5YwfIeeL4y1gEZmQg5ZTHQIFWvwI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfmEtlCRA9TVsSAnZWagAAAaEP/Rw21gjo083XoNWZ38NU\nKhCAZSyL8+XNezyJsIPByItL9vAAM+uIsDa1bcq7bo6PqKj1nDLIDMxcLi26\n/EE/SPuTcKpj5llVJEkTk26lYRkovyJDw4WcNDekqcvR+Xz8UqH3yhcG0pCW\nqFz5ubYDyXaky0XH9aWIUVoacLO1f+k3HUR4vjJ1gXQyBPS4omSlSuPZfha7\nSYa7YPzwq+omXDcfQp8QvBa2oBPazVmLBKCRyN6YETFVTPG9r60gbQikCUJN\nElQXIW5k8+r1pJXVUGl0NNNVVjhP0Jp3moloZFwknAwbgAIcWT+OyRdSqkA0\nI5nt/Wd8vcqS9v8sfz7gYdJHTDzjUruKVhheO+vZA2YzKLGSQh6qMFGyYLsV\nwCt/qVKd/rxlqJX6PgBzAouvMFJwLEyG5W+80UMM6auH5D1m/ZJiacUIsh+4\nec83pwD1d7KfnfKrtcCpVz0ygRwEIIRPVJk15vVjaFOB5Ottc2/P4OTWIqBU\nI6hGv8I9nx83XkiE7f/JgDh7dLyL6B2ERvbOHxbFIQ3p8PficqXlvnBeSJ6K\np60uuuWhLy1UhAy3J+PbMTI9o7h6iDvYELOtPX9+j+eHs40q19SYG4bakbih\nZV3XrP4u4koAM3J3d9j2BkmodfJqdzJ8KkuuaydDSmLhWiKXpHzASPsGJnMC\nJ9ZQ\r\n=r3MH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c54ccf71e4018e84948fec32678595d974f80c67","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.1","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.a79cdd019.0","@material/rtl":"8.0.0-canary.a79cdd019.0","@material/base":"8.0.0-canary.a79cdd019.0","@material/theme":"8.0.0-canary.a79cdd019.0","@material/animation":"8.0.0-canary.a79cdd019.0","@material/typography":"8.0.0-canary.a79cdd019.0","@material/feature-targeting":"8.0.0-canary.a79cdd019.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.a79cdd019.0_1603816292742_0.27988859009561606","host":"s3://npm-registry-packages"}},"8.0.0-canary.596e98424.0":{"name":"@material/floating-label","version":"8.0.0-canary.596e98424.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.596e98424.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5995d1d2dbc998d5ec635869a6583920ec1d0080","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.596e98424.0.tgz","fileCount":34,"integrity":"sha512-T9SL15DgCkkNlKTHwcsltDThLkJT0TcoRAmbllaZrD3M/sAKP+UDurVOP/9WecY7hpBvzSVwD2h3cn2WyL6yPw==","signatures":[{"sig":"MEQCIHOKXFqhuusMX+4IfjOozoO6iYXoBXF0aoa83PW8p8bHAiA4nE8LmgCqPPU/M6Q9G1Iq5Cq+d+94elrTa1KJ4I2N0A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfmZZoCRA9TVsSAnZWagAArf4QAIn3XzKr1yYtSgfJ/dBC\nKgpk/Mbu3nFkgfmZy8SG3nMdLtfmpbWN4O88bJzOpkav/qDMdwVyK9n+hO2u\nZVE/xNd4iGv1OCZecpOrpbcWU8PPKLjPUl4lSW/a0C7U6eagK9Ub9x0VFfMp\noRAvy+NHX30lUN7KeLLm+jGjm5UGa2OP1p3lXauFIfMsEoG2I7HOsHjWXQrf\n20e0GeemtElajSDtVW+7WDInNuEZjF+CH+VpWGmjvF6UjNamPn+duP2BDx02\nKfIOwMGTgoghHezT2PijBhhMzap7S1u0b3xYtFKRAOIF+hjHpZsDxVVItNWI\npbJsRV03yZ4fxviFB0PX2V9K7pryHDlAndbDd9yBpTHTVM+eWMQ29HSiry1d\n2j+RKPvb2eYXM3Cb12fiuCzk0aGfkvudTjV0Sx887VEvnrvwjxUaSI5vcsMH\nxVFPsjqisI7vOJNWDxiuWLM4c47EuNprQojMeCXwRXvm7vMcUcC3vBjhq1rF\n1gLyuRfYh0JUPGOwMDqvj/aALD0nT0+c1X51cSpqJsEyOQcL+Bh7MtfEMP2f\ncLvT8E2yGeTTlq6BTNFGQ4EaEz3cyLJiv8uXQ25obqVj7BcoEdFqkrJ3bX/R\nZDWkr37JFamvEBGwQEAmHzT++HvGSH2I0ybV+0WymnExp0NWRKG9dTa6j8jM\nUHW6\r\n=N0nQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8fdc1f444b4540a876847c7c3fb4a934e75fee2c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.1","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.596e98424.0","@material/rtl":"8.0.0-canary.596e98424.0","@material/base":"8.0.0-canary.596e98424.0","@material/theme":"8.0.0-canary.596e98424.0","@material/animation":"8.0.0-canary.596e98424.0","@material/typography":"8.0.0-canary.596e98424.0","@material/feature-targeting":"8.0.0-canary.596e98424.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.596e98424.0_1603901032238_0.6181204208987803","host":"s3://npm-registry-packages"}},"8.0.0-canary.05d5facc2.0":{"name":"@material/floating-label","version":"8.0.0-canary.05d5facc2.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.05d5facc2.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6347d701f8290d395f04a7d9d3160f8609838e95","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.05d5facc2.0.tgz","fileCount":34,"integrity":"sha512-i0Gwe8gKxVuKNxYYkpPWTscmdfLKSKHZlQ3x1X9pZAs6JPTOYlQDrGjmIsh1/CLegzY27CVD5pFv2jVRvM/I1A==","signatures":[{"sig":"MEUCIQCAqa4Ur1bwrWeXPWEVtxfj3ekplSNRxl7lek9oirPmfAIgYXkMEyLaVQVareJsYy9Co5ZzxUSuImhNdsJnSq0YbfU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfmZhjCRA9TVsSAnZWagAAtFEP/1MEzRACPiOhrSGcnUek\nfeh0wvweRwOGRu1Lh5M31YEm0vLJk6eZxgIUZLF/ThOJRD9rw7Vk36pwbcFM\n6xYXXQ/O31QhkOo20EesESRc5ZdbLZt5EkcLe3O0xNJrGDSZXb3NKxPLTgjF\nC2IL0s9AaMpso/tbkOJ4srOFIYUXaHzHibaudCAsHTZUWyt2LfovLEbNyi/r\n06DbDkDxoQkWk6xKFe+mnLA4mEv81wklldlRtgPw48f4LHuNNl3ZhCYD9gJY\nMA+ciSwlJ7F/A+9jUNl3i975nkNq9OGZ77FRiiwobNgV7peby92+xj96aYgB\nTezBo+CHZgbRDcGsAul3RswSEt3cAqV1EhCzEy+gVS4sZN5tV16HHUYy3s11\nuK639rO8wQiwN3MlUq/+W3y9QFc44bBMSmmqh9KA5j/OCl1YdXIJ37hvQGeo\nsqgv29Vk8XcwQNoPesxrN8z4u3Ls5MI4ymsP4Jg1ywF2es5M+cm7POxhkQ3X\n4K4nTIKNT9lUUz+F9n5wkzpGC7/zeGP9pOgMuTbsrWI3BydgKcz97BfR5kpB\nIxd2cpFVpLRoisazmHq1O1Jnm0gko3nQu2i+iuWwobE5Wfo/sc38BLepUccK\njGTQARQ9+OZe1I4h0Cu8yDb6RzWD8ieiU4NBRIttGbZsDC/yIjrn8bnxEdZy\nYsWw\r\n=BVTu\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"db17092b19dabd6628edec5bf226f0b6a48e4f95","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.1","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.05d5facc2.0","@material/rtl":"8.0.0-canary.05d5facc2.0","@material/base":"8.0.0-canary.05d5facc2.0","@material/theme":"8.0.0-canary.05d5facc2.0","@material/animation":"8.0.0-canary.05d5facc2.0","@material/typography":"8.0.0-canary.05d5facc2.0","@material/feature-targeting":"8.0.0-canary.05d5facc2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.05d5facc2.0_1603901538699_0.404252785060186","host":"s3://npm-registry-packages"}},"8.0.0-canary.291b3553d.0":{"name":"@material/floating-label","version":"8.0.0-canary.291b3553d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.291b3553d.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"fdc97ac1a28b70352bff1874fbd46b3a1149cac3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.291b3553d.0.tgz","fileCount":34,"integrity":"sha512-u8wFHjWDiTRBa/qoe3+Gf+41UOYt59/xS90bYLF6VUUDMUhC5PUNXih6tLH25ZwBLtPAJpePD9QBaS7fqjVnsg==","signatures":[{"sig":"MEUCIBG1LFOK9hSf3WGO6SHxzGFoQSr/O9GBVRm71gTZuXprAiEA42h9Pnu8ktFexiq8rEPx9703fKrBrhN4U2Ims+UosMM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfma4rCRA9TVsSAnZWagAAxtMP/3qL1QecpyvVjMm7sY3m\nk9LhU+TGWrxC8tfJMjtMxbQTaDdHzs70FGX3RrLVIAW5DF7r19+Yu7VVJgCo\nRM3MCj6iV1ligzcHkeVzsa+NxOS2A57VXVdjDbS7yglUorYrbw4rks8n2g6M\n4Q78zJsAa6dFJPQ5YRCbC4OyJFeUOGbDP/hmXeMkLq/4YVDVPOT90lnUpo7e\nw9VTbnnyvPvW7evnQn/w+cJx+Dkj0i+nHT9qht53VkgH/zXru2dMNdW/+ebl\nUkP+IYpP4YbXKrYlMG6AqKkQYURSA9CHRjhHzJKWxm+j0NCkInAXluEB6i34\nnD+gMfqvzJGoYEGJ73r569nhYFboEQi2tQO7sD2QXxDyS+r5uxGc2d/PMruq\noXle1n+ieJ4gsv14HJoAZ9ho18KNUcCMAgW1I4L0UNsOvcHreqGrbLxMZmHf\nKBr0C2O4+SeAXV3m+W8ljB98syf/z6sIvo0OCOm8K0eb07lvvz3kMJv4iEXM\n0aoWXXrVWwhFxxVMX1qqdGUq8E8VxY2y31GtH/VMBRo+BZY90UY+XFm15nx9\nONxPX8OnKplSk7ZVdfYocOnHr6mQOFWKDymc0d42Pw2GgzhzbB8kQ+PrbTlH\nkHduAQXVHi/zLOj6xuOR1pcqhG3wBd5l2w0aQo+df1We85wR0GGqY+vyO7HU\neXiI\r\n=j6oo\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"bbd141e6c5168a84cdf50ef1302c9f705f0eb283","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.1","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.291b3553d.0","@material/rtl":"8.0.0-canary.291b3553d.0","@material/base":"8.0.0-canary.291b3553d.0","@material/theme":"8.0.0-canary.291b3553d.0","@material/animation":"8.0.0-canary.291b3553d.0","@material/typography":"8.0.0-canary.291b3553d.0","@material/feature-targeting":"8.0.0-canary.291b3553d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.291b3553d.0_1603907115068_0.19878163215926037","host":"s3://npm-registry-packages"}},"8.0.0-canary.dbc449b09.0":{"name":"@material/floating-label","version":"8.0.0-canary.dbc449b09.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.dbc449b09.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d110041aa1d2de533c62a7c070fe38fc013d60ee","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.dbc449b09.0.tgz","fileCount":34,"integrity":"sha512-Xcj0RtxECUaWJXU/8W9WXym0rsYL+RBid6cH7DIdOZaX7SA5JZptOvj84YblhEafAt6m6IiimTuQDMRXJ0tOsA==","signatures":[{"sig":"MEUCIBbCn25aAdwQiWaBxtB1uVn6E761jlpZR3B/IpWlHZY7AiEAvJo9w0zUoEc4gyDIQAsILuu7oiqkiMkDOq1yGvBu0jw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfmbS1CRA9TVsSAnZWagAAE/EP/jWc/DYYNOziWwVJwDpT\nt0WQUmKC6eBSP/JAzd9rUQuRnBw0EwnUyiy/kyZ9UfhVLj2H7yL9n5PmJ58H\nuhavytg3MKzwu2dFauMvvg4rS9uPAsz9iORlZd3S73+W6jcdxgULEHp43OOZ\nv8x8N1aHYEPTyYIc8mJtw4R8yx0/h2PBdwWTODS0JfdCGm22OyOF9jPLxn9P\nTQxMYCMphHCp0XlVovvqzMWJN/l0dOvIsol/S4rPJY5Kl+y7HP3T69R/uKnw\nORWy/FssOddDLgh3D5/ocAKJZNZS2tLF08ucr+xc4j6o5tYlMtVXEH0McRRY\nnsgErg6uqlal11MB4Z23qNEqJ5vUwJZ6Re7iq5mGvDwdtQDvegJ4z8D1gwWP\nLuqOh7raK4qt1i5vwPTHAYKlXESrMB2dAPZZVruiZtMyCyp59Oisxe4SsHvu\niW5iWBoui8VqjXw3YQp8t1DoT0PDsHKzCfyhJEHtgg46X/HuNSwf+yzczi38\nz99q3O7B5lIgSUSqzkikIQ1nDh+5Wwr30sCvOw3ocBcZDDr0rFxSeWsfuY91\n+6Lmc4eLLyJj5sAvoudP4NqLSt7uMe+14FOM0iZPZpyoPaX2sQHhJ8dnG4ck\n+Wc1OcE6K6hPW++VhVWhjXjQgL7oY3yCWO3mBy8E9JVnKLQNw6kcUgbgmbhi\nB/i1\r\n=KXPH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7888f3b13baccffea8b2b02ef5c25e264ae321e4","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.1","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.dbc449b09.0","@material/rtl":"8.0.0-canary.dbc449b09.0","@material/base":"8.0.0-canary.dbc449b09.0","@material/theme":"8.0.0-canary.dbc449b09.0","@material/animation":"8.0.0-canary.dbc449b09.0","@material/typography":"8.0.0-canary.dbc449b09.0","@material/feature-targeting":"8.0.0-canary.dbc449b09.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.dbc449b09.0_1603908788747_0.13092763163079413","host":"s3://npm-registry-packages"}},"8.0.0-canary.4794b25da.0":{"name":"@material/floating-label","version":"8.0.0-canary.4794b25da.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.4794b25da.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a88c0a7214a98aa735fd908fa14242f4cdf5db35","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.4794b25da.0.tgz","fileCount":34,"integrity":"sha512-DjoxZudP0R5aF9CpUH3DpVUy1C8PXqUxFxXMFa4wCtxO22Kosq2CAw+LEnjl8YyBaVyZqRK+GVRpmHQF3n3vCg==","signatures":[{"sig":"MEUCIG7/QgQBVmtOiJmacQ1dzsYCrjeU/f0NBna1cIpwDg5NAiEAmz9fe3CHneQ7FmS1lhV5aFThbE23S8VWpu8QDcVDXmw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfmbtWCRA9TVsSAnZWagAAfckP/2cYUZVvGGhht4wDcZf1\n5TkOTIVdt17yh4sxLly6gFEnis02H78ZgOe8qD2eDOaRVJO9/ffkXINnsWMY\nhq9YAKcmI9GTx1LQeTgHELf01qpdxVN1hkeCOIM0YCZAAuKkHHP9kBSPZxUI\n21fB9f0yTXj7ZhVudSwXo/AkmHf2U5T5g6oLf29NLo9IVhxEmtuJ8RRwaRGY\n+I3okGvTRmXoNvCdSNrN8yEEwH35ScMy0uUds+WFFSxshc/CI4ga5TxyQE/6\nAAZEJWY1zzV4r42e4GREPE3L4rI6fhhXUiUo7RLgu0WyjDdkNmkjhzBb0gER\n+Rh+3/iaNNBnbGhL0jGiB3E1fPJo6jcCmvun825hbqlSed6V8hX8Ek1VL0+I\nzSSdueJZKtzaRGyYX5bTLPnMJEHO5sQXwdciwAHy5Xdg7gyfTmzLxpJ7DKqe\n8S9Qk2iP7ZiCcAe3WOoHAk7i7TVNn7hT+iE/GC6RT32Do8IfKPNwMGDwgZtW\nnWWgRZEJLBfiqaVo4DjP9CwLOGEIgiK2LCRRBPVEzUDHIEhTtWAYu4zE2xII\nQLB/PoKb2uBpzQtxiMtzRbbLxWYl5c1MMf0X1FO+CON0ywUK5eeczUWue9ji\n2k8bsNaVTyWhIzUlUB9pnk+VE7emtoUtrpmfakvDJ3fzfqMqzYGj3eVGpxzy\n6XiA\r\n=AxSt\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"0c2eec6be7b76adae9376847043bcde093f59d3d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.1","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.4794b25da.0","@material/rtl":"8.0.0-canary.4794b25da.0","@material/base":"8.0.0-canary.4794b25da.0","@material/theme":"8.0.0-canary.4794b25da.0","@material/animation":"8.0.0-canary.4794b25da.0","@material/typography":"8.0.0-canary.4794b25da.0","@material/feature-targeting":"8.0.0-canary.4794b25da.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.4794b25da.0_1603910486204_0.4302522850601771","host":"s3://npm-registry-packages"}},"8.0.0-canary.c61db90a5.0":{"name":"@material/floating-label","version":"8.0.0-canary.c61db90a5.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.c61db90a5.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4e594aae5c0bfc1ca192e91643635dfcbfbd71e4","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.c61db90a5.0.tgz","fileCount":34,"integrity":"sha512-Yft0ZbwqtnLR356oX50zpEDgXojVULkmQ7Ic0KUoW4GvM8BuMYhXVkeKHr39zoGI7lxpmFEXyi1fddUVxbxkCQ==","signatures":[{"sig":"MEYCIQDwJFV+FqeAYvkKA79ZQ7uRTaW/Rveh668nmXArob+z1AIhAPsdCqvF9WJsoGDRpV5BX8hjHyUxZFRIapW5eFwO7A9W","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfmb+0CRA9TVsSAnZWagAAoxgQAIsLT33xRlbyCr+cz/g/\nWePswjuKBkqPVLIsMvWVN+4Hb8CUsRXi5tVgCAi8JbAH24kEFgNpSNtrXX9k\niV3gqcgMWfAvhUloSHqL3H7PN/rbKYKueZtIaFLL5oXjA9IQepS8v2l5MIvY\nVhJZgvD7TvIHBwG13ti4h/nDyY5qwRgX8cvoW+n1f7sX65C6NL6iHHCUrdbk\nRvv/59RAjMStiF01Ym5EiSlBVW3vlPDTlBMU34dhmiAnmTodkdMde48oWYZD\nOKJcIYHuQAGIongPyJ9Y1tDVwFX6WVUhckWVLvqxfiJ7RRotgupg1JcVFiTI\nZbdjq+4shxbiNZWRaj/yNKjC+866UBm927IMznwWqgvbr3qepUDj6b3c4XoT\n8cjHoZEn2e0yy1aMLhoRwvyyeUvD2y1KZKuLVp4N2PhwGaShEmK9BX91ZYdK\nwz86IIXrbmKT480H5Mp5jWha7uQ+qJgExchtQzR4kueB5MXXi/Nho3XocCvQ\n5fRSqWUucZZt1JgRmZMUjVplOlTQ4E1Czhwp7oAuhLi27JdGluL9plENm2Km\nfSbmcMMNMKTz6jbtF4oOOpvHVHKh0UtDY++MtzWhxlrgA+tBhD5LMzbEQV/6\nPbwpzoxJxOT2UxpF+bZWuJC0+7gVYEWPb0K617oTHGTE7m7QLY79spxCnx1h\nEJX8\r\n=o3cz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"695570eb7478c283510b9174ac7c4911866e0868","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.1","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.c61db90a5.0","@material/rtl":"8.0.0-canary.c61db90a5.0","@material/base":"8.0.0-canary.c61db90a5.0","@material/theme":"8.0.0-canary.c61db90a5.0","@material/animation":"8.0.0-canary.c61db90a5.0","@material/typography":"8.0.0-canary.c61db90a5.0","@material/feature-targeting":"8.0.0-canary.c61db90a5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.c61db90a5.0_1603911603491_0.3236172936207078","host":"s3://npm-registry-packages"}},"8.0.0-canary.6d9648ab2.0":{"name":"@material/floating-label","version":"8.0.0-canary.6d9648ab2.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.6d9648ab2.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f9f2a1425a35e00419b0eae4a4cbae4e07852583","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.6d9648ab2.0.tgz","fileCount":34,"integrity":"sha512-uHG4L7f0EUITM6St8JbT/+zl/eW+gSkE9ejQIvzjFLsL4cBNAApaeju9UZRp8ksoe9Rl92SYHfV58S4ckl/JCw==","signatures":[{"sig":"MEQCIFGy12mndB5dXigoZ6968SOdHkEYCItTa99BJtOK8j0cAiBFPeZZ/O3dycBxnSTRTWJyEwsXp44MYQSmqwVG9b7Jvg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfmybsCRA9TVsSAnZWagAAYqEP/iLpdgWcXZjC1e4dmmXx\nUAk5ofzzv3uJBiSX0uEnTKuqWG9x6SMFlD1HSGizdozq095ytTQhHGZO4znI\nlWqg7IICgezpg4/fDh+YJjELdpxWf0VcEwd1FLKdOhtNwz/La4FuhagPKYxI\nDtnc8mUw1QwKidabjHuyzYhSaAlWw6gjbV/37NGsjvjY4xUrg3M4BhRACQN6\na9vpUTjr/MPJKjTmlparWz0hHlkgwojq/+XmaOtovk02IZZeZod+foQpURHt\nUg33YwqeQPEH0SKo1cMNnMBXI40asEFE5Sceu6HIUiewH+bMJqDQ7JyMCi0e\nSxHSoeq9CJiCovtlvzhTAVlUN3iOwEPkH4cERmwOP49arYfl/vNHMbNmXrX1\nj5RvpobHcKViqUekDC3Dc9Ld0bwf8gpow1gi4beJf9h4Tth6m1bHaxItQCYp\nmymAQpkjG5ygnVU9d9D5vv7UgtD2iX3+0Hthl5DbL3Jfoniqo6C2I1tz+rrV\nTmK/ahkQxD3DRV6uZJW0/H4NQcO7h3uSFHEtdO99IayNZvPqXbCU9uoirQt9\nsu5itRehhOpmcfpJ6GE+GKTvvt39fGZb/WH4ZwCiZ725qA4mR3vnAafGRkF7\nfXs2jykZJDeCj5SIkJGqPdBihV7jBxivvuy6TIIkCynPUIEKgdbLo/RVgeM+\n15Xi\r\n=UWi9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5de6a39d4b70a98beb71cf8243a219f454b11aa3","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.1","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.6d9648ab2.0","@material/rtl":"8.0.0-canary.6d9648ab2.0","@material/base":"8.0.0-canary.6d9648ab2.0","@material/theme":"8.0.0-canary.6d9648ab2.0","@material/animation":"8.0.0-canary.6d9648ab2.0","@material/typography":"8.0.0-canary.6d9648ab2.0","@material/feature-targeting":"8.0.0-canary.6d9648ab2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.6d9648ab2.0_1604003564238_0.7825364505989278","host":"s3://npm-registry-packages"}},"8.0.0-canary.5511c5254.0":{"name":"@material/floating-label","version":"8.0.0-canary.5511c5254.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.5511c5254.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"28abad5006235a6a3da77aed6564cd394d9926dc","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.5511c5254.0.tgz","fileCount":34,"integrity":"sha512-8YfLyYlej8brtzfdEZEd0TvAoqnYULkMa8tixEmJUQ4DGHz80Px5IEj/v8wGiz/vUmo0jhL8t3VpWAaCkEGu7g==","signatures":[{"sig":"MEUCIQCZXJLwMyKg2o6dk6+UNN7EovPZSJo9f59lOppU2jg1xgIgERByIOq6VpabPw2g7NTjLAPAEOW55afSQOXFDyN33WA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfnFTCCRA9TVsSAnZWagAAbsoP/R9g3kojGESzq/qy8aur\nTK0a7z7H/Wd46kRLPWFDSKglxGzRQQSvsiOY2rrOSaH0Yq5VAvfeNoQqz0H6\nrr/ULVXb2f7Um/3IKrKeTAKQ/Runo5+yD3fL30DXYb03k1Jqpx7HUvf+6zQi\n/SJ2ZNQdR8gds/cSV64yWz21X+RSOZ4epmrEMelxxNci9Mt6riIW3Ex/p5GS\nueRn/8XLodaeEZ3J21wkbA+EohZsnihOOpEMtlRFkfaqe1NpKI4X+3cCJUfs\n0QPPxEl7V9faibSauRA0/sjSn1LAl6z/gBv1slDgBPUerovmrixkCRUJEXlR\nG6flrMOzQdfie7k3CY7ELOmIRiKjd3zvOsD8H6xS4rm4ShZ1fvMxoZTBeeJR\nLq0+siq0VASb+u6bi9LEtmWqYMSv5ax0kDcojcQqAn/T2weEYNolGpTLdo3e\nLXbckcKTziXN1he/I2eNoleBId2gTiQYmghm8CWPJ4ZZZZY8cjkQKSy64U6F\nwAtRD3Dhd8U+v7cE1zG22Ulyl1qzA2kbBFpBYLOTxXsP+dme6i5vtp9tfb2F\nWwCniIGdIA2e7xPEs6uQku+KG0W0khRuzanbovAvhmvhpO+LSfZ9RGI51bZn\nyEsdNmnFvnSdovC4cLHSeLEnablBUzBEys2C/XDak3snYDMNmO0hUerII53Q\nQmEI\r\n=Ieyq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e847a627e044cecc475be1f0140e17a4e2a68dbc","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.1","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.5511c5254.0","@material/rtl":"8.0.0-canary.5511c5254.0","@material/base":"8.0.0-canary.5511c5254.0","@material/theme":"8.0.0-canary.5511c5254.0","@material/animation":"8.0.0-canary.5511c5254.0","@material/typography":"8.0.0-canary.5511c5254.0","@material/feature-targeting":"8.0.0-canary.5511c5254.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.5511c5254.0_1604080833795_0.251731920669763","host":"s3://npm-registry-packages"}},"8.0.0-canary.bd6e302a4.0":{"name":"@material/floating-label","version":"8.0.0-canary.bd6e302a4.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0-canary.bd6e302a4.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"fd0d245a630e7319f6e988a40820600804a7244d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0-canary.bd6e302a4.0.tgz","fileCount":34,"integrity":"sha512-Qb/2pCI2MIWQWHhCES8VmFLF9O2zrrqg3Il9Ef4/0oUozhrELk+WwWY6Kd/nhFJQxbCTsaFSgD60YNkUPXqlRQ==","signatures":[{"sig":"MEQCIDW1uyE7KLJZmjxkON+9Uzy0gelzf+jO0ZZBakm8+sqvAiArOfZ//Qj1WDsut8dY9H5PMQg5Y+3OrSAhjF9w2wnsHA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfoDxDCRA9TVsSAnZWagAA9jIP/A6HZo+wnEv4ZbB69YW2\nI+Hz4YKcr2kEPpTD94zKCrLiZYDKks6QShINfW0/lHOuHEo3p1+xAqoSVkMJ\nOz4Dyis2YasYVG9lmoXPLQ7ETFXKb/kvUlQtcc65vOS531RpBBhT0b01VFOt\nzmfs8TmYBBHlQNtEWChqybe2YSK+ytM8pkaQCwwMufR4p4ubV7VfwKDY9ISH\nKikhk9xs21ZuBLm1Bbf9h6igYRa1v74dh/FtBx0rbFxaqz0vKFknliRX6X8e\nIcfBoYLaXiW27ESKAMXPPEigVGUwLfqUeoEIFzN4FfxT3mESolQTqTBMiIdH\np89g93py0LbJBTo3SNY46hjd8vtfJTIjWgye+JEi2mdUa0dVhwtGYHwe45tX\nyRK09deHHR+l2FrXgdxPpTmriaaGeWmn00BNNmW9EBCzzT9xbonGmF1vD6Z+\neU7HNEN6Ogsw+cKWsp0eyI1S+Gwc5cViUNmaJ9TqNoIZzFbis///D/XpXx6m\ndH3vk3p9wzh7aDzsZgqRUnmnOZxkPOyvi/swhN7VsHEjTFvo8fN06HUlzr0o\neQ/5Me2H8ZCpB+ih/WSkVN+nlrHvmGw9z/X06j9msrrAiUcI4VMkBam/U7y2\nrczGX2w5Ki903KLtLph/pOHHSnoCx2Sm7tkMUwIe9zw4mf7QH3ltDnI/CHXl\nBQqj\r\n=9kv+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b48f791b92804fe77eeba96f057b1baa89c48e3f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.1","dependencies":{"tslib":"^1.9.3","@material/dom":"8.0.0-canary.bd6e302a4.0","@material/rtl":"8.0.0-canary.bd6e302a4.0","@material/base":"8.0.0-canary.bd6e302a4.0","@material/theme":"8.0.0-canary.bd6e302a4.0","@material/animation":"8.0.0-canary.bd6e302a4.0","@material/typography":"8.0.0-canary.bd6e302a4.0","@material/feature-targeting":"8.0.0-canary.bd6e302a4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0-canary.bd6e302a4.0_1604336706551_0.32401613755616876","host":"s3://npm-registry-packages"}},"9.0.0-canary.d6b5cd418.0":{"name":"@material/floating-label","version":"9.0.0-canary.d6b5cd418.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.d6b5cd418.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9a5a37282b31a0a7db5bb4d594725383e7839343","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.d6b5cd418.0.tgz","fileCount":34,"integrity":"sha512-O/w785sVfYq5m5JDLN7/EWLrV5IcawOlb3hJW/8OHMbSsY6bhaRhY2beBtVinQb2e44Mzhz1ptLF/GMLww/vGw==","signatures":[{"sig":"MEQCIEIhfB+MUpOlsJxXNysd5jfn6Zpo+FdGti0myok5diQcAiBtSOlfphzKUGbdfxhFomZodSbjL9BoS/K+IHCKYTRWMw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfoI9LCRA9TVsSAnZWagAA5akP/RfqCPL+h1djwYeQCvh3\nbtriYlDe0JF6lixF5v+MdcWoj2U1iLMYw5I/UsTJ1CI8ZC/NQhpfrEJlaEGa\nUHGHJ7f8txogED8nBI6MpeWDbjkcYXAwuKe4e8ZvUUJiVlA86vmbHNTEltce\nVg/8dkQiR5V/4B2VLOftLp+9b+w+ZCKMULJVDuogsX4KztZ2E9/puJV13flc\nZqRSyO8kfNBkK2Z6iTsoil1XbvkM3vXwVsh+I+SNz8inFgWXDaBxdM2xlfDe\nkeCB2nYY+9/LePUFv7WZmdQkAssq5JmOYnoevWwmuXOXnYH7Z0Z+lltMW0jU\n0sWgoShsdmNLkzIe8U9kADsxKpk7T5RYtKQstduH6Iaxfam4MZ5cufl3PYG5\ntNrw8V5vWdXvN9gUUZr/e0/aABSwJICFrqjkDBsVNy/ijck7HnFV+x7falXn\nLT6Re+LTMOKcV89AYXcTDHJ3BY4MAtVOiShxgpgx9k6pNjrCW3sIxj72uh4M\nvq00ZO/ehQbJ5+VWP+n94ZJZ0N2UNh2s2DXm6h4FRCsOWrqzZmlkg14jaknM\nzjz1p7xyh5EGA/yRpbauaJzR3M0U2UsoUpSvkl6f1x9sR/fihkgvHnxM3Jgs\nYCxkEjQqqra5+p0aWvo0VdfDHvbj11fWx/lSjXsCcPynrqNUIl8z3tRXuZNk\nc/1I\r\n=RD5e\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"4fd5e4f9dda92417995fcc822b1d02016642b511","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.1","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.d6b5cd418.0","@material/rtl":"9.0.0-canary.d6b5cd418.0","@material/base":"9.0.0-canary.d6b5cd418.0","@material/theme":"9.0.0-canary.d6b5cd418.0","@material/animation":"9.0.0-canary.d6b5cd418.0","@material/typography":"9.0.0-canary.d6b5cd418.0","@material/feature-targeting":"9.0.0-canary.d6b5cd418.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.d6b5cd418.0_1604357962800_0.6215751105932972","host":"s3://npm-registry-packages"}},"8.0.0":{"name":"@material/floating-label","version":"8.0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@8.0.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c9e4b97dd7682c54784dfdb656de98782afdbb5f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-8.0.0.tgz","fileCount":33,"integrity":"sha512-k8owllI0eTS3jRGSSALytdX5rvUSbNzK5rxZkdx81hRJ95oEYBuKyTgSPhiLjjpY2igtjO2amzfENLsHO9ABuA==","signatures":[{"sig":"MEUCIQDcaf60uBXfamXMlQS8qJPDn1Nxjwd+OaEn608m4EkBywIgU5QgosgEsTsZUx5bCGZiaqq9vrpax7a2KVM2h49zYoA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220371,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfoI9jCRA9TVsSAnZWagAA9u4QAIh/IzY1RwZ3Soe2vre2\nLV2SK2n9WreMh/li4AdbnMvOUPavUOTC+2PFNxeLe5T8eORsaiRy3azlqwHA\n0tiwjopduUWKVbRQFGXFt2F27olI7l1N65JKJRgAHta/0uCJJka9VK+tQYnQ\n5phlXJdNx8iWSO5aB6HdGuZkTRWFNCfF4FuHA54JgbCdRWiYlA6L9vWnf7K0\nMCC5fQacaAikmm1LuVgcdEOMgjDD6ZKXqGR+PZqDIzFrsSXxQABlHDNyuNZ+\nTgQpQ1yYjXt71urBJw1LlKOVfxSHN6KdAzrxkDVrn4VSy/Ms2keSoHbN0ZLb\n0c3iFJCctLVR76n51hsmJuROZ7Q/7i1aaoX0dYYOjDIFdO3Wy3fKEdwivYxQ\ngZKVHZHLZYzeafnutXc7ip6zc7SKe++H+yX89eEveOa2EnApccg+C6vxAuTI\nVgYNz9D9ZhN8MCb8PUGEL3FfGEDtfdJ8WJ+BhDYC1vhmfqTNFVB/w4+mRxK7\n1aLVNSiL5hQfBoyLsshUOKnXAVPHouZoWd5VtdpVLL5UOAnZnYgXlEh8etzK\n5vHRKEzzuhltru7OjuMkMWwBoAwzUQo/0McCl/n9T6yDLYEoihtiDuM8BRDG\nCqobB6FDMG2DlUim5ufbwzOD+IJuSyqUAen6Aqp2B2dTVMCWEAAGJrbf1ZzC\nbOeb\r\n=pk+f\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","gitHead":"d6b5cd4181d0bf11b598b5ca142343fbc87976b9","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.1","dependencies":{"tslib":"^1.9.3","@material/dom":"^8.0.0","@material/rtl":"^8.0.0","@material/base":"^8.0.0","@material/theme":"^8.0.0","@material/animation":"^8.0.0","@material/typography":"^8.0.0","@material/feature-targeting":"^8.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/floating-label_8.0.0_1604357987291_0.9960689266724985","host":"s3://npm-registry-packages"}},"9.0.0-canary.fdf9a2634.0":{"name":"@material/floating-label","version":"9.0.0-canary.fdf9a2634.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.fdf9a2634.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"793948170ebb201a1731884f89e97dee7abdadea","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.fdf9a2634.0.tgz","fileCount":34,"integrity":"sha512-AXaq/cNP2+7Z//FmrW7o55+CLy8l2AzoOh8znKSxu3m8tlMEB4SGQ2dijV5RZF6K3vv/KK75eGBL/jVexbMiwQ==","signatures":[{"sig":"MEQCIAQZZnxMyUgtAOeWC962HhZj4VMF4egWYAFTaqFgZrVfAiAB1UI1xN0+VBtNIHh9/jiAsUmlLUgscP+0dLL+WXM1gQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfoeYICRA9TVsSAnZWagAACoMP/232dfvqqylDnYu4y4k9\nTkuEZLKU2Pwv5YxYjUnJQE/EzZqIRViGnzW3hcMz/vkUB+hFnNbXL55fht+A\nlG419RTIDCrJ+HBGZOn+2agixGZLOeSmSlQOCcb7V7eisMXIUJWeSJSMJzsn\nsFLK/MeBWT3r1KBgms116eUBG6emrBVel4nggtS65IoNZs4Ro52syFD3/K7m\npz6WLo2MHKB228CEhIJyChwhGt+8OSClpmavWnR8bvu13AvmTVTTLb4nrIqL\nH+LRPx0ZV3gIUIk4YG1KT5PHWL/j9Bw0iU4ZgcM3GqO//YcieRjYib27BgTc\nyG7QapiGi8iBCgHKfPRX55dt6vsJnnvdpMEThmIGmfNVAKxsAL5ERGOgZ/H8\nsUbfgJwM3h+sLH7aSbG3uLkqhSFrw7IK6diHuOT0Q3b2CcLzfzsTm22uYGs5\nRnPWnH3NEj6+lA1H0zqUTMClTBejRK4YVMqUxuGJmrPsdgwAYJ1iQJxY/n0E\nDjFKvIJWm1LTYwRO3YMzsfzwK2p+WP03PO8xZl5oXLL6tG5VbZvs7VBMFJY2\n2DgKbG/wVUuU7medRQqv0Z90eokd7z2GE452Vzjk3XEO7f5Q2Rz/DtT4/Md3\ndE+JOCYrwkDGa5xegj4i8eriJSkYfH+E3o4+tIDDku7qCjY3QA8Q+PKyrSOV\nN+w6\r\n=PT5x\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7d38b3b1a677a24d709697b68fb697f1367fb5d0","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.1","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.fdf9a2634.0","@material/rtl":"9.0.0-canary.fdf9a2634.0","@material/base":"9.0.0-canary.fdf9a2634.0","@material/theme":"9.0.0-canary.fdf9a2634.0","@material/animation":"9.0.0-canary.fdf9a2634.0","@material/typography":"9.0.0-canary.fdf9a2634.0","@material/feature-targeting":"9.0.0-canary.fdf9a2634.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.fdf9a2634.0_1604445703722_0.8131784110558868","host":"s3://npm-registry-packages"}},"9.0.0-canary.4a86f30a0.0":{"name":"@material/floating-label","version":"9.0.0-canary.4a86f30a0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.4a86f30a0.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1bdb09aacff209af44e94605d97dc166a7a192a4","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.4a86f30a0.0.tgz","fileCount":34,"integrity":"sha512-q149PbP1s7DvA6ABcGjXGyZTLUmfXanG9jr1/Sib6wURTFwoZR2gEB3irrNGDCP/vGdW6uidBafNANM05OW4hA==","signatures":[{"sig":"MEUCIBZnktlna5hNjqTobxsWdK6tfXr2v3opI0ocT6cMRuvgAiEAxnQ+fpI2VW+JQNQaPWLX3dUCFQAsRZkzLwmYJ4nlXjE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfoeeLCRA9TVsSAnZWagAAongQAJlMxguYMUDTqDE619b6\nCgZPEeUCVCBpUch5gQpZJ7B8nDMm++NSAQpjUExNmrjx4rJSvDXKlcAuiMyM\neqUXup9CxwUAa3EFxa1/t3k3pSrhR2a0iBEHuDK+QrGvlKljAQHUmLxp+ncN\ny4+mUvkRhC9JeTwRixOWAifJa3Z9zrt+qFse/aLZRbaghE8QNrk0etcXfpsh\nspCOmNqggOxgsn0A/4izebv3fP/uAXlnQFwPYdFPBEPwGaaT20x5I1B1/d2u\n1zr+KAHglOi2reWjiVwM7/v4pFMeVJ3vX7iLigCdDZGGouDo7tz52uMEvBXc\nVDBQX/djN78YYJpWnuqCBFNttVqGVrZyXxFSN4jwM0x0fgYVcmH0rguEfC0r\nSm3p3TA2PU+nbckQIQkyuI2w+U1SA5VZ2h0Ttd7B5Qe6GjjiIwVdEb8WAWEO\nHt+SZQi8hFn/4HlpN8I6xil77p2YA004tCA5vYLQv8eHMKr7gmnfJYbjY7lV\nVbxBPurYTspfoW3ULDhvWF2P525HEWK+lHKDCeAxnQB/j7/a5GzzaL9m6Dba\ndPfNm1SQXVB2F/n4e9kZFG/kGQiTbBYhv9RqKJzNe5bz5C6xsT/PDbkXkROi\nw+ll+H+WBYEE3TceyUjCH5u4ZWUKXfgQZf5LtSy4KuGCz/n98FqpKMoC/lya\nYB/1\r\n=k+uk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ae1cc15cda11f90ef629a1f536e69a9648db906a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.1","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.4a86f30a0.0","@material/rtl":"9.0.0-canary.4a86f30a0.0","@material/base":"9.0.0-canary.4a86f30a0.0","@material/theme":"9.0.0-canary.4a86f30a0.0","@material/animation":"9.0.0-canary.4a86f30a0.0","@material/typography":"9.0.0-canary.4a86f30a0.0","@material/feature-targeting":"9.0.0-canary.4a86f30a0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.4a86f30a0.0_1604446091360_0.002704532497525447","host":"s3://npm-registry-packages"}},"9.0.0-canary.fc8b045f1.0":{"name":"@material/floating-label","version":"9.0.0-canary.fc8b045f1.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.fc8b045f1.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"280d42666bd91f9a682aca20d7d45152917222bc","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.fc8b045f1.0.tgz","fileCount":34,"integrity":"sha512-GlrxCq9Bf045+/FZeiPgLjQkmxAOrGZTNnJywHqrFppU251YcVZb4JC6Ry0IdPOJnKBxkY3UHgxWBZtYzFafAw==","signatures":[{"sig":"MEUCID9Q7l78mzblwKNA9DOYu0rXF+lc+0R4tMWbuSH0YM7oAiEAjLjdigyUsMPGidKI7kQyRuuvHLpA+9LYgkLbPRlY8d0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfoem0CRA9TVsSAnZWagAAnKwP/25X4/ZBZ8cQIlDcGN9I\nOuk1Z2pi9dg864RZbcLTbyeCmaMSWTJJxhyiDepEDBCUInv3EvvSNKMNd2pR\n2AQb24gsN4dnQIF3BGnFkR2GTZkgmWYX0mY907ghId2ed2777OQoTC4bCckK\ngPmNxgHlwVZHmd2IQPv8omHtUypE825PbI4fwyRCyf+Xfut9kZB3DzAd+DNn\nX3XkGJBq6ai5d4eO2SsO4gMR84BkqwbrkXpFI++u3YDorc/9LV0eSyhxh+7h\nJ+WalPZENoWUJfV/xWvrq+bb+UR6FZ+jG9nSRWXMSRwG1CE3AHg387sWGRsW\nec3LerlNTwZLn96+9sHH073iAyVX/HxGIiq8GoGymPbUDXjggYBGkesXaIhe\nYPhn0wYL4YtdD0HwRFz6j5FqQW65ztnK61XB0JP1qpe9clmd613gIdsj0t/R\nX6VD6aDS5xf1hKAt7eEjYdg4GYUras8aXtRx2TFwP4tqi7V435jxxA87PqlA\nwpyiHSB1rW89+fGgZ3G88x5tJNdN14joy5EKm46tONUotH+3oTg1+3M180Gc\nSSD4l6Nql9JOjD6h/CErk0aAr4G5dG0tx/hFPlmT7hUuTR+4Q8SwAScmS7rK\nzWYq6ztZDiyNue47z1VwMhQibCRtLiHbAwymoG8UslTeHoz2YNcxU4DBA2Y3\nKJU8\r\n=P3Vc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7df7659dcee84f0af6a1e7d8617abb4056acceb2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.1","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.fc8b045f1.0","@material/rtl":"9.0.0-canary.fc8b045f1.0","@material/base":"9.0.0-canary.fc8b045f1.0","@material/theme":"9.0.0-canary.fc8b045f1.0","@material/animation":"9.0.0-canary.fc8b045f1.0","@material/typography":"9.0.0-canary.fc8b045f1.0","@material/feature-targeting":"9.0.0-canary.fc8b045f1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.fc8b045f1.0_1604446643292_0.8700920564919308","host":"s3://npm-registry-packages"}},"9.0.0-canary.a0b2db26b.0":{"name":"@material/floating-label","version":"9.0.0-canary.a0b2db26b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.a0b2db26b.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"105c013bdd9c7c54fe7beef84ce85aea1ed17b76","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.a0b2db26b.0.tgz","fileCount":34,"integrity":"sha512-fWaZO62oLPLg1zbBxCXNoGxPl8L67lkzFjHAlTmUvEgTwa0CAlP24dZzPXGDWVHD90EM6nHqAbVHnY1uTTqz2A==","signatures":[{"sig":"MEUCIGBM1m5UVJ2IQVD8NnI3xjsHk7YKlxAp34iqDl+uVmQyAiEAy75CIZEdQszchu02SUjBI8Uj8x1mIupCZLYTPwucPBE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfofEvCRA9TVsSAnZWagAApbgP/jdqHK87S1fINTN+OIE4\nqRh43yD0fnR5PiAsHzAVda4nG5w3v+vz8RgQ9Za9m54I+et/vYZbgc2n0dTj\ngr1D7tG1ty+78emIM+g5Wd8bMoWEBQX83z5S0YvQ8l6pgWVd9bIIGKP+jYT3\n+0cLaE0Ovl0VH+YbXqVQ4Ge0m61OBXf8oMra9JwYmIccQsr8bR2UsWuYM8wP\ng1ehxcDeFvVkL+h9h5PN2sa0RIgi8bz6z4afdmXttDZCuMcDgJvrAHbqXP6B\n2FM0Jf26AkLmX13CUHk9pmps9U/bYmol12B/oPboltlQkcO8QuyyI8cTphFZ\nOCk7OTeNbMK0zh7D7uYiFViDi9O77AjVlB90+o9Iyp+D/UN99IYMcEqLthhe\naay73DGiwaG3C0aQA21vU9FQKrMb22YlWrgCZ41DBz0FaDiurNOirRY/mndg\nS2VTPCFnkyLSQAat2qUvobpNsn9te28yB+PbzIWbkKDb8AE/CIRPvpUb8pqX\n2684EGJKf6J9PhfOxPO6T4/ntyGGcYerCFqu0L1UUV84noyz8PYRPM7qFqdu\nWdAfo76owNiutcQiHduXr/zpM7EubeTbJG0QEwVJx84AbH9Nlux3g9OaQFnu\n4xuG1uSjuqxCOLl5qDQko2KIo1lisXMONmRsqNBoNBVYP2vbLgWfZhRCHvKz\nM4in\r\n=EMeW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"885abc8ece3b0c3cab58996fab25be733f65b5c2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.1","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.a0b2db26b.0","@material/rtl":"9.0.0-canary.a0b2db26b.0","@material/base":"9.0.0-canary.a0b2db26b.0","@material/theme":"9.0.0-canary.a0b2db26b.0","@material/animation":"9.0.0-canary.a0b2db26b.0","@material/typography":"9.0.0-canary.a0b2db26b.0","@material/feature-targeting":"9.0.0-canary.a0b2db26b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.a0b2db26b.0_1604448558846_0.2699929387794171","host":"s3://npm-registry-packages"}},"9.0.0-canary.419e03572.0":{"name":"@material/floating-label","version":"9.0.0-canary.419e03572.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.419e03572.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"fc8853fd20a55e0c56d65171edcc40fad9ad6bea","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.419e03572.0.tgz","fileCount":34,"integrity":"sha512-skJ27UEbi7j3lsnIyvLdUXdwEWWspJ923S6b8aN9ZtZithKgon1JCfvEK8ab/eSuS7a7aUNwyWQriy+4+H6uMA==","signatures":[{"sig":"MEQCIC0qed965tHHA2mWUzrUFb5rp33gKmuw48+QMsH3cktJAiBBnb7nBYAk/VA/EGfRVqm707fJ8AaE69r4kjoTvK9+PQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfogTcCRA9TVsSAnZWagAAvqYP/iEXbksGU5R7muplOyRE\nJXmHA7aFmRazwlEsNL8p1JnReh4dp/IP6mTeB42dx62+yo6R6f99+kPr6ykw\nCDWUTN+vvn1Uia6k5nUUl8RGqJxav7Is6wK8WTmMrHboStvENil9uzBqvmhk\nLt40335qbfB/9w9NLmdGVOM+90b/KqrJYlyzpdWB4ZiJEbdhAjy2C/nUQeFX\n3uNxOZejpylxXj+64pcgKtgoBKAn0Zlp5JONe2N8D80Cjyrcj7/NB46IeBdH\nVlthAUTZpbZQ3+NQL1CMH0MLc/f/vaFRHAhOp95ovUthjsj0yZFE11yHYjkj\nag55rZSOiG+HuwOOhyqwFqqeRui3jL4piCY4ow/2n8HqSMq3TcsA1rXtpFJR\ngF6xdqUbZvtUHYNC0CM/RojptGX+nXN4P2Nsm99F7JL6TpLTboYYnzvPJvat\n32uzOMV89RH5btm5SqMC/ePT5F3ROllI14UNk7wDGPL5sJiQXoOKoyy+9end\nFnknP0A8GyRYyqvTbzzkmTH5NgsV4kDvtYGN4iV5u462lFiup8jT7zVWi2xz\nk6eJ92BhEfu1enuJd/qMtGxqfU60qUMfcD8OGMuseqEGflCiViw9VQ3sZo1H\nNjEgNDj6rNzECX+FoApIiRW6xRumrzr33cXYdh+iKUw0ZMaffWLRbXsbZBK8\nExZd\r\n=kjQg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c9528e0a61f88c4fa2a5bcc6a5e406ccf027d7d4","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.22.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.22.1","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.419e03572.0","@material/rtl":"9.0.0-canary.419e03572.0","@material/base":"9.0.0-canary.419e03572.0","@material/theme":"9.0.0-canary.419e03572.0","@material/animation":"9.0.0-canary.419e03572.0","@material/typography":"9.0.0-canary.419e03572.0","@material/feature-targeting":"9.0.0-canary.419e03572.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.419e03572.0_1604453596191_0.7830884223607828","host":"s3://npm-registry-packages"}},"9.0.0-canary.a432ad542.0":{"name":"@material/floating-label","version":"9.0.0-canary.a432ad542.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.a432ad542.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"890792aee553fa73ea8bacb48d958cdf441e2032","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.a432ad542.0.tgz","fileCount":34,"integrity":"sha512-Pw/rAj5qbJxyM3mCoyYs9Tnj71uX8Bv+URPUMkOJMB3RWIoi3HhMRuy+bujOAJOaqaWimxtc1tf2N1cRMw7iCA==","signatures":[{"sig":"MEUCIHYao0cMy2U+ycq16Ejhg2iMuZABLwIGopXtkkodFto9AiEAqIsGJhLMiYDH8JW15u9vbx6dxcEoCWPuloqi+NaCQi4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfpKrgCRA9TVsSAnZWagAABwwQAInngbowLCw3cQKsQv4Z\nXtr0+b1FVpxVnfOpC8tm3Z84tyQZh60qEzG49fiGaZwnCTPnyhG/MVBOEPUI\nRrhu6obuJu3v88pxe/4pnkkdSCtZ5wHzZVCfOVrrxZ/YJFe86WD3dyvJpT2H\nSgJaQketKe+J1DLEkDWStbgsC7Qe6TbtGCcd9QlGnRTPJM225tDXmmwX5lo9\nBBHqkLjAMFKLw9w2+u4JsgO53cvw1MXwplirWReryfRegobZ1Eoo4vbYd2l+\nZf0cFj0we61YNZD7i6f9McnDlRs8IdyWPK+qDu9GK4UG0/n8gQWjZCVJSl+x\n0PxA5JnKWWl6x0XKIbvzNoxMoLT9wh3LuT/5pyZoMXYa9KiPpHNFiU6RlVql\naLjk2h1v/Ccp1u1dMsyAQwpBNsmV4VPC7rQNb1I8tm8dBx3ejHTl6704EVwc\n3ziKose/7VIpRIUkSqFfmW0y7FORoy1c3MkqUmHvQZcD4R6cieZ1ld95NBFd\nZfnOh8vjS0k8u26DZyVGG2RF6LBK7cfAtUim2rNc8tzHSQhTqxDZhvY/sIxy\nEMHxyVEe+QFTAdsf/bxhoGmOFZEmh0tGQIRdRlIfGoXfOYWaOQTgYcOS40Fp\nzC9/Yic/4eGLOS1l4l5nn+7HZhIrIY3wFPl4SnoaHjdbgqKgtZRW3whrGooR\nqtcx\r\n=mi3H\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b873a7878b871d2ced45e7f04055b3d4ef0c7af1","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.a432ad542.0","@material/rtl":"9.0.0-canary.a432ad542.0","@material/base":"9.0.0-canary.a432ad542.0","@material/theme":"9.0.0-canary.a432ad542.0","@material/animation":"9.0.0-canary.a432ad542.0","@material/typography":"9.0.0-canary.a432ad542.0","@material/feature-targeting":"9.0.0-canary.a432ad542.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.a432ad542.0_1604627167529_0.33303003552835375","host":"s3://npm-registry-packages"}},"9.0.0-canary.e2e8aef1e.0":{"name":"@material/floating-label","version":"9.0.0-canary.e2e8aef1e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.e2e8aef1e.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6cc77313788c320dfa9335b3594311d4a67787ab","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.e2e8aef1e.0.tgz","fileCount":34,"integrity":"sha512-wTC6f/30nXpgC0kPFYzee4f+zr8YDRbybC7hpbnaLG4WQV8bCI7ov6zfYN+h54qJJ8iRO+FN5AUbw+9UBcVKZQ==","signatures":[{"sig":"MEUCIF/oJhgXrgad/q/fDviYLHA+7X2kKR4wv6P0PH6b2sgoAiEAlVpzcINJkZxB8XfCQakxU34yFJgFC/gu+f2Rud4wJvw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfpK9tCRA9TVsSAnZWagAAVs0P/30Bwkrr5ZDNEDYNzq56\nQ/AQa9DS5OhIb6IRbsNa+mDBZ2HHCF5OV8b6KXhdWM5RnZvZK80Z49yInm8S\nAQgSznS1QY5UwtRx8Ij//FoIOwNB7CIoUq/nnAy7EiVQhZ6VOCLKhdKcZ2Vv\nZt3taSbqW4Iz7+ExfbALtDBSPxbsngLdQ+1JJYnHABwb3VxCo8JaAD9sC9HQ\nes0brYSH5eKo7kPucE2QkAV95tLlKgeRjTDMu+kS9beXI0aOqYkQ9aKaP51e\njoV78nq4Me9tEVXzqWwX1kj0siSKxLNQgSC0G7psk0h4A53u6BJr+GVd9VVK\nNvSSam8+0nTwz04izU7o6u3m67v5Rzd/9EZqFjpWudqOsXZPJ7xQLuNIIHlv\nQaNyxhGd+hiV6O0Zq/IB6R3DKjf8eePeoD5PZphVBeK6E7DkmRsvCE3hveFV\nIcPVxWiXe0lNEv8dbSyiAa5EoEMdI7XPtnoVfgb1rU6CHcBkjZXF6IPjh8vJ\nThWhhj8qMArmLeERPgZ2APDDblku/Z21qtfJcrT2XtEl4M7qH9jr0M1GBHAg\n7PzdbYkk1bL13QAZjBgmPQx0JZomk94J+IwN4D1chgI9c0RxK6hVApDxV9+b\nomdXdqpYD7l8jLGQ9w2aZru/uFY4BMur0rdRY6gIt0HfWUo/+6XapensQNZg\nXCTU\r\n=+MSU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"59b208be2f946b47ab6905d82c0135e81316f2a3","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.e2e8aef1e.0","@material/rtl":"9.0.0-canary.e2e8aef1e.0","@material/base":"9.0.0-canary.e2e8aef1e.0","@material/theme":"9.0.0-canary.e2e8aef1e.0","@material/animation":"9.0.0-canary.e2e8aef1e.0","@material/typography":"9.0.0-canary.e2e8aef1e.0","@material/feature-targeting":"9.0.0-canary.e2e8aef1e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.e2e8aef1e.0_1604628333290_0.9521338716772891","host":"s3://npm-registry-packages"}},"9.0.0-canary.ec6b68b34.0":{"name":"@material/floating-label","version":"9.0.0-canary.ec6b68b34.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.ec6b68b34.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c18135c28d3ae2853a634db4e8f1b99c0873476c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.ec6b68b34.0.tgz","fileCount":34,"integrity":"sha512-D/fbx43ysBc8GJSnVSY/7YIRA8b5mg4A23uk16DLmPokoJXSQEQckHeDLCo1+rm0M/+/7ssPW3X9GooQhsd7zQ==","signatures":[{"sig":"MEQCIBWo3do8hDWkmN+SbsK/fQE7LkrUg4j/6gXL5yFlpFg5AiAOAuYkeHyHy2uzJtWGt1FWgqshwtVfmwcP/YdFmbepcw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfpZxvCRA9TVsSAnZWagAAhNQP/2ePjF8Iwozco/EQgUlP\ngVZ5SSqvWUVPET8mfuB8YIVZ2ppQAlobuhQw+SOmu+HekHkPFGYMsTatD5H0\n/1+1fCagqk8qoExXra3BNZ28svKnLYdM6K8+sjmzUIewMe1TobFlRdU05AZy\nh2VGjDwO8s8rgAneCthTxRugXHFHgH3/cSQLzAoUqnA3XDyMp3de+ceHcry7\nn4871Nyle4zZ9SZbQLMJ3CW+aIr1jbCGo0h7Uft9KdD6CJuiBck9zPxE8lWh\ngqxdp/7X97ry5pec0ujJPNuIC8ky0NFcPeMjzlBS4sR20yHFV0EtIvvxJXkp\nvdUr2rJeeSUV8zUPuVOsBHJlCwi/RDDx/uXqWDLGmG83bGiLvmQEMdLV0wY1\nc8Z2jwJNHSFIzzT8JBocrja13Na0y/O6tHggW0nH/xNRl11e1B8KXbqYxZS9\n25Yaqif2LCzxclngO3IOWjLt59rTVbHBWqHvIx2BTxYSJxA39yyOzLevYdlA\nPmFlqjvQiuuLOvijUMHuRvLPdv9XCylR3cYZtV915voIz6O+/S151cWG+9fJ\nOJCe9F3Wz7M4qrIpfh18XcDoup56LAasbivUz5GSmQPD8jIwKjXHPdQIPpaM\nACdGtzGCMP3RjdzvT6+G+Bn9U1s+cvWBUogotu+/z5nFhasQPjphJCrrdOj6\nIbrG\r\n=wtOX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a5005840630991931dd5d6aed79aa4986773a5a4","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.ec6b68b34.0","@material/rtl":"9.0.0-canary.ec6b68b34.0","@material/base":"9.0.0-canary.ec6b68b34.0","@material/theme":"9.0.0-canary.ec6b68b34.0","@material/animation":"9.0.0-canary.ec6b68b34.0","@material/typography":"9.0.0-canary.ec6b68b34.0","@material/feature-targeting":"9.0.0-canary.ec6b68b34.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.ec6b68b34.0_1604689006381_0.6714367816495168","host":"s3://npm-registry-packages"}},"9.0.0-canary.b39094d14.0":{"name":"@material/floating-label","version":"9.0.0-canary.b39094d14.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.b39094d14.0","maintainers":[{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@google.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"626ae8b3a0d10aa4d90e7c912b88c390b7ac305b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.b39094d14.0.tgz","fileCount":34,"integrity":"sha512-Y8WUsRxKtmQW66cRY7gvIOF2EE4fLNhzqxxmG7xSi0GUH+nX/yoSSzkgXsNz6fVM82i+wEQ2Vn5Z5E4uAeUTow==","signatures":[{"sig":"MEYCIQC04MeBNweQofLCmCsPfv39YXBAARaoF50DrUgrlgt1cwIhAOHLikZrPP9qWycosSDv19bAdjD0zESLFwxk6hVMnAF7","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfpb0jCRA9TVsSAnZWagAArjQP/1SxK3fFu7K8ogCK3Lss\nan8kYJGplFKmRt50ilnDhN6TGo2iHZiLzwW85ZLdIV+wsFtjAGwRGOd6f0Py\nfQG+v1nDPGnAsZLb+L0BUL4KZCSef6BPn54Akd8hMGL6+Gs7opQtNe2tnGIh\nL692MdGl3216cag0fFuhZar4RT1Hv+d6SEUn3QSl43T8KrSxurFRB41DpMNj\nLy4bov6Eky7qtSb4gP2m0T0gILQpgUflq8cb+Bd4gmDI2LzKauCKgqz6OcYV\nv49RnBeqOTFp+z4WrvFy9j3m4Y+xPfHxrO9XA/sB3EEuCJQaZX4Y6DKlu66y\nEPt6lF8KeJw44m7Cw59OrPqHE0A+Z4xZN5M4h+okzwm45e1gN0QH7W7Yhtth\nJdCKODl42686PZX/Q9/CJjFxeuSekheekXZ7zs1Z38OKlNoooH52CJW2t18h\n8V5l/np7mfO5F62ky1DaRzhiNP2s8Mjq+rpy6qQ9+SGjZJqW7yeLgz5o01fp\nRd2ZecsMNYhjxlDtuWURBTN6XWxzZ9MZWAwzDnn785qgk11BGnKWq5WTRewc\noLntTfxzaM7XyhLpOpWhj9pTbaTPILfh8HciC28C9d4JXujs/0fFlMIpn/B4\nGgV1YTIRJlArNiz+voghciijgpf7hpJnQn0nSYu3n12edvSHAhH+Y0rez2Hr\nRdCb\r\n=u2SR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f8c5ef7d8cee2d0a63421ee4afe42e4e9260cd47","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.b39094d14.0","@material/rtl":"9.0.0-canary.b39094d14.0","@material/base":"9.0.0-canary.b39094d14.0","@material/theme":"9.0.0-canary.b39094d14.0","@material/animation":"9.0.0-canary.b39094d14.0","@material/typography":"9.0.0-canary.b39094d14.0","@material/feature-targeting":"9.0.0-canary.b39094d14.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.b39094d14.0_1604697379372_0.24106229661028267","host":"s3://npm-registry-packages"}},"9.0.0-canary.8648b8258.0":{"name":"@material/floating-label","version":"9.0.0-canary.8648b8258.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.8648b8258.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a14d6619b318e68de1b0c332538b64d625d65934","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.8648b8258.0.tgz","fileCount":34,"integrity":"sha512-X0cHi7J+xpmXZg/hfvzp09zQx44as1vp3ZR5wIa4biFIPRJxA5IuMUs8GMO5vez8B93lQy51GzwS0Duqa70qAQ==","signatures":[{"sig":"MEUCIEZxWLoM7Zrl/FI+n1VvqO8/1pdoFgq/xpw/1ba9SRPsAiEA5/CdTGAPCNNpC8enxSHPr275oY81kr0s/46kqPSq4j4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfrRIjCRA9TVsSAnZWagAArp8P/j2FpL1deLpuRXeUdKwH\n26LwvwgGX6qgfXCS1yPVcnmv1+D0bzFPHy8RcgAoaYIi5Zn4yX+U3ukPb68J\ncXh8Qyetea0M9cQzWK9J56+aGShA0q7cWHpRQOKZUrm473vHUbllI0Pavz7n\nYr4aGvQ2JCVwoMyKIJGUcS/qhNHX+/njuYvOyrcEnfpk7iF6EM79rMXg9nte\n5WgSBMtJLJ0+hML0y/TQOabWvScjuSAdTm/qqQUBNxQ3S/ym88h0HDTk0Lo0\nHG8mAkDJrohPT+n+siKUDvUk2gARqMr08z+1U2EAHyy2utQb0K3NQkbC5jtu\nPfvNMu88xspqaRSyMS7vbnGAydQXsvvIbLN4V7BKDUPHzebc1+KoN6aJKCQN\nLfhIsPc6kA9IrO8/wY+gxwWVdtnM/GZkddJESUuiyagnHVxbnd5a1JHz4yZC\n2t11/DFai53+sM8R/MUzCP9JrwOT0E5Oijm4OJvqblQSw+i7eg7p2XWPv5D4\n9ePCJ9M9QeIQz9r/3eKpYLsHLOXzwqxe2ArdXYTUy8W8YH8mCuMNe1mX+frN\nHjouLgPFdJYEqGfJbqkBM5C+6MbdWIB6cCqXKO7EyMWIoCP1P1HhSva4rV+x\n1TB7GWeIRDCE4OrAJHYhcQioMhX8pNaqXjZsx+Myyf+WJFUvgAp8Gz3GCSqG\ngT69\r\n=yD4O\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d98de60dd3d91dc14a84abb664678188ae936030","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.8648b8258.0","@material/rtl":"9.0.0-canary.8648b8258.0","@material/base":"9.0.0-canary.8648b8258.0","@material/theme":"9.0.0-canary.8648b8258.0","@material/animation":"9.0.0-canary.8648b8258.0","@material/typography":"9.0.0-canary.8648b8258.0","@material/feature-targeting":"9.0.0-canary.8648b8258.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.8648b8258.0_1605177890630_0.7663423196861514","host":"s3://npm-registry-packages"}},"9.0.0-canary.240c5f74f.0":{"name":"@material/floating-label","version":"9.0.0-canary.240c5f74f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.240c5f74f.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"eb44b2d2b05f89ef19af9708b14042bc7018c758","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.240c5f74f.0.tgz","fileCount":34,"integrity":"sha512-LOCLZVLBw8Y8YUebIl0gvjZF2lfRvvNuku9t8EizDUzvN/vk1hnpIfz/mkNJfVLG7HpoQ85Z00aIbpOn9n+I3g==","signatures":[{"sig":"MEUCIQDyU+gUjStq/rSLk9NHgnCKWGUy5M/DTf/t+rvvnVJViwIgfCejD/FHbAOTlfrPEZwfJMIf4kYN0pjJayBXOhGMI0U=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfrZklCRA9TVsSAnZWagAAx0UP/A5F+OBVJMYN35XccvPy\ndK+uwx/7Q5zZx3MElUuFnBUS4fFXXHKjPE2WzE2fk21smSFDIfPlhtv368Jf\n2HtBlZBU4t8+U6c/65EyFSEiwkzcZPI6JT4HA+HbCgwcdIEfuCbZPJ8x3Za2\nobOSjPKaqi9jLb0UMRMdAtHqNYMKNgyMJggTr1890QVNPfI15fmtIl/s+BNN\nTCfRFMPuRmxy8+C9t5un6WnPzlficQJhfYFM7u8ztCpn53e+W6ORXH64tffI\nQmh795DzGFC4KHs+1fdpDLmSPnEC28pLmRvilVVDezL7q6qnEgMbtJKcvQKn\n1BQArwqYvS5sudbzb+3QITDArhOjBP7sUP3IeQ1+2DTetezSkdI3W6HeJC84\nLp3JR5dZ17KyUGEts3IKFq2TeDB/TP+DZdUc0ehIdhSdKQg/rPSEip07UIUh\nj9h+qC+7eMXD5bfntUFdwPdePNTFjz0zlMUM8HJFY3o0iBkMWMiXOzTjj0yI\nS6bPJJgRGGCtGmOcWvqKSpGT/nGUf1RaAanBwAFNgEkV5LcZ3zJUZ23CFJm7\nZSWgt4fka4tWkSsmtMddIEfAoFEY3vK0eR1JOA2k93tht4CpDzY/r8JE/NtN\nFx8cRPsJctIcP+F1NuwQBgJQcMBghZrekHaszc4QnD3ekoB0Dj33ytMKhCfQ\n6j93\r\n=n9pY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"33b77622681b24909d892ec906f608e75f5e9809","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.240c5f74f.0","@material/rtl":"9.0.0-canary.240c5f74f.0","@material/base":"9.0.0-canary.240c5f74f.0","@material/theme":"9.0.0-canary.240c5f74f.0","@material/animation":"9.0.0-canary.240c5f74f.0","@material/typography":"9.0.0-canary.240c5f74f.0","@material/feature-targeting":"9.0.0-canary.240c5f74f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.240c5f74f.0_1605212452987_0.26466715407459795","host":"s3://npm-registry-packages"}},"9.0.0-canary.6cf6ba4f4.0":{"name":"@material/floating-label","version":"9.0.0-canary.6cf6ba4f4.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.6cf6ba4f4.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"bbd44093fe316e97cf1d5035043cb9a3d2ec6449","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.6cf6ba4f4.0.tgz","fileCount":34,"integrity":"sha512-TTCoqcAx7oDOkSKqtolwbS9JDvs3y9kX+Trm6Ot7sZjbxJ0ZLiAtg42Djjlhh3teD4n1mBcdmmf+CtZtxgtXyQ==","signatures":[{"sig":"MEQCIHdqT1JQmDDPnXHDVLO1mhiTNf1ULXrIi+UzSWl3ZtZsAiAGppwXQr9s2lfNacvARRuIAaKqP7oWLKJ0CBGphgGeoQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfssnlCRA9TVsSAnZWagAARyMP/22KSE2X8a/2FzBdpfsn\npwHb092d7sx/vmPlHGnVBMmmUmqtAYQBxt4jph39Vv54CjcHQ6jtLFTVAbHI\neYLheUtzJCkviGMVrIkoSpWwcmdmm7OZkuFdA1LjNIO0jJ95nHqHSR3CFd0+\nyWBDeCM7h/qzlcYiXALneUofqjPG5lI7kRsFq3WnnnKtMib6MIlpIWc5jYJV\nLJn/4cROCQFMGg3epUacgS9gobYbTmkmVRfX15l4WSUIgYBj8YIQ5S2+tJOg\nKIBBL7ovYC9vmJFRzZf8+cF8y41pH/UsHHnRa5WHjLkSS5XkK+oCSAyDSpZx\nuvsENFYS/3YNNGo4mgK4yTGULEpZ3O7ohPFMoSL0y78N4zjDkKLE9OJqkXG6\nxQhg178dpfiSj2gWY2MZPIU9SHnK9OQ0FzO8ySrbepx3TdZe1qyYsXo6+y4Y\nhYPg37YiBEtbH+GxIqUxdlanHu+pIm7PLXeWjAN9PT5AZ/mCR5rvwMijNp5X\nj93XGWdq0majnxRTjCbWMrHApZoKyRf+oKoowOV753KxGtp2gy8Iuz47QVi7\nRSOvvch+mb46zDFdi7vOqM8VL5r+nojMukc4/L0xOVvxa9USa5vq6bn+TQ3P\n0gd6dMaEmWAkUeWFvl0EjV4R1Zc323UoC84LBhi1zfMUgAtlm30Zlp4vyQCu\nRCpx\r\n=RlaL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d2d4890ac5812ec797b5f621137f4e8a077c3c0c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.6cf6ba4f4.0","@material/rtl":"9.0.0-canary.6cf6ba4f4.0","@material/base":"9.0.0-canary.6cf6ba4f4.0","@material/theme":"9.0.0-canary.6cf6ba4f4.0","@material/animation":"9.0.0-canary.6cf6ba4f4.0","@material/typography":"9.0.0-canary.6cf6ba4f4.0","@material/feature-targeting":"9.0.0-canary.6cf6ba4f4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.6cf6ba4f4.0_1605552612822_0.7536855383861416","host":"s3://npm-registry-packages"}},"9.0.0-canary.07f3e01b7.0":{"name":"@material/floating-label","version":"9.0.0-canary.07f3e01b7.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.07f3e01b7.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"bd42ca7c2fb1468ea51518177d6be630f7967921","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.07f3e01b7.0.tgz","fileCount":34,"integrity":"sha512-l5Xtas2zhN/8UncqSCaU0cOA+e4G2+uU5fpZStL/VZsJs6R51S9ierjt5Bd/rtSVMs3eJFsk6SP6WE4wIVYWtg==","signatures":[{"sig":"MEYCIQDKFd2FZXbxah02YgiWwl1vtDnRuIpjAty4QtGyOI71CgIhAOl8UcnwxaCRLYZ3yN6zUmoSMjnV7KS7Sh6jFe6v7Ctt","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfsvMaCRA9TVsSAnZWagAAjYIP/AgvMIZZ1pfZvkDJDPzg\n+YN2v0O9hEjfAtOEMOAci3ATeeOSVhpyUlMPYxBkrp/v90H7DdcDGYtC/8Fs\n1CWbOaKeD7WYR/tDQgrrKgYnZ6mxqNOPfFSwvjzAW7rOUQ1NkIOWNy0xkfPy\nYK0zYlMe7RZKUCmSZVK1ZyeYIxpRov5bKW8PjKUCxEMgPlhvbWA4l2PO5TvS\nOfrH06/jryrNJBYTSCruz8SVDy1wBGG5RqLrC9e654umEnXfI8ZY5V7/ldF3\nFXh5NSW0R7alkg8gprDmr9761Goq30nrmytNQX/HTvKLrzr3pSClf09QJWUd\nuwH6uQbwQztBQqC7czch22mb2UORpW51Lutik9TFV0YT97rYfXW7UlssSynQ\nEcm2P+s6s+AexKXvoEGA6w1tLJ85E9e1sRVOPcWKtkAeX3p+Qh26pFJpuUeo\n+2DpzunvrwQRAERSW6WdfDFUn3FuD12Ew04n8DNnsZxKPWufvg1m634RMlPh\nt30WeVHbMCRv9iSCDiXCrSdBxAi2ZUJqUl0iDaSxO9iSs8UarjsXvNly4vyM\nrD6VHo/xqkLWYfDYqErnokNSKBG5/mrNaU7LC2zEoEsqofqpT6BWo2wIlXpJ\nz6jytZll855NKnf/5YoezvzSoE9Q4jKMRS/33c0kvDESVpnOKv0pxGSNRFnK\nUNxt\r\n=jrM7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"39f1e043d0db0c6881d84b3d7b54423f64cc8c0b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.07f3e01b7.0","@material/rtl":"9.0.0-canary.07f3e01b7.0","@material/base":"9.0.0-canary.07f3e01b7.0","@material/theme":"9.0.0-canary.07f3e01b7.0","@material/animation":"9.0.0-canary.07f3e01b7.0","@material/typography":"9.0.0-canary.07f3e01b7.0","@material/feature-targeting":"9.0.0-canary.07f3e01b7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.07f3e01b7.0_1605563161933_0.5911597261419355","host":"s3://npm-registry-packages"}},"9.0.0-canary.23491cf85.0":{"name":"@material/floating-label","version":"9.0.0-canary.23491cf85.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.23491cf85.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"929be34754b9feba80fc350e7d7a39e9f6e437fd","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.23491cf85.0.tgz","fileCount":34,"integrity":"sha512-aXADxZUv1jmS2FBIkaMYpcdujPRjecuoIuv9xIRcyoi1CQ2CzdmBdVz96d/A/QAEMc9rTAAYVs/Jrz61LCNCQg==","signatures":[{"sig":"MEQCICFwsd7Ja4k7Zz6OGeIfmSOyosIUveyyX/NWoqorG/+7AiAcb8nJB5kt6K+s5zQKzzcdbm4j35SE7sKeMe5BQ99ZWA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfsxaaCRA9TVsSAnZWagAAFvQP+QENVvAg0lx0WeY/7tTZ\ns+4I0gVL2vBb0Yn1Yc/zSpNGFB9aDWFLm6mTQ9m4DAyOAgzQTKiMar/Dhwb5\niMVSkMelNOoFYLkt7HZfuHPNWj20SO9ftUfx3BmD4hReIQMPP8ErpZXbgOY6\nQW6pLO098yGC9EuKsDrghje85knHHJ5YyRLM66HunL/9GtkhafgJmmDM45E0\n/joY/OYrJGDtyCLijs6p4zCMrprRBE4F7mFSVgg4zdUfgcKUfXofTmGnfogH\nNtExjL+tQEN7VrmrjjHdSbnLIzdKXxpzVjQaUTpDqZs2XJ/XvUxy5vDWFiS3\noB9iHvjKHZjKOR7kLgVQUcCG1F1HF+Kbdmc0oE1zkZB3UVvFMCZlA0QX91OQ\n112bYzQV9Q17VBzkJvoO8fJhpUXv4FZZAuU75twJq3aEqCukOqplhF9iOC8z\nrt6Rwc6fTFy4bk9YIxB0OMNfXBOZUCA0aT7gketZ45OH71mUoGed2iCrhfQK\nqVA60sdKCgle4uTr+xk8+wEiTNWfZW4wXngWtiF4kEBDTkZdOwnJOvtHP69e\ncbEVMFEHkfj/7MBWfb04QBlHgQBZrw7aMZaRy2xbqVaxmZYTUcPCb/skobuR\nmZQodrEzVWRXzuDkKuMdqzUvnTTXY3q90Bjx/x6LOIuQ1v6C+ob43gVIo+Xv\nUTFZ\r\n=OlGj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"cc2535ba5f66f73426d236b8a85291d7395ce589","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.23491cf85.0","@material/rtl":"9.0.0-canary.23491cf85.0","@material/base":"9.0.0-canary.23491cf85.0","@material/theme":"9.0.0-canary.23491cf85.0","@material/animation":"9.0.0-canary.23491cf85.0","@material/typography":"9.0.0-canary.23491cf85.0","@material/feature-targeting":"9.0.0-canary.23491cf85.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.23491cf85.0_1605572249597_0.8801668978954662","host":"s3://npm-registry-packages"}},"9.0.0-canary.b659d4fc3.0":{"name":"@material/floating-label","version":"9.0.0-canary.b659d4fc3.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.b659d4fc3.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c198b760f4df9e7b59d05427a5143a761cdd5720","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.b659d4fc3.0.tgz","fileCount":34,"integrity":"sha512-kom0Tc4/BVjyJzj4skcIgQwo7YJVe1pC2JsF0hNbuRGBRa2bH9bQecT6QWwenuMRGgQDKmWsIsK9JXcDFI4mOg==","signatures":[{"sig":"MEQCIFrYQHRHLr+ertQ1aDE5bby7RlsoPTfGF/2L3s7NbdZ7AiBDIthwruHHHoMVk+4tL8QXGgX77/QlQdMJhZYRD8pEhQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfsxhzCRA9TVsSAnZWagAAkM0P/R9LIbc8kvQeltvmrGQH\nV1RWKAyYOzt4H1qFDCNofrQVQVZeafJGAMwrHg7UmVBAOa9jj0BDyTuI40Jp\nhNBcow4MHQhiYbqD7AlFtpxhC5f2iMeNE342ho7PNnAVqC4ye+ntOjbLuo8S\nyRuRKtU8W8lxahPJC8w+chZp/kHZ75pOVlw0OB5WnI/qks5CxUclh8s/TN5Q\nuSZCsLLO4Oeyr4D3TC7rzmva+o4CsaPqoZ3fyx9leKcL945BsLvUwbXbWyvR\nDZlcC4zqrmkbTfZ0L0OFn+KJdF9OH8fusISIy3y+lj3sByVKEPrgvphKUYVf\nVfR+2SnH1pR6QYetQdjO1SD2/FqYei0ZJ/wjn45EaPQ1LKbg9t7DoSchmXK0\nPZb2FoSGedgHnF/se3YXAO1T0vRfXPq1zYrPqM85+XEVG4Sy6yjej7FFhN3G\n6Nz0bc+PI/nQABD2Y/ESSic7yZBFaEp+4rdAuw/h+MjhKEOBhRLsAl+435jz\n6uw9+AVjdDdmgSwP0nZp2l6GIRc+vKLFJFn1to4jjvjd3p3VtcW/LcXofW/P\nlEKAiSSA0K+Y79HCVPNYi1ECjT3ixwvKg2iLT+Pqf278mtA3e/v+fZBPLavL\nkME308N8Ii1f1wN1Lan0HtZwuYsaY9hZ04w9RD9jJNUc/6WAGtlI4IV1X08J\n2vkP\r\n=Su4c\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"da948526208886bd05bb015d249db8d19d4b3f05","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.b659d4fc3.0","@material/rtl":"9.0.0-canary.b659d4fc3.0","@material/base":"9.0.0-canary.b659d4fc3.0","@material/theme":"9.0.0-canary.b659d4fc3.0","@material/animation":"9.0.0-canary.b659d4fc3.0","@material/typography":"9.0.0-canary.b659d4fc3.0","@material/feature-targeting":"9.0.0-canary.b659d4fc3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.b659d4fc3.0_1605572723394_0.10686646031383651","host":"s3://npm-registry-packages"}},"9.0.0-canary.d8a3aed67.0":{"name":"@material/floating-label","version":"9.0.0-canary.d8a3aed67.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.d8a3aed67.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"0e7867cabcf1210c0fc3bfe718ad2ce70caed1a2","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.d8a3aed67.0.tgz","fileCount":34,"integrity":"sha512-2D19OVxURvgUVsKXPkxUS5f6vLYDB/L/F5363c0in/4zWAQjT5XrEojCW5ZUUFqrb+6/7Pj6h7seB9ML9ZkA7A==","signatures":[{"sig":"MEYCIQDoyYlM6C+jjcZq7YaPssGZzTv8FGJS/no0cRddvnOaZQIhAJYtdNjYMntI1TnXSXt415whRD/9aRuAa28vYHL0W1qf","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfs+wICRA9TVsSAnZWagAAtfoP/1VwBcHFUw/fvPg6NxCY\nKgq8zZxhzPcY6EpY1cW9ZQzd0aWmpk94wNLSsi94iSWaj+sWtRataoi1JZtB\nhVZkheuShl05zAgo3uiC1eBHHJwGLh2pQlQWHMdghjPRUSayWJcwdNi0YsR4\n0snCQh2IiAsLJJBbgUoNQs+BfxAa5eJP1jG4IaiPsfQ5jAzvNh5xVIk2vdMB\nmmA3cnAuRwpzfPEfqUDr2KNjcoOq+Eb7KGPZ+SeEcFwTmRXi5/BJSnUp6tRp\n70dKvNvEpBjg1yZe/tkFqwDceBbKDvAK73oggb+3arcrLwU6DKckqkHZV3b1\nuGqUfd5DXCdNRqSGcNmc0XokBrXPrglGJcJHANOu3DZk4zOqyaqPb7hZ9K4R\nTJ6/+DUPQFto5xPVLIr2P1QNhNSdbNyy74wkNqbmQz+ZGNXIA3Z6xezxLs+C\nmj8VdBIL3lxUa7hTFLGOhByC4ahMwDCkt0oF2ZrLS9TbNxR+hDTudL4hjpol\nUwyIEQJERe7X2kLmkpmFMDc3IjSmsIJH8MEAljdiggU+wPfuI3vGPNVQRvHd\nuozIbuwBFX2sATq9y+ufGJ0RSgo6nwD3Ew5hVFKEF2whgOsUMz6ZhTKbSRy3\nXm17HzCzhoEOgW4yBDd1IsD8vEYKEYiWzCJqiF+8Xjyy0GzYVMGRcT77Pabc\nL2pt\r\n=EKkG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e70765503f122fcb3d748ffd41882655d9d4035e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.d8a3aed67.0","@material/rtl":"9.0.0-canary.d8a3aed67.0","@material/base":"9.0.0-canary.d8a3aed67.0","@material/theme":"9.0.0-canary.d8a3aed67.0","@material/animation":"9.0.0-canary.d8a3aed67.0","@material/typography":"9.0.0-canary.d8a3aed67.0","@material/feature-targeting":"9.0.0-canary.d8a3aed67.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.d8a3aed67.0_1605626887515_0.9478832507800996","host":"s3://npm-registry-packages"}},"9.0.0-canary.482ff9091.0":{"name":"@material/floating-label","version":"9.0.0-canary.482ff9091.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.482ff9091.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5640f56e85fa9a15a8de0e5dfae78b6bd6605791","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.482ff9091.0.tgz","fileCount":34,"integrity":"sha512-i41KNrd4xmey1xrzMJW4BCR/lI4+aLvCjiAHe140Q7smDVoQ2ZaOAivu7KoNa3BSusPkL8KhKIHEQ4/2pUAxzg==","signatures":[{"sig":"MEYCIQDQYpSdhrdm7sy4Bsq91tbEXUUl+vRk481wEvhEvYMBDwIhAJ8+oaCscm6m3Bt8xl8v+6zHuqajKwnQ5pq3JW0kDyEg","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJftA87CRA9TVsSAnZWagAA/OMP/RqqVfM5zb8ZPJIRUz0I\n4tfoGW4z1iy5wB7MuIkiGEVWOAV5fZn4gdm5EXiYtjRN084XCkBUSWwAqeGw\nihmCtR8Wy3uxmngQMy7AOqu2qX8gZ8wSKE1da317NF66KlouX0TbXTgFF59P\nWFleJYoBfnb9CynYC16GRhhAD+Sox0OICFY4n36aIHpmjca+8b6ez2ezwabV\nO3bKMj+GKCiwyySBgjUfHM596qE/rcmS1ccRVKLPxLVjG9hpKAOB6C1A4yl4\ncGF+SLnNuqYFYRrczEWNBnVnj7TCXzbl5dDMiY8qmDKuJDh9Hmshn6EqnDkD\nyuoHIyPizxAfqBwZyEtC7iELA89940UyMeS5RzyOeTwF8q8wvorRjawf61yF\npt2OPQzjUeIUdoF3bhYQF2Nn/1U7VEK2psqzH+6GHsCVq3cA65XxXrQ3KOPt\nRhtCehOgIkeWPFN3lK24Dnl2sbc4Kr5WUQEMFztgCB8Xl5OjmyEQkZrlPMgn\nUjRIzRDovwZrnhpbhkQC6zVHtSIIx2Oby3fzva65jFqdgdAB0VDjBuPkqXlI\nULrlRieS90/2BysfJlkLRW8JUTLoAiNaMcyt/2YCOGXY0SaGaGRN9txaaed+\n6sFEtJkP3xWgDcVocQ/kLzFQGeeTeeHm9+sSqRcmtkkovfr/abJYBBLTwmL4\nDJzK\r\n=9Wrq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5b4b306ef0e5d1d3654252169bb9fb9d75490dc1","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.482ff9091.0","@material/rtl":"9.0.0-canary.482ff9091.0","@material/base":"9.0.0-canary.482ff9091.0","@material/theme":"9.0.0-canary.482ff9091.0","@material/animation":"9.0.0-canary.482ff9091.0","@material/typography":"9.0.0-canary.482ff9091.0","@material/feature-targeting":"9.0.0-canary.482ff9091.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.482ff9091.0_1605635898740_0.7561357522467949","host":"s3://npm-registry-packages"}},"9.0.0-canary.99cfb6bd5.0":{"name":"@material/floating-label","version":"9.0.0-canary.99cfb6bd5.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.99cfb6bd5.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"49b50a0529e5126e9ee655c9efb566a97519b45f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.99cfb6bd5.0.tgz","fileCount":34,"integrity":"sha512-YAJ78O6QDQbeobIIOSkZyWHiFSEvUfoMOSZQBF75SghCe4GOgzbu+ad7YblYHEJluMGdUTWKv+4oU+tzGsfs4g==","signatures":[{"sig":"MEYCIQDC5DIiNWchM08G9aDXTUOvUJJ7705oL8EFte0+Zb3g+gIhAPtoz452E+/YyRC7ebZEhxSNTYhEia16rlSWzbmjcV/y","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJftWt3CRA9TVsSAnZWagAAnaEP/j/fkCFpA1MyNJ1iPYmx\nAITC80QdgEpOBVKNIIG3RjnabF761+iCTmgLM+cB8XzU1n+BX9Jm89QPPFZF\nmNIKmVAA0Km+yYlYAAr5hSnsc3ojYKHkukEUketmASQG1XDDHGbCtS53dlf4\nKnup1qV/vdtFW4r+oW/OU7bmOdDmQnTVm7GgBiMrI+YC6hRYiTr3XqnxGqlC\nhEapMCEe2+hczakPyDbu8a9Ta4XU28lAKRIaF6lHVFTGZwFrsCJrf4H0tfff\nkWKSqU4/XoCg+Rkx92Relh2O4nTcFNi4IPlM5drkp1YjXzKn3cc0LcqOPNof\n0V2j5d2cqyD+ojeMYLq1Aoj0O/VtHdx37az9uS9zZOkPYrJVya69fbVc6JRD\nG18hb+QwB69yDzjwkVwdLlxUUSAgUL2d9svzDsnBcIiYT7PddKiuQQUbly13\n8mO++jNhQMReCFAs6PVJmGoildQbjDZPgzS8qeUKWtd2sflX1OXsrLV4uNmQ\ncsV0vNffQpRyuGBmnNxQgNuSRBGu+O/6xQC6wX5WBX8Rxj71WdWs9nbb45Pk\nHPDx8O9UA3EDp8RlMIEZk/CD0VEDnkF3qG9+tcNc29pzxwp2AK5GgYarWxgT\nOyHGBD1O2+Wkgh3GXQZ8r5goJRroZtlfedpC/P60UevFZK4PeEAM8G1uJg68\nylFw\r\n=esUo\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"97b5b434f189a370838c9b867dfe1b766ae52fde","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.99cfb6bd5.0","@material/rtl":"9.0.0-canary.99cfb6bd5.0","@material/base":"9.0.0-canary.99cfb6bd5.0","@material/theme":"9.0.0-canary.99cfb6bd5.0","@material/animation":"9.0.0-canary.99cfb6bd5.0","@material/typography":"9.0.0-canary.99cfb6bd5.0","@material/feature-targeting":"9.0.0-canary.99cfb6bd5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.99cfb6bd5.0_1605725046756_0.8542553162810893","host":"s3://npm-registry-packages"}},"9.0.0-canary.b98d15d90.0":{"name":"@material/floating-label","version":"9.0.0-canary.b98d15d90.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.b98d15d90.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2dc719696e66a46da548a949ca293b271db912db","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.b98d15d90.0.tgz","fileCount":34,"integrity":"sha512-WjB9/ppBYjaJuHxJI3wn+vBkWZN7kNBbBPxNaw+62M6aP+EI3Td8gm4OBfCFFS/ro7qmW6WnztrDq9FFkrCvDg==","signatures":[{"sig":"MEYCIQCLWvGl2w7gIPMLx1OV9CKlVT2BUjvE6B9RgwW0n6ileAIhAKIcaW4CDOZA5vI3KzZhxUUOvzE4grIF+9Tpv9Fw0VEM","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJftaGYCRA9TVsSAnZWagAAk6UP/3j7ceY69jo15+vnXq9Q\no1Ji0ieA62n42yRYnMfQvEZfMplMFmVxtbo9HrO2ML9xzl1X9+m/ft9mrf7G\nOAwEi7qCD+oG1Ln47YfntgCTrYf0FuS72XUqHG+HvCJ0VQEXwBmveKri3Yvp\nq5slXmFZBWtFmtDiegRNkYzASWVfVU8Cs6fiAkRLOW4hsMGyOgRBMMdfFfw4\ntndCY9LUa0K3zTXE6dtcj2e11KTmhjsPao86si+3gMVqYskyicN4Kw+kA+JC\nwUCiH8cY7LPzMqfsnYI1MBeI4aKeBc9DSPfGSEMIqDpMFvgZNRL3ZnmKVglu\n53eDpjUeXHdY2u+tp0T4skjhiGsp6n9V6ay/fBCv4ZCW6tZcurTC3nlapG3q\ntf72gec2viFWDGPC949Ax28g889CEUQBT+f19Pv5OK7amSSTozp5uFtb6wv9\n/CNIQefsYZAtFrQLACdLsNKtMFhHkgG0gLCd0kNRphM3Co3InKyjG/g/9HEc\nIcqrkAz0pb9m+XS1tLVFrpBFolNp7mJeaz3IDfkWrNzAYbPYtgM+sFgtWT6q\nZxaC3Y9CWCD+grhOwvFxKr0JT70N7PhLZLHD57l7AF2atvgnVQTDwJG5krGx\nkDC9QVvSDdwNYmAikrP6LRO6vixJghg58OWobvLaFodUQMeSgHFGEK0B7SKj\n0Tpy\r\n=vVgx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"abbd2c5bad9fedd634d7a0c98bb8e4a8b0bf3439","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.b98d15d90.0","@material/rtl":"9.0.0-canary.b98d15d90.0","@material/base":"9.0.0-canary.b98d15d90.0","@material/theme":"9.0.0-canary.b98d15d90.0","@material/animation":"9.0.0-canary.b98d15d90.0","@material/typography":"9.0.0-canary.b98d15d90.0","@material/feature-targeting":"9.0.0-canary.b98d15d90.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.b98d15d90.0_1605738904022_0.042991511933237136","host":"s3://npm-registry-packages"}},"9.0.0-canary.30c11bfc2.0":{"name":"@material/floating-label","version":"9.0.0-canary.30c11bfc2.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.30c11bfc2.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"619dfdaed1a37d0e417bbe01644dc5a0d1e6070f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.30c11bfc2.0.tgz","fileCount":34,"integrity":"sha512-+mRFfrrlsdp/x52G01JQNS3cENFQkcNRJzqQq9mx1GBunx8FBUxdz1t0m6glPJWL+oGPuGfp2ROciPThtTTHmA==","signatures":[{"sig":"MEUCIBoG6CPVNZStPvdMuLVtwiOA/77MyMXD/4TRi+azhSTuAiEAyQfgSbuB6PfBraVQZfBcnSimOr7CevKPETbMejWoNq8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJftcm0CRA9TVsSAnZWagAA224P/iSEOZ9Gm3OISfKw2Y8m\nTQ8vfLr2VO8eKtECzcjnV7q5rqHgzkYu3kPmFVqnh/J+h8EEnepjoQHNGun5\nmntGO8KTCF/f8saVCnE3fMKCsZtPjuLzah6o3EpdD/n2LYzVz0ocUZW12gm8\nX2y/Zblf3lidFLfbuf2/vont4VuGOpsn5WbuVrAOQ4c+NotTSMW2UWyw+ZYj\nGAYooYpbgdcpSzwWmJJSaVsVLBOlhoghuo9TfNojT1yRFmVT6wEBqZK2+6oR\n7fX1RHuSaG0zk1c7qtxEfiwnjNv2usQlCmyFAPiy714rr+/YMNtzP8UubXCR\nDLaKikZVv9Xh9RoYNUizeWh0ze3HGkz3Lrld095ZivMCLN3Odki7qzZKXuPt\nYYkbcHmySc3PJY+EkINXRd4X8qQfkGPdXz02oxcGPE+aZhej8F8JleJgFQI0\nT3wnqa3WD5UxJADowszSgD90ELXfbJl5XX6LiFvTHdV6QYWOT0yJRjVgYdtk\nxlL9YGrtGJaUJbss737GpsUBMdlpEnHDH1RcI+NupyahAsYHuS3mO1Z6bVJw\nqAxsGexuWYd8eGW/qZ7HgCgQgnie+VwoT7XznjA5iE47CXhQf7akpNwA+XNW\nH8Z1k01RULhyNNvlJXgy2Hot/s1zgv8Ow+/d9Ou3mpfXNqlReFxXNzG+fkZo\nkJWV\r\n=LB5w\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"bde404a844a4528a097cb2c90d03c4ce8bba9d74","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.30c11bfc2.0","@material/rtl":"9.0.0-canary.30c11bfc2.0","@material/base":"9.0.0-canary.30c11bfc2.0","@material/theme":"9.0.0-canary.30c11bfc2.0","@material/animation":"9.0.0-canary.30c11bfc2.0","@material/typography":"9.0.0-canary.30c11bfc2.0","@material/feature-targeting":"9.0.0-canary.30c11bfc2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.30c11bfc2.0_1605749172350_0.32249612815256645","host":"s3://npm-registry-packages"}},"9.0.0-canary.1b731d51b.0":{"name":"@material/floating-label","version":"9.0.0-canary.1b731d51b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.1b731d51b.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"efd0f51cbcc24d7dd291fc76fdfe6e6716f3667a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.1b731d51b.0.tgz","fileCount":34,"integrity":"sha512-na0LWYyxDd9GjFPLV+ZGgK+8E90tQtKlEtEIb+phnWIl2utjnNZtlWjdVX3tUlfy+AosqK21DpuhpGVlegphLQ==","signatures":[{"sig":"MEUCIBNBnc+qcHhuqvSRAFvNDynkL58/cVp3yHD0I6YDUCZmAiEAkDsHKFGT0N9V3AuCFobogFHe4j4r3KT6p1gplB1Shxk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJftr71CRA9TVsSAnZWagAAR44P/1Yau3NkqJceZkIUJN82\niv+0zYrznrqg70WSkyRjniz7L+xVmirphfdWzCoFKj/ZxUjWpunulQ2+icBy\nu400KW4zUvaYmeE5NZrjPn5OX/Tq7KJBsHpRk03DxKgZhJLDIXutoTvaD3nL\n1g77zmaC3BDW76WcB0X1Z15FBr0JiOhu+kwYjv5KfpinXNLjuNzIZTPpoHJG\nKrAAoMJNTL+i95aQdgaRBPQO3UJ3DF6RSfYFTqdzh7n2M99LoAcClo6JklfY\ngk6MRb8gp3v+q66Vf2uH5HgS0VG/sUFKIpbLl2OjB5Ni+B1A0bzq2xfKfnp4\nc8RJWz44zAuKPyL/OnsxPQvcBD85s4ktA2GwG4lVgAGqKCrpx7WV18jrYicw\nbO/9IcJq0fu8ttv/Zi41DzwJG+nWbX/53SdNLZaEtOYoln0bs8mu5CYLDQd3\n82tpVjj/5IG4WpuUKmNfvCBk0WAqq+B11TP490v3SaDYPQTeEtZ1qtzyZ0cc\ns3wCBP5jfM8Ch2/q7YCe4ad2WI59srkuQ648xxkhpR9jGy2lSFMUKKyXL0K6\nGE2UzO134MjP4W2d9RmNJFqZKluEpVtCrpgyAvcWzMXJHC1/1OOCTHiXucLZ\n1mQIijZVzAkxO4oDYCuHH6mx+d9OHebWUl3xTMlH9vQAHCtBn++zM76E0PV0\nnIMb\r\n=Z4nU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"22fd036a79b754fbad742c64041cedbac73ce410","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.1b731d51b.0","@material/rtl":"9.0.0-canary.1b731d51b.0","@material/base":"9.0.0-canary.1b731d51b.0","@material/theme":"9.0.0-canary.1b731d51b.0","@material/animation":"9.0.0-canary.1b731d51b.0","@material/typography":"9.0.0-canary.1b731d51b.0","@material/feature-targeting":"9.0.0-canary.1b731d51b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.1b731d51b.0_1605811957278_0.7399797345713433","host":"s3://npm-registry-packages"}},"9.0.0-canary.4ae94ff78.0":{"name":"@material/floating-label","version":"9.0.0-canary.4ae94ff78.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.4ae94ff78.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"96e7fe0b5c3bff3dac04983984e03f402ab3bfbf","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.4ae94ff78.0.tgz","fileCount":34,"integrity":"sha512-cKiXWKjPxzCdwT4b7YpWnhFdRF5+1uHJ5ApzZ4YwE5AQd3MuM6S6rse0vwKliT7ePwXFLFPbp5/qwUa/hi6Ggg==","signatures":[{"sig":"MEQCIEAVl+MYNkfjr4L80zZwonjPlPzDf+bkcUYbTwb6HqZiAiBj5go5G3YsbGGvaOwr3C23LVXxiVUEoblMqAhd1MXHRA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJftr+kCRA9TVsSAnZWagAAXVQP/2KX4qNTaFcQoPrZQ98c\nr5rkGmXLwttHpqmYrUY6uIvsYm/F89xpZW6hsP/EChitDt06RVsBMotbIK/G\nbDQkbZxm5//PI0gmy1N2fUekBk2wkUPUaO+X9BAqnZGLQvM42Ltt3bVOkINO\nD1H5esH23fCjRczgnViSFVN+OedeWTgRVng0s1QH2C46/RSoMsrRFTqovar9\naeDAH9Q6cLJaXsmtELC3erW/LRStNg1l1WsEPQz5eRVEPqbynGODPeELAZjq\n4xY5CimllgNtabXFOq+q6T8M/iiB5WcWg5pqYOBiqND09x6gQnhxrg3tC0m5\ngeVjmghmavL4GNm2y3qiTWNE1EG2Q28XLKMOHixuykZTNEdR+vo78O23rMaM\nTVlnJJYwIcOEhdJKaf1kZTmvJfSKsa7jdh5O7pQEolBW6TAppMV+26W2nUo+\n6FBpiupbZIGC55t1r41gLxotnGFAXHITOcbL2w3cL8s62gRKZ3hS+j1Ca7f/\neFSvthyOJJAaGIs3/NU80rbV1EmZfNuScmzXlwaVVGE2/4HzftmHp5NEvFue\ns7uvwJD7QJVQyGcWR3UVGST85Dq7gALfkNIlNOWiYBJFGMkV0kMOdd4axLdR\noSA+mApn5Hl2AnVVuqLcvH7eYL0aRIotWyvrzdR0SSecG/tvUc9Pc0u3LqWb\ntzgR\r\n=assy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"34c69ebecd44026cff9ea0d681fc2be3de9900b2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.4ae94ff78.0","@material/rtl":"9.0.0-canary.4ae94ff78.0","@material/base":"9.0.0-canary.4ae94ff78.0","@material/theme":"9.0.0-canary.4ae94ff78.0","@material/animation":"9.0.0-canary.4ae94ff78.0","@material/typography":"9.0.0-canary.4ae94ff78.0","@material/feature-targeting":"9.0.0-canary.4ae94ff78.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.4ae94ff78.0_1605812132039_0.9588429200837141","host":"s3://npm-registry-packages"}},"9.0.0-canary.7ad038e1d.0":{"name":"@material/floating-label","version":"9.0.0-canary.7ad038e1d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.7ad038e1d.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c683faae112c345fc782863a9276b877f15727cb","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.7ad038e1d.0.tgz","fileCount":34,"integrity":"sha512-u4Dt6l8mHI/uTn4tgeXqrcfqZva4XoYhNC14nuam3EhHkVsfOr7lyDqj9lHBkMk2wyq/onWHfG3WbPhbY/Lk5A==","signatures":[{"sig":"MEUCIBaqJ2t5MwbgafiXgovRwnwI5gz7EAHaXFw4+uNYmO3sAiEAsV/73WUBjathFZXls9SpWZ+FBp9n6z6etQxiggJN8l4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJftsULCRA9TVsSAnZWagAAhwQP/3sMZ59pqRsnd9/SMSL9\nTY7HgppI4AT+aQpcIB84kLyUcIV0R36KW9yQX+bGpnwTtq9oki4alwIql9C6\nXi5bp4vvd81jx3WWhc/2yBPln5FWUXh+lRqfPxVYrAgqR4LfoHNpIluQfy75\nedGrLPKPFunhd2Erx8ZN5DVR6huylkrJLOdtC1NUYs5nNoAQTQD+MORyGGMB\nhf7Eyd6GPXLtMGG7IT/CdWN2JS0PYfFg35jpus7xxnon46xpY/i3yuSIWIq/\neaylubX3fzildOyBOST6Z45aQA3u01d21HNhjZc4Ds+1hFUN0zoJPEtk/DnE\nurvdsaYfjtPQIDFkYHsRJnW4IoQ0FlFX5OD1tDjCea82GSUsNSkTQb9/VKMu\ntppsn6mc5B/Q8SZ8NWZS8YPl29qJsmM4rugo7nxpjQihAl5dZLK6+X/uZr+A\nAtO38qOgk+xXE1PWLaDy+85z/v9IG5QL9Q3MQtg1eaNqxTFtWMCJKgcx6Ns4\nuRGb/nTXx3FYXtjjGIrQbRr2GlkUpBUJSdmd4a9/yBU0wLy7Af7nmRuuYbbB\nWon+YTcNJdk1yPSmayuBnJ37+hWq6C8b/tHlRO2Hjyjq/ygxix4mP+8xIABD\n0L4sq9Ttz9E7rSNoW9+Dt+HcPXbxHDxPEtKhAEwEG3W/RvnC6DwRFmrWYBhz\nkZGA\r\n=SYLs\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ae5e88e00f948f916eeb8f578dc80b6aa2084116","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.7ad038e1d.0","@material/rtl":"9.0.0-canary.7ad038e1d.0","@material/base":"9.0.0-canary.7ad038e1d.0","@material/theme":"9.0.0-canary.7ad038e1d.0","@material/animation":"9.0.0-canary.7ad038e1d.0","@material/typography":"9.0.0-canary.7ad038e1d.0","@material/feature-targeting":"9.0.0-canary.7ad038e1d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.7ad038e1d.0_1605813514924_0.806512602756841","host":"s3://npm-registry-packages"}},"9.0.0-canary.a41527604.0":{"name":"@material/floating-label","version":"9.0.0-canary.a41527604.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.a41527604.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e10bd4b979a7076a42674eebbfdf39704418d2df","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.a41527604.0.tgz","fileCount":34,"integrity":"sha512-oAS9WYQEcMw0luHzjOzlJRHV4xy/gCzZphB07N3kluiROPF2frq5aFMqhvriD7m5WoO1Ej7DDQQatGPj5EB2/g==","signatures":[{"sig":"MEQCIHweXWm1JpNcT1rtsxObYq62Dj74s6VWRdT2B1V2pfxHAiA4posQBlznx+u1efg8MC/aDgjJCiay2QK9YCv5khxOYQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfts7XCRA9TVsSAnZWagAAXHQP/iYN22glyDAw4trCzt0K\nk/jpRQIgfKgsiu3S3RCA2gNAZphDk+eYSZLfbk13nEFLW/y0RyNxmwJ5cDv9\nYcXj48m/iY3omz7ozwBBrXzAiSG2oyV0foyXAccIF+/UqDLOrpElSxL6OJCx\nusAxw1XGL6dPlIH+s9faX+Bbr3+xSBSNG3X0RpDUpj97IKPc5UiEOGX5fVXE\nBgu/7c8GWGU/Zp0EqC/gkF/0XFfz31PrMEW3OgTuRHU9LdW1jzDek09nEm1A\n5KqxciCtBZlf901lOxI0HbEWCtNXPM5M31IL1rkRPmIk2pBXDjS+VJ4AgL0Y\noPRwz+D4RLTviKXmpN5d3ajRohni0IssDjx1HUVjtE0EEvASxuz+rmXRkUWK\nwoSBkkzkiaLfPxjN/6mOdnLAawwH5lm5q2wvJiV7mcCQuXmrw+e5NR0ymukD\nBsXBKIcbFIyLugAcQzygT9IzTAewrkkkTu+smveIAE5PqpFAlC8OLQXWoNlN\nPQAds8nGCfy5vWtdq0JN8O1gMEDyMqGp/hqHvo55VE+csOItaVU5g9/SNZKD\nQEv2D5Pd6+17iaILVPvezWXoVegqbyBzEhORC46AdSqHF6KdCBc/HbG8JptN\ngPeUzwi1xl/MhyiQP/G2Waf7aRHlfsEKIWx7PUZ717zFmxph+F/n8/lZg8lx\ndmWM\r\n=QOF6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"4419897c2a5ae382f471047e38ac619bef815058","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.a41527604.0","@material/rtl":"9.0.0-canary.a41527604.0","@material/base":"9.0.0-canary.a41527604.0","@material/theme":"9.0.0-canary.a41527604.0","@material/animation":"9.0.0-canary.a41527604.0","@material/typography":"9.0.0-canary.a41527604.0","@material/feature-targeting":"9.0.0-canary.a41527604.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.a41527604.0_1605816023268_0.9769637880524902","host":"s3://npm-registry-packages"}},"9.0.0-canary.7b0e2b377.0":{"name":"@material/floating-label","version":"9.0.0-canary.7b0e2b377.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.7b0e2b377.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d40b77bcf7d1c46a9733c71c91dde2954b043d1c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.7b0e2b377.0.tgz","fileCount":34,"integrity":"sha512-C/OyI5Tmlj3ZefTBf1Fh/G+Zhyj7fPhoFYwJ6caE98Dj+IqPHolOVSRQyDVIfdRXKjkr0DAvzX2nBoF/QddPsg==","signatures":[{"sig":"MEQCIBB4s6N3AI8Z8pi9CTUrQ5FCi2MKOhoyHMrC937j9QnDAiBXi1SlyWV0L99jqNSjV17EEBgcHZnE+y919pw1E2sxjA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfuEl4CRA9TVsSAnZWagAAANAP/1jpYNA4dBspR+HB6QRi\nLX6W1r1KF5o4/4TA0x9kn8SKxsg5GnCuKalbX20rFJ/InOPvjUpaUrUt9eP9\nvF63elTqk8RxZhaTFIolb0qShS5bOmErpUKa5vqiOCxanOcmeRr89JIvX5Am\nXtKy6AvNzDkb9GCTwziDWxdRcp3fItemgsOmZ5ghWAMeDZdnXgeXafMqBTSu\njan9Zx4+XLOnCDqOGPpFn4MxalxnN8U+c8qE8NQ9rgFz2l4FZTdeLMpduk/D\n4X+reophnP6te1Ub2Zmz3k6sXeu5IqvKG2TnKBpJ1CNhAckn4jmv9g4Rwhq3\nd/uesrSX1R5395LYp2EqQbShA9x16LKgMtazSjD2SWHjPowS32sBcG0ZvaF2\nn7YTjgmzO4MJNGt8qXPMZAbpwWixBAxKisSABUj5wLQ+IpraIKu/k/o/n9zn\nSCDOak/Q4XobB1qvOGxsCRm5dogGArvLS4jUbP2/VeH4eTxUjpEP2fIfW1qd\nSkf1AV+WgEkStw751jPflmJ/5hJfXV9RlfGrgoMApjgaljn+ANJ1RDekpiMB\n8HIXh+n1bdyyLsqscMEW19DQ+DjeWu3NKGmn7Pk9PKwvHOWy8t47qpCXtdh9\nFeWWV8/fKpPrduYv1KKs0tocEugihwTS/On1o/PPlOuFxEkYytIlSfF0uWS0\nt4/C\r\n=nrmv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"51086f360a63319c786c7b166e515a34aa76c112","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.7b0e2b377.0","@material/rtl":"9.0.0-canary.7b0e2b377.0","@material/base":"9.0.0-canary.7b0e2b377.0","@material/theme":"9.0.0-canary.7b0e2b377.0","@material/animation":"9.0.0-canary.7b0e2b377.0","@material/typography":"9.0.0-canary.7b0e2b377.0","@material/feature-targeting":"9.0.0-canary.7b0e2b377.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.7b0e2b377.0_1605912951773_0.9316992740489636","host":"s3://npm-registry-packages"}},"9.0.0-canary.c927a5d05.0":{"name":"@material/floating-label","version":"9.0.0-canary.c927a5d05.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.c927a5d05.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ba977b4c36ce0135a7c286662c991e83f8522b24","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.c927a5d05.0.tgz","fileCount":34,"integrity":"sha512-R6ThS9VylyhVI3Af8A3WlcoGGUFbMghK2SHbCEdM3uJbFs4/YYOmYGPzdE+v6Yjuq4E9V7Rzu5Pv3vHPwxrENQ==","signatures":[{"sig":"MEUCIQDeCj37rI6ABC4AR/C+anPwDDZyFIWGc1hEEissVJX4UQIgZ2GJH4Y/auKG1LiWOIaQ5I4mU4TpmRD8Uu0Dc3uU5Iw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfvBHbCRA9TVsSAnZWagAAucoP/R/yJWVgGvI3OXsbk26n\ntiPh7vsxyuAjR80V76GKQya+A/yVsW5Y8GUVbwgwfAbuDztsrKcM6jAfC6qt\n6+qZiMKgWiUhmn5ByP8OXpPNlqETwsopdxH+V6G0NFfHrfj2X+LRRI+wE6e0\nhmc5zgHVzz+qdgmDwUd7HYWZdaA+vz7IFUEmFKq3PFjrxOyOEetdVCgeAMPd\nf1A/UbKSqjkxIIpOwTtycMoFRkcNtDyvtolXRUJkpLlCXOAGKyb2Bjczbd/J\ns55j6AOiNpDb2FjvhO1s3w+Ema7mSJO2Opf+DHs4h15W1lQIrwrB2F1qpcd/\nrfr4VOWLgmfz6/BjcwUT3jnJiGQ1mT+rWTUAu0bR7vVEpr6lc0n4EGgG/Rrk\naQtblX9Lz/Ob1MLx5VGJZ3Gh2ct6Dk6RAdDMLXSVM7wuaP6QSxKz4jwQM7Nw\nHwuOJmgyJ6lPcvgOqfpOvkfqAR/ukSvBj/xyFHC4gGjrBv7TvKIEbKwmWl9D\nXAZX2DdyX8tRnbLUgqCLUfLfXlzDbR+4PC4/hf96dPsx6PlZnMxaBJrLcFlh\n9Rm3k9ygErbj6OU0tt1vin2+sIAcwpf+fqEsoNKCkBA2BoJ10OPi0YSlAwtG\njL5vRouNnz+DZxbIdAH2IB0v2tKJumENS7owSinbSfoZ40+NFY+tnEqbjM7X\n6Xl+\r\n=u4S4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1e41eddb7d951c0eeca983e08e3fbb7b21cc3776","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.c927a5d05.0","@material/rtl":"9.0.0-canary.c927a5d05.0","@material/base":"9.0.0-canary.c927a5d05.0","@material/theme":"9.0.0-canary.c927a5d05.0","@material/animation":"9.0.0-canary.c927a5d05.0","@material/typography":"9.0.0-canary.c927a5d05.0","@material/feature-targeting":"9.0.0-canary.c927a5d05.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.c927a5d05.0_1606160858818_0.8303770407004982","host":"s3://npm-registry-packages"}},"9.0.0-canary.b349b5185.0":{"name":"@material/floating-label","version":"9.0.0-canary.b349b5185.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.b349b5185.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3c52fa38845ff66f60261f994b4c811ba4b6d765","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.b349b5185.0.tgz","fileCount":34,"integrity":"sha512-H1oEyx/TA86DV8GTD4uOFXsuufxCeI0/ukbkT/cm42uRm/m53lKb6swnYxHzjdq+GQSJxd1q2SvhjL9scncehQ==","signatures":[{"sig":"MEUCICq0noRipVzj8OQLjfsMMxNXQbI3vzYOFnx0k/RvZWkDAiEA7xGEVL4UV5EIX+wqEZNjiBcYaunwOeZCQqIIxKbD6qY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfvT4zCRA9TVsSAnZWagAAZDAP/1sj6e2SfHKnRcvq/kLy\nnqXT9Q/X4WDlCcWThuClHC5Rh5HgXoyzWerE0CCudhvb3y2RbfzyJIg6cw+/\nhw7o0yuZ3DgR4duyqG8W0xyca52RFxbo8q4Zsrxso3G4bEEY+jJ1Cnp/GDWy\ntQECsPWpa2VQhBhAwzdeNZusylXgEfsW1gv4B5LOZd519Rec2w1zyp43Rur8\n/qzyU54jI0lh7LGQFQGa3YLxs9S5q1MLaMfBvJAYX7ZDCz2HZnWLTuP1deIl\nmjGAVdAXADq+qCEEIDd7Q3DOvDAaH48MK/QQxSjUPvFHP06whB/5KpjHW1HT\n/MHXK1QNePOx6hkGWCEb43iplYVOUeSgLHU6XTnJJZFlJuKSZVYj7eEwXxqN\ngIyQI9JDGEmqxrKNz9hmChlcpag8Q2lRbH6zd2IZ9UdBUloVWVTRThzE7yZB\niNdhV9rzmgK/uPFeMhBkZ2A5yPkahUSCoK17xjboydO/Ww1F0rptKMUbxAFR\nJ2vqwNltC8bvdGOMkHdFDKdmK2n4xFf4YVWt5QdoSbTATBpZliddoR3M2HE/\nXbOj+0Ex+sDvIX4I3lTtTfi0wJAny24zEwtT4BvwQwBg2eOddlDu2h7ugHul\nusTSJOiHxWgAK5FtpGqJY2JZ2JCKRFLU+glD/Ou4wu80MLbUG5pwezDX8AiS\nrXVs\r\n=gBar\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"92e0cccba580778200706f15aef4e667fc007066","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.b349b5185.0","@material/rtl":"9.0.0-canary.b349b5185.0","@material/base":"9.0.0-canary.b349b5185.0","@material/theme":"9.0.0-canary.b349b5185.0","@material/animation":"9.0.0-canary.b349b5185.0","@material/typography":"9.0.0-canary.b349b5185.0","@material/feature-targeting":"9.0.0-canary.b349b5185.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.b349b5185.0_1606237746613_0.21734442122836373","host":"s3://npm-registry-packages"}},"9.0.0-canary.9083b7d61.0":{"name":"@material/floating-label","version":"9.0.0-canary.9083b7d61.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.9083b7d61.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"79d4445368efc353d416f58a8606a30f8ebc992e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.9083b7d61.0.tgz","fileCount":34,"integrity":"sha512-zTb4jkAbvQTpuP2Lvr+EikmCPD0Xpp/MJom3T0g4TH4sXv98B9sTUAjow2SYBR0UoXDfWDknNkjdt86t2vLpxQ==","signatures":[{"sig":"MEUCIBuavZDLzG1dwOHtHC5m3Mu8+bCLcbwcuLL2eHnEIAmMAiEAiS+1DEea8wx3oxuvveh4xbWavcDtObJrvSlvBZbc0HA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfvXgaCRA9TVsSAnZWagAAEKMP/RWI14w5uZ3aVsaA8sH1\nT4BKKyvGkGh9gJaajeZSzXFor4WHRMlaIvsY61zjTQXA3vpO7TKrRY2/HxzY\nJQVdeNw8dJEZ+4ng3qkWQYkOMHNo5O6XOc82Qw8vYYOwFIjVjbnMqqOIWpIB\nj3F7TC6hXlLa8F6waL7L0U150Sm/umrnsS9OeQ+rPbLmLBWhc6MFb5dzOUvf\nWW4v5HEmYO5DzKvwXwa7MV3YvRk3aolTevx9n86sxZXCTXzLv8B95q/0GSm1\nb1Ylzm+g9NR8kxHJpca+5W4TfMr87+G4Vp5cqrnY10Z2Nx6Jj4v34/5aKlHL\nb+V7c0f3B51w9956YqmfidlFzs46sTaTOvJ6NrbhUi5T0l0KfmuapwxHEPAK\nY7271o+HiHBdVZ4rkx4MvH5XWJBardZfmBgXhR4/AR31i1mXPlfDCDOkJHit\n6TEab0McLqRRS3TN8p5lpxOFsgv+N+y9kVv/3X7lUZIVStv69kLUqu/xh5tw\nrWEmwTSNavy1erA6TB6ixdyxnPEoompWMya/3gMgi+guNJ4OEhkoji4gzZRw\nqgkeUdANWJiZd5G/oHNCjAIgh9JSPzCVslWHzBTwwoKzXpCoI6DsYRsJnU3V\nPRkiJmrQJ5hvxLwCrSMx1fMiKmZE9/z95sPRiLRxs+OdXkRHciHWMVzMA5+4\nACsz\r\n=f/ig\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c6192773b6d2ce6a74a5b464d7df3e9b57b238d4","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.9083b7d61.0","@material/rtl":"9.0.0-canary.9083b7d61.0","@material/base":"9.0.0-canary.9083b7d61.0","@material/theme":"9.0.0-canary.9083b7d61.0","@material/animation":"9.0.0-canary.9083b7d61.0","@material/typography":"9.0.0-canary.9083b7d61.0","@material/feature-targeting":"9.0.0-canary.9083b7d61.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.9083b7d61.0_1606252570151_0.5975574349083042","host":"s3://npm-registry-packages"}},"9.0.0-canary.eff7b46ac.0":{"name":"@material/floating-label","version":"9.0.0-canary.eff7b46ac.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.eff7b46ac.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1ebb3f66945480a66c6f8455d5f14ac5382057d9","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.eff7b46ac.0.tgz","fileCount":34,"integrity":"sha512-ZVzIyIfiZkliZ4Z1u3Z2gxKj+0+8NylcpM+AxQNWQ7FA8pEfb+X7Zzq5p5KAz5vjOj4nDApcndfTLGe46wrz3g==","signatures":[{"sig":"MEQCIEWbncEzudBUxSCpc+F99+Ye2Evw4Qd9Ss68md7lCpRuAiA5A0WM+tmQaFHNzTlWQIIkAY6zlfeLVmURg6uINqKROA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfvZe/CRA9TVsSAnZWagAAQqYP/iDIqYm5ASznenthf2oX\nwsB9+I8K+vpD8lcUJ0BUGTbt/PlCjm7G9B3QUPAmojSRTy7GVnHkDYi+pavy\nQ6/XkPmPAzw3DGKWe9T9xB/3lYDfJ/10sLQZN3030QUNQ6JtF4Tat+mI1MC9\n3DIW9o92TLQFaseho2TpqLzeTG4azFi88dS64bUPnDD3c9SKXFnYEikciM6O\nQMrvxDANEpn/dERhSrIXBZghv1BU7QQyQ/73ckcweozCk9jmXH6F/+sgArUl\nF5NwGRqxrdaztQGVfGujZQ9fWeFn0A5IncJZ+LBG1cASyY7cCYOAf69QHHxW\nZclxFnZRqo8QmINFOqMPSn2uCu/v165Y7BFB5ex4rW1d81fzk0KRJ1lyYVio\nY7VogfwD47Oqu+6uDYHXPQ+fZRy9bz2pq7i37SLeQ/MheRy6Ym/KjRVG1UAL\nCTvGhBOUfSRuGQB/rwGSXlUG949eIluY2A17St0Ym2zPX7gNk1x2DchmdPhN\n3kMS/b04kwNjjkyKlCGW5OTWqLpGJUa8cECBqsmLRQz1b4XJMyx4v/6wZFG+\nUCz9lze64U4st+BGhvz4zJzTo3vvndFbGk5T8JIfmdEXstVAtGOLILFqlsQC\n6GUdKrluZ5cfUKEOx17n2Fn1F8pjqfybwy9ZDlJ9REXk23jK/3jGeUwmwklC\nqRKr\r\n=ZmmF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b8790bb41654e5c7f7a7725e8e58c9dd08551129","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.eff7b46ac.0","@material/rtl":"9.0.0-canary.eff7b46ac.0","@material/base":"9.0.0-canary.eff7b46ac.0","@material/theme":"9.0.0-canary.eff7b46ac.0","@material/animation":"9.0.0-canary.eff7b46ac.0","@material/typography":"9.0.0-canary.eff7b46ac.0","@material/feature-targeting":"9.0.0-canary.eff7b46ac.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.eff7b46ac.0_1606260671302_0.7554699280458568","host":"s3://npm-registry-packages"}},"9.0.0-canary.ae27b44b0.0":{"name":"@material/floating-label","version":"9.0.0-canary.ae27b44b0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.ae27b44b0.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"605d3fd242f6cede0e87871689eb5eab43b3bbab","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.ae27b44b0.0.tgz","fileCount":34,"integrity":"sha512-nvb6RfjAzJuPG7pu0LhJItbQg3FV2qFdjGs1gYHkJydlokx5HwJ40kEBYjh0hZo5d7bIDjmUsbsC9cIS1WFM4w==","signatures":[{"sig":"MEYCIQDFmRLPpQK0JHCEPkdiPi8BujPC3kU53SAzpjzmab6/pgIhAKb/4Bzc/hRT/u8/rwmKE+5CghTYReyGeVz665YCe1tt","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfvnk5CRA9TVsSAnZWagAAmt0P/1MdHiU6g8aV5qqJsZ+x\nk2/PjHT3IMS1FDwuK/pdfa1l4p4GOFUtaup2dlYgxhTxP4BzdTKvlgr77M4O\n/t7eH8udEu5iOh3CpSK472Dbe+rsdt9Rhu2QRAbZAMkjoFTwUsCNTiiNTbL6\nWbGzHSMEhwws2N6tNWyueNxvPJ1VPdJL6RPbsskWBwYUoh6pjRhJqmmIJVz7\nKKIFArjMaG5DKHOoJxMH69YOaUt+Y1VGfvKd8SvynrO3WOlYuHPnFUBRYtJW\nrLwFyriflOxD6ThET1MrZcDxuBU44nZ5ixLenefNvaybJI4cr04a3EfQjj1R\nA+9pCUygEyjqWK2bxBh3YDgztriXUP3EX/diuBHbV+q/D6yid9tGCNHMj/Gt\nmtwg9VugiYQL+fXObLIC6eePQ/uvv+UfWC/rHXZ8tQQ0lcNsovl7h4ucXTeg\nxvTTuwgHNmQBCp/ILVUsBq30Ax10Wx89Sd/25iEgzPsRSaQBEHNX5I7gWYvM\nRwU7qlnRNN6/2LCEPVoHlHgCOYdecJcUoSuhdrl5BmajKMwfyNXTX1h4ykww\nddTlUEJ3Wacl7V/WB9m9MymOpivxLWWfqeCpzeCTz9fLTjfDnkj+2vgLp+Yz\npkHMzXo6o4A43J92SkcJrvsCiV4LbWO/nmG2rq687c/0KUdOQtesGzLmbc4a\ntC70\r\n=ueE4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"eb690fa0e9558b61ded00dc6e4b467cbeaed4c4b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.ae27b44b0.0","@material/rtl":"9.0.0-canary.ae27b44b0.0","@material/base":"9.0.0-canary.ae27b44b0.0","@material/theme":"9.0.0-canary.ae27b44b0.0","@material/animation":"9.0.0-canary.ae27b44b0.0","@material/typography":"9.0.0-canary.ae27b44b0.0","@material/feature-targeting":"9.0.0-canary.ae27b44b0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.ae27b44b0.0_1606318393096_0.06080286704129989","host":"s3://npm-registry-packages"}},"9.0.0-canary.2fbba2554.0":{"name":"@material/floating-label","version":"9.0.0-canary.2fbba2554.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.2fbba2554.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"bd326bd30270e4edfd972b3ecefceacc6636c979","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.2fbba2554.0.tgz","fileCount":34,"integrity":"sha512-5Ah3gI1PuuQV+971GH9z4P3QFNyLHhQVB9/I8j27jh4Z22nPOfiDjPOpDfj8i6Qoq+q/KmQfRVnHaQOajBPB4g==","signatures":[{"sig":"MEQCIDhJWeXFNcj7TbwfYpNWHKDivi7URVPJr6j9UdvWGCodAiB80UiPmoqcyxq3ix8iwRkZXrHPxsIz639JbVfy31t+Pw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfxS6UCRA9TVsSAnZWagAAE3MP/2AZbdC7+LunnATedqaj\nKSH0MbUzavtsy62N9iSVlft7hy7sK5lMHoq6zeMK3/q6dNXiw2tML5P3TmFn\n8g7rzPSPJu5gzBvq/TFHLXdLv+B7bxm4pbQdhfBllBKF/FiJCjsTdfqvF2mc\nmvsuiSLDKDJWfbNzP98IFX8ASGiQFO0zoH866jYMLnnGF3ajuxjMVhjYqCUq\n23oTj84MEZX/TkQxufycnuNiw5siGN0ZI2dGHDQuDoRLOfFZ9JKN02IOLu0R\neiNqWVqoKcjsww2V6VmfCZHrMJyzRZ/LTCTmPx2vXN39kGgKrEsSZEMsEL/O\nsiijb3sKSkRo3qMWNTEn4WzMKn4W7ebb0Eviay73X5v5VsySG6/vLZ3EV7R+\nOkDBFOQgmnJicVrdjxTJsVCW0eQcxjpO+aU5CSfEvn3t/MVOJVZWc4Xq1swr\nQRWK4X+c9Oq1V7CaN3oppyiqNAXTAA4R0Uow+0jby+k56+Hi6nyPl6A5SQrf\noQLrGQ4D4z37TD/LMUmp+WyBX4VZv5WRUTfVAKdGphOy/Lz4zhhYqZ9C0Poe\nGgnSG4XqrXmOKB47lQKpbOMzmRdH+IrBazl2bWQ0uXgs20hz7V1TrERIFuxX\nWqbOznSJUbGfy34Tu543tIFnWe62aiiJ/J8aPqeUpIlg2XkxdQtbHqwpW1rd\nz/wC\r\n=MPB4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"93356628825eb23bea706adfd527933f0c5e430d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.2fbba2554.0","@material/rtl":"9.0.0-canary.2fbba2554.0","@material/base":"9.0.0-canary.2fbba2554.0","@material/theme":"9.0.0-canary.2fbba2554.0","@material/animation":"9.0.0-canary.2fbba2554.0","@material/typography":"9.0.0-canary.2fbba2554.0","@material/feature-targeting":"9.0.0-canary.2fbba2554.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.2fbba2554.0_1606758035995_0.8939762976641121","host":"s3://npm-registry-packages"}},"9.0.0-canary.6d8574fe1.0":{"name":"@material/floating-label","version":"9.0.0-canary.6d8574fe1.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.6d8574fe1.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"85ce3f31f68fad89bf3a9a8b9f8d29bc3ae8a34a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.6d8574fe1.0.tgz","fileCount":34,"integrity":"sha512-TKDPEuJa03XuV/gX3f4iYcqcKGM9HBSgVonWGbSgwIcIXSxfekwC997Xs/ZuQS+iMaTE/mi9kFVPAkhm/bcZOQ==","signatures":[{"sig":"MEYCIQDXkWarnXuDHtzZyJhs1KFHBSqnf6PhHASjgwDq2a95aQIhAPG2a0wxnPHDLySt4QkT3RVvg6ChRZLFm9BtX1CcdlpW","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfxTEmCRA9TVsSAnZWagAAVvgP+wVosFvg/XL2k1W0E0F9\n0xhvxkL4JknweSvef03UufNRRIO5n6YmUvUwLNaJzWt5u9QhU49JzV3I72eU\np7+kO1IFi0PmZA+DSgeJ/pGoinAO1KaUWciQyQJOh2LHEPqakuAeBAbhidYP\nJ/lBgkFzcZhIBm8AUkz+m+Jm2JwvIxNf/8o9lZilFLSU/i6EkyQ7wEaJcHua\nuQbjRXla9i1CaZM5yBx3W5jRQdk1ZMQDG/InGAQ5vooImSswTB9AiiB/wcf6\nPBdlEppo+4CKQqge/z/ITK95oMNsddeuBtx4vxUmtQoEy2gOSOpxqtENwLeo\nRXfPml2DYZW7TknYH8dLXuaDt+/bWXMxyzguecs9IZpFai7Lc9cFCxVb7dkq\npT9REH1ml+lvwTHbQVjrMtG080tHOOIhk/RHeomD+ojNPOV7awSBTMm0HnNZ\ngvFln0sstONEOvt0Imu6NEK1LPHxk3UgR19hQ7+4TDDgwNlQsycyOfqXkKQW\nxJUtmGzWq53pvPeDHDpEF7P9muApPWSaa43mFKUzhfpiRp9D0r/bNDVZV3fk\nZmqv+XgYvps1keQuPaTQ8aML+KAA3HZ/xzuQc8vbjvX+J3b/6focJvJb9N7U\npDeZthjHjthHEux/IcHo0pKlzuzNGEmbCc6yd3wwDxyzgdWvGPchg7SbngHD\nfeJL\r\n=eBka\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b98a165c81d2497f6c0e8e5652743d71d87029e3","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.6d8574fe1.0","@material/rtl":"9.0.0-canary.6d8574fe1.0","@material/base":"9.0.0-canary.6d8574fe1.0","@material/theme":"9.0.0-canary.6d8574fe1.0","@material/animation":"9.0.0-canary.6d8574fe1.0","@material/typography":"9.0.0-canary.6d8574fe1.0","@material/feature-targeting":"9.0.0-canary.6d8574fe1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.6d8574fe1.0_1606758693932_0.22422341221655806","host":"s3://npm-registry-packages"}},"9.0.0-canary.fd22355f7.0":{"name":"@material/floating-label","version":"9.0.0-canary.fd22355f7.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.fd22355f7.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d25e73b66070fc5e89f31c5be0a579191315206d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.fd22355f7.0.tgz","fileCount":34,"integrity":"sha512-L6vSup4+jjulE5+RsQd50Km6QUnN2yohjrHxcdKCFmKGIKWYYSnfUORwVHYLtfvUtXSu2iw50fD4SvJAvaxWNQ==","signatures":[{"sig":"MEQCIDysLXSPfN7U554PB3CBlqK9wg3ubispRFGBfx0lkjepAiAcCo0EghaluwgRP6RVZdwnDtg61YlfCN/OMJZgCdVpmw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfxXljCRA9TVsSAnZWagAAE/cP/3jy4BCUDlavo5V5ZGiJ\ns0sOZEI5NYpul/EQzoDz0eT+VC8YFxA7GUvWnHli4Z8Ldba9gFDAcBqiEb1M\nYM4OQk+M4OscpRRKzXuU7Xs/lBbfXeINA8SacYR0VgKC2KZYvOHtZP4Ng1Uc\nbK0N16ylQhSF5Gut/RQGbaC++rb5aWljXnzgoZvfZNsP5VLjdWOAgcJUJLNR\n8KU5Nj1RuYk+o7l9bNF9LL/XbxW+c89by0Tc6CvDQ7PJwB4iYOcbyqsZ76cJ\npkM0zxIYHFndV82EOud9Vu8aTQGby9ssaFrB73CnekxuYyWtfvu5j2z0tFR+\nuDD7NiqT8WbwxaIfulsAau14VZai1LxCucH71WBdB5q0T9ln9D9zWwKAqH8e\nr4WLa5Ln1MWvyJRTVBqnIDaimalwQIw8KEwZeyDPsxFMqFWAhamcmOOrLpk7\nCLgqd9uUKQSGLI1t9ETj6gUXC7agju4C6D9yoNAklwVS8t11uWL23QvIaHaw\npoKHzJgLoaIK8F9c0BmB5kMq98KdaNzU5lgxM1DQK+6tQ80YemVsTsZ5K+S2\n14bm+WGcFzuabzdWUz+gG4wgd5rvzBCEfJ9wijl8ycTsK6tjMn1iIQ8cMUcd\n3yuVQQnadk2p6Sksrs1rJskJbwPogCFVsHKnwyYeoXfH3ttRzCh6d1ria12/\nwo/j\r\n=ls5n\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"86a40292baea3adb58a6c26ed8c68a9a425cef18","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.fd22355f7.0","@material/rtl":"9.0.0-canary.fd22355f7.0","@material/base":"9.0.0-canary.fd22355f7.0","@material/theme":"9.0.0-canary.fd22355f7.0","@material/animation":"9.0.0-canary.fd22355f7.0","@material/typography":"9.0.0-canary.fd22355f7.0","@material/feature-targeting":"9.0.0-canary.fd22355f7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.fd22355f7.0_1606777187067_0.1866305918031168","host":"s3://npm-registry-packages"}},"9.0.0-canary.c4ab98722.0":{"name":"@material/floating-label","version":"9.0.0-canary.c4ab98722.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.c4ab98722.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"65b2d9d35681c3d2786e801bc02df94428057162","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.c4ab98722.0.tgz","fileCount":34,"integrity":"sha512-uYrz0F9VbBrgJySmDQ0vvd1o1BVOvjTHJl13vCMoFmiBfG/V+TnPDPo04f2vA92sDY5djUUfDNMCwAdEciL+Yg==","signatures":[{"sig":"MEUCICQXiA2GQi2jLbLVTozKQ0Y+9Pff01u93+/U8Hs32qHhAiEA/yh+hkUae8xD6DC3/2FDD0cBKtSYMcKMKu655Mz4qRE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfxuZUCRA9TVsSAnZWagAAeeQP/36/mrnaw8aUltdS5GEp\n/5Zc6NslFvY/Lmj7ZlR1EI/WyoxLbvKFRYxNj723+JykyubA53GavOnvK+3X\n5i8iK3TSJ/t2I+XquO5JuASQC7I/SOAeC1EHNYQ+0aZjhfyOZMq9TRVv/QIS\nm2FqXWEPyvdzaO7l+phqpDybxi0/ykjyfcKSpEpnj0FJh5HPc1XZSPOYga3+\nv1E3zvuI8mum5IICS1RikUO3kx/tYkSSYjx1/XASuwNUkAeXYR72bqrv/ZM5\nG8ZWvcnXuoqBMLLAJPSaIqQ9lj45DaejQs/o+iepC1ARj+95BQAmIWrNs5Ne\nYWRAb2BIMWBAbtSw0+PL1S2I0N+weL0TVvzGcJ0Ji6oH7WDS76bzddmcGzW2\nW7oeU9qgaI/EuRVNyO/WumPlSEiAWvVZa8UvPL7euwMm4m3dcwrJDnDk2ecA\nLBj2XL+C9PlnXfn0syrN4O5+UHch4qrR7TajGxa5kU7OdMB4YxRE3JUKWtU3\n2aiArEN3b7K595a5mgU0jjZNTFGLXxsCd29FxiOxE+s558BiEGi0YrrwU5I2\nVpEeJZCkXnZleDtiA3wRWFhFJxp/Aepmp70AbcH3VW2b8m4oAQ4BlrfPUEFW\ngsbF9TUzVMQekm9w7AqFNM56WOVEH80noJ2hVwbrwJoOiFQDT2pWU26tPZgc\nbJ96\r\n=fR29\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e6187eb74996c124e1abdcea72dfb697bdb1820f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.c4ab98722.0","@material/rtl":"9.0.0-canary.c4ab98722.0","@material/base":"9.0.0-canary.c4ab98722.0","@material/theme":"9.0.0-canary.c4ab98722.0","@material/animation":"9.0.0-canary.c4ab98722.0","@material/typography":"9.0.0-canary.c4ab98722.0","@material/feature-targeting":"9.0.0-canary.c4ab98722.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.c4ab98722.0_1606870611837_0.9957757558042417","host":"s3://npm-registry-packages"}},"9.0.0-canary.977585650.0":{"name":"@material/floating-label","version":"9.0.0-canary.977585650.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.977585650.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9dcb6c6295214e27d819f3766aa2614b24d37b47","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.977585650.0.tgz","fileCount":34,"integrity":"sha512-7n4hzBiDHpAiXD/5HKecj8lbQi44G+D6Vi0Wzr6122MMHGObnACWG7BVI3w7trUFKmMoAhTYITEsQVujqysycQ==","signatures":[{"sig":"MEYCIQCRVExcf0vumcWEucZSyT1JVNfWwQqtxcy03z+xfZs1xQIhAPOGdR2LNTe/wIwOjO8JwKyh8xV5qgmi1SqPEk1TQ+lr","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfx6fICRA9TVsSAnZWagAAWLoP/1ls5ZBQ0sL751uVS5X5\nsqW4drwo9me6Nf0fL0ZIZ56cQSfcvkCkBkbxRf2KhNHHO2m/Zl9kADhQV2p6\nU7zbb/NwNiNhV6mjrZIe3djxvCTAXPyz4CM/wgc52hnqwgGMu+0NkSVEaIVy\nyNDm0GPsbMEANMVjYrjoDz01rgv8nY5p6UtyMtzOT/a1dEbn+jZOvo/jBTQW\nWpjra0JYSLsjfeRA/gHSGU36kZhes7XEIpYWRF1m8Vuv6lb4LvPUYbZaM7Fd\now2VJHB5bG7uwAQkunWA1sMrxHVQJIhu27dq91n0Voxm+LuKeFNf519+Lb07\noH1HS7fIzrlFyTGWHTQf7HX6fbewVlYWc2eT/OBORwWVvCDiEZifxn3fTohk\n5GpIGfvxWqXuueMpn3HHm2MYEOLGtWDAZUEq+C5fYauGJIZcOVn+41nBUAAt\nX1wYJSydqZTG2/sGEF/kWbQNGhBfcQGWOhW0ju2/t3vexxtOBcmmslBjGtuD\nOQUfrtYYiCsD/Xjq7RtjR1QDaTTZ7BUGKkrOZTNf8Tpmd8zXP9A5OO/BfQU8\nXtGDFvkfMtYD0Vkrkh7HJT2ezG6PGGSWLLkufKWEm4zLjaTgc4DvS8+VGcRD\nWvD5cS9Rom40DeoW2t5q0ueZf4NG0Cd/ItqmyB5R4KDzx1V1Um0WEMeLkc5+\n09eY\r\n=Etux\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b008ede8c0d581314d3b967bd295990ca8eee38e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.977585650.0","@material/rtl":"9.0.0-canary.977585650.0","@material/base":"9.0.0-canary.977585650.0","@material/theme":"9.0.0-canary.977585650.0","@material/animation":"9.0.0-canary.977585650.0","@material/typography":"9.0.0-canary.977585650.0","@material/feature-targeting":"9.0.0-canary.977585650.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.977585650.0_1606920135494_0.48091197671528985","host":"s3://npm-registry-packages"}},"9.0.0-canary.c7edfc7b6.0":{"name":"@material/floating-label","version":"9.0.0-canary.c7edfc7b6.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.c7edfc7b6.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b0c8cc5d5aef5b7464309ebe0ddaa191a0656e18","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.c7edfc7b6.0.tgz","fileCount":34,"integrity":"sha512-scEP/jfodC3Bv1Z/J7hoN+GLbaRzDmrC08h9QGmrjmnhD2W4asRGSd+ysbbLuAtwzoq+Mb8NB8Ev31HI04F77A==","signatures":[{"sig":"MEQCIEGSS8jZV4yY9KE2O65ygo3iIjkC5gJi+sn9COk5PfLAAiBnbHf8CVkpge/rH/WlhI3deT/np5w1KtoSvQ1XN65vjw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfx6mRCRA9TVsSAnZWagAAddQP/2O3C54CT4nrDgzTsbE5\nju1Q9NAJc4kGj7nK2nSu6m5uhWGvkXVbCyDu/vykAkY57kFOwHCTKCj7qEGp\n8gAP+6Q12Unj2ge5qkNbmJJIjfXHfmVzAQm+G8/0mMhJ7eCDh/YU8hbB0GTn\n7Ggftv+z+fR8bT9yFivNk6l/jB7bOkLTlmDHGm8PjXD3NlwtQ2+Q6UunA/Pm\nckfls9CPw7CCbR6494k5+fjWnvm5mHjGciBC/fVIv1RuAfyN8/DkvK6vPmOV\n16EaWs83Fyw2Ta5jpTgd5G2TFovhL1B9vBYHHm9g8XRyN5ZYPzLLUPbWCyXc\nujve8IJvWnNg4+pU+XC/Hhqg4L54Hfj2l0RyIfgDM+2Ghb830kBInC06FUZ3\nm1sjZgZ1iha77oSN+F6PEl2Ky/FzNURBWd5Ku3G/Q9C6YKtzsfDoY4F18Iz6\nAlhddoBUiBbY1vLWeMzXz9wE9WDcAe5vbmyCdkGsoa87B2CiHnPe/Sl/W6c4\nJ2ckRKYtsijZEWqiKuGPUItypKwdhHURv9JcXLaCPPmA7zh87FZRN6wB4QsM\nqZbZG5WU5gSd5MoMhufWyZyeaREaoy7h6wcEG3rv4xax8OQe9a6KJA8dkR5e\njx2YVbHg+7fY8qVvDbaT1pHAXAau8BBs4vQUH4ijPr2uIPwUd6bQyMAU7/uH\n2l/Z\r\n=QynF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"791973660a1d63a77aa10d2bd0df7c0e6ea94698","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.c7edfc7b6.0","@material/rtl":"9.0.0-canary.c7edfc7b6.0","@material/base":"9.0.0-canary.c7edfc7b6.0","@material/theme":"9.0.0-canary.c7edfc7b6.0","@material/animation":"9.0.0-canary.c7edfc7b6.0","@material/typography":"9.0.0-canary.c7edfc7b6.0","@material/feature-targeting":"9.0.0-canary.c7edfc7b6.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.c7edfc7b6.0_1606920593074_0.3221482068168513","host":"s3://npm-registry-packages"}},"9.0.0-canary.4f3347306.0":{"name":"@material/floating-label","version":"9.0.0-canary.4f3347306.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.4f3347306.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"869b0d9ce1c42f32a879c8727612a3e29f85ce87","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.4f3347306.0.tgz","fileCount":34,"integrity":"sha512-0kHVcR9YnmHviEdHa0NRegCM/zw8t4eKzOZn+Er2+KMEGxj5uEzd7yO4yiMJiCB4PPRaYqHzF3KAd8RM0t/5YQ==","signatures":[{"sig":"MEUCIQCumC8IK5h1Rguih1XQkmKrg8lsS+/0tLG48cyZv6GMfwIgCQLuwLvuTCI+zPnnnbF0ENMvoLnJ7ewXOayM25JH+Ck=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfx63ECRA9TVsSAnZWagAAnEwQAKBG/ggPgI1E15ENS/Y+\nqmIVODtBhYY8pNUUNiU9adhu2zrOhbHW6PWx9ScycVNon83D6dlrAxWHgZGh\nJ9K5Fgs5rrvR7IQCbEZLcgYqCYbKRdtdtoU4jDRlRSpHNCkNaLtiUIkADcp9\nCMthSeKj6aIf4U8iTrwIwCLyvP7TZsggW34+gIyl1aFTiNuk6kQvAmcWtCiD\n+7LW6jsHNP09dFLhnp4l/bj5Nq6KZSVuTzy8oOjZ4+nwHf+tDuhnwn+FRM3M\n29jeHhxM9Lep6pqJuZWgFsYQi/U4Fdcp/r2VLwFgNXdNG+3WueYSTtCXTq2x\npsS1Z1aoGA/FZF6mpj6dRDJrbVLoymAUrF1eb6lesHf+68PB3jHoNwl6M3bM\nDON72UY/5zEvCWu4/zqyKkgZcaOclU8ovhc76vcIAvB4QS65Q4xrVNMVGVni\nRpWTkikGKhZSx5i9gAwiXGb3V69qwrXU/h94SNe7nsSAZMi08KrZk9Ti6X3M\nka3fm8tGPmhnMDUK6lf8rMsy7Zyu2zdytUfejuWVL9IbR2nFv6lYlRRiei1o\nKiSj7l+Lug4jDRWBpTwiJaRiDjJDqotC/fPFLAVtYTCh4ftz877huyqmByhN\n23zLDrxbkBGaQ3cZnYtTBQFAws+LFW9mIo/IZ/lVF6QRrAym2Jnb+ooduw5B\nj+Ma\r\n=QTnR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"31d08595c0470096709a4d5518ba7444313882e7","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.4f3347306.0","@material/rtl":"9.0.0-canary.4f3347306.0","@material/base":"9.0.0-canary.4f3347306.0","@material/theme":"9.0.0-canary.4f3347306.0","@material/animation":"9.0.0-canary.4f3347306.0","@material/typography":"9.0.0-canary.4f3347306.0","@material/feature-targeting":"9.0.0-canary.4f3347306.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.4f3347306.0_1606921667984_0.3189002266847416","host":"s3://npm-registry-packages"}},"9.0.0-canary.37fbae10d.0":{"name":"@material/floating-label","version":"9.0.0-canary.37fbae10d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.37fbae10d.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"adc8db46d59ba5403913dd700ca5e67a44531f23","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.37fbae10d.0.tgz","fileCount":34,"integrity":"sha512-PRZkV/2/7LoN6pLPbYkx+hd+8jlX56bGzdN9WO+K0oWM3wTfijGnX0PuLO7RadSER3g4xCJIxiXSVY9IpcFevQ==","signatures":[{"sig":"MEUCIGd1OqsLbbJYb2/KP+Icd3ogDxDOWBuFKnAk2cMU9FQhAiEAxeYzANWoPqw1oNoRqyH7Do4yYewr7x2VZTjMaBGfGVM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfx9oKCRA9TVsSAnZWagAAxYQP/R5OO5+hQj7Vl6KJPXd/\nNWDVTgZuMnvfkVS7KUH0VMQkGuNA7GRRPptk75nG//67S6+2iJazEUbt+ciB\nrlTCkyz0VYo5wVUiuJ0nFczzMJbKwcU5KLmYdD+AtejXa6roEhO1+csXeLSv\nXSzoZB8RyF0H+foCa8W5+fBl9g5CB0HvnrPXJUS9nBh0XXI94v2rM/7hmE4G\ntJh9qYmRsXwP0yQk9P5TAE0nTKI9xR8ZHwlaAA4afH3QS94Xjz857HYWPd7y\n5kyWs5o+TwHRSweqhQhTK01xkzT74CPcOj4cPKgS1rBQdI0kdVYYyYxfacyO\nji68IHvhf+GVcvEnAq8THAX1nUHOsikoJPet2d+7+fhibkcUvaMFDoXN1BXX\ntccWK17Xv9r0u9mrV7oYQAaEo1A0EJkhiqylFkkopkiJwRManJ/2pm1vGlax\nJXr9Uk2WX+me1/g0U16cLYB+UFmiZt4C4Yq3XqoLEXfZmTvGRjt8Wu+rNX/3\nsUdaH/iRcWzwZr9LmEGDLrsTOcm7SaQI8ZboaECHIkXM277L53ustG8rSrQ8\ndfHMW5F/ghAFy+pWTh7MKzJKtko8uSsrqqdCll764pvukE2tiPs31fc+h7PV\nb+s/Oe97QOYK2jyjd+ggyDvSWBuetOP1OZFXvI8KkGN0PuSb/2auLy4TNEEE\n9ehQ\r\n=+KTp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"104ddf5dd99e7bc09a57e2cae74614b7726fa235","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.37fbae10d.0","@material/rtl":"9.0.0-canary.37fbae10d.0","@material/base":"9.0.0-canary.37fbae10d.0","@material/theme":"9.0.0-canary.37fbae10d.0","@material/animation":"9.0.0-canary.37fbae10d.0","@material/typography":"9.0.0-canary.37fbae10d.0","@material/feature-targeting":"9.0.0-canary.37fbae10d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.37fbae10d.0_1606933001508_0.9311145519183979","host":"s3://npm-registry-packages"}},"9.0.0-canary.11da3c0db.0":{"name":"@material/floating-label","version":"9.0.0-canary.11da3c0db.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.11da3c0db.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a5aa42573aa1bd3f721f1dc0937fcadb4d4678ff","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.11da3c0db.0.tgz","fileCount":34,"integrity":"sha512-BZUUYMedp/mexbGyHCNxXXwYZELThwl5vOjxrEayNif8EYksBtxL46HPoQOwpuurpzGOvhw1n7JniMhk4qFs2w==","signatures":[{"sig":"MEUCIAPE224K8sWh21XZzXMRXjToddYgrhO3VaS+c2bjRWiNAiEA56+d2YilAKZHwT6U49nf+qGm8rf6+zHlZMx5ZMIPAmE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfx/eSCRA9TVsSAnZWagAAthoP/imS1axOdtkP/a2547Kb\nqnaz4OBD7Um+47emy6ban0lHl/OT05jAfO8xqEvPHcctSpuoEme+7i/lvm7U\nAW7A8suBuG1iZ1WQktNUQTklS3ovadLcg6Nr4Yetj7Kv4Sf0gu+0ixNbWB62\n8TDNkVvV2tqwIGCC3CHaMDjGB4A+PXI4vfAaWQT/NzBk/qbjwUtRCxp6ydu3\nGDKZcKJk8ZGg1aCwi8GsrOe+GJNHYnxbaf8Lh8ZftymaMzGXk8FOnsOf56dc\ntqFsY/MGPcEA/OaYiloJ1iXrdH3stxY4GLBEfKEccGoZG6N8z4dIGqu8OdfA\ngH1PqG/N326yIn+6GOR3/ncRsNdkO/UpZ8yGyaRggXLz8fUA+GC4tbD0OnSb\nQiXVeudUOzb0WyWC+aI2VjQnBEaoQpssCjbN5sGlcJvFj9FW5mDqzo8VrFR8\njLPpX9fmZ+q0uD7eZPUNjeO5Qg0bH3wtxAoOMoxwj7EnsyoeQVX2r57EsHhI\nIOFgnchEo8G36CECJbkwkK0EKgOdwC9jHs3l2v6Qb144bCmYRdGB/Wj3AK5C\nPCcrWfOVRBNoaq3joj+bGQQBB3nneqBG67FlAgyaqPquKoxQia6tj1up8RJg\nIQ0zxDzwuxrcCocAGPbvkVOR4f3QHUiBVSMQzaavehA0gCv3UIEw3pTVdIgB\nzxa1\r\n=/pH0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"db8b5af79bc8221682000a74eab75c30395590f1","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.11da3c0db.0","@material/rtl":"9.0.0-canary.11da3c0db.0","@material/base":"9.0.0-canary.11da3c0db.0","@material/theme":"9.0.0-canary.11da3c0db.0","@material/animation":"9.0.0-canary.11da3c0db.0","@material/typography":"9.0.0-canary.11da3c0db.0","@material/feature-targeting":"9.0.0-canary.11da3c0db.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.11da3c0db.0_1606940561663_0.28431394742862603","host":"s3://npm-registry-packages"}},"9.0.0-canary.489d4c219.0":{"name":"@material/floating-label","version":"9.0.0-canary.489d4c219.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.489d4c219.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5e6ab2bc576f106614e235559136a74576b37bb2","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.489d4c219.0.tgz","fileCount":34,"integrity":"sha512-U0Xng/qyQbtwfWV+y/FdRD2PX66BMA3tqnmv7Yrt0Kk5KEoEXAMCGA2HX8KmDEvxyvBROEh+IWwWPDLKm4XKRw==","signatures":[{"sig":"MEUCIHrbbg3saddTPLJfc7R3AoHad9Q/oYT4LcPFpTjDVoRoAiEAsGqMQyFXyj9DWXGkTXFUOYQdGaL6R4qt6Tek++w+KHA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfyQRwCRA9TVsSAnZWagAA8O0QAJs8S1dqEpgWdmnKOU+d\no0eeGpgrRF4Se08MjmErvSzCcFhpixxGa2r0QqH+PfU98n4Wl5fkrV0t+FjY\nk21LimOInz/OlONIjuNLsBRXwXze589O1u9AJgHLp194kYXGZ2HeIKIh8PNL\nPsIiq0AXmCb+MMTYcOo9BMlqUOeU6OAKPN6EU+lUFQishmNHnt1OEOr8y5Bu\nmBIsv0PfVrGzpgmMiGMz0B+aN3RCnfTdynBeABVjIjXdfX2tlJgtN7yksnOw\nQprGSuiNai8DINNs/8o5HrkU2reaG5LUmWz4a2BZoeRls4CId5PdX0P95RNn\nA1O6i6Rsf6V06E/f1cJ/Wpaa3LoQkNJVNd2+nsksZNNPpFPYkpxKccRaO3mi\nAMzW06y8sIzQrvRKzFG6e+EV5Hnm9+SVU6ZnT2YgFTeoxb1HC4L/REYW9WUg\nxpgD/QiYKW4MhGPOpsOUhSZPZe00mbq7nG52ZqdD3LDqTt80lXCZQWdXL0nj\n+StKb5767Y1kaMs188Sw1umIsMUWvm4wRlb8kw2HqmnLQHfyjSMB2r4tT332\nweiMAXhYQoqiMztMS8LyOV0+xC43/JtDjkWxp/CSXjykwbl17Lgo4u6Xyd4e\nCCg1wjwJ4w02hBntc7aPEKiAK2ObS5vzcIJmOpN1XCE3OU5acO8XfZDqtBMW\n8I1y\r\n=Yy8m\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b1c4ecae655bd87a48f6065e7c292d4b30cda43b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.489d4c219.0","@material/rtl":"9.0.0-canary.489d4c219.0","@material/base":"9.0.0-canary.489d4c219.0","@material/theme":"9.0.0-canary.489d4c219.0","@material/animation":"9.0.0-canary.489d4c219.0","@material/typography":"9.0.0-canary.489d4c219.0","@material/feature-targeting":"9.0.0-canary.489d4c219.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.489d4c219.0_1607009392459_0.5758129251668229","host":"s3://npm-registry-packages"}},"9.0.0-canary.6557a69d9.0":{"name":"@material/floating-label","version":"9.0.0-canary.6557a69d9.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.6557a69d9.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"356cc1c30dbe9b3ab9a7e2e922a293169273da03","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.6557a69d9.0.tgz","fileCount":34,"integrity":"sha512-pmbDFgna2eGNsUyRY+sariPwsimtLUBBm8tdZXo/pba7NMq+pjF7DC7QsUPjcou7prJgxbOJAq2w5NPSYGkxPQ==","signatures":[{"sig":"MEQCIBexFWLhhF8lWMJ5EFrGJD7cwW5OdhjBQwt2TTvVu81LAiBHKUXwN7Blefep27R9Hd5pDPrS4r07wzZMYwKHX75WQA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfyQc3CRA9TVsSAnZWagAAQu4P/27h6W+9b0ZWNT5306gV\npkawHBimkL4MFV2FNiuMwHOU1/jrDEXXm59gtxMWWsvL8IfkHNtdCJWJdWoI\nVhfHfxy/lg8CCyKzYvuNgXGeXePl2s28NVLKIUrNRRKs/wASi4NnMccG6ZvU\nev+pX8MVNBOIp5M+Ga86uYpgVvDrHH81ECfGssrthcAhUY5wZAFGC0blf3ox\n4lPI/aGaZbpb5ljsGkBquzOcwuRHjZ7FOjl8LrmAleti9b0FgBwYtBiG2eNF\n1nYMdMNX3QWIRNZXKTYLWHuhA64KtjhI/TVJoxH/gXnnXiOCghtjH2VXFnqn\nfRyXmCLDeeQSw1Wc87Dl2WEOzuVtJ/9NZ0TrXV06AV4jHeN74wvkhRLOmb64\nntTtG0zOqh8HkYM4Ju8Pql+Xg/sr0miCzqJjakhrGxYcXPYaG7FKja8Hy/T+\nytTKU/qyxnvVrPiPERVgnQo6YVp5qApH9a4AGcBw12LJ3oPW2zVlT57N+5ZO\nZ5cSEqAFHKk5cKrkVlgtCGji9QP0T5g5j3hdCAkZgncyLFGjd72gtM0iBfRd\nGgtQTChy918KPod07XwRW+CRbUYfgc+vL1w6dZ2NE4mdXQc6UKiwYWqGG8ur\n6INjgQXCvjnYBpx7Hk7irATtkxtwSnrwSn0nW0/Dfz0h9Hrosj+int3i5oL4\n85E2\r\n=zLUl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"55ff05f1fcd2efe299d07cfd81279127a6fcaa5f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.6557a69d9.0","@material/rtl":"9.0.0-canary.6557a69d9.0","@material/base":"9.0.0-canary.6557a69d9.0","@material/theme":"9.0.0-canary.6557a69d9.0","@material/animation":"9.0.0-canary.6557a69d9.0","@material/typography":"9.0.0-canary.6557a69d9.0","@material/feature-targeting":"9.0.0-canary.6557a69d9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.6557a69d9.0_1607010102980_0.9972787525787206","host":"s3://npm-registry-packages"}},"9.0.0-canary.4ea1b7c69.0":{"name":"@material/floating-label","version":"9.0.0-canary.4ea1b7c69.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.4ea1b7c69.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"10629d8e4d13d249922538295f34f36ba37cf825","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.4ea1b7c69.0.tgz","fileCount":34,"integrity":"sha512-p3i/24Pd2bghk5qUYgyyXHxryWsdVJQQG7dNK3+nZ/LbCit6gc4m+B3LK9iKlgC3ZPGgB4W6KXt1vXpqDdQUsQ==","signatures":[{"sig":"MEYCIQCihXvaDCVGLWwQwLOdV7LcDAzrsS2azfDspdny45ogXAIhAP7Y4juGdttBctg1AfiHnLtjZ3JnkSymts96BJ8txeTz","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfyQsjCRA9TVsSAnZWagAAZLAP/3Ko/1T3I2A1Pz/lbjY/\ngf7nyUfuieQhLqdFDEs7bbYb2MywgjdaYYAHG4j0mdUqlQbfZKw4FYZI7s2v\nKYNAUq1B4rhH9/EVqiRAAwxd96eJhw2bYCEjMgv9DJcpxRjEEKIsSrFQNlLv\nqk59bKrfzvupGInImFZvFgzDDgn2xrnO50X3f7DP6jAwH85IfUvOoAqK2oZ6\nFgPR6Oo2BqpSsOLgTLke06HtAnzfGUizLVkmoKscm46yUTce97t735lSVAPw\ndmIXzX5bigP79+ichEon+dLJwkUA1VJqOSaT2TbU6nxk9UkJWNlyq/06RWfj\nkaEYkcYNxe7vL52iUQBBs/wjhsGlIQifNi5Sxv8s7yez/2s6Se+A3g2yfu5q\nGO5EcnTUNdMvxyGTExQv1hBabTvQjnfxQzHD2GSuVCNxANrSj+0Zhwb2mQXe\ngtcGvxoYyzQT+LpzhXVavgVsrSvjwdbK2qrmtkjw2tEcOWPsBMGjAd2GXTLF\nTcm6YYLIcgzQLRpOqxHncIs/Owr/zukoFXL2PKc9+3J8ueUEpYpvAzCatp8s\nichCBnuSUDWg835wHusny8h1clEWWhFEhUlod/C7GhYgL0z864AnDXNoYzRB\nz6oNkfnvjoIrK5A9lQRhoLDH/LYQqHxVSrYv/ocYrzDMoOqdM8HP4fsEu4ZX\nlncu\r\n=A0RL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d7307ed831dded5d9e22a8faf595a7411258793f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.4ea1b7c69.0","@material/rtl":"9.0.0-canary.4ea1b7c69.0","@material/base":"9.0.0-canary.4ea1b7c69.0","@material/theme":"9.0.0-canary.4ea1b7c69.0","@material/animation":"9.0.0-canary.4ea1b7c69.0","@material/typography":"9.0.0-canary.4ea1b7c69.0","@material/feature-targeting":"9.0.0-canary.4ea1b7c69.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.4ea1b7c69.0_1607011107007_0.42783210257727733","host":"s3://npm-registry-packages"}},"9.0.0-canary.eaeb78ce3.0":{"name":"@material/floating-label","version":"9.0.0-canary.eaeb78ce3.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.eaeb78ce3.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"00af9789c813fe673444eb7cf1486638e6ba518c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.eaeb78ce3.0.tgz","fileCount":34,"integrity":"sha512-hibS6paCMijVigQoVwKO0N8UltiXaywPN9mmvv7Ls02vSknf6E9ce+UmCrV7qCC1vm2yZzEykfTIWeNSsJCWsQ==","signatures":[{"sig":"MEUCIEmqERDxe0DYbwzYCLLrgYL5GvJ4XCNr3ctDgyraQtaQAiEAjp7gC/BQwRG6Qe9vEMQWJuDBoXcu2EmljL0tmSEqc50=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfyRoGCRA9TVsSAnZWagAAD24P/2/UBWvzLITBTSvIfuhV\nd6TalojTj5a7nAV03ujdR9zdn7fGXXwfo61B48fyohN78newpcFIPfpaZMOf\nPbd5qnjPRJWCRH2XtC746eZbRqymt/viI18FZM1DF2kpLuIxX5RinlZYGZrQ\nRCxSldXMra209VVxxudbkSURm1ELwehATda8nMELNYTGuWv64bew0Scb4riH\nrbUk5aXFIYrWN7ihmFKKH2RiQxm0Cea08i8mJZXRN+eZs9ME0sJVV2g+iC9G\nBXoI4Nf7OBXFDUjgJ3GNYxeoxVjtaaHsbZD7sFATVnlXId3kuXlrv9JR8GuT\nldJ+n4+USqWdPw5vCDFshT/xTnO4AyA48UqHAl9mx/XMoYnR4cDjZwwaS6oc\nBHYpVmSqraTPzUtkXzeBXsFRNS5CGnrW8xrBijL+z4N5PRRZf+mp39NMwAcq\nCVJ1TRVtTN2yqOq7TPhAU38Ztxlbti9ZQnmtASecDD02l4CfIdoAgl9YkI4U\n6h4z4dCjm8TYg2F84hoFwXwUbxV7n5FvSRawxyQ0fPrI2DT6sfwB5h36Q72K\ntwWrIELealVESnVin9Y+2We5Et3DxlMUtrwKtGRF7SCF5BSYjHfon7nZof/X\nim5qZmJUFTIXDjuyrXV7QduJdrHKGJEKsr3LdiFYk/KIO+QHzfz6cDMtFVk0\nTmoj\r\n=wkdw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"9902fe5ed18fabe2d289f92e75dbf17abebe5a80","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.eaeb78ce3.0","@material/rtl":"9.0.0-canary.eaeb78ce3.0","@material/base":"9.0.0-canary.eaeb78ce3.0","@material/theme":"9.0.0-canary.eaeb78ce3.0","@material/animation":"9.0.0-canary.eaeb78ce3.0","@material/typography":"9.0.0-canary.eaeb78ce3.0","@material/feature-targeting":"9.0.0-canary.eaeb78ce3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.eaeb78ce3.0_1607014917690_0.4384876605087127","host":"s3://npm-registry-packages"}},"9.0.0-canary.1c156d69d.0":{"name":"@material/floating-label","version":"9.0.0-canary.1c156d69d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.1c156d69d.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"055fdd9729b030e45c4bc8089daf24c716c76126","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.1c156d69d.0.tgz","fileCount":34,"integrity":"sha512-Brws2RwJsQkWo1Pa4WmW9Y3HFk/LAkSjrDnQl1BQCwRr1cYW2fVzFvFxvmN4XTO/k/wBuLhqGTBmyWyJJMpZ6w==","signatures":[{"sig":"MEYCIQCWDUnbUOK5aCYORVefe06JOrUYyQaVVHYtQ2kyRCE4tgIhAJG0CbmUbWfF3u7mJCnu386ZgRfpRW7owmsfWCtjplMf","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfyU5WCRA9TVsSAnZWagAAZkkP/jh/ty+4LiI7ZKhe6KLg\npRtCxoDbaAtojv8vNtmXZQdlCYyBZDuTEN4W/scJwujU/GyS7N0APZDjp4q1\nl+eys5S1dWhdom6sayd8cvJ2f7BKxMF+9fbMNeJNjCTB2ugOHj+YZxtAEUeq\nqMnth0hVbMGE7Tegx1iW54b9NfVLtHpr2JwtektvuHhT0vsqFRwhzjXabzLS\nHS46S7suJgwi+HpSwGLQYUOk0L/f4nR98xyJn4qkvl8LC37PMjvoVC1kOZOJ\nYgfxwCoiu0Fr8E02vjw7DjOuzxB0W9hiaK33lUk7Pmuij7Tdf58TW5lAbjFg\ns9G9IgJtNLjFInPtVIIpcFXDz5LMHGQmHoDTiGvMeibP00g6CkXhv+qXzTb5\nuTGIYyegaot93s2JWpYXGi9hhZbVIWxGWmEwXFHFGieFTNPaIXjouTmHwIcz\n3k1zPOq+kT6ZPlqlnbokxv1RPxmxX7AqNCUCMspLeu8TRY+SkaYVDhJuWQV0\nFkFvYzYAukhyGY7yH8hwXXQN+h44CsqkE6pt3zROfuM4aAUgEFrzAbt0QNit\niP+nsAMFAyFrItjSUelI0R+VHPCUF+KFanQVJ5pxPxwHC3ED86wkKBFzIB/9\nyzYJxPDCSNya4lX6lMX0zHYIlXZ+h5rtq9ScPTyIxznlExw1Zm+XBszV5VNr\nUXFU\r\n=ZiaM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2239befcb4baad98eef5bd67444b0f759e58a812","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.1c156d69d.0","@material/rtl":"9.0.0-canary.1c156d69d.0","@material/base":"9.0.0-canary.1c156d69d.0","@material/theme":"9.0.0-canary.1c156d69d.0","@material/animation":"9.0.0-canary.1c156d69d.0","@material/typography":"9.0.0-canary.1c156d69d.0","@material/feature-targeting":"9.0.0-canary.1c156d69d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.1c156d69d.0_1607028303739_0.508871235661545","host":"s3://npm-registry-packages"}},"9.0.0-canary.832668d33.0":{"name":"@material/floating-label","version":"9.0.0-canary.832668d33.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.832668d33.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b673759e29b53cbbdd207d86dc935995078204ca","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.832668d33.0.tgz","fileCount":34,"integrity":"sha512-S3h+lFxUMt8lSq5HYexG54IrPYPBWYuKLgaKmzyetSru9S7BpnZVvFXLmrbwd+6gd6/Rx73EQ9svlWGncrAzqA==","signatures":[{"sig":"MEUCIGe+8+R5dnvMDbbRrgAnjlaM3V4tTuKK82E1cGzH8iD4AiEAiEnxCn/PJAK4Z5hmRB8uDug/Gq5Xm0snpVAoxA3zp1c=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfynqTCRA9TVsSAnZWagAAEqoP/0h9Wn5S1qXDTTcHEXxj\nmbNQ6yUzufl7cBXqNPS8RYuhklcmt3JnFOMAKzT2uQpMoRvfzqrRSPk9JWqk\npKPcPdwAKJFlj5WHU6JI1SYVekmsnkQOR2ykdN1BwPd/R8xBLfLT5TSu9Zrf\nlN9vJmNgbneyE7Vmc2noB2YIulx3H1vMKRTonMI/Ez+3MW9d41ay/vUNX339\nDLip1hEAtXt4PBaVYblMU9sPWsQEg1+aTD7KupVoCRF4CMnuCZZ9UqAnerky\nmFix/hN2Oolm3vN99Qk2R8Z3iinVChxebRLQrHrzzfjwTuRug5Eu2vI/TIpe\n/gKMr/Q1bh25VEGFgADfkQJpHAAK8jvLUp1y/Wrh6t0ihnjNEYuWSkS61JxD\nWy77srFi1AyFyIwagfG7ajuh/+uZNUEhADOzn/Kg9tNjiVSyPppKg4RM0dEP\nzUbLPgSAjjtEvxMcQySfknoV+pV0zGG6z7ccDrg5eCUErqxQr/0x9j1rcnJ0\ny4YcI82fC09oSWV+N/fARwTS9wm1jrkOsIJv48nb+AB6WGbhjKCyUt88d8I2\n1zdj4l+9HlEeButx41OskEy0lEdQaeKDkM0rwUT0BvY/UtAiJRXRNdjPPcjW\nbRr+ZBsi4J1cXsplkGYmvbqfcuT47QIc+hEB/hQWfpsUAm5swRy3xl9BpsOl\nptSE\r\n=w8w/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5744d71a59950726441cfb1b4e3ae33706069b94","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.832668d33.0","@material/rtl":"9.0.0-canary.832668d33.0","@material/base":"9.0.0-canary.832668d33.0","@material/theme":"9.0.0-canary.832668d33.0","@material/animation":"9.0.0-canary.832668d33.0","@material/typography":"9.0.0-canary.832668d33.0","@material/feature-targeting":"9.0.0-canary.832668d33.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.832668d33.0_1607105171153_0.37711861128409363","host":"s3://npm-registry-packages"}},"9.0.0-canary.4321323e4.0":{"name":"@material/floating-label","version":"9.0.0-canary.4321323e4.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.4321323e4.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f0f8c3fa0fe488c73ce914e1febab50c4c6931de","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.4321323e4.0.tgz","fileCount":34,"integrity":"sha512-7TkcNsIiv6gBRFLB277s9YnYV4oBxU258BGGGEIzMkzZyj3PHkuWnD9skePNY4biMYtlmXto16vXQSc2ZXszBg==","signatures":[{"sig":"MEYCIQCFe4XLCGGUqXI62oEpGkcdzJ9uSCtaRKiMnw/GcHntQgIhAIHbGzU+XvP17KGOrLWCmjw/ZeqZv7a9ZCFzq54tBlzv","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfzhILCRA9TVsSAnZWagAAfnYQAJru637eTkYxNSDhhGc6\nOEsPJKyylApQIkv0/yGWBtSmzuITJh4EmIbJienmjK5Z+S9vdDuIc1nJKdxK\nYCWbHnM/3WIMmAzRUQfV5EdGnIzSFnK7ZOfcdTyRp4ndwK9JTkvWVZB9bML1\nmnLA/8O2mDzG708LHnW+RYiMx0oCgoUADF7YS9Z4/xuV9B0KzUPdAPKX34RI\nVkfud2ofEF4CBNb0jpAOi8ltU2r+DjZc4/Gzf9VHdQBYc5I8wabEt1A6Icjd\n07NRV2I5wqFmA5WiSkeqdU+MuWOnSl6ETu7gD2KYrY3gTdfWi1IY/t+u7UGQ\nNBhaz/OtSTCHalHhuXbnG4ZcXK9vf1cn6+PKNiNZ8eQVcOwzLcbx+EMl5yyl\n38mWJ/+pRMSFM6t1JWogOxTxlTRcedjfm9skespTVib2mnBZOQRlazwGDOoY\nUsi4PR2OwEQNlRqnZCxCi7TW0Qnb2ZBkFf4kVnq6dNMNop+3PrRNp6u3TELV\nB1bRt/cEjBYWTxB2cYey3FpY4iLIyafCga+gCnqdEeJoParI6yV0ukllWBEw\nVci8F6lz7CGcCEieokO3ArxkkAtT6/Aol9KJbXk/E0EAy5St3I31Xc3mN6o7\nSD6kkDxXwVQhGOilKTmntt/H07gqB4uuLOMfaU0SMkA8d1IBP7tCJjMD1kg/\nQGkz\r\n=Cg9r\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a838a6bc72ee56a967d493a841d4c69ace1f3f13","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.4321323e4.0","@material/rtl":"9.0.0-canary.4321323e4.0","@material/base":"9.0.0-canary.4321323e4.0","@material/theme":"9.0.0-canary.4321323e4.0","@material/animation":"9.0.0-canary.4321323e4.0","@material/typography":"9.0.0-canary.4321323e4.0","@material/feature-targeting":"9.0.0-canary.4321323e4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.4321323e4.0_1607340554379_0.2176523227773104","host":"s3://npm-registry-packages"}},"9.0.0-canary.2d5f32d41.0":{"name":"@material/floating-label","version":"9.0.0-canary.2d5f32d41.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.2d5f32d41.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"32490573c9c7ab797a7aa1af2ceb49ac90cce7d6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.2d5f32d41.0.tgz","fileCount":34,"integrity":"sha512-UZI9N9a45OLh4AV7EHyoOihDoGNvej0HOA6W9uLWPLhOIjEbE5o1UDz09xchE2NuAKQXyQEN0X+djtONSlUNAA==","signatures":[{"sig":"MEUCIEusB0NSo0k6Z4e2raUFvByTcjD34AQbhx9Apbjqpx8OAiEAyH00dB6A5qlKHNdELy7wmWSffD6t5mfOgox9CWrz7LU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfzltzCRA9TVsSAnZWagAA5WkP/jzfyymUfYGIeCuMyBUI\ntAhFDVncthn95aV0W00NXCydZ4S38h/t9VxipBKwz/EbCt2+4CayCYeR46gu\ne2ru5aTsiA9xi07xXAK+OP6yHRgXMz8EmBGimBNUOfvDO9WtgwOP1dNnRiez\nbCZxIhW1Ze+aGunLxo3O0u6UaULwgwKPeRg2SSRZiHUCuqlnDzixYK2U+lmJ\n9BzC49NgjZwzI1XoqcCwrJ+hghHyKkFxxg+yND2zxf5kj1leo07BuGfcoPbG\nFfszHV/+f5kHB/lxdm2fRAAoteym+FD8SWZ+OnoN4I7hC2L5B98oW6fBfNhA\nSn5pn0nL0J9ez3QDyoHj36WUIKgAGKwK6QOuKeRswfB7fhv+jojWR2yrx1cF\nHsYxP1RfOBgN6szCd2RZrOHt/Peh6dq48KfVlplURoOGmM6py3Jy97Cq8Ym2\nOgIBuk8WuJr/kPZXHsd3KoPCfthwRAE2RSwwZThOpyV0NcDBM2CObMzq5PYF\nDnfdDzbsmrCizD9mXTvVYD4/7iG9vpKaDw/4m/brb6qhJHWcHFOi3r6OeTOW\nsu4CUMuDoPRf5agNy75gtUS5Bl29H+xpJJkb8KDlGMnPazgyiEPGnvzWRm5a\nMlxLFIe/IfNCm4d3mMqKFAUoKEllWAI+5hQoZtABc0VyKpkrVEulISc6Gp+a\nLp0P\r\n=4MFo\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2c385d3016a738d32bd3c03bcc91bccf82981fed","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.2d5f32d41.0","@material/rtl":"9.0.0-canary.2d5f32d41.0","@material/base":"9.0.0-canary.2d5f32d41.0","@material/theme":"9.0.0-canary.2d5f32d41.0","@material/animation":"9.0.0-canary.2d5f32d41.0","@material/typography":"9.0.0-canary.2d5f32d41.0","@material/feature-targeting":"9.0.0-canary.2d5f32d41.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.2d5f32d41.0_1607359346734_0.6106822570086263","host":"s3://npm-registry-packages"}},"9.0.0-canary.8239afc64.0":{"name":"@material/floating-label","version":"9.0.0-canary.8239afc64.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.8239afc64.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"af98196eed575017f496f8be71a568b578bce305","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.8239afc64.0.tgz","fileCount":34,"integrity":"sha512-kM9ssowisRU2A2Yuedugj/jZ7gD1Iy8JAQsrXXn0ntwiqPsyHGT3t7MTtywTGzndGG5wlj7YFcOq1QicXuQKsQ==","signatures":[{"sig":"MEQCIA0+wlSWRm2Fw3MlGDy+bXKMuSnjek2dcv7Fc19VgHICAiBiIHPT/eCwv2tydaVMlNWRaeyFhEUAb+42U0htRWM15w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfzodZCRA9TVsSAnZWagAALlcP/18X6xyata0i2NMglzf9\nZpue4inKBvZFOBdti3ddUMn/Gsm1pkbbiJpJ86y1OdJEuYMSEHoeN8Kpa6sp\niZGd7l/yFqFg71+pmZSQt572sbT0WgfIMyJG1BbPGXz2dSp+ntGC3Z4aPAh3\nM85V+VF50Ozbq7i9Tyo9uGKA8kRxNb4zLGAi9fy0sSBAPpg5VbsoP12B0/v6\nSuHdmEr/rfZYhzx/9AP9Z5GIgFqWLgllPJl5vUCCGYjrekOY0CQatOcGoNzE\nDXjFf540uYVbJ5jM+bCdTP/dbLnImYHuydAD4rzLIBO/CPHg+uapGb1Wd0YZ\nzmwCmNTDu3WSCc/gFwLiQiS7weEAHKqWkJWxikUrPMLgDWfAyEzkqloU9R4t\nKgojG9RhWKbNnFRccH91LvpvsheOHTfoJQkbt2LfZDLWvQz6rks/jsUR4hTR\n5C2VTvTErZ0an9q9HErycBvLzDHrPYpe+cb5U3jyYEab/u6Ot0PyW8Qk6net\njh2DeeOXvvI+MNHW49Qx19CJy+tliZYfrKUiJbUz/fPIMYaCIPP5lgtUD2vE\nfG/q3MPsvhgxHJrPccQDsS0L+mO5t6TcVZRhYsNLSbreXGAEn1yERgl+jtew\nypsbjRueeXupjZYHW+MFpEVBjyh8dvjWX8l4A95HYKkicO4DtRcctIBBcfa0\nzW5V\r\n=rVoA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3ba24284e7fdc10c5aba869e2a2d3175867e0f15","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.8239afc64.0","@material/rtl":"9.0.0-canary.8239afc64.0","@material/base":"9.0.0-canary.8239afc64.0","@material/theme":"9.0.0-canary.8239afc64.0","@material/animation":"9.0.0-canary.8239afc64.0","@material/typography":"9.0.0-canary.8239afc64.0","@material/feature-targeting":"9.0.0-canary.8239afc64.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.8239afc64.0_1607370585429_0.13987192837772988","host":"s3://npm-registry-packages"}},"9.0.0-canary.6871336f1.0":{"name":"@material/floating-label","version":"9.0.0-canary.6871336f1.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.6871336f1.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"82dcbd25a37d1032f24e0be7e8da66a51a8ec7be","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.6871336f1.0.tgz","fileCount":34,"integrity":"sha512-yXQhlNjSkM5T5FjPr//Ku9v71Aowjnzu9etvlRqZm+iJnwX0ngKDoTBxCABCYvZdqXp3kbZPEuAjr9GHI/hWXA==","signatures":[{"sig":"MEYCIQD+O7/AXhiuCLN+EDa+YTAlQfgYAzMSbdp/xnSK/H0jegIhAO/6ihHyOeG5TS8JrSTr5LAlxDWZUgZ7lxHldCyTGWb8","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfz6NmCRA9TVsSAnZWagAAfy4P/1hpwAoLvLDipf4Aymvw\nOShZSRowsXx6zGoQW6soZyodFCOfZMOH+A1INB1OSFXOqsypCpy3UMhuePPK\nvDvoLwBB8VaD3RKIwvl2J9vgaGk2KvUPwm5uwwiJIOJxW1pZPH7OIuUAwcmI\n+3ShOv/WE4An4qZOrEghuw5Y3EHrxQXJIqoWaQgUXg3c7SaBri6zTKgmXPKU\nNLFzZ2qK7S1qtRpb1pjsx/koHatd267hdIIAQQHlY/5ltlsSTN5T7RvDBt0H\nhWKu45wUtMFcKz3pE5eD9eBlxowTDNiA9PFd6jfE0QC9maptEbbEIY7Fi4Yg\nDxtvIg9BqEwkDUQlQ/39oZMy+7PLL/+wiuDLl0tC5G6oLHY3F9abdM3xfnHz\nciwGjQbcYbkkZP2Gz3P9dJwVEJMcpYmS9ix3RtgPV64anYCtRVWxSLhKEOoR\nujjOK1/nKQOP3HlYjBB++u5qyLO0vAA8KgNrlj/VsabFKiM6CECTWFETwSBH\nnAMH1HHppMOKs2C+lV2EJFoce2ZD1JZ3U2qEsJVDPsYKaw8OfYsYgxBchtSS\npHG9ag+A8WD9W2vJ7DpaT1G50gZWuMYfyFV+p6ExzP6bdPSpeq7HnT8REqsh\nQ36D5/8GpCxzLUx/zpvYwsrkOvdkCp4qLZ1Q2wPguSjGeedg+J/zLSBsxUQW\nnBuS\r\n=S2WB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"aed20b07d4f2597c382a6ce4b7c723f6df0c3efc","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.6871336f1.0","@material/rtl":"9.0.0-canary.6871336f1.0","@material/base":"9.0.0-canary.6871336f1.0","@material/theme":"9.0.0-canary.6871336f1.0","@material/animation":"9.0.0-canary.6871336f1.0","@material/typography":"9.0.0-canary.6871336f1.0","@material/feature-targeting":"9.0.0-canary.6871336f1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.6871336f1.0_1607443301822_0.3992975923148503","host":"s3://npm-registry-packages"}},"9.0.0-canary.9f718da94.0":{"name":"@material/floating-label","version":"9.0.0-canary.9f718da94.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.9f718da94.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c47e059131aa189b5ee99616807b3aab43715198","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.9f718da94.0.tgz","fileCount":34,"integrity":"sha512-hUVIvGvTaxPGKBKVyZC6XERg61l2VI44IlfIJnx1LlfCmMHnIRfSW55jFjKPSHayznuxYAnWfuKvdc903t3SpA==","signatures":[{"sig":"MEUCIQC+8/wdINdhfS7CTODaeSdZ2vyKnjCnqkcO+BoPmeK/UgIgHpi0sNtUu/f5joIjFH9bxP4WPfutRqx54gHQjeicf/Y=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfz6YoCRA9TVsSAnZWagAA9yQP/RjWr/KUZYDan/aOlRvu\nLPjiMm6QK963Ue0+UKHzEkYs3jNs7CzckAzJWjytTdQZENOA2TdJhaPPcJVP\n9gCp4cCLU8WMP1EphR2L3ZGC247yc3OvjK6hRlXv6eXzImoAwpm0r/uQ/U2z\nJazB7yiKGBv2Y1vCUDKJRx32NM4khL5QKu5DSsi+cqt2MEZfSIep7dzf0Qaf\ndxbsUjqlJqSiSZlKUIJ8ejw42pJKHNJPQyx/5oxhD3EUXg0raKwClQ0+Zr1p\nBOFnAuTuPlFwvy+CiWMLsI44cK2ckvFCGXI9Yn4v71GNbmegMZOz2Pam1IDR\nT2Fkwkq6f1tKHk9tq+tAsXJecJOvPvx3ZbBnzi3vqVkf0xQAywq/Z9c0OAEJ\n/ZyWgdfzQu5rFeK6MzM7KcgrWR3r4X1l1KogFFivRhLzaXpwbln/2nv0Vsi4\nRI5zhIrRcOL56Me8EaxPo3I8GyfadNOaSVizDq3bTkO6WOm6M9O8VXjwjN9U\nsBkR+yGwPe7nRoSgUgmTbs1an/9KKogG7HjplScVbJJj0AhWiP62BrSjkuvm\n7EJ2Hv/sg0G9BJyY9IpZ9Ifoa2QmzZu9LvW03xKQejtvQDbmIlu8i1b1FAu9\nzz/8BfDt/DZPH7D9TZseE9qDJAB5iOA1YnH/tK3oXG6CSedT29zl4GcwvCWC\ncOuU\r\n=jNXD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7fb6692f329c5482f22dc9fe691a20fe4c6dd38c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.9f718da94.0","@material/rtl":"9.0.0-canary.9f718da94.0","@material/base":"9.0.0-canary.9f718da94.0","@material/theme":"9.0.0-canary.9f718da94.0","@material/animation":"9.0.0-canary.9f718da94.0","@material/typography":"9.0.0-canary.9f718da94.0","@material/feature-targeting":"9.0.0-canary.9f718da94.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.9f718da94.0_1607444008192_0.7511277142757371","host":"s3://npm-registry-packages"}},"9.0.0-canary.1fccb1418.0":{"name":"@material/floating-label","version":"9.0.0-canary.1fccb1418.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.1fccb1418.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a1682634fbd9d63cddc9ef21e10586d48cb565a0","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.1fccb1418.0.tgz","fileCount":34,"integrity":"sha512-/LdNuhZ5xo+5O8DRRFZFNb8hCI9ErT6H5RcIBLj87dGEEQ7DB3uEVAwRFbrqBjQbZ/FZSKkx5wGzvdRtfuP+aQ==","signatures":[{"sig":"MEUCIEiYN1TyCaeFWtRrJhoSwFCKKYAwqb97DiExGf3ig/HgAiEAkSU90nmqmCrMVGbODprMzppE9YphBUVvVOiGgGNuLdA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfz6mwCRA9TVsSAnZWagAA2S0P/3P9loGBjfcDK93ZlNwZ\nj1IyfVJQrGcRr+LsUDNRwTINTBzgL/Wz3qs9vwTkyMSX3TVntIap053W1toe\nD7yk8CazUZAEO6z4K4dlje5TqQf+iGK2wyhsgTQcH5B2cwiAX2si7mp0C+LZ\nhSbdwuHKMFu9L6X0c3kxYhnrKBaQ8cNZzinELA00T0izenxz3kQL5EqcXxss\n0ByP9ssomt3KtZWiejF9a5Q8JJqf+xgKX/1JmvE1Msm+vE6vgu0hggr9fnqP\nBMM2LVfO+H38GITi3UyIgktzvjRHvtP74q37pXWa+8xVGB6XQ1hKxUnN00Pu\nFeM9gwpt8OGwZM1aLiVHZroEdMj4YPQe2EjktWb6tvVyz1mQTnkDFXh0Z3zp\nz16S5d0OLX6kV/30npGzQx9IpgL8p4cfCAw+2pdAHTbyC1AyL+eOJA6qY5Va\nQuLLicHzohJV//nsYDFXiShD5RK8nxm7pAGkyKBW119OukPxlW/srjUDOY8G\njGL9lTJZyLunXUqFOn6g/cnNfUzWtyRkTJYOfEXuU34GZtemgN8ecPVlCgFT\nXp3AgxRLYjfEfobOt1/2Z8LoxHg5vXWFJCBgM1ZAJFKQXJag4JLFLnLlz5q/\nZKI4uqtTqvAEKQO6wFsDzJLy6JcZJee80/WxEMdVXtei2xRWDkJUTovxFQ2q\nkk4B\r\n=aRrC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f9dd96ea7afbac37dca91bc879dc44ce4523c442","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.1fccb1418.0","@material/rtl":"9.0.0-canary.1fccb1418.0","@material/base":"9.0.0-canary.1fccb1418.0","@material/theme":"9.0.0-canary.1fccb1418.0","@material/animation":"9.0.0-canary.1fccb1418.0","@material/typography":"9.0.0-canary.1fccb1418.0","@material/feature-targeting":"9.0.0-canary.1fccb1418.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.1fccb1418.0_1607444911660_0.2545199722742124","host":"s3://npm-registry-packages"}},"9.0.0-canary.afb68894e.0":{"name":"@material/floating-label","version":"9.0.0-canary.afb68894e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.afb68894e.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"028a96f73b21e46ec416757c038fda3ba6c60c34","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.afb68894e.0.tgz","fileCount":34,"integrity":"sha512-BIlhRriefeuZpQos++vvp9ZhhmmLMUqm3zg2u7ayDQDcyTia9ffgNaPg6y2ps2YOOxA9p4Zyuqk2NKgWwLgoAw==","signatures":[{"sig":"MEUCIQDWHy7u2UKPrZHnpd47oOhh1irTnFN6f41SjzWQo64C6wIgQ5Mi5qQo4FDB7mYFdCZ2ddRKzr/jKTcdX9BNe/ylHKk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfz6qhCRA9TVsSAnZWagAA+DkQAKJc9IEY5ucfKQDHCS+p\n8QQMTWrpS4IctFZFiU/B8iZiQP6GF/eUoPdyIFZPTuoht/mb/YAre1H7h+yF\n4B2cRHvNeOBAB04rSOHTOIk0o38VSxszaTOZvlIghZj5sdC0MPjMMqUm0ubK\nVPPa4vOHgbk/u8d+UMcKbfqstC0X6EXAtTDCypqY1IN8ZpeDjBMxmelmzbpm\nXrUa5PEzGEuAeS4URrMw0Bv8nowj/SAhk8qv86ljZG0cwWatX0aDDK7hgOuR\nOpNUPjWS8pWJXQFIrBIWJyfLwqthBTUk3p9ZmTJBvEipEFxKBl1wf0PgjH1i\noQHI1p0rGSl1g3ISwo8Rgx+x5uhlJilN72h05BB/cFEmCks473Uorzc9bU6A\nhD8Wx8sLZjpP8sMS3FI0xpULEKxH+w2ArMUev0xrkozgicIOgB8KKEyKbtAd\nSFjUQ5qkXBncg8CUbWiWqxgXgvRMiKZp5AV1VN5Cyygpws+JU9Imqx7vwR3s\n1uBkR5rQxCLVYqmwvzD8pcEy3zgq8ghEMQ2kilo0Jq2FAywLyzZuNCTxD06o\nTCio+hwdg4U206sTijVJmvFJZzkMZRKiBfFAuL7QajRxDsJGeCZk16OFE6aM\nZZ+R1VC1PNxVcTZPg8s5IZPS5rEGJy5yRsi7AtFwJ4ETztpQ8T8W0Gqlf2f0\ntyL5\r\n=Cepv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8a3ec1a501083d67f1c342fcf5b11a765a586ca0","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.afb68894e.0","@material/rtl":"9.0.0-canary.afb68894e.0","@material/base":"9.0.0-canary.afb68894e.0","@material/theme":"9.0.0-canary.afb68894e.0","@material/animation":"9.0.0-canary.afb68894e.0","@material/typography":"9.0.0-canary.afb68894e.0","@material/feature-targeting":"9.0.0-canary.afb68894e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.afb68894e.0_1607445152592_0.7416682274393085","host":"s3://npm-registry-packages"}},"9.0.0-canary.fd88d40c2.0":{"name":"@material/floating-label","version":"9.0.0-canary.fd88d40c2.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.fd88d40c2.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"8e2297764ad22915aa3dc12c7bd8c69a1ca0d5b5","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.fd88d40c2.0.tgz","fileCount":34,"integrity":"sha512-Kxlv/O2Vi6gHhp2PMA0x8N/mwVAcURvGbGRObHMXWE5doGAMgpA17nQJPnt9wijaw6iEDbWBceuBTiZYpS4YHg==","signatures":[{"sig":"MEUCIQCuZfwmrOgSxGhiZct4W8tqMS03xEk1wWOy78Rf3ti9SAIgTlQMFIHXXtLCEKbp/PTz8BsCf7MlpHmpdAN56LngVIM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfz62/CRA9TVsSAnZWagAAeKYQAKDJttrzcML4kbaDbPmK\n704c/6EJ246Qb0fzlV5Xg4QPMim/Slqe+v/5o3t711AequVhMdtjGInWE/Xh\n88Z772EREyJJS+UdKBne8nlpthWI7EJ3fIEV63B2mkRJ6SwDb9fAhpy/IeOC\npHwPrv7eOkhOurUHWSsS4ygnhbGy2zU33Jll1ml4r+XLtpSex0n6grP1y/yt\nBaGrovkuM4sfA16lqmZY5mX7qkrfl3q/le/+2nTJA/hp2dwMgJF7bmtucaDh\ntauxwmoPfQL5jTSiQIgV4bZGkZ8Pe+1CKKIBFvDUoe16UVzt2bJMU8+bJ4nS\nhkKux1YfvZ+vUVL56/i59+VxLHF/GQrZ/JLsaMTwlD9R/QB6T3q0osiQS0Xj\nQguzSP442KybKbzOdQH5zl2E+ub9ObP/65se6henvwn28DSp/gWjMqjP+vFW\n8vhTJqKpxVl7+76XtBFV/2NjA7re7n9mSUQo93+cv8g0rhl6E42nRFPnLeF1\nL1Ypnv0BarJLkhMI2ZGjueFigp9wHfx1D0wgZEDSDiILsNMzIjN3rbjoI3MD\ncmf03xtsOz8GUFAT+HpZxUy19vLAOxTdqP4P3zmODeBD2x13jkiziPKLB7HR\nXaNEn6AiGHy6ZW4ar36zav8O0oGc8yTF+MRkb6JHf3GSkcke/S8kVFIdFMLk\n7JhS\r\n=W4JQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b0f8299700bd0ac44ef5acfdd0234b464d837131","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.fd88d40c2.0","@material/rtl":"9.0.0-canary.fd88d40c2.0","@material/base":"9.0.0-canary.fd88d40c2.0","@material/theme":"9.0.0-canary.fd88d40c2.0","@material/animation":"9.0.0-canary.fd88d40c2.0","@material/typography":"9.0.0-canary.fd88d40c2.0","@material/feature-targeting":"9.0.0-canary.fd88d40c2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.fd88d40c2.0_1607445951025_0.7994723229429328","host":"s3://npm-registry-packages"}},"9.0.0-canary.ba9e3109c.0":{"name":"@material/floating-label","version":"9.0.0-canary.ba9e3109c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.ba9e3109c.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f898c4a80d57510f00cbecd851f9ef84a1220cd4","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.ba9e3109c.0.tgz","fileCount":34,"integrity":"sha512-qsRuokvGHe1e9SJN4mUkz00D7XMQXrddgnXNDSyhXusdapA+bxb23Ws5i1r4dqH9aheEv28V4Wbjq7m87+HDag==","signatures":[{"sig":"MEYCIQCfEkmD3PYoGJ54ghObHdwaASzRKDnlzPV+LohN7HYMmgIhAMKOpmBLOv1n6BmOpPptVWQZ00wFG1wzaLYChl4KR04V","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfz855CRA9TVsSAnZWagAADjgP/i5kJVzPCNj3PDD56FIY\n2Zrfs1ViL0Tm7PTnt/3xMufwE1TLZkRAcAhntJ0QdxdfOBdG/IUirRHbu5MH\n0DlmLuRUzmXnukCfSCICoWrdr1sZuUa9wL5bbyBTg37IFYkV1yJybn/qIn6a\nMqQPgS66kFO7BaF9TZOpHzxQxfoZ7vaNBzvMlrUIvNknE/kyVN4FkOvSlZUa\nVCyqE7PSB9B+KOwgxoSPoPrHe6HvYgmVueFVXKxrHFmm8SvMTjtOzU1mSyse\nvZeNTO7SXkzLh6bX1n6T8wt1fHwXir7eaVCdpJHRwzTM9SW2A23tFFC0dJt8\ndbL5HnUYvE/J9kIPnpXAUg2bwox2QOJNntQiTqWkKeBWCW5rSzpmfAou2pix\ndqJ8EQei+OLsoX/v6kL2jHwe5goY0V7QWXEPnV538/Vd/+s9CYLQnPZLCnw4\naYXCUJh9zBAEBuYrt261ci7XlQGsS0ZYV+ISl8+Z3mNcH+63Sv15m/vV+Z2U\nZ77aZ3701bQvi6zbTIAWIZlpYXN9qP7Jz8qj67eJB/HtV8XeeHYzm8q4IgLs\nS5zSJaN+IpBlogwuHTwSbCoQEaMwNzWq5xEz+3BEWl3oUBZYpvXc78Qlguhs\n98UcfA9J2DY7bDuqdr6AtYCfsPcZxN4UVmCFdi8fi4yUiZLznoCo81v+GXuj\nidw8\r\n=By9t\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"84bc4a2a193fb62b5721555a77b59e7bce321bd3","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.ba9e3109c.0","@material/rtl":"9.0.0-canary.ba9e3109c.0","@material/base":"9.0.0-canary.ba9e3109c.0","@material/theme":"9.0.0-canary.ba9e3109c.0","@material/animation":"9.0.0-canary.ba9e3109c.0","@material/typography":"9.0.0-canary.ba9e3109c.0","@material/feature-targeting":"9.0.0-canary.ba9e3109c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.ba9e3109c.0_1607454329039_0.8620030607623521","host":"s3://npm-registry-packages"}},"9.0.0-canary.1085c3b2d.0":{"name":"@material/floating-label","version":"9.0.0-canary.1085c3b2d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.1085c3b2d.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"0368fa14f3cfe9e330c80dfc1a8c9ef6103367e1","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.1085c3b2d.0.tgz","fileCount":34,"integrity":"sha512-owwfJsMxOsD/dW4oKrzF807ZF0eVTVQNbBmdn2gF3OV9vASrGzJP2wZofrhQneqUWWJ/O7nm20ZdoagkUB0GHg==","signatures":[{"sig":"MEUCIAa1hmNlkAvxNdTjYp+b3uD1iVOst/cXe5NI7IhHWr9oAiEAk+v44b89FuV2+uxU1BKFyDayqUnAbZ3npcIkSfFEODM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf0SFPCRA9TVsSAnZWagAAX34P/ifr1sSgh51ktiLBu+wU\nLsYv/GtDoNq4wf+cnSWosGI4ybtL+ORcFZeOQPrEQSJtRbE+CLcXfsDyI05G\nTrxDg2kzvvemz0jSzcpEX/K17jzFBNln3Tt0Uy5IhLStmZWYYZ7V6b06XUk+\n8MlHq7CS2JsRb49a3CX4YBOsmtyYODTIGW0kP0f5/VegLCsLQizFterJGN1i\nG3obmmeDIjrc8lws6rQBsLlyOi8dofjlWFRaLNCichOxtObFjLXDplkxHGm5\nP6D/10b6EqCgXKtuxLu1pVmwFXV8opuS6yomNz4guMhC9FwUPmWscm58/Ezx\n+Uut5A/jWozlbX+ty+6AvSXdYVm3VraroTp3+jrjEp/wpIvw+7Y9tYcaDtiC\nr+o8zBrMtBqtCR1rUqlXSHimOd1u7tN2HWO/jX7ofGW4hu3cOwhYhrbh5Eao\nQEBDzsg17eFgo7LUU6GYh+ykQNns1gjFA7qfBiDnJVV6h9WYv48SO2kj5mRM\nDl1lsFEz8nN4Z35EfhT75C4byzpjONgw+vAGUz4bIMXORppQ1oxI3/L76XYb\nFI2Zkvbny+9uJf02+7RReYHTJI+Ro+dClg9OeDpjcS2e8uHVb1brHGGVGwjw\n5yr9EPz65wPNKQ7VbhDqZgIlGmb8wJQiReSNWC0jpT/2AYhgL+Sm6NwFHE05\nIppJ\r\n=HeDy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a223e0b83a78bac523ca498cc8389f361cd0f4e3","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.1085c3b2d.0","@material/rtl":"9.0.0-canary.1085c3b2d.0","@material/base":"9.0.0-canary.1085c3b2d.0","@material/theme":"9.0.0-canary.1085c3b2d.0","@material/animation":"9.0.0-canary.1085c3b2d.0","@material/typography":"9.0.0-canary.1085c3b2d.0","@material/feature-targeting":"9.0.0-canary.1085c3b2d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.1085c3b2d.0_1607541070187_0.6989989342286795","host":"s3://npm-registry-packages"}},"9.0.0-canary.c5dda809d.0":{"name":"@material/floating-label","version":"9.0.0-canary.c5dda809d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.c5dda809d.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b812dffc96acc846965c0fee57d62904da93bbb3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.c5dda809d.0.tgz","fileCount":34,"integrity":"sha512-EacZI/ywDr74BZFv0oRkpPC2NtfpDTHwAIbKH+UyYbnwcKRaAbSsKpVZJIEepAt5Ew4tDtUEOvey/kKJOCFBSA==","signatures":[{"sig":"MEQCIGyI3czNDN4JrGoWuLwrl1Tl8TQB1ECaTxMHiZ3CtcWjAiBIOdz/hfbcmFsDq9OoGwBb4DEQicwR/+S7C8mNFViBIQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf0Th5CRA9TVsSAnZWagAA49YP/0Y5HA7kujShzyhg87xd\n/2+PSR+YepcToyaP7/yYNCqm3v229mF3wI5D6TzGv6TVUCOSMLmVHOgdtQkd\nw4j326pNAUSCv7Vld/R7sinnL4hpDhA/EIlaM2D1uRWgTP3bnRdThLUHIgOq\nWMs29tboX78I8LKMrxwaJKptAWGNmGOkw3UWYEHCIgCVTEsF8pQdc8ZaadDG\nEV+kyQX/6Wa4Ete6w1PO2cmmUY/TabryCvO7fvNFhCV9ah+yXHJojLmeAG9O\nh8Fh21Jk05DQeNax/5c9vvf5In/W5oC+x0RzIv2Cr4czUUBhlotfKUpUjzs7\nESm6t/9lTDPZz5L1VC08GijBPozE4N8qMc/m2R2prrP8rzY9akJmFwdTuJmy\nvRnVugFN9TbEbTe4Gf9ti7FKTJZIxjWILHVfv+3Gd/9AKP86ql5kIdumxSLH\nt/boVpBi2e/tU2WLQy3UeHepvGRbtFWbHjtchsZ/h/REPHZLvLYKYY+hO6mH\nDwCYwsxEPC6DEOGWdzldCTnbWwjBeU8hQhbNMC0HQm+chIEXgTMy/SkhyAp5\nttfWEQfMy/d+xbyS21dvLsy9An3e5U8d0XhEOh6+hZT6KsZ6fj+lhCv4a0rk\nbVomrXkp+NQXZosfM4itYfAOuLdqU2G8X0utXlCtOxFNc9qoJdikYFAA/UjA\n74iG\r\n=oZA2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c2bc7206e40f2f31377a09e53af457109018ff02","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.c5dda809d.0","@material/rtl":"9.0.0-canary.c5dda809d.0","@material/base":"9.0.0-canary.c5dda809d.0","@material/theme":"9.0.0-canary.c5dda809d.0","@material/animation":"9.0.0-canary.c5dda809d.0","@material/typography":"9.0.0-canary.c5dda809d.0","@material/feature-targeting":"9.0.0-canary.c5dda809d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.c5dda809d.0_1607547000996_0.5168978676487797","host":"s3://npm-registry-packages"}},"9.0.0-canary.f5f1bd86a.0":{"name":"@material/floating-label","version":"9.0.0-canary.f5f1bd86a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.f5f1bd86a.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7a26dc5d9027ab3ac30f97c29fe1607f02f1fb5c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.f5f1bd86a.0.tgz","fileCount":34,"integrity":"sha512-aWpgR2u2zMNrVNI8ZuxZ0aFqaYc0xIm0v8EDj4FdWY9Pvu4O7fzNDIMl3gD2Wt2Bw73x/HH7eLmKdbM5EBkdgQ==","signatures":[{"sig":"MEUCIQCNH2EolfFCSt9S8YgerT6peCh37pzpm2rh3ahSqAOaJgIgUua/kITSYT8unIp/V7pnYT6qH4fgKKjmT/flGyKeNUI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf0TynCRA9TVsSAnZWagAAyoUP/1ciF8UG2r5gWzgjTmTb\nk9zGIZPLZEkKDGg0oVKAq6pVgHDjs+RJhGuLn/ury5xCGHfEn4JcqWuz4+oU\nlSgPPboHGgCwr6l2/AtaiIRLpXTKq2eNelEB6S7kEpQXCjcig9akxZyPK6iR\nL4Gb/gZx4zjNmAkdvhCllXRijDVz7iy8iL8XehRSqjIgSkQUNhcADumRnpif\nLkLcbBWOHD39k4904Y7iV9H12Zv/C70f6Wni6wIHTcgWwVAiwlmubpeIU/44\nlB2hOijIk/RCJNMgeet94cneeWLGg1IDOau6C1Yw5voHeQGSiGPInO40opfM\nScNA+VNdQweXLFueaeLQc+Bb9VEOsBzCa1+FAZsRTr2zEqjf+b7qT0dA4KBb\ninhkKG6OqTb55vJwEXd4njY7m3X4MpYmIgQZIyA54N3TxtflPDPQ7F4RT+Uw\nQ49YnFvFrAk/DhS7SLayD5ujS3mrhACGPm1dxhxNfXTaZoUXBC4ivJZvCJDp\nNiX+rXKDzsAo9L6yF8s2vzefwQFxG+JA8+IDkfVhjfP7OjxN2to+zL54Il5Y\n8GexPJUWIGCctQJAthMh3Isy7hVn22Bd1OAI2dfMSOS70PvaB1x2vficWXje\nzFzMtayOJsoEgFpsfw+wkjmOa8hyxYzzZ4WfAW/+IMqd2xQq98yXU50bJUId\nby/n\r\n=WBIz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"86cb1fcac08fb433af0662cec8583dcdf435eede","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.f5f1bd86a.0","@material/rtl":"9.0.0-canary.f5f1bd86a.0","@material/base":"9.0.0-canary.f5f1bd86a.0","@material/theme":"9.0.0-canary.f5f1bd86a.0","@material/animation":"9.0.0-canary.f5f1bd86a.0","@material/typography":"9.0.0-canary.f5f1bd86a.0","@material/feature-targeting":"9.0.0-canary.f5f1bd86a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.f5f1bd86a.0_1607548071485_0.6558816424819949","host":"s3://npm-registry-packages"}},"9.0.0-canary.00f38200f.0":{"name":"@material/floating-label","version":"9.0.0-canary.00f38200f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.00f38200f.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1e8674693c62e484ac28d05b541509f39016f457","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.00f38200f.0.tgz","fileCount":34,"integrity":"sha512-1LjTgNJ7Z7nFJwLTKlthKVzZ2D901mifdkm5CZrq+KlhL+BeWPPyFE5WHEoDDdlcVM66hR5HUhMVZ03zTWDKvQ==","signatures":[{"sig":"MEQCIACDO4bs4rcArVctXS3cmS6ifqQsBOfhmD5HXojMq7OCAiBr3kn0dQ8YJTjO0EA1OMuVT4YE9p2rMbf9X76/yP0dnA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf05QLCRA9TVsSAnZWagAAovUP/3ZbzewQy/2FIoF9YUYa\nl/qEjcx6Ov5IBtXqIbtHm09Q9X0qa/k58mOCjRz0p3ZDDB+SB3T/1ma/k9Ax\nR6w1XnMWLdczBu7JzNWDFcZQw2L54cmn6gKN2/63XdqRcdrAqO7meskQigk2\nZR1AjLDOeMFnPc7ugxpOH5boI5MFbPjNDlMLtwBiVprlUJ2YI1qJu5aMceAT\nHXLtHkB8jGhxj4F/yQQWUfANEdcCR+vWG8cpqVWLHkJrfRVBP9Ga+0C7mCFV\n3ABFhhxDovov2NC7MhdEBavAwZkR+hF3NXrP93u8s5JLgB8Dn3mHYAcFSEuQ\nyoP3vohWEn54jWoJ4VAvBrxi7TJUwK3bJAA/IoC60I1mKOEtlYLiMZ2pUWJt\nqxgCJ2KOMIf8BDb26od356PuyB/rWL8rFfAxBbWszHRfApv0xmwBJ77Nnm/W\njqOe5o02oyHyVSkUz31AMot6Klrm/msRIuuawYp824008qghBi4zZlDx5+2i\n1o6nTd8VT9gGOnohFdcY4Hnz+uGq1r9illPfpxZuzZZIcrO6jQYj5Hf/la2Z\nV5iv0TjCSdQKzIAQKFIuZjcwignSpA+rFmYbHtV3Q69GlrqiXeYg2EjxNRiD\n+OlSJJ+deVwYfaOG4CC4TRtw6G/1zzYGXB581nwBJd4XRWUadY48Ags43l0R\nJJwv\r\n=/6kh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2771c0048541c1dde142fd7f565741f0dbb83c20","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.00f38200f.0","@material/rtl":"9.0.0-canary.00f38200f.0","@material/base":"9.0.0-canary.00f38200f.0","@material/theme":"9.0.0-canary.00f38200f.0","@material/animation":"9.0.0-canary.00f38200f.0","@material/typography":"9.0.0-canary.00f38200f.0","@material/feature-targeting":"9.0.0-canary.00f38200f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.00f38200f.0_1607701513764_0.4327915511124416","host":"s3://npm-registry-packages"}},"9.0.0-canary.ac41a5729.0":{"name":"@material/floating-label","version":"9.0.0-canary.ac41a5729.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.ac41a5729.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4f76c3fd8962bf04df3fee4a72619163869f0423","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.ac41a5729.0.tgz","fileCount":34,"integrity":"sha512-gA5RlF+PNGMSFzAw9epA+GlW9MOg5u/Mm+ksTk1CC4zostE0MxiWj7rGPmISVjfhFL+WPzYsUSGw+t5ro1+Uhw==","signatures":[{"sig":"MEUCIQD2/EFGW5y7L6IkXJnWp7PqODMR9OG/3rQfrYnh3qRVBwIgA9FsbWtAry67KdLAJ+C82aH65MuHuJ4Z9io/1ZsuDAc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf054kCRA9TVsSAnZWagAAuxgQAI9/WtVmSGltCQXosA0v\nx+rlPz4KAN0KKWR42EH7dH75i2jB7O34m9i1oM7utlH61by5qboxFMe3vjPd\nb+GiRPIGQ/7ELuf0zMXwX4SHtYTo2m/vuXKvddy9fWlCUTjOK3XrEzWE3CEQ\nMqsLbjMlBtVx40vPgFYKh0eY/eOFObWhUK4K/j3VBmxESWB9oGvrNnDM6a51\niKqg6gB9+zfJpAqqd5lRSFnclbkZ2LcK8ICNoyLaZZu2ttr85z2VJ32zJ4ev\nQHO66ntKTmnkJ2/g3fiUGWPpO3t65R2JuD7t/mG55cs+jVqeeLFDPzAsIoJ3\nCuGIT/TZU1zfcsI2bdu58gvfPj03237bpPPMpuisfsVLDqsMDuMoGIubwEgw\nOy2CtVHXSQC7rGGHAixFtCCLAG3RDQ7LMZhLx9UxUc1Bzab2YSZaPmkIhcDK\nwZ0I8P153DdmX79ZG2m0hJcFi7RlKc0m137PGOcXorj7XNExuOCN8WY4YMpy\ncXCCumaykNyODyCvXePpJv8D1qKsGhHkqbrrUBIgJxBP43ufQk5s+GZt6C/7\n4CCv3NT+f8fziq1++aNdyYNQgcdlWIsAtL8FBYuwD9G3Nd4mt4Gt/+RcjOXs\ndbXGXHy6F/78EgqIIbM2C2VYEnHGWSiO/WcSgmdSJEdPOqTrihysujYx+NPc\nyCsi\r\n=DOpG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a8313ebe32ee1c67ef38d5e9ba2b5a4ee2d08f77","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.ac41a5729.0","@material/rtl":"9.0.0-canary.ac41a5729.0","@material/base":"9.0.0-canary.ac41a5729.0","@material/theme":"9.0.0-canary.ac41a5729.0","@material/animation":"9.0.0-canary.ac41a5729.0","@material/typography":"9.0.0-canary.ac41a5729.0","@material/feature-targeting":"9.0.0-canary.ac41a5729.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.ac41a5729.0_1607704099524_0.2629555260282235","host":"s3://npm-registry-packages"}},"9.0.0-canary.7fe0e4f05.0":{"name":"@material/floating-label","version":"9.0.0-canary.7fe0e4f05.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.7fe0e4f05.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3943727238ec4c0d884dd81b6275f2fdd90b4412","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.7fe0e4f05.0.tgz","fileCount":34,"integrity":"sha512-fLHz3mKjFjf5GJYVwmoam0gNm+HOh+2ZOCf/2C7B0FxlHjCZqIBlxJXlqr9ChgA4NcjxL/bcZogNnkdVGVUOZQ==","signatures":[{"sig":"MEUCIQCxRvPygcEDFaQTLH9EiBXIh8xSPIr2BkkkyBz4IuHrqgIgb2Fqq0hUM6o1JnIAAExQgHFxjz6i8CBy6fgkBjAksrE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf06bhCRA9TVsSAnZWagAAotUP/jB9AoNxjkMWx/rjtOVy\ntM0ng3gdaSrKYRkiLuTXrRP/0oRHXHr1bip1Wa7+ZORWIzjvFeZNgdtscvm+\n9xA6181Ty+d64hqWqMTlYbn/+uVJcunc0z+xsbWASHjZ3PFUS7ZdnARvHgra\ngn2mbTmuVGQ2JHtEkTY61/os2xJHazxShCS22UwqHpR+MzBzrxzEYELw+iAE\ns2+qq6hU6+NtM80Cmc4TuoCpu/EMnqKZgZnXvJ5mzubvqkbMoqI/z9qd3VMg\nwdnXPucXlXZ5ttbVtivA4l8GDimwhAvCx5et5lZXKbE/wi/xAR9cjv1d4ZPD\nEicLBaHBVd/NuGOnLze0JFbH1ZrOZ4CYHma1W/VOGGmk3k0+ssRa9CsLguyI\nSq1n8WQNmcRlv1/HS8jzI1EGFhJpU4CvA1lV1DWORjdDSSlIR6rAoOM3uHV/\nK/61bzb/Ag8Q6UceXsjjvK9111W2Oyrv7HjsNnpBxWTEnnoBplBXbkJEXNLJ\ntqZaoUjHujOyDCdvVLnnL52tubqNx+Sw5Yj451lMmUJYGq4xXf9+QBwLBfM3\nF/tNt/2hwWej34ZsaV6hmXvkEWao5+CZnc0v+xfdLjuqrybweBbl2wBZocXX\nqpRHdhzQLT/tdS5UNNTaTeo9NPs0ODzh14F8tmQxn3RAhHmQ4lpu6qLFeGzm\nwWaJ\r\n=2anQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"174435b67952da2f175e31e1db54647a2722499a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.7fe0e4f05.0","@material/rtl":"9.0.0-canary.7fe0e4f05.0","@material/base":"9.0.0-canary.7fe0e4f05.0","@material/theme":"9.0.0-canary.7fe0e4f05.0","@material/animation":"9.0.0-canary.7fe0e4f05.0","@material/typography":"9.0.0-canary.7fe0e4f05.0","@material/feature-targeting":"9.0.0-canary.7fe0e4f05.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.7fe0e4f05.0_1607706337163_0.6745879277412004","host":"s3://npm-registry-packages"}},"9.0.0-canary.9244508bd.0":{"name":"@material/floating-label","version":"9.0.0-canary.9244508bd.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.9244508bd.0","maintainers":[{"name":"taylorv","email":"brian.t.vann@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3c867a06948509a84b103b26e77000b57ddb18bf","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.9244508bd.0.tgz","fileCount":34,"integrity":"sha512-byum8xhnvCpiefbDia6mNh+ugRaIzzOxK0BEYg2IFng6zGpzD+TMB+5rMntt/ensZjlFbHGDcLfLh0JyPVg/+w==","signatures":[{"sig":"MEQCIG/5PpybnjaSOIrbioI5V6Er502PoTJhpMC2h4fo2q3IAiACyvNNwfwxPAVuuwEj/duHR3lJC741reFL8Y+Mv/My9Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf08N4CRA9TVsSAnZWagAA2L4QAJFslX7uMQfaR60tp1QI\nAoa9d3/QfZvh/44HmyQ9yyFBeWgOd3P/sV2zW32N5nV213hdSqt+epTTCWqO\nGa2l/tDkmHKjp/PDxlMLB/jUfPvWcLKwiwx/NGPp8GEDv3iFfMcLpgY8zhWn\n5BC99HZhUIcPHAOqP0mQJ+Dvq6z2yHB3u/680+NhuOgl3dWXe6GzdpU7nuYa\nq7B9kpfxPXdXoV/gsnhakKTlHD5L3gNSO730Pqm0L43Q5qCAEi2s3FMeu20x\n69di89tYWem689hNn0iXA3MatMAPLJiS0CDehIrpPu5L/cngKDZQJKxbz9wF\nAVyZ1n60Qnijyc+9A6a6ehH3OJ+Ha1Q/fQXMEb6daqN4HpDTNGqEcUuCfDdx\nbZRKgi6HJsPJNsu4hrX1LAPog56ILyKl99mRGymEHvYO6LZ+0PaiFGYYtlcl\nrOvPB5l/H1M2PGFD8xrDEYbnqbl6KBSuuVAuW4XqAHpmqA8zW6XzuOIrvILF\nITeu5xstsyXwfJIQx2wnWYBF5oibAiMMF7I2/fSmtgn81cXISiKVk9tMbwo8\n8Lc1+mzftXP9/d5koDLOkKy1OGTiTnHUxfh9XnIGuZeNCFos2IFFquId+GBE\nl3PMq4kkZPRYht5Fw5+LxVqMLZxNDvOqePVyaEfb+kvz7/6k181UfVToYyzD\no705\r\n=iNoG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8d704729c3b4ba17ed088d900fb2ddfd57d5803b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.9244508bd.0","@material/rtl":"9.0.0-canary.9244508bd.0","@material/base":"9.0.0-canary.9244508bd.0","@material/theme":"9.0.0-canary.9244508bd.0","@material/animation":"9.0.0-canary.9244508bd.0","@material/typography":"9.0.0-canary.9244508bd.0","@material/feature-targeting":"9.0.0-canary.9244508bd.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.9244508bd.0_1607713655770_0.3419958578928106","host":"s3://npm-registry-packages"}},"9.0.0-canary.384a8eeb1.0":{"name":"@material/floating-label","version":"9.0.0-canary.384a8eeb1.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.384a8eeb1.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a3c6b2605c79072558ce8447d3fa9f7188f110b6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.384a8eeb1.0.tgz","fileCount":34,"integrity":"sha512-BYhybNu7qY4EVbUa4vNWRiTgYKtHfcNXL4DWVseNwdEHKLHXoDlfrmoSQSvhbpF82st3bp73iOMummoZ1u8p0Q==","signatures":[{"sig":"MEYCIQCpY/90bn9iyfiqB5aa3Mqkxd6xWaAB+z+q4JY5ljqZ9wIhAJWGeljZEiS5/EJUR91ZaUoXkX0eeNdna5774HEpXxS3","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf2j2LCRA9TVsSAnZWagAA7ioP/09dXW0WUspkZUqxXw7R\nuiXnzpruzeUGt6V/yNxum2MGu5KWnuh4u/uUIuVnyU/zTtMuUS6If0t10+US\nag5SOid5xbQSp3eHSHnvoykeQfEBsoxIT8dUbvnEILQ8YQRAXNbi/fC7iB+a\nilAjqsVR+CaJyH18SbBLFrqwX4C1GsjZXW0JyMWvdP/qoxMQ4ErDVVIK3ept\n8bgQm5+1FZnIGfrcQVJV4kQe3CnTqZokn756d6e0KK3F5C/kg6qc2FEe+6Nh\njvKOZqnfKQDDsz8RfPVqPCSTDJVQSl5j27Ej9QV9pLPhHBnwx2E/brcrxAOt\nKJR9I1eE2wHIgmhSRtj7rQ2YhLTbXCqKls6tXGwF1K8k7P/J5Tz8kO/FY+Id\ngMTNDi46BnyOOd6xYn2kECrvqCGcYi8NTLtl3YzHQcmC8pujvNfmdgfSQarq\nDoton0V7npQe7EdqP/zX2M98OK1yRsonGI3mYKepRAC6j9voOc4/F8rKlgAJ\nGDzYFctBmcJv6w3zpQS79lQQfCfkTQj4gaie5Ob83HN05pT52HECYVbjD4C6\n/7sXdCpJ+UFN8MlB6Ub7NN+lcv9IxUX+kriCXBAwqN1oytaanKtluPCL4x1d\nLgvAdeDWXi4wihxY2cbbiyk+DtFVEVRd0XydQsjfqysUgVbxjeeAD4/4r1UO\nqp9c\r\n=CWKV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"21b2ddce32077f19c001df17ebc3c8ca9c48f8e5","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.384a8eeb1.0","@material/rtl":"9.0.0-canary.384a8eeb1.0","@material/base":"9.0.0-canary.384a8eeb1.0","@material/theme":"9.0.0-canary.384a8eeb1.0","@material/animation":"9.0.0-canary.384a8eeb1.0","@material/typography":"9.0.0-canary.384a8eeb1.0","@material/feature-targeting":"9.0.0-canary.384a8eeb1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.384a8eeb1.0_1608138122575_0.784699377019602","host":"s3://npm-registry-packages"}},"9.0.0-canary.eabf9d5c2.0":{"name":"@material/floating-label","version":"9.0.0-canary.eabf9d5c2.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.eabf9d5c2.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f0b72f8d6eaff2a835eb2893b3adb26f9d75ee7f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.eabf9d5c2.0.tgz","fileCount":34,"integrity":"sha512-UI3VfTKNLlz740Dy5hYmGH/2YBSZDfo9CWRFfvsgyz0DEllrPcnNFsRFrKCKbNei1c85KsdYXEHZVrI/4lgZrg==","signatures":[{"sig":"MEUCIQD3XWkbpR6Dbni/EUl10lP/voqL5JMXYdsFUWuMXQVkHAIgVH6i1/niNQWni0qDS220WBVG/HSwnV8BWv5LKicE76c=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf2lGhCRA9TVsSAnZWagAAEmUQAI3tCl2H4vH5i0au7x8q\n67Xfy8bkgmE99pIdRk5Jx95XlUJiyJzFrMZ8w0nee+ae+xv2PRKrJnks6Qi2\nzUCssDsoLoiYFetIsZfOBIu53VWHUTndwVEHay96C7HVZAYG/+gNTAnyNaqa\noppBVdYaPNfDehgsNvNs6A6gW+wR7/ViMuPcSJx2tbc3rsX9T7qFPfEFGztC\nZjasgWET3qMVE3FGwVQgRnCsP4D7e+mUVNVw6Xj10P7OiZMZOc+VczDI9sJK\nBbMf8O3Kr1eW0sIsizCUFKC4kpFwVy4CdCXVX+0BfO9U1BS8yCcRMd/OFW9j\nqRE7OsIaFhEBpPDzS+Ktb8GHQwH0lQmQtQJs7pQNHEtaIyDhwRAchCcq8e3K\nEEBTIqsUHmGGmd/svRuNBx3kWG1VYnI2EP+yYtsRnKZhYfD9+fV/fIh8gDLC\n5cqrJvTxlWZszTyqqoazFGeeva+NPhMQB/GU1oHMmtX7Ucoaf0uJigQdp9gs\n0U0Rt2c0BhcxTNN77uMmVGT33f6swQ2RgI8Ip0AY0vjq3uthpC/h7SgSEwlE\n46wVQF+jpHcmPYpuh65MDMMfcHlNSMMZQ0XfJh22CvmagV71SxwdlzYNKOhN\nhoFvKFJEnbQYiZCezk00yZkPdNBmsa7M809NVizVm7ShXkdv0dHXKmdw5oqa\njOCm\r\n=vP75\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"78b3a67c04374ddb43be73dc4daf2613746d08b1","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.eabf9d5c2.0","@material/rtl":"9.0.0-canary.eabf9d5c2.0","@material/base":"9.0.0-canary.eabf9d5c2.0","@material/theme":"9.0.0-canary.eabf9d5c2.0","@material/animation":"9.0.0-canary.eabf9d5c2.0","@material/typography":"9.0.0-canary.eabf9d5c2.0","@material/feature-targeting":"9.0.0-canary.eabf9d5c2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.eabf9d5c2.0_1608143264507_0.4021188082034335","host":"s3://npm-registry-packages"}},"9.0.0-canary.30fdfd06e.0":{"name":"@material/floating-label","version":"9.0.0-canary.30fdfd06e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.30fdfd06e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3d75721cc8ea12299cace19a8292aea5fcf32b3e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.30fdfd06e.0.tgz","fileCount":34,"integrity":"sha512-qDOlhhsfxorKKXLC4KR7rP2jU+d9N1vBev1OnHfHCFjIfMJ9f3cxEvLjAVoV9Yl9gj0cwVGhXNBtvxs//Paozg==","signatures":[{"sig":"MEUCIBgoXh013aVjKy5l/O2KI0dglzNJZLd2Pu5T9xgmGPg1AiEAw1oJtn167Qi7fLD4ZmP/kAXbxu+Vv8LE5MKX0WvhnPY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf2lr7CRA9TVsSAnZWagAA30sP/0Ppy4sve5axyMVcZwyZ\nacILn/QIoTFCK3B7GYvQ3R04Iv6sCyRJCIprIcaDpZFQq328Uq/sycXHP7q9\nM/K01KlWmi0OVdOR0i9a9jw2qHK4NBkEQTcrC149pDdAoI3p+Ht0DuypVKzb\nH6kLWS2nv6AIpIx6AgBGC7CVsPmlU/cgKWUO5+e5Fi5Vc8l3Ss2YlTOKkwbM\nAUryOSAnvOZdVsuYyXvBowPqidQrmQCN9uBgtrK2EIovCSvFx2cx2FhHVOBR\npIQIfLyTAKG8knInCTeCzVhU0rcdFBN/NZnGl2gLd/U6g687CmBuTTFulGn/\nR5elP/GrpRRVG0aYeCFxexXUeiXhfAhpJ0ScGJs7vlWjAPgesoQkCWPpkP45\n2fs5m4qCfVE719vz8dHHQYzgG+ruyxPhqwGitrBcoHPp7TDgs4bN+KggTSll\nZwbCpNSEvK1V0oy5iVNjQAKxuUDN6983MB7TM5BeOMd6WZ2Rp3QFR6A107p3\ntxu1OAdIMU0gOn/+6RkCbL9qzUpFtuCQ5/QsVjnmFU+gXV3C+vEiCmvER517\nHp6S2SVaETa3/vwNAUEDKXfhF/gUh3X6E0RJPX/Eneu72+ScgDuv7hni2t/j\n5YmIwfeZikatdMfCSVkuPtMWUzG1M/qRo0EHJMZw7C29ZD6Xhvf9xsElqSoW\nP2Ra\r\n=2oSd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f9c9fe091a06230b038ac8a71ccd652c7c662b96","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.30fdfd06e.0","@material/rtl":"9.0.0-canary.30fdfd06e.0","@material/base":"9.0.0-canary.30fdfd06e.0","@material/theme":"9.0.0-canary.30fdfd06e.0","@material/animation":"9.0.0-canary.30fdfd06e.0","@material/typography":"9.0.0-canary.30fdfd06e.0","@material/feature-targeting":"9.0.0-canary.30fdfd06e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.30fdfd06e.0_1608145658599_0.1332894396735924","host":"s3://npm-registry-packages"}},"9.0.0-canary.9590a8f90.0":{"name":"@material/floating-label","version":"9.0.0-canary.9590a8f90.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.9590a8f90.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e994d4d62c7b00154dc4b4729845eb9e26e35a85","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.9590a8f90.0.tgz","fileCount":34,"integrity":"sha512-apgJEyuMTJS38B0x4PTm0g+btHy/5TpwjTH5T4ohjghaeHnUDNRCk7mKR4PsZaiwdaMJq+uKkvHhzLXxPZ3pTQ==","signatures":[{"sig":"MEUCIFJdbGbph6Sl8hKM4r04yWiY7km+W3e136GcHG9IyBRXAiEAh7ENsmaM/rJXjwUVO2QoS3sVnape2BgMrnN1uHg0qYk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf4i/uCRA9TVsSAnZWagAAsl0QAJaU24JIQvlaOS+mS5pj\nop6YKZ33SerP5DJR1lWceK4NMR/6nV18BjgjwTQuSJr7ALXNwooW0gp/ZXPc\nob/X4QhfrAM411Yo19uNG66pLxpuhzvIBq/7uLRPX2cfTor9yRh0vcGOYoPL\nHPuZswI3MAME0no8zNNkcR5B/YZmk48F2BjKXt85SKIv+QHFUPc31TZplHMO\nqFsPuw6CvCf1QAmNvdHXPxX/y9mW15QYWXlbvu+axIiGx/lXww/pezczlxCH\nqbEXoIssbqQCYYP6iXdYAYgqgwpA4QtfTUfC+usfmMrS7iprMY/2Fsjh6ipS\n11920u+I9E4HZsuccpBsCwL+x6aPC6HjTh1Ya2o0P+FUwZlupaRTbP0cHQL1\nRAKqOm039FR9E/UlJQaJxj34eU3jUdEUTrX2YUarCyaiJ9SPqDgqFD5fxWS/\nVJOJbcMuXrPeTTsHCtJUlPaxQpv+M8QijETMZcGs2PcA7CAYQt6tpDgsEK8n\nG85nDAgnUldGpc+h1n2NwPKj0tANLeAdnE9zbWbjR+AggSN2PFjlqUp6dWnv\n5BO3g9JXULPvmlUNsd8emsdgS8sJ/UQdQ9uy6rBOd04kTleAU1L8a2WNh88N\n7qinnMxD53mx+SS613Q93EMM5oRWcqXginVy8llAxUSEvS1tzcksMfsBu/+M\nTzCN\r\n=wWt3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a592a11a03887b1e1535d4d49ea05db1b6f72789","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.9590a8f90.0","@material/rtl":"9.0.0-canary.9590a8f90.0","@material/base":"9.0.0-canary.9590a8f90.0","@material/theme":"9.0.0-canary.9590a8f90.0","@material/animation":"9.0.0-canary.9590a8f90.0","@material/typography":"9.0.0-canary.9590a8f90.0","@material/feature-targeting":"9.0.0-canary.9590a8f90.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.9590a8f90.0_1608658926103_0.20255470985865065","host":"s3://npm-registry-packages"}},"9.0.0-canary.f89d8b8f2.0":{"name":"@material/floating-label","version":"9.0.0-canary.f89d8b8f2.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.f89d8b8f2.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1c67f24eb38e89ac4b497fad863032208b072b6d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.f89d8b8f2.0.tgz","fileCount":34,"integrity":"sha512-5GdBTwJW6HjdqaseBBSY9spa9IUBDLU+7VyrhOr4FBjQQIN9n7JsQ5cLUQoa0nPxHQVZtqpJgMK6pnmFVhJAaA==","signatures":[{"sig":"MEUCIESr1fB4vX8CeoxqMSs+UVQ73SPVux1/QKlm/J7lexV+AiEApQmKBuJhMAv2iWUlz3+xyMpQD/+W5uO9UDoXPxDofr4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf4nuoCRA9TVsSAnZWagAAd38P/jozCD839EzE+sFJctZf\nbsT9dsH2bJqer9e4QeRWqFnyBi/dYKQrPEDcfJgnPSIi5bTEagIhaSyVTOEH\n8FbLxNC/yQuR28KsVUJfDLkHoWHvEdcCnS1i8Tc9qlH5Rw3A24l2fEhC4ULT\nqgxWycqjXSRTkjbC78SipJsLXNCtPvsZcikYnDq6V6z+LPnfKJc5wZKErE2I\n+Sr7P7mo2PEplpEmxSnzO3ltBGLFfzjMgNZnastuMrdyH0as2X7Fp0S5jl8k\n/Xoi3KZZ7413cV4tLumcCmTZUG72W4DzHD+mfLwYEW9UWpp+fXNmpWx7uCIF\nDnxNeJpwPFBIfT0rz9eNVrPpCumruRyvY73jxv1pPIacz8kL1I6yNNqVC/eS\nklgNLMsQaUws6LbvtCP30u8wyxh/UonXah8asXFGtz1SqVbaIzzLtWiE8aag\nIKdeZjSvvjlYXmB93TcAOVH9s/ZtttYzgKHo95JPR2bcLzQsj4MIaVBelSfx\npshuvSCeNpZZvlNvRyG+KsGnTaQEstp5WZNFWQasMcPI0b2CtpLgQMNPB9+q\nnSL5XfZEf87839kcK2SZ+1F2DruT5c9AIM/zwh8PpIBHlYJQUDrZpvDGaxzu\npgaQe+7xF8CYvxE2UenfPmvMomBjAh+pWyEe8t1utoh8uVR3/Ws0Ahy3QZDm\n8I7y\r\n=EeOV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e0d61155aa611a1a8573762d75379cbb25d2e7c0","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.f89d8b8f2.0","@material/rtl":"9.0.0-canary.f89d8b8f2.0","@material/base":"9.0.0-canary.f89d8b8f2.0","@material/theme":"9.0.0-canary.f89d8b8f2.0","@material/animation":"9.0.0-canary.f89d8b8f2.0","@material/typography":"9.0.0-canary.f89d8b8f2.0","@material/feature-targeting":"9.0.0-canary.f89d8b8f2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.f89d8b8f2.0_1608678311905_0.609720100457636","host":"s3://npm-registry-packages"}},"9.0.0-canary.fb194dd35.0":{"name":"@material/floating-label","version":"9.0.0-canary.fb194dd35.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.fb194dd35.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"948ec777d8de20a6421b29ef32843b72b7339e74","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.fb194dd35.0.tgz","fileCount":34,"integrity":"sha512-j8HpP7SgFeG5BSjo6RwdEz4Tg6DItz6nQxO1fmxdlz6ezWh4I3vq63MRzyuZZOYG0e5wqyQmIJL9iRKnFoiB9Q==","signatures":[{"sig":"MEQCIDNQ4jzG0kVCviUTG8HATHkXRkLpZzbhYkEPG2djn4m2AiBAIOoWmrMLk7q7Qrv9t/uiGEz7z5DaXghtW5/YKxsK3A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf6kP8CRA9TVsSAnZWagAAlE8P/1T9muta+OiaFTGQux5D\n7MH4Bpw+6WKhA8JE5icGmPuxtLGhbmthflGa5ST7lxaPLEUWNq9nzurF2r/q\n1GiYbRJEAbu+I0pzrPzRQ0bVNzqoI3WuavLC0rcgLn8v0oauBi+eeZp/s6LM\nW4n8FVhZNx9qwUirgbIevfQ2Vv10s2ruorpFP9MpiYfCMZ/FHdkWtETEhpdx\n5MH2iOM31194MtM2wIzmDqY24MkEwvXXKTqZMK2wQ8rvgCePUZe2XsTu4jcc\nuA5y6MqBti/1Sspcy9SS3iAVdiIX5qnw6HBQDYn+GBd4sXQOv7mcjRf0LWcr\nTJK8dtndBkb5u2CYr1rUF4bMlsFsGCXkULKDctbIZV4mh/9Gi1xU0TSb+ceg\nJc1a/+QapIq17bvPxz5K/mZi6Nrf+zcEAIeo/klgadS8mgw2InZTGs1Gm6v9\nIsqWOg+w+Z8AbZKzrq8w2JvORsegmDF2h0Da8cgi3IADH90QgShf9V+324Ab\noRuLqePuZSKIg/rBraC9uUcliarhRq5vIPUK1/IUZe/HISYCVcGGVxXVKp6t\n35U8w8+p2JIX9lDKD4IuRsOoR9DmY+xycgk6oLDFRiFrZHBPYBGCNJ9WQwkI\nTtmW46n9FoquLgeTNrgVoYCj30DIlTPFxiwBnGK1hTOYtdGM/sYGBBpfHk7Z\n62ia\r\n=8yiz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"57a5b34de1026133757436905fc54dc5b326d3e8","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.fb194dd35.0","@material/rtl":"9.0.0-canary.fb194dd35.0","@material/base":"9.0.0-canary.fb194dd35.0","@material/theme":"9.0.0-canary.fb194dd35.0","@material/animation":"9.0.0-canary.fb194dd35.0","@material/typography":"9.0.0-canary.fb194dd35.0","@material/feature-targeting":"9.0.0-canary.fb194dd35.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.fb194dd35.0_1609188348407_0.2095360445671366","host":"s3://npm-registry-packages"}},"9.0.0-canary.64f36e287.0":{"name":"@material/floating-label","version":"9.0.0-canary.64f36e287.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.64f36e287.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7f746fb953ad91238750785e555f1fead411b64e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.64f36e287.0.tgz","fileCount":34,"integrity":"sha512-J5Ka7KJaJ4ghyLrheKdJFlzLsiJegd/wdWvbwK+AXrNMSn9zb8sRnDZx4ws2il2MuG7yaHFrOoxDNt3HUocnSw==","signatures":[{"sig":"MEUCIQCXJiJbvNDFG1iLJXnQhxc8qvuqA1837B59t5jR1DTQIwIgXuVCYiT+Jzemn6kTRTBE/DbjrBRCC1fdG/b2+YX9eFY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf6klXCRA9TVsSAnZWagAAm9wQAJux3wCj6n4D+4fB5l/b\nyMpubEeaD3JY5IXL5iUz7jsiAWoBEloGIKr5Ri7aVsdQQeHTzvoAV4bX/2f+\n5u2vq3PuYOykzR4xHdIDjm+LRonmZ4r9ck5VcbDoeVc6sCSktd7uwxxfS/Hh\n04SSebForlRA66Deij1Nr5GQ3RK7UyHtQfd4JuvVpYSAcOlxFDVZpM449+ox\n93z094dFfXPzLfhDIyDFBLsxbX2LCgVt5b/2SsnZXc0cIg5gb0zChw+3TnSy\nTGw5RHHrHdF8AnTiNGaNlrhr/ywt5csoY2dr2wuNXTOIX8aXypaJkFFVa3sr\ndBZJWRGUBkg0sYnmKgc30SENNkPvF8RHtbRYW2kVdGB901VtQEFPA1OtZ2DA\nfALRONFfTRg4Nk/OJO7+j5jXXDQ4SBKv1g6/cnxJAZu6UhKbwjtxMxg5D5d2\nCpf897yisIjqvcRx+sGxLq7VxyEhN3xw/m9axllsORUfYvrZ93Q2btRAf95Q\n+IQksQ0YUUi/lySYb514/y+ccDswKcHxHXHSgKDqfnMxYDJRMVCjglVAgyPl\nT/ssFCfAGpv++eFXYgTlFkAxwYoQ4p3OzdezSmL6YFGEh6FlwE9txawI1/w8\nNS9uAKibEpNsxC3SXbNsCY9ULGsNk01qM/QTra2sLfsfxv4u/9zVmiYUGLkA\nfk4M\r\n=2eLG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"23f6770d284ec6c17b1aad9913827f8d456418f2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.64f36e287.0","@material/rtl":"9.0.0-canary.64f36e287.0","@material/base":"9.0.0-canary.64f36e287.0","@material/theme":"9.0.0-canary.64f36e287.0","@material/animation":"9.0.0-canary.64f36e287.0","@material/typography":"9.0.0-canary.64f36e287.0","@material/feature-targeting":"9.0.0-canary.64f36e287.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.64f36e287.0_1609189718665_0.48003787846258117","host":"s3://npm-registry-packages"}},"9.0.0-canary.b7bbe7022.0":{"name":"@material/floating-label","version":"9.0.0-canary.b7bbe7022.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0-canary.b7bbe7022.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"103225e405e19ab11dd82dfc5bc687e767981bc5","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0-canary.b7bbe7022.0.tgz","fileCount":34,"integrity":"sha512-yfa5TJ6YkRaz8xKh8GS3O9a1FxUAhUUqNUgYBU0vxL3Uk5WjguMX5vPJKF7Ree7LjnoRSZuxMQLOFdgZASiGZQ==","signatures":[{"sig":"MEQCIAqmms2GuuHDfBnCgVohY5pD+BuC/V6Gb/L+V1QVcUw2AiBjwdmEvKgb+tbHlDZc3QquouowjCxviesMloOWqo/mxg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220898,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf63nqCRA9TVsSAnZWagAAVRYP/jbf6FOVapYUq1470pfT\no/Mf83Ix4Za9j2IyalHRqURUCerjTkekQ4q9vxiqIgobjTsqd7DUABGxd0wd\nNFXZpyynlZ3h1V76AbCfSHoW2Q9eeV2+Qn6ykfbkvjttg1sJyZI4SatMsI+Q\njJfFPZ2t/SHSboerlvH8al2E5IAXXFdpyDH+SThg6AWSO6uGnB3fg2SbdvDw\nDER26YAhTTiJjuWMvwUj1xnglYUzIRVmim04PG1TJFBr6PC9Yb6TeJSWU7O3\nfOqYKcRmQaJPBUbuAtXMiKO11XcYI4c80pg4HbkP6ywzn5YFH553DRKifzUI\nWMQFGJzqHRg32fNdjNyYuCTXX8uIS/ADEpxCxQDi0KsOeKYIt6RBOI9p6LSL\nWYfITQ5iVhr5YBP+ZvrUAiWYO/vjfbDcP+4w93YmiYnF1nnSsk9PF5Gpax7T\nhxxmk4JQ0u566L8JlzwcN7fSg3oOHIPf5e0u1vOkH+Tv+vOdDoRxNQZ4ECVJ\nvWmCe9R1p3YhsYEG94ldU+eNHdUyICHwmf6b+ms7Gund0J8IxbFFOu/hitwp\n+kQQu4WPjS1Jcf4n3/SvHe17miEK7RDZByMZNv3mnRwx3Mue18+BCQS78qqG\nNOKzC2gp07cos/QAgCMrzldl9P7tP39LyAq3SbHDIi3aK6guJs3ry6u8t/XL\nswyC\r\n=6ZjS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"81238a3912ea8bf30c97b0318ac2ce65f297eece","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"9.0.0-canary.b7bbe7022.0","@material/rtl":"9.0.0-canary.b7bbe7022.0","@material/base":"9.0.0-canary.b7bbe7022.0","@material/theme":"9.0.0-canary.b7bbe7022.0","@material/animation":"9.0.0-canary.b7bbe7022.0","@material/typography":"9.0.0-canary.b7bbe7022.0","@material/feature-targeting":"9.0.0-canary.b7bbe7022.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0-canary.b7bbe7022.0_1609267689606_0.6188453645053016","host":"s3://npm-registry-packages"}},"9.0.0":{"name":"@material/floating-label","version":"9.0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@9.0.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"441437a24196a898bb8670be1144846ad789fda2","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-9.0.0.tgz","fileCount":33,"integrity":"sha512-hteVKZ/si1b7vwIBmD7zbZMHpkxZ6R0EDZLdiI//BBj5Ff6H6s9iwoUOC9kFQgjwNKiw8aZo5U/jsmwOhbwHvA==","signatures":[{"sig":"MEUCIFgcTJagOoGbeY7GBVK3tZapzF1NnXhQZMM3THzBfHGnAiEAxhVe3S7LWde6V0cfzwnH23pUFZF2NfwDYw8qRTndEbU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220371,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf64eFCRA9TVsSAnZWagAAEIcP/AlyAq1n1SqNcegV5ORp\nWdQDvlHjGIBUilYmORXpkoCR0lMY4ZLGsDRq7j9Q7ts5K7dCBMfKtVhGQGq+\nQiYIYzfjQbn1+KQ4D5Kh5KWFnD1g1+tnYC0pBpsx6AjbC56qGkNLcbs1enLG\n8PSwSNGAwCVgpaMScXnPDIMBnXXwFU36dAbcOdHbWX44ov1uUAZ8XtOEdATJ\nW1GyRz2X78DLt7bA6RusFqLlFgDnB1j/mrMWZ/wUDZINkN83f1cXvC7GlR7K\nJpCD1E4/J20NMcJUVMcAU/TbgbjNHxHiITJ5kQmRTnLVVvMv9Ij6mlb1l3NE\nS6XeiFFuIURvFLtVQ/1Ga6Gx8sR8NVSghms3NBAJIyLPPKT76LU0EpMnHLMd\n1BWQnt7DE/qfVRGjnXmtJAhesBxsh+aFmNJHLFlts6qdOoaD5mgkrX2GVadC\nq+hyM0Kx7ynaDts9SZ8zOtpWdDCm1YOIfXv2q7oem4y/NlRQioyIiSNnO4Bv\noqgpqP9Bimr/gPUyIL4JFHurx9y8afeGz+uIKNKnP6G8RBbRYt7FCO6Cb1ik\nNd5RPJxAh9WCXsBj1rltNN1YcZZojSom1n0+zZnpHpC7V1mo9+qQb6zDa2o5\n3ifakIv6cquoDnRcKCu3dCtEVpvVJXEnpuOdAsv+ByJDbrimI3gU1z8h0qHE\nziDN\r\n=+76A\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","gitHead":"555aecce59125bc3f162b065dca47384bb5822b1","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"^9.0.0","@material/rtl":"^9.0.0","@material/base":"^9.0.0","@material/theme":"^9.0.0","@material/animation":"^9.0.0","@material/typography":"^9.0.0","@material/feature-targeting":"^9.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/floating-label_9.0.0_1609271172956_0.21778199581197644","host":"s3://npm-registry-packages"}},"10.0.0-canary.776c18681.0":{"name":"@material/floating-label","version":"10.0.0-canary.776c18681.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.776c18681.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9f1c0cfc1ff539e0fb59ec85db07c8b89a8a6ed1","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.776c18681.0.tgz","fileCount":34,"integrity":"sha512-bPtPZ5Lu1au26tZtvO1cOI6SOi0lGK0tdqQ52cxrMewfiDRoZRtxrMhQVC1Dj1EHT3kJsYVbiVnoNZ+umEKryA==","signatures":[{"sig":"MEUCICnEw2su1lY2BN7QjZ206YFSIGfEGjaQufKubLIZL9pXAiEAwOIanyPchT1IkRl30SWX5PyE4Zsl2BHk7IFbTOgTqzE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220908,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf68xzCRA9TVsSAnZWagAApzMP/34wimmXlJ7IJlR4wBS5\ncvy2eqsNbzKDfu8xS5UtKobJCEMjPyy+baB0QT4hW+TN1FQGfMwFWNsFOTEE\nrnQnbMAcS+Tf3JwKCOSFtxmseQia32SJdUMxruUEI4KFOzS0/0PZBrL9/Sal\nQr16YieYsrpE4hLpNb/Wfn9voneol9ceilN9whiUgSB/2Su0C1Feb8kyLkVI\nuCKjGIs0RVGNUKYPYOiXLExiVVQD9i1S3ELYJbk6l1ksl67ocjv6kmXiFoE7\n7VqzB7I2VwVbgI6Xqn4n+25Yua5WLZt/Luh1W8IS7W2ua3mOjyFJD8RcpAZI\n0cCpwAzTRuG7UJ5b9vgw/gVi6iGJFfVLTO80ag+6gpfVx+d2KNwnZ/AZjphd\nNXgrlH+TKC2Z+kZ+2Wqd1GToaEk8oGEMRiYleRWEsfacvjDP4fyyMuMOLC0a\nIh6Lh35JpRgr9nwcUidA2nVMsiK/LTrsEDyVb/jmawA6J4s48yt+F7w86GGg\nR0qM0hTRhaCX9NpX02as+Lwmoq164YK76ddRbpSMcKMW9waw1BE7SKaTKMBI\nRa+b1bTvkBFHm/lcrsmdM5EIFAO1nzWLgFhfs8Or6wNjMZpcbGKBmyW5imiL\nGNI1q7oWFGDUMlRovbqqaJnOY/cCu5kgA9Rr0AatET3GQjBgDe8pQ7rdO6i2\nH6gI\r\n=iMzr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"920f8ec98e9709a32b0564a5334ae434137478dc","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.776c18681.0","@material/rtl":"10.0.0-canary.776c18681.0","@material/base":"10.0.0-canary.776c18681.0","@material/theme":"10.0.0-canary.776c18681.0","@material/animation":"10.0.0-canary.776c18681.0","@material/typography":"10.0.0-canary.776c18681.0","@material/feature-targeting":"10.0.0-canary.776c18681.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.776c18681.0_1609288819103_0.09981288043620062","host":"s3://npm-registry-packages"}},"10.0.0-canary.671d72d95.0":{"name":"@material/floating-label","version":"10.0.0-canary.671d72d95.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.671d72d95.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"8c980b16b8dee8133a099988a4e3e9fa5cf74d55","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.671d72d95.0.tgz","fileCount":34,"integrity":"sha512-t8AfffYCDtpbXRx6N9Y3theh6FzKgExZAmwne1s/hgd5+sH5tYtoRMSOdchXgoZwsPLstkZ3QoH96bPP4cFoDw==","signatures":[{"sig":"MEYCIQDDML7q/cxPvU/ledsfH/yxbDCPBofjq2NfrCxKwSO2xwIhANzOYf3SrxtPKSNUnMcJsEuYvNCCdgd/7J1b85MS1lOt","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220908,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf7N8QCRA9TVsSAnZWagAAJOsP/3ohJbBFEh81gjQEOUXb\n2vpMu8rIg4San90OtdvdAFNzzqvdxaz4pCg2q/az/yb+AnaTs+An0Sx3a6cB\nSFL4+j55yACP7Kff4N715KGewMhdojca/+pce/eQNfg6cRy9haCTVjm4iTWn\nzBKZiYAacYn84EcHAwcu421d4r2rXUKm6eEflMDHKH+CTHVbWq4R4pxizsHs\nU/KbxZntsKVcvlaHr+M8Kwg8dmpVJ8pHO+zeV2jtQFrREuMXCBdb5t2/F8Ne\ngFcNNXlmLQKZeyyHOn38ec33I3AMQfMnCdckzuynjzqQDEDaDaPESyt5DTrI\n5KgWVQ6ahX78JZ4Esc9Xuj/RWKQhHoj8OqG9rbZR4yDpqqNYBi9m7vy8A6hc\npG9+IvMXoVkPXl6v9YNZzDJAts3USjnV8tkwsKP5VXZiAmNdNV384oGiZvaZ\nmZPcM0gHBgYb44ndloOrpe2su8zXMBFMAQl97FvYtWAhWq4r2T4U3AlqeEwe\nysxprr2Fe7mXZMJANA7y3ZViNtfxj8GXvE2DflLDaE/S4DhZF0f+qOdYKzMK\nb2R8m5BIyHqd6ibnuS+Lo80V8Lipo3Bk8nO2bRCnGNSG66Zs/ur6CmxDvCyL\nDPe7FyXbGcozHGMZfv5T9jTh+t/A3AwN/f9qOTTHYiuzTW7VybUl4C36nuu0\nJ28T\r\n=IZ3f\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c22803ec93a76c661222622456cf6f5c5a17459f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.671d72d95.0","@material/rtl":"10.0.0-canary.671d72d95.0","@material/base":"10.0.0-canary.671d72d95.0","@material/theme":"10.0.0-canary.671d72d95.0","@material/animation":"10.0.0-canary.671d72d95.0","@material/typography":"10.0.0-canary.671d72d95.0","@material/feature-targeting":"10.0.0-canary.671d72d95.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.671d72d95.0_1609359119599_0.8017094278130283","host":"s3://npm-registry-packages"}},"10.0.0-canary.b4f5a1c9e.0":{"name":"@material/floating-label","version":"10.0.0-canary.b4f5a1c9e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.b4f5a1c9e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"094d39f2c8a6c59f05659c3b2775a9f09056be9d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.b4f5a1c9e.0.tgz","fileCount":34,"integrity":"sha512-ZaEjeYDRk5HUX2xmiJYgtlgeZ1P8wnfwD/aCKPN5wX0Tti1JbAGa4Afa695E4OjGjWnQL4jvb4oB2mNKmWLVVA==","signatures":[{"sig":"MEUCIA4xz5qN0v10iO9Rsm6QWktxCYcQYvbrD6MZVlmQUni4AiEAnfjdVdOOT7ebYxG843UkcNMIQryZyKsHCPDiqZ2a9gM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220908,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf7PU+CRA9TVsSAnZWagAAAc0P+wU7+BPtxoLNgAIcivPr\ntf/QEota537Yn2lbfyGuXl6C4qhEfaWvfj6z8PtN8GOL51pItBddOJti5oSv\nJPdDy9sBoniMYjjj+4CJpvZVvzhf2XuBLa3gGUjBxb+mGeq4rbS90ndw51aT\n8cBl2Mdc5sZRDtNLtjzU0713GH85HwHYc1Am2QsttvBKhk+84sxxeBFbT/wU\nopjaELW22J2ZJMeRwY8Jyl4Jbs31gux9kDNnrsb1wEF9WkiUc/FZspncLQkg\ng7kpQ0r4a9UgjHKUoG0ESrWXBUsp5JepA05gQYg2oHZppC40EfXt7iClhEFa\nLk0ceVHgRJfAmztOcdJXDP7VL7CY9f4e79kDqYhxJ9xW8/6N3gAUr+BRznzG\nxXsTPGwYbkjLo7NoC/cUzaWc8DTJ4f245x5KNckMiLURDj42gJ1LN6JFE7xi\novLGuZ5+I7MK1XSf2nVMK2IIZiVAPAwaDzS6WE9V/LJAWgFF0UOlPgGznta0\nJb4lh2XgbfmK2Dw3F/Qew1jAOhALtNtfJBZvFZqEDgFdfzA01tPxjk3M43mA\n4dfZRGXM+G3M4BS1v9wfkxib/W5mtE2blPs1GGmKqsQuWXkoIPCL8+6KjeTW\nDQ6y6tiMpN73V6TZ6u0opmwle7pjerOUOZJU/syLmDE8ZOUMSvNp7au3WaHP\n371m\r\n=+sCP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1db47387aa8e99022677270066e7cba1da23732d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.b4f5a1c9e.0","@material/rtl":"10.0.0-canary.b4f5a1c9e.0","@material/base":"10.0.0-canary.b4f5a1c9e.0","@material/theme":"10.0.0-canary.b4f5a1c9e.0","@material/animation":"10.0.0-canary.b4f5a1c9e.0","@material/typography":"10.0.0-canary.b4f5a1c9e.0","@material/feature-targeting":"10.0.0-canary.b4f5a1c9e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.b4f5a1c9e.0_1609364798165_0.3902928837725028","host":"s3://npm-registry-packages"}},"10.0.0-canary.a94bd8deb.0":{"name":"@material/floating-label","version":"10.0.0-canary.a94bd8deb.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.a94bd8deb.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"bbcd997f86831081b99096869b286d1321dc138c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.a94bd8deb.0.tgz","fileCount":34,"integrity":"sha512-z7pLZf2hFE/UwLLJUFdEFXFjBGRt1av1o3mLExQeQLvodb3JbZ2JYK0aAOreHhHkhowzYTMaQ16n2Hg7Td/Viw==","signatures":[{"sig":"MEUCIQD4H2PwSn0taqktsdhggFM5G2DXBXOImha9nXByXuGbkgIgE6u1LfN0f40j1ugE1+CXxzcMvuJj/ziK/1xMRUPPSQc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220908,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf7PlqCRA9TVsSAnZWagAA3SoP/1QdV15EGcWQ/KzMqLSU\nPpRHQQ6qOiZOiPSkkX3zJE+BZMKjm1VyKl3YLtluE0AET95ikTqy7Y3jeqqO\n6ew7x4ZcQzh1ymLSDcnmgKrGPgtvAY6TatjBPVPPfDghUhZDuSTZ6k4BgipA\nkscgMjYUXm2vTHMUqHQXE953VCe6Xe4kDt+DgflxzjAsd6n4rShE9ADSUCjw\nu9nfkUUHzwMsglZcxgXZmQDQsQM9pCSAcPhGqMNU2Fuo+5RNk1srkHooz+q1\nr3CasqQTUQCcnx9k2l5aUuH+7myuDTr7wcoiuEZK8svDIrSMHcG4g9FvZcCO\ntoFRNxqfVx6KFrVrvAhfKTi9V9qsHKJDmXloiVs/OkurUTDovNF7D0FOz6Rx\njS4gTfiAf2q61yLsawGts6qVbIPNmIWq4vp4DPjdBuV2833o/L1PEq7yRMv4\nZT1Y0zK0XF3uaRFhaJWnClqD+iSa8RuSkmxiJRJvn35Vb8epA1Sp0+BIxOYx\nNA63w8lZVZDdWorWIyVmOG8o4R9XpFbO7sOkQYt3WdtfKXvN4vFEbM+fEQi9\nXJwYnwUzEAmjFRp4in4Qpqhl7z38zEXE5j9IkxJuJmeljQ0YoTz52vWG+n3K\nbvnc6TjzJeWcuE28U31la9xPljLSDSvgln6QZH+XN1N49eu5M6+7GnRC7Sx1\npFwq\r\n=bCTA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"12c943490c76f911dda3861f863c68d7abf77ce5","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.a94bd8deb.0","@material/rtl":"10.0.0-canary.a94bd8deb.0","@material/base":"10.0.0-canary.a94bd8deb.0","@material/theme":"10.0.0-canary.a94bd8deb.0","@material/animation":"10.0.0-canary.a94bd8deb.0","@material/typography":"10.0.0-canary.a94bd8deb.0","@material/feature-targeting":"10.0.0-canary.a94bd8deb.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.a94bd8deb.0_1609365865804_0.7823336097186937","host":"s3://npm-registry-packages"}},"10.0.0-canary.5d128511b.0":{"name":"@material/floating-label","version":"10.0.0-canary.5d128511b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.5d128511b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d57f9bf2a0170c5bae6baaa0533a01c57932831a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.5d128511b.0.tgz","fileCount":34,"integrity":"sha512-gp30jVnXAjIqa8Hc2jdLZYloEGxBiS+yy2kt3nKEXku9TaLxrepWOtSy8/1ZwfKNjByqmJGmRxpXiC5u1LeFLQ==","signatures":[{"sig":"MEUCIHik8Fr4w9RSwvVpp6JABHnajmLXLpJxXQQuiXc0ABF7AiEAhTBNKl/EaTIcJFTNoLkrfwhCyFjYR/sPVNqVmh8jAKM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220908,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf7PqxCRA9TVsSAnZWagAAsAwQAII8TT9J7h/pZDmZ7Zbe\nHHPim0NdGS8dwMWfudMzAOs02Yrm2nfS1JmmQ3Q16o2zsS1FH/FlfDMzbi6Z\np7LIfQFGQprZGhPk73TJExQY1qL2mlUhqmnQOJMFaAw5IqOm6pOz14WXWiqJ\n89eVmeR7Z0bfyvqamQB+gDKksFGimMjg3es1wr4dt3TAWge8KPOTyGLs+YnU\nfZTIqxtevOL5WI3lm0wswpLSxkSs4NCh+eLWecS1e8YNDyaF3E6NZzh1yI81\nnHxWve1XvRfkDibNG9gTdoDpDtT7MZn4GesOq/i0pH14GxhIVUsrvSBXTwVz\nbBtg8CUEVFFr6ISzaiC3Bx3cqKW2PmcOsSSAvWpV0+XKZbncfNun2mZrgsJ/\npWwDy2U07tvGC2WfdqNU8aE1/vL9uRqVeEVxpMxymfTCdtwO3Arm6b/QyUfv\nmfMYQyNo7qcmH/PJ//NHHAaahNHxlzXB7rQl7JlaOaDww0cYfMyCsK8N7Ss2\npkLExhbcQcxCtNL5GM6JOuOKhvk5THuwkLg1u2IJmzFsw3XKXc4zIQo9anwx\nIRGQaFMV6crJ/IeCivrKuCTrcDjzwUBeLvq7Zr1Fmv5zwr2XhMgy8y1/SpWA\nKbZjtrPcnW5re6NrxgHTGzV4txAABRpUHZI5eruHfEEU39O754bUSiGUnuDP\nIryI\r\n=2rQM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"05d17b41cbad4a8aebac080f082633a26be09a3c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.5d128511b.0","@material/rtl":"10.0.0-canary.5d128511b.0","@material/base":"10.0.0-canary.5d128511b.0","@material/theme":"10.0.0-canary.5d128511b.0","@material/animation":"10.0.0-canary.5d128511b.0","@material/typography":"10.0.0-canary.5d128511b.0","@material/feature-targeting":"10.0.0-canary.5d128511b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.5d128511b.0_1609366192575_0.7637229267656356","host":"s3://npm-registry-packages"}},"10.0.0-canary.365c69360.0":{"name":"@material/floating-label","version":"10.0.0-canary.365c69360.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.365c69360.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3722f07ebae5f670ad0d81544eb496dfff609dcd","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.365c69360.0.tgz","fileCount":34,"integrity":"sha512-IlU6IyVIkHivYWOXsF3eCLe3jsi0QP5Dyy8phYJJRUSK37qwuZK5o9TY4HuPBVEBAb1G9ocs6I86IaQXuAcdgQ==","signatures":[{"sig":"MEUCIQDtGqCAKIMhRz2rtccCkXpQ3uoqI5g7q5/hfBnf+SC/IwIgWhERFnF0qqznJcETCLRZYhVEkaJ9GUT5+qzazd6zi7o=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220908,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf9KZoCRA9TVsSAnZWagAA5ssP/AkZYZHIGz0/1WgHdh2c\nEeiUA/pC5GyJen5LnzZDZyHR64NbPbb434ADiUwD7txBcaGFlkuMIapWjzmL\ng897qk7pwd52KGzJVnFXyRfjqy9li8Tw8uL8J27gVvRar54aDTnf2qL41Qv9\n0F85uqNxEV2baDFcPaUciv2GuoATminjV2ATKpFy+XiWTv2o4YwNmdRztHtU\nUnJMEQKgtMTQEDe4f82SdnCo1/jFzR2r0OX0eKnXNh+dfDNi2o9Qqy6ytwIR\nAOIXf6yZrtBeylg5PS3zgn+arZwKll0bxpJiuXS+hoJiEsALZoBAfdcjSo2U\nbzyE7da+rADvoIsThv7xawB7J4TztAjc6ju4wk4IDSTL5iOhDK31xeTTzdCh\nYp+o6xgiAMSJH09reZ6DQg7Kzz16oQEKyYuAtOk+oz1VBjOrCWNFF3jFOYqh\nIC9uHLOU8B59zwh4L8fYLlUQ0/Ync41906OIeJ01uVepGCltmV9AJiNBf/u7\nB+6qjuNT84Im+DewMrvwmS0xtIN6ieBv8jlBlxz2VOFegOV980Qpt8/1ao2p\nhE4I4OK8416G8rJRjg3MQzRnowqyTGFCtwV/01XoO2m83Ue6zg3h50Xz3eyG\n3ATJjUqjsfxaWF6Q09MPIu6QEsatlgoyqUzqcr9uNJHvkqF+qwg3h8PUGZcp\nkQTz\r\n=hD+Z\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"0b060c30e2974c71db5d5ed87e3ab7918656edeb","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.365c69360.0","@material/rtl":"10.0.0-canary.365c69360.0","@material/base":"10.0.0-canary.365c69360.0","@material/theme":"10.0.0-canary.365c69360.0","@material/animation":"10.0.0-canary.365c69360.0","@material/typography":"10.0.0-canary.365c69360.0","@material/feature-targeting":"10.0.0-canary.365c69360.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.365c69360.0_1609868904295_0.039294353443102725","host":"s3://npm-registry-packages"}},"10.0.0-canary.700a8261a.0":{"name":"@material/floating-label","version":"10.0.0-canary.700a8261a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.700a8261a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"32bb40d671a87720f50941aa3a6d761a02da0972","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.700a8261a.0.tgz","fileCount":34,"integrity":"sha512-+fxQcM3vWIT/WZL/XtejKoTCYRSnb7jaT37j0Q4+N53FUB0NReHL4mVJf3Epf1mq9XMzxWnto0RBQZEel9Z3Ow==","signatures":[{"sig":"MEUCIFuJ6k3mqjR4NdQt1Dk5jt1BUbLdKJ6cqAqUYo9O46mwAiEAg+nyLT+E8AOmdidcoxk93p2aMno1O39k+SCWuZ2L3qk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220908,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf9NN9CRA9TVsSAnZWagAAy3gP/i29X1O/bRyQFjZ3lTSP\n9l5NIrzcojCSKzd+hPQ+O9IvU+TK2+SZ2TOjC1OnpSXnuHZs/pdox4eb/oam\nEGIBu7yRUEwlvOUp68ZDTp4pzVcDOem915lQ/m3zEgWTVTndXzE7uhYqH3wr\n6oFyxVdYBGpYS+AeDc412OJ/t9EO5RzQJeDIZsoBKNHblfeNcjYVzz+yB047\n8AybWDI4aPQ0MBSNPMq+iBFzyToyj8LAukeX0wF0hha3iHStF8SLdq+3pRhJ\naVXxHh5l65F8yFyvtcgt21VrRRjSPg6QBKQ5kXDKRqSHe7TeLdS6xnNVAOC/\nswkMWM0OlIxM52oePE1nlhVf2V0o1KlSd8HOCB8kM9FCDlo+RcK2sRrPjXeB\n9Lc8BLUL4jt6MYxrV5y0efJvsj0woKQ3g74EfY+gpVjX2eOjgNaT92E69bmT\nt5wpsFKSglq5kpIMFFJLWtCTmg8mJuEh6QMnAvCSz+KONsni7XdU+lCh3SGB\nDqvc6SUS/bvQkDKa37rADYrr+h0Tu5gWM9pDcuojJcb4WTOBI/dcYCNlA3EM\njExyt7Mpp4Bo9kDpB4weorZxPRq9M9UAOYBvN8biF5LMyTo9Nuokb5IK8CF1\nBC39IdguD2QpjchjgSPJS+Z2KIvrGhu7IX+ZbOLB/lgx2I8zZ/ds4CnVQh3x\nPOIa\r\n=KImp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"0e9aee4feea82b83f34c723b52aac42fda1cdbd2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.700a8261a.0","@material/rtl":"10.0.0-canary.700a8261a.0","@material/base":"10.0.0-canary.700a8261a.0","@material/theme":"10.0.0-canary.700a8261a.0","@material/animation":"10.0.0-canary.700a8261a.0","@material/typography":"10.0.0-canary.700a8261a.0","@material/feature-targeting":"10.0.0-canary.700a8261a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.700a8261a.0_1609880444608_0.6670700224811206","host":"s3://npm-registry-packages"}},"10.0.0-canary.766981c15.0":{"name":"@material/floating-label","version":"10.0.0-canary.766981c15.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.766981c15.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a9f906010f64a8ca03ff6d7471f3f6d3a0fb4761","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.766981c15.0.tgz","fileCount":34,"integrity":"sha512-L+PNdnXQTGgpytlzQZaaBd+PY4BOynVyqwvNNtpCWAs5y2bhlhDq13+wbmAo0RcPKnXnCj15L46UsUOzOcUhog==","signatures":[{"sig":"MEQCIAVJfqP21vQZ8zX6hM/GJd+u5vCsk818tLtRxO+AR2zbAiAEfzet25+L1Mw9ktkYnEbwsmocQ8+PLwobEojTWL06PQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220908,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf9OraCRA9TVsSAnZWagAA1NwQAIgOUZpTL6gCsPRtRdNC\nUsnS+hk/RnFxdZMfXEqENgj5WBwYZ3cYOcQfGwTDEt5aMzpdHUrMWklz6b5l\nd/i3AklV9CwZwaMoWy4sjn73n8hahuK+dcrjmJoVDv9OHcvox9Uuti+gpMkU\nUpsK6g9CEZMWr7cmjdBwXWabQklVv9i1gVD4yQXc7/2X0sDEpGa39M2Ssern\n5tyyL68vR4zDXrh/lUl6b+NGIsX8ic2FjE/4m9pfmA9cEC3mRw/EaVE6oiAS\nhaI7af/Zzw6UgWZ1JeyLFshKJZN9PkXcxTd1pu5aFxcvCwHP883vMRj4dET3\nsxVuw5PIBtIpbbncaDh3BPHQPq+Lqt2HD9pnZGTBTvjcY/IUwqsTXUXvdKkY\nDs8QxhiUSHAX8gv8NvtiU0tCSyJrpc75o0jIez+cWeaqbUiOcdc8yZ91y4H1\nhHZ2O1Pb5uoMTZNtDxuGnVrvrJvb1i7GhlvV/qwFxSNXQac6aHG9M/Fj6oVg\nWFHtTtA9s0kapm8Pj0afQrzSx27GYsJFIdlB2u2b0UNbFabYIvBfZx9p3WPr\nyuMkwPalfp+wAoDp0QzD011VdmQBeQEH7WU3Ue27ZICabpeAPRquIs2MHXDH\niFf91wQjvEHdYeNueqVKJ3kAEa63bAO52gxFCwHjMRfysQMcL6EN+YPyeKQ7\n4Hym\r\n=/8XN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"40a13adf47648f48d6dfb1daac9ded2f7f0bd442","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.766981c15.0","@material/rtl":"10.0.0-canary.766981c15.0","@material/base":"10.0.0-canary.766981c15.0","@material/theme":"10.0.0-canary.766981c15.0","@material/animation":"10.0.0-canary.766981c15.0","@material/typography":"10.0.0-canary.766981c15.0","@material/feature-targeting":"10.0.0-canary.766981c15.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.766981c15.0_1609886425694_0.5375773130988393","host":"s3://npm-registry-packages"}},"10.0.0-canary.b28c576d9.0":{"name":"@material/floating-label","version":"10.0.0-canary.b28c576d9.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.b28c576d9.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"337eb2e7586879d9f8420debf772ba0c9a3bc320","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.b28c576d9.0.tgz","fileCount":34,"integrity":"sha512-CMeOmmbsTEf6sxWfIAHg0GbcqDSzdaD0ntu29L6DKzaNt92b1ItdO8PAmxW8wa2AB2mLqIyGnvrWB3uDyqTw3Q==","signatures":[{"sig":"MEYCIQCw/iz382mbGAcaUkAHitelBbkDziVx9sZ/5vPm+6PDfgIhAOqMvo/t1U+Rm5xfyzjR2/tJaJdNb7Haro7mwtkZ4Juu","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220908,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf9O0hCRA9TVsSAnZWagAAL6sP/33f8KPgHPcb47K7viXR\n4N9qCwnYRCkdT8lvt/GB1A89FCgV7U4kLogJnCABAHKeiqBTXGILUdlViXJT\n7IbYdkB9wEYAnwI9kxx7DN39opHaENd9S7oKNXNg+Cwpt4YTHgGP2vslGP2h\nePR5gc5n6pktn5h880oDiY0pL0pSzZV0M5/5Y8MnsJLjXM7DoL8QC5n8wW9X\nOSGKZc4iyNVbGnN9bsrxdY/nbBYqMGt5K9b0pN+0p7nz9vqctVYT5VZHxDft\n9Oqr+bcEToQwacBbcd8EpPF1pHIgbu8tBZhogmKD2LbYFxHAzqBWyD2xAQXC\nePZaTs13RIx7cs3BPMB3iJhqU9yXl6iD/lAHr9/wLTdDBkFaLvw6kW2gDNzF\nsy2zCCdOHlCiWyTD0dWyDJrFur4CQzdw30X55B3DwkFvDoX3njqeGVp2ZWoW\nD7MvH74gLjjaV6BfCJZzqeWWdHgO3NXyhKtvqPq7N752alEy/UgOpVP9H5Ir\nRGSeUGEllivGDHwcHfVJXtIX/D/UvQ0luYFvXdgMUI4ifMwuexXvXhAQybf+\nuofTp9Zi4GYCq7rUR6A/1sXOXyjHLUbLIwTnm4XVDZ3Nh8XTSOGi4qg0LWgi\ndmgCr855c43p+GRASrxW/ixAK4sQDQnczlR6ir6rQrrb2EYPnomUVaRSU6RX\nkTKC\r\n=Tqko\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f11c5039e5e02253cd6e3eaebf7ee15629f3c182","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.b28c576d9.0","@material/rtl":"10.0.0-canary.b28c576d9.0","@material/base":"10.0.0-canary.b28c576d9.0","@material/theme":"10.0.0-canary.b28c576d9.0","@material/animation":"10.0.0-canary.b28c576d9.0","@material/typography":"10.0.0-canary.b28c576d9.0","@material/feature-targeting":"10.0.0-canary.b28c576d9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.b28c576d9.0_1609887009403_0.019833404646748543","host":"s3://npm-registry-packages"}},"10.0.0-canary.968735356.0":{"name":"@material/floating-label","version":"10.0.0-canary.968735356.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.968735356.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"92ec78707a2aefbe19f622a0847409b12bec0a6d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.968735356.0.tgz","fileCount":34,"integrity":"sha512-pApG/VFRG43p3jbhko+XCbzqlaCBQEHjQD/rsQCTo6ywYxKueUTYkpw0b19GrhlHYKIeoAQPLgCLXWzNDDNDUg==","signatures":[{"sig":"MEQCIFVkib02aZnXLPUpwS780/0USzP4l7f0MBi4KpJ/+QcBAiAOoBBCjopGep3NY3sgXq4Z5BlIkheAdq427401ODEqrw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220908,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf9dxiCRA9TVsSAnZWagAA5agP/RKTMMJeAjywfKnXFdXQ\neoBRhUIiMkDf6H1cJaRLmWNl9rb++HhSs9QpXX8Oz5kOR5sgsIDzb5AeIbag\nfq0L69Mnp1AxeWDZJ0alpZ4UVuuCuQOGkL+se3ya2NA8Ytf1Vpmq9NtbthFg\nvjHghg+rcvqJSr48Mpht6pvY+szpPvERXmyn48mrky9Wvu54Nfy9ERBXtYnq\nEykYhY/8+9VmTTbexCKoeLB5KvliviUxScBnEmIa4s6sqHbgjyXlPcKzm34W\niG5J4a3RTPthKYDXpUNEnFa5zVaqrcZPVZ3CjiG/JPWHS0i1Yju3bzsIYqg3\nrCie6IYfneTtSgmV5jQQQBxxEd1s9X3XwuhMjHJlsxrSJ37DJnYNFc96ToBV\noSEKJiCsEJdg5pOg/iB0j5GFp1HWV7BLofzzG+cyyJcoLIVmZsjMuS2XCOko\nBhDjBlnAyhrekv24LfA5JyzSIJDRtKZbvYGH2DvVwReY4ucrb7v5MIS538lk\nz++5N7cbB1igkzgdxTfeY7vZid4aqMMEe/NPEc8Ug0e5sXUhvzZnnWkYsiAN\nrL9ldYEupxNVaiWgi+WE3bEquL97d2ZaJF007hNUNnxRclvqq3ZWcV0wnhz8\n4OW0ZGj2RePnJ0evgCw0fyBrzqNIDuFDsBP9xPd6QPsCws6sjBI06pGXgIoE\niQ/2\r\n=7npw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"016bf1732e983523c8ba8007681b058735467018","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.968735356.0","@material/rtl":"10.0.0-canary.968735356.0","@material/base":"10.0.0-canary.968735356.0","@material/theme":"10.0.0-canary.968735356.0","@material/animation":"10.0.0-canary.968735356.0","@material/typography":"10.0.0-canary.968735356.0","@material/feature-targeting":"10.0.0-canary.968735356.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.968735356.0_1609948257805_0.7990236585929464","host":"s3://npm-registry-packages"}},"10.0.0-canary.c5e18b020.0":{"name":"@material/floating-label","version":"10.0.0-canary.c5e18b020.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.c5e18b020.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4f40cf4d3d7b518de9c26b3e40486dded1feaa1c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.c5e18b020.0.tgz","fileCount":34,"integrity":"sha512-vFYwg3pIk3iJH8+vDIViNW2Ih3u4STD/+J/rAkQ1JqKoMQd7BqkSVIPKhphq+eakPmipjmzBEkhhCL1ulGcpqg==","signatures":[{"sig":"MEQCIED2h0Znr4cFZRHeSWj5oPtcUxTHhHQTv/DIK4JQJpr6AiBgN00rfxWWERdpsSZqXDYWJSZuSSNBFiSfnRopeYLniA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220908,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf9hMXCRA9TVsSAnZWagAAxWQP/0i85O2BgNYihpZbpYw8\nJ68XHid9vWixzGEvG6yJCubxXZy/i/pSwPD4ogyt+GXgAa8AEozmAHONhDJi\nH6nHQjwXltvfJdbAK7YpfMxYNJGT/zn9JtMG7cRZOAYSaMVNBKQTCBeK+w+C\niCCX0G5+23SulB/tfcLQF7jaiGwi2QjHnhWZQHL/3HSJrzT+LCHhThZyTUg9\nSziusFjfwTtfpDmLcy4sd7O/hrNCuN2Kfv7CGgmL10SOTM4BqzGzVc4a9mNl\n0LQv3faiuMt5B53dvFfCT+WmuMAaOdS544BFKDOHEsqqZ7sNdhiuxzQkU9h7\nJVEtLr/0o8FBCh2zOgEJKCVUGG5oUIwmE8HU4dyGaxBdP94VYXMRXOA8tZIA\nRPkfDAdWke2SyUotFf4F7AubKluQIcaGegf79H+l3ORj/cKUGy1oHvdKXXvl\nRly1pORMD44qlFT6trgccVOlJrzHq1Pj2i+K30NoMAYkDYL6MCXA6SPjc2BJ\n79NdtGL4E3B4SxyqKeL1ymfGxpPJhhy/h0KpkjAm7LoHDmJFmx223o36+a+K\nBdF6ED48E1RLZlp44tuNIV0Kz7L0cly0Rw2/8EJcpuYCQIgvjcTnedmjWUO6\nyr8PVMe//QB2kZGPCbQr1d6dOkybiZC1sadCcQl4O8Haa/ZEzyIM1LjS7GQS\nlepF\r\n=Y/gj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"16a60c2c89ea18fb88971304d4491f612734e932","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.c5e18b020.0","@material/rtl":"10.0.0-canary.c5e18b020.0","@material/base":"10.0.0-canary.c5e18b020.0","@material/theme":"10.0.0-canary.c5e18b020.0","@material/animation":"10.0.0-canary.c5e18b020.0","@material/typography":"10.0.0-canary.c5e18b020.0","@material/feature-targeting":"10.0.0-canary.c5e18b020.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.c5e18b020.0_1609962263167_0.7854950020830149","host":"s3://npm-registry-packages"}},"10.0.0-canary.bcff8a66a.0":{"name":"@material/floating-label","version":"10.0.0-canary.bcff8a66a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.bcff8a66a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"da9a75ec777acebeadd0797729df48302bdf8aa5","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.bcff8a66a.0.tgz","fileCount":34,"integrity":"sha512-JNFqy5lZRtXbVzyP29H4QP0SF8T4VAu70fkv6eWbJVBEDTy52a1MPAcm04s9Nl0FgQWxpIuhrGIMpoun/wp26w==","signatures":[{"sig":"MEQCIGbwrWJqdTgKN1yg9yPphr10/LtMn6MudjLB+vi7iOKQAiBcF4Axtig6u6PXgegDUlt09G157I6o0oUqCfD0SA+few==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220908,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf9hzmCRA9TVsSAnZWagAAEkEP/jWkEcSzn3N965m4ulgu\nLw9AAIFUU/KYFX5+HFf5sZCtzLlcPm87vKAECKwkU83HV3MvTJHD5BwD7SUJ\nXNSYty7Nu8+y3+ali1LQTIt5cd/jFzEW6tWNz8lUFSh/cxNttGAQeC3qKavC\ntqCJtMAyHwMgnu4OkAn6pE4pPcXhPsnaeaZBCGNi/NV6+9zMYkXVZ2is9PJq\nefYwWzBmFzWvJEM3yj+4wyyP9xLWyHY3Lz2kbsNMKOEgQcLwKL3im1qpq/kc\n3OcOKTevtvbNOjNVcarLSBlDyzcPw2MGIkCN+WH+Dh3222TfFGVuja8y5ZR/\ncE2tRZ18J6c9QSZm+6EBJIH1XW0ZsLbS1MX+GnV6o7ikJMSNankwfYEm8HwD\nTrYtxil5OiQGUTCaGR5fs5blpY0PDchqIkpeaDXFGyiqB0uJZFnj5hT0WtBr\nIkccIoe/NoIOtjdybCPR6bu12FWhNh4AIdmdaYVDi4ZeO/777I90wmKnJ7+C\nDtWDP5cS92pp9ihw9LZPQMPjZjml01R0lKe3d0chUuZqKZrvkuc6EY9VHShy\nXmTJ7Bf2ZcNnsYhUW03pG8I1QAQUTpxHsMSIyHvQd02ECrxJlEER0t/wWuR6\n5yYUL++DK9bnP0/18LuBfZOqvBzCsHN1OxM9x1Z3kpnukSVSbtfi5PHglNvV\ngXkC\r\n=PNpr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"81af087ae7601c8b819dbada709de8d76ddab960","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.bcff8a66a.0","@material/rtl":"10.0.0-canary.bcff8a66a.0","@material/base":"10.0.0-canary.bcff8a66a.0","@material/theme":"10.0.0-canary.bcff8a66a.0","@material/animation":"10.0.0-canary.bcff8a66a.0","@material/typography":"10.0.0-canary.bcff8a66a.0","@material/feature-targeting":"10.0.0-canary.bcff8a66a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.bcff8a66a.0_1609964774477_0.5194697533894099","host":"s3://npm-registry-packages"}},"10.0.0-canary.79328c9ff.0":{"name":"@material/floating-label","version":"10.0.0-canary.79328c9ff.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.79328c9ff.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"62a75211fb384437ea796d35d8b4995f7042e00b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.79328c9ff.0.tgz","fileCount":34,"integrity":"sha512-iZAo49mwAdEwWPFOvRria8a2XJ8sg6PkjcrCOJfZUqBKYxnd3VllnR/NtpQ1JFCOOIJAHkfYVLK4a8wlOQLuyw==","signatures":[{"sig":"MEQCIEziyL1UpxLdASeiCPom5e5GPpixa10zcM51QUo2Ib8mAiAB24rXVMFFfikUYkUKH6AsSmLbi+0QPiOGTXSLKhV9Hg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220908,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf9nMuCRA9TVsSAnZWagAAsOsQAKJvOgkz6Dee11auK+L7\npV5y/SrEItwLIuJhqSQ4/LDSN5clY3oky4itsynwrcWqDcTIcg5pzY7LnThW\nfaoX88oRswTqUa5krgxZ0NyzIZT+SGGowHPX69bkfD0UrwWSOTK2LT5H5eU8\nQNVjxYHCXCbY48Rbqf8Xvgs26Y1QqhxVELcq83Hh4luQuYRiu3DjrC9IxPG0\n+tkDl5qhGU6r5IVI6WD0gNDtDNrbAabfmphH6E8oA2C3ZOvv66I8OfYYnIaH\n3xSk1IY2rtSMe5/Umoaj0Gv2GeZNMeeBcnX3Oa10dLYUowW/47YJmNI+0pHd\nvh0Cd08/Q64NP6u4RVDHs+HLvvURIgCDxYXkDsfvEqdRJbrzq8LoRHswoBKj\n7fO1gjxT7WpdXJUJDcXBXslkJUFm9Krt1kznGbZtP3u49ddPjjRYgjif8SxV\nCl4/rr3prmVH7d2eXGAvTt4fPpWjwuoVz37nq1qGeKxzuCVc1ySiF+SZ/mf+\nXVEVwaKKvRMkwPrpDnG0be00nvJDZaE3i+j77G7Dx+tUNJ2wLOupV90DJd1U\nFB0gYSaY7nXRripRAikHrGHJcXGIdsxo8RzOCzi5WK849sNa/CFxaOvLfvpw\nbGAXiAp9JiDStssxOYtGFmpJaPsQrgcOJU/SH1dgDW4GfB8zLu838XCMDUbH\nzZyN\r\n=YiPo\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"15dd1d7d9065f275f9f9779094b959944d33197a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.79328c9ff.0","@material/rtl":"10.0.0-canary.79328c9ff.0","@material/base":"10.0.0-canary.79328c9ff.0","@material/theme":"10.0.0-canary.79328c9ff.0","@material/animation":"10.0.0-canary.79328c9ff.0","@material/typography":"10.0.0-canary.79328c9ff.0","@material/feature-targeting":"10.0.0-canary.79328c9ff.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.79328c9ff.0_1609986861762_0.08806748177232726","host":"s3://npm-registry-packages"}},"10.0.0-canary.121e1f303.0":{"name":"@material/floating-label","version":"10.0.0-canary.121e1f303.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.121e1f303.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"bb218d98a5501b750643ea591baa29091772254c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.121e1f303.0.tgz","fileCount":34,"integrity":"sha512-jMDOROPZWhE4OLyqdR05YgF6t/pIZ2Pux1p3aLeCpmzyPr93E1kI9QZqXPrxCqRSIKk5MrLHVmzwqrCI4Cx2jg==","signatures":[{"sig":"MEUCIFjeSdHFYzZUiBQAVq2kwNn74wV9k/25B8q8B1WaoLs8AiEAmJ02U756bJBJzHywi8VFpPwK0saohNSsbFSngZrIjEs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220908,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf95ciCRA9TVsSAnZWagAAIg0QAIbt8sJv86se2qD+urK1\nYXw7de3eA/3wy9P4+0NjOJm8xEUrJUGH4Zk1jDm9zGCCGc/JlmfKg5zEujyn\n7BPsZd1XV3FOXOvw+365L4WZKEhmQ+ZVKOcGl1aDTO8fDCJ9QoFsyQyR22/z\n5+gpB9pzTj5shRdLKqpscs2csBW6yVSDErwrE73Ccj/Pc79R+NGjlKqSCyAe\nCLyKz+4Wla4JlNH9vLBPGat/ntwie7qQ7pc9qOvoxDJyOO35G8trC1MPyEnS\nyhsXzN1ynQ/DsuEDb8qnSIIwHPwdTiNbpzyHEJoxA/9UolB4vFLZZCfdeY0w\nAEVqcPtcR4GR7ZKturVwcV6zeZHaJC2LauXjEavfDtgND7kWoB83SdJfWSM6\nDEqG4IUnsgEJUKJICLDJNy+quWx9ZvQEtzS2XrmNxtrs6yDAcOp9BFxz+yml\nThKa8Vb0PWfM12syNoq6c6RABsf6o+lqTLQzMF1gCTqeSOTke/yO7y9pbm1R\nKyJrL/mK26C+FunXqFPOXhERM4LFdqdon2ZDCBDEI8ohr8NdpBQMhMxdEZ+h\nqqPaSsEmX5PUGcvI5cdff1KrRvE9VZBDJPnZONXsVInV7wTjBFd1finKDHlz\n8cy/gkA3/lEdcqFCIutJHYuJl4WdQv2+IUyc8nRQkf+LfpMjfs6nPjk1N0Q+\nWSIw\r\n=h+Aw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"6ae814dae9eac40570f13ed9d7b821cceddf838f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.121e1f303.0","@material/rtl":"10.0.0-canary.121e1f303.0","@material/base":"10.0.0-canary.121e1f303.0","@material/theme":"10.0.0-canary.121e1f303.0","@material/animation":"10.0.0-canary.121e1f303.0","@material/typography":"10.0.0-canary.121e1f303.0","@material/feature-targeting":"10.0.0-canary.121e1f303.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.121e1f303.0_1610061601988_0.34087675688611063","host":"s3://npm-registry-packages"}},"10.0.0-canary.abdd10065.0":{"name":"@material/floating-label","version":"10.0.0-canary.abdd10065.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.abdd10065.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"47ba9c295eee8f02be09fac978c7b67b9e526955","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.abdd10065.0.tgz","fileCount":34,"integrity":"sha512-ZPaInkTY9WVhPogUn7eQb+y97qmJIzJkFN6DpNM0nrktjL3AP0gUlo/PTBN8EujNxDSBfnaTWp06lSQcPWV9fQ==","signatures":[{"sig":"MEUCIQDl9ANgJfXCoc/21jkCDtPeYygU5N72Dq6PRbDEXymh2AIgZEuKpWSvPKcSV62BnYADeS1bGLIdIDWqql3nmcLZ8fc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220908,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf+JutCRA9TVsSAnZWagAA14MP/RcwKZSqA3hsjwksKr1s\nJunddwXPpIAPG33hNbd2rmketi6dFKPaMRORUiJRdlIf6+vzywMQlgxtnJ3t\nKi4mwIW3UcGEgVHlzPgFBIx+PJVMO+ufw5u0w6snV6oBARNbrhH8IvgO+9H+\nx5MNaLe0eU++Y6hhQeF3lNlGD+rB8cwac6Hos1iQNkw41uA2LxlkCvuWLgzP\nJxLDnS4+Jfmde+PZhEfV0ATmJgmfh/DNOdXLgO23WYMUD6wpR1gGcYhHOzyQ\nhl9G/ZFuHjNu2WnsQIEssdR3LsuLeJpb39K6IETxY9Q89cDDPT0QowB0HZXb\nPeUuWKfwUwzm5APUXerM+X8b/BGlveaHappyCoNXPY3tWZPeG12hFvlxYHOQ\n/PhgqBwoWMuC8ZemBqbmtsZd8bXbE/Q/C+bhTyBgKHjhzuNNKWv/AtycyooJ\n0x4xGl57goaioTtkJ99ZU/P5fWAOAgSEE7kVu1w3aAOI53VcOMeY4+bPvhyC\n38F6QWIxioXer0ixBOg+JxFdGKDAF2GQXADjBfcYFplZrUzPTgvDDiDLsmKQ\nnQFvgQJPG4/GKbJqM5BIoWj6PHckvS3mhAvLF3PUFin9oTYl5KLh++oB2eGO\nmezehlcwn7dabl6mwclmw4U9otiOZYKtgXp28l9sQs7/GAeazDTNuJGEAo3c\nv6gv\r\n=2Ea2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"bc8986a19721edfc6facb62cf839cd222de97d02","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.abdd10065.0","@material/rtl":"10.0.0-canary.abdd10065.0","@material/base":"10.0.0-canary.abdd10065.0","@material/theme":"10.0.0-canary.abdd10065.0","@material/animation":"10.0.0-canary.abdd10065.0","@material/typography":"10.0.0-canary.abdd10065.0","@material/feature-targeting":"10.0.0-canary.abdd10065.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.abdd10065.0_1610128300898_0.9919807038567376","host":"s3://npm-registry-packages"}},"10.0.0-canary.089de519c.0":{"name":"@material/floating-label","version":"10.0.0-canary.089de519c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.089de519c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"418a175beafa23c24544efbcc384b4f623ccc97b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.089de519c.0.tgz","fileCount":34,"integrity":"sha512-gt84sDmHFOf+vl5tWiw4mQda3oG3yCjmrqHziPvj/x0J33lTDIBCRPCk9qwZTPWM2NCcbIG15aKeZSEl1N4TYg==","signatures":[{"sig":"MEYCIQD94mCQ0fxEWA1sAwtFK6IknFZRrIWkMH/vgTg60l8dMgIhAPgXwqKSzlEMFIXH6OUNDUSnxNhYd9Us6zV2/IYkdXOY","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220908,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf+NrCCRA9TVsSAnZWagAA+dgP/jElmZzXyIghrwsoEQci\n+RsHz17nAFFQ9NuN7qAnBE2v+JUKlN5LvLw2ItojI6YdWIWfV6nszjtDUFb6\nVJeI/OO7Z6Dq021C153NIrDMZqDdETSQdID5eo4WN1VXdCeykztkd9ktdVUN\nyK36lwrHEnFyJsxfMu9qkFnXp/QgWagexhCJrdnLxTcVhlL70sq6LHfAeoD5\n8IJgKwKQiTF7pfEvnCzzScR69GEL2enuvbGmk43+6TsE11WjFNrx4A25xsN8\nrfmYdZ8XtfZS0V3gd0HZ52wgoRJ2ant8+Iyz7FcKKi0aR0tJ2hrXEv/XHxbM\n7XsyN2uhM0uFQmkYI7H3XjnMjoDpn7+I1IFK3RFOFgeN1hlEsRYVCcS/4EWy\nIj13KHOfdMqgEYgjUpJlQcjh/vTuz+Ed4IZI9Agqcif9wSkZ40SjbeD00PwY\nLBlT/o2vnf+VUQDuZ3probVR/GrKDqrKm6KpdPJGG0prdljUnk1YsA10uyc9\nv6HSZKLSWys+86UJ+Qbq/0f02/Y9wqcLZvNp25uxiyfvKnH5eG5e8mo6EUP/\nyJgqqzyNWE+8SIejlfQSeqRp71qH107E4Jcki2xK5CqFj3UjSINn1j8NcS1X\nIBu5A0yAAzzG7wzNhJHKg0r0fYDyDLXci67MRg+FUJXWU54vA3i3IT8JZ8m9\nunww\r\n=dbNo\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"6a64709b5be73a45401fe82d1e6d126d7312fd21","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.089de519c.0","@material/rtl":"10.0.0-canary.089de519c.0","@material/base":"10.0.0-canary.089de519c.0","@material/theme":"10.0.0-canary.089de519c.0","@material/animation":"10.0.0-canary.089de519c.0","@material/typography":"10.0.0-canary.089de519c.0","@material/feature-targeting":"10.0.0-canary.089de519c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.089de519c.0_1610144449647_0.9121744665568379","host":"s3://npm-registry-packages"}},"10.0.0-canary.163119837.0":{"name":"@material/floating-label","version":"10.0.0-canary.163119837.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.163119837.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"82c7a755e2c726bf20679ee387ac2e0e19341a03","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.163119837.0.tgz","fileCount":34,"integrity":"sha512-JiZ6L3byqrJ7cA7b35HVBxbl8NZgpx318MLP/W+/N190/YYs/MGTY4TcAq2/pXuCX61pxGl/9sZzSEQ+Syg3Jg==","signatures":[{"sig":"MEQCIAW86Ra9o7b1QhFf0FeuqsxpHdMKynDFSwGGPwke2mO6AiBBnNTvd3V6a6nZETJBHD4CbguyrE+E1/VqSU2DZ5tv4w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220908,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf+O6VCRA9TVsSAnZWagAAMHgP/0loIprYpS1c1qeM92uh\n1+59AY/j6C6jkXdqcfXIhz8AbV/ocRbOi6AQECg23D5SAWNEhs6MEnEMq/+a\nVWmkV3DXOlOxRiam+a5NSBDe7LwPBSm2mR3ThPOxPZRithp4QNNvZO7jYavQ\n6fM720nwqwxhqJ0Njax4CNZfI806LN5y50TfiQMuh0da/ePidhejQjK/b4q8\nQPPm12tY8ppT+/aQ2YVWS8En+Xw9mk7WRefVnhUzUZ2pR+JGiwkl/2XQQghK\nxfFdAP0aYiv3yHN5faG+87UOjIrJ+0JYXE+kbGqcKQeJO7jw+Zef8LjSQM4n\nKFP/k7li3lgqSuvs+I+mjmrYv6kqlp0hC9SFnC3ZT+dAneXGce1EB7GaKgZO\n6j3cUfCOGRtTpKZMjmTKP16nt1I0Vf/3tGKhvOIgTFfDcKkpvfJyjAYab2mj\noqfwLxq3go0ATOE8074gf1xH6aRUPjFnVt0AyMmO8DRj2a3cElm6oADUJf5H\nFSbqH5nOYRAmpwbZ4eJjGmRcZOgQQHkWtvibBmHK5tAIXsq3RWJYhcoTc/qT\nr6e+RLOKdZb8KEHdhKM4bgRCZaj/ZCy4OdJ8/gxmXEmxgfX8DFETUcuv6nWY\n0nkpdRhtPI5aaBxHeI2sk7yuBqu2ibYcpBjppkntyFEKEe3V2lNN+/1/WUPj\noTpP\r\n=NEnS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"86f8af57c151ec42ed920ac445544bc384ce0975","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.163119837.0","@material/rtl":"10.0.0-canary.163119837.0","@material/base":"10.0.0-canary.163119837.0","@material/theme":"10.0.0-canary.163119837.0","@material/animation":"10.0.0-canary.163119837.0","@material/typography":"10.0.0-canary.163119837.0","@material/feature-targeting":"10.0.0-canary.163119837.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.163119837.0_1610149525394_0.2000718675188764","host":"s3://npm-registry-packages"}},"10.0.0-canary.b8a1a58e4.0":{"name":"@material/floating-label","version":"10.0.0-canary.b8a1a58e4.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.b8a1a58e4.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ea59fef8af9910aa0b32750be4331c7e2320cbeb","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.b8a1a58e4.0.tgz","fileCount":34,"integrity":"sha512-3Pd40uIP7yIpu03D9qqR0qgpuHMyh1tjFQc0N0UaZ+IwutsPQTzI0ou9TPklhl0FfYy6rghiP4RBQQOn6ha/bw==","signatures":[{"sig":"MEQCIB37U25ce3Xq0XK2hu/26nxsWRTPJKloYnJIXQ5o4mK6AiAazlUBkvorWfVR5v9HdW389Wh8w9WSo566hF6nYX0ijQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220908,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf/HvTCRA9TVsSAnZWagAABlMP/i9y+dWJKLAZWdpgR6r0\nd3tUfogEobYdPJXBTlNE86Iq5B7PbvSfWFsoyl29Lx9b/rWqHR35IOjWZwyp\nq/CX01EMU42kY2xMZZ32i7s3hCWEs7XpGhIpFIUlbEk4R5wb1m/l3U3gA6bg\nqTuAViui2Ioz665nXsub/PSW55XB19VY02sNayg/ksSq0K+rAbAwA5z1DqoY\nldeKev3ikQGYYH5sxJXHAVN3QrLnxy148PcrQyVa4TQ9EhyfqZMh28pSqGh9\nFwfEVtFpFVvcEImLEYHwc1Otii6huv6D+++mWFdizl/qZX+j+AWJNwGuIubq\ns6EABy4MTXkiuTbgaRC3eNkEpLHUuDQyE3z8HaFhIbGVMrmjeYhEUgh6H6mZ\n1mMmYZETvuUb8N9cG1bTMK8Nw1v6CCK7JSNspoJV9bLGnf4eEhdYMR7mOTgr\ngW45S4DnQ2X+H5OB1uOPKio91F4VLzbDolj/VwHXo5iH/8V4ytv0uvLINKje\n3REvdsiMULvPXnlnHEXGYj2EMrjW5b9AJHcEf5jLK+9cOZJTtNMtP/WZxkKv\nlD10b4bk/09VmPtYK9+KNR429+skM4SM2WGWC4JYxFbV2wWRdJMKiKGO4CJW\nygjanpSqL67oiWtEg8uDYWYde7sAACKQKbc77wT/GD+h7xoG+FyZisd4SUGu\nTIbM\r\n=TRzf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3b735aa03cc784b7346905168638eb6a486435b9","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.b8a1a58e4.0","@material/rtl":"10.0.0-canary.b8a1a58e4.0","@material/base":"10.0.0-canary.b8a1a58e4.0","@material/theme":"10.0.0-canary.b8a1a58e4.0","@material/animation":"10.0.0-canary.b8a1a58e4.0","@material/typography":"10.0.0-canary.b8a1a58e4.0","@material/feature-targeting":"10.0.0-canary.b8a1a58e4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.b8a1a58e4.0_1610382290993_0.1917610304689792","host":"s3://npm-registry-packages"}},"10.0.0-canary.7584267ff.0":{"name":"@material/floating-label","version":"10.0.0-canary.7584267ff.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.7584267ff.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f28aae3b1b5c4cb7c0db3776ae3039805738b978","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.7584267ff.0.tgz","fileCount":34,"integrity":"sha512-Rzr7FV/aQIkyApAbxkE4L7QlIe9i7TlMwTj9GGd4gHgnTzTnKi+R0IhkilbTkBzkKiYUqqcMABPXo8MJWbNsqQ==","signatures":[{"sig":"MEUCIQDy1SaV/IMvVAfAiFRVn1yvuwGwE1fqDccf7CqoPADsIQIgUxZcIXIF5VOjatZCEmdnKV2c514UfjRe3di2nCT1xXs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220908,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf/Pd9CRA9TVsSAnZWagAAw2AQAIj46bFLzgIReek+PfMJ\nsN6vrDBdg6+RkZxw3rwP0ow5EN8LAz+VC0SH64hru9+i7gg93k8As+0/4ILP\nI+a28KYWbAW+2HFOLOQE9GaNYc2RlHg8H+ZDXaYdvoJpZf9MW2ulzjyamxXS\nXhEj8kJo43kxWTrXeOpVN6fjt47t0IBpuFlXRBVxyct2xzlgdOlYWIrR5ZjU\n8doMcJY7PUjZZ7TRYyW0O5z1FiQaKpqomB2Rahz10GBYxQEkdkBkSVXb/v04\nWBu9brOfpyQH2fvUH34wj0oMSXu/LbNZAOusCkEhgtNRXPUJSgJJa7suGh48\nqKlOmcwLJmS9pbRcOQSQJUdvmdSiIcyuyea4tkKEA1kgEPN4VpdxOAKd69qK\nJ5zg8B92wpvSTxsqa0KhmSykX8voMq8tuvhtEA/6cLifJA/gN0ZaQVgx2MUQ\nmD+CUaxMbMH3PWzvVXebkLtfVy8ZYc9LH1XUiZL4Y947+zU4HWFCpBEPBCb8\nRhmfd/UE2OnmGi0u4Utfd8gxgDIoswy/HiNIltV5EN8/BogTnv+XQKwrpAis\n2GzQmW3IzIUO273+bVtP4mP9uDimpOJE680KGBASXnmi2K9Bs81wn5eQSExn\nTAW1HbUzfvJkQOKs7KfiFjlZaCQMNywUwkCoMuqTJID2h6pZS3iBRJ48mu6C\n/tEl\r\n=U0kO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"89cedd80674ac536aacf2762f084fd7d1640873f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.7584267ff.0","@material/rtl":"10.0.0-canary.7584267ff.0","@material/base":"10.0.0-canary.7584267ff.0","@material/theme":"10.0.0-canary.7584267ff.0","@material/animation":"10.0.0-canary.7584267ff.0","@material/typography":"10.0.0-canary.7584267ff.0","@material/feature-targeting":"10.0.0-canary.7584267ff.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.7584267ff.0_1610413949319_0.37638601576371156","host":"s3://npm-registry-packages"}},"10.0.0-canary.251ac04c0.0":{"name":"@material/floating-label","version":"10.0.0-canary.251ac04c0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.251ac04c0.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b01698833f2bb216ae4c0fe5a77afcc025d30d11","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.251ac04c0.0.tgz","fileCount":34,"integrity":"sha512-bFaDRXaiutKLgss4oDcdaRudIEFFFy8S3gFv3RFpKm2q1lszXmtEqS8nzdeDNvxHA6+Io9+LVfQnb9SWhnLtYA==","signatures":[{"sig":"MEYCIQCYvuUP5Q2gRKUixJeYVzSRDzqA2iEZcIQvhdnmsGa5XwIhAMzt2FNWLOb6CQ/tKHx+m5qo0m67Ek3yvxRPWOKRRD+C","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220908,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf/f6jCRA9TVsSAnZWagAAjWcP/AhspG9ZB/Uc2I1d3CRu\n/ks/2YaJ9KLzAH04MWDz3tWGDmD/W1dM4aqNmIFiob7IFdBkivUoqfjP/WoK\nHNd9rH9OptA2FM9ezdcSrmU4T+mVAGzLNHNGyaZAiNayh6Lqgrzkzr6/QOMT\nyccZ8pSbBJgv8oGYce6rI60uEcTvU2yv4yupDXQkfHQL1pHM4AGw2OkvF3Ur\nkJJX1krCDg/8D7LNNZg8Ky9HSn3GctDW3cyEqxyN8jJQfi4mF4+gH6BAmBiI\nX/7TZnPvuQPHNTwy2wki+raZ6h46jMUXMHJZd0a6juYSYQfHiFHmWjh5x6iI\nXQT+tHjUYDfVRnpQr8Q8ZU0nzDxMOSvpxatSdElEZEPIUTohxalapu09fqra\n+5CqikmRrzdtgFQqXmwxZari/azBKOVvaFw1MVQSElqrjAgQK5PelpFyDPVh\nRZRFzVKLgsd1AtXS91ZKt9KpEgI1vt7GaQp8f5EFVN94sKGlWDcObKRRiYy+\ntYwMzYw52aHUm6IhZ9GqknH883lM0zJL383oZzql0Am8s9Av3huYby00KDLr\nzlmMHz85vG3KJNaPrfl7kFCZs+YvK7NTxCSTysSwvNtqb9RfyB0t04qTRZWZ\nDqj2kA5R+nFYvuP3RIDCpg22w92juE+LTKx3fx/jeH/+FEjbktiii45JIau3\nUikh\r\n=p469\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"bacdc97357600156630f8321ac8a3a8746474194","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.251ac04c0.0","@material/rtl":"10.0.0-canary.251ac04c0.0","@material/base":"10.0.0-canary.251ac04c0.0","@material/theme":"10.0.0-canary.251ac04c0.0","@material/animation":"10.0.0-canary.251ac04c0.0","@material/typography":"10.0.0-canary.251ac04c0.0","@material/feature-targeting":"10.0.0-canary.251ac04c0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.251ac04c0.0_1610481315178_0.16541089767446282","host":"s3://npm-registry-packages"}},"10.0.0-canary.772cc1068.0":{"name":"@material/floating-label","version":"10.0.0-canary.772cc1068.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.772cc1068.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"976bc24f555d7f47257915bbcd40274608c0dd49","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.772cc1068.0.tgz","fileCount":34,"integrity":"sha512-nzAlIrxftEAETxLYd5hJDL6aqC+FTslS7yTpUpABdbLQGAmcoi1EokzDzTIlX3U7hVFKOABNbfZKQfaMXG93hg==","signatures":[{"sig":"MEYCIQD9v2f6gCo/Yov2mrZ80/03pv2LVyY6J3Fosafdb2J1wAIhAIPkj3guufw2ebFbkki8bDMAw8fvJwZlhevkwEKNjd9Z","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220908,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf/4sxCRA9TVsSAnZWagAA+UQP/RyY2vOth+zp5viPURO7\ngB42q0qLy/pMDjcX9uv4ys2QV9DpiHcW+4p4LzzMBi37B8scdTYC/GA/fvi3\npLaieUpYDgN5OiYuGuEDzLde5uRF5vvJJhyaujOrLeN+Y4uxR+oMblate9+I\ndD4YC0B1qPyyMEtQmcghe4CBOXmBD4KuxPbRuNBttF9Tqxp225Jbx4wpY8SD\nnF/lDhzqfiJ7nsFDv0sGoXbD4Qx7wQwtv+3e6nqow34cCdq0x3RRbfnTnf7j\nk+BLhJjqnMhKZz0SJo1LFYlOzQWuV//MJcS4kgFLAhX1mjXzxTCsSAxtr3OK\nYSNBCLfTJKIAiHIDsM5+ZpYPTygni2pxx5lC8C/N+w857N1GmoOqvQdACBmS\nO8MKLphCKjrqzmvV0D8wFeER+2gZVZ7TrY57WWfdEwFRn9vXrc3egQYXT77C\nPeUN8bVm2QGg55+VvYZSlK166pER4rRL8U4/vGaLc6Q/B6tsMG8ErTaUDNx0\nCraEB5IW0U5i0IO4Staj0CYCTrUIrJ3ZsbjTbF0aybBkpjEn3JajnsuVsUTG\nQFXv5TMRXhdqFkMAVib9jpnqYLrE8mblB7urAzKiqQkYtrkEpefD2QemUwzu\nKjDQkW2+aRKZwofjBTNXs1JUJ8UcGyhY99GZijimaUyowIkJdjNm30VIEiAC\n4jZu\r\n=JWzM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e8dfb103b25351e76ae27e482ed4f13c4bf997c9","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.772cc1068.0","@material/rtl":"10.0.0-canary.772cc1068.0","@material/base":"10.0.0-canary.772cc1068.0","@material/theme":"10.0.0-canary.772cc1068.0","@material/animation":"10.0.0-canary.772cc1068.0","@material/typography":"10.0.0-canary.772cc1068.0","@material/feature-targeting":"10.0.0-canary.772cc1068.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.772cc1068.0_1610582833360_0.9634552906307308","host":"s3://npm-registry-packages"}},"10.0.0-canary.fe13dd130.0":{"name":"@material/floating-label","version":"10.0.0-canary.fe13dd130.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.fe13dd130.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"0999b56cb48db61212e25bf43e4b8cba3ec6c1cb","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.fe13dd130.0.tgz","fileCount":34,"integrity":"sha512-cHv8F0ZaffL4K4KLzZijTZaLxq6yh5v1XoZSQL5ttqAHcB00qUAC+6h1oLucFaNwHMCikb6YoLMhqSmW9TfjDg==","signatures":[{"sig":"MEUCIA/BFFsjrTlmW69lvoW87L8/mZfWRzetCN7s93aI1gH4AiEA/zMa3zjn/m8RQSwQDf8U2Yi1im0tQcY1+o6DmFjGQTA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220908,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf/5oGCRA9TVsSAnZWagAAP5UQAIIGTmX6w+WIWgyi/Prz\nYKuPSoPH7QNSyjaAcR5Mg4mMbps5KeHfVgsndlFXsGpXwYJS2fb+G51EOXn0\n4yrG00ffRFTDN5iQwJDspOWM8RqQKoxYM0Yy9HSZoxtSYOcF/cBhocf4cdaz\nLj8wfCqS8d8BpSbxJbWKn5KmRJVnPz/+d0f4Zz+pGwW8J32ZTlk6HWaCyBGF\n02Uaeb+Y57WTACs0d4xJR4YMIW3gSEGNCWCYV0v1nvCG8q7V+PeX6JiQiYZq\nJ6Ap+ekVcBNLFuXSPfnahZNwPMJXrz9r94oYHg7rpQLXI4x3jU5LAzTq5akB\n0OqgLyl5dn05FGsNJl+dLj/lxvUezH+iOScLI+jSoxdb9T5I916fOZTM1LYD\nY14XPMrCW5ajb20Sh1tgAZwQkLzasM1OHOqqQmEk+YYGpeomYvO30rO1v6hH\n7p/RdPx4mTMRaxGo6SBhbm1/gUVg5Dcnn49HgxxCOChTby0gMcCTFnrw6cyh\n00ip48XXZbRuRQRv9Utkwia73Ir8AyvRUXfhBAnut2jJctOXS305vgmlCvD9\nIuC8toOXud9h35YwmuWrSLXPlRyGvl5weZfzk4Cx/cgQmUlGmNy8mnbVIChy\n7fu73oK7Xz64lupA9S/V1nin/VYwBXKmhisENx0zFYSLuOd+XdIDaXfQscrS\nuFlv\r\n=/TpI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8825c25e04c8e88b7430f2f8e148da8a9197c02e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.fe13dd130.0","@material/rtl":"10.0.0-canary.fe13dd130.0","@material/base":"10.0.0-canary.fe13dd130.0","@material/theme":"10.0.0-canary.fe13dd130.0","@material/animation":"10.0.0-canary.fe13dd130.0","@material/typography":"10.0.0-canary.fe13dd130.0","@material/feature-targeting":"10.0.0-canary.fe13dd130.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.fe13dd130.0_1610586629862_0.49313807400639065","host":"s3://npm-registry-packages"}},"10.0.0-canary.c7c5da28f.0":{"name":"@material/floating-label","version":"10.0.0-canary.c7c5da28f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.c7c5da28f.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"39a50e8b36d63b61ae00a81ad1e26b64bf9a5948","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.c7c5da28f.0.tgz","fileCount":34,"integrity":"sha512-OJHHQg9BznxIvfb1xSYrXOVugnp/BKp2P033xgjQw3Ph5XhP4XfWpqSsTXv5BZAUJMN+dqnrnWrffRGsdaJJiQ==","signatures":[{"sig":"MEUCIF8D+Tt3FUgUg1/D+7Jw9xpTWBU21RsLjqvPeVx+CVFoAiEAwPCir3X+e7X4pCKQ75jbiXfivGWJmSH20yQf5FlPloE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220908,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf/5+bCRA9TVsSAnZWagAAkLIP/3fHeVjCf2YRQoaoAmuj\nNUToI3zgUu/UihVVD2QrP+XHRYOgECXhKgurqB53L1xClyLyy1YLEpgVThO3\nZPwjWGPGQ3Bsk4D/4UeTFFet/fjPuB5aKibtnzvfuNl5CW/5K3rf//nVu7V3\ndDiv3tIj0nsJBXwC5vlpl1RugFw857M6j96A3jnzA5Lroy9kJAP87HeUMH6z\nC2DE2KVAA2ewhCedrMsQ0WoSjQsao5H5iAviP6T31TZNcB3gBhAe5qGi/gJB\nGi4dYOuD5rRgC53zI6G6+DCHPUFFab26cgN7XJIcugy1S6oxpUT+qMfdDC93\nvkYkPsjrJUFvo5xQVozcBy2p5FGkrTw0VMThk+YDq5xlzGy8WlKfl43CG1gh\ny21sA4AoqpKkHq2V7zdyaTYdXagLKah2Sq0i6T7IFdfFaM+FbT/lJXYkfSEN\nCjjHpZbW4YXwHorFUdr8SY9T541gb48aX4seRCHEGwgGH8Td0dkGpoWFef0I\nngoYMB/CyH8R6BJxhotn0lPHmQnAwL04Fk78oL4FgZ0th4JBlVmqoVlkbZZU\n6TAwXqgTSIc4kngESu0acX9CuEJDzchqnS6gAznc4OC1pgkEqadfTFqHV6wf\nkvAqvre13R+mxIMKHKFr4MdN9PJm6YpOaa45Dr03ykKcH6obWBf2NfjJjWl3\n4fYU\r\n=HBJw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5d3f3a72d4e9757f2993684a89928b04ad29c6a1","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.c7c5da28f.0","@material/rtl":"10.0.0-canary.c7c5da28f.0","@material/base":"10.0.0-canary.c7c5da28f.0","@material/theme":"10.0.0-canary.c7c5da28f.0","@material/animation":"10.0.0-canary.c7c5da28f.0","@material/typography":"10.0.0-canary.c7c5da28f.0","@material/feature-targeting":"10.0.0-canary.c7c5da28f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.c7c5da28f.0_1610588058213_0.5927633276171662","host":"s3://npm-registry-packages"}},"10.0.0-canary.b2faa116a.0":{"name":"@material/floating-label","version":"10.0.0-canary.b2faa116a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.b2faa116a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1f334a01830daddb04f17a8b19fab26ba051b083","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.b2faa116a.0.tgz","fileCount":34,"integrity":"sha512-iR+HG9LQG6WbkFSnh+fOEM20ArmJQ503+L071AgjGp3FxMWa8g9F5+GSD7SGY5W8TIwgJrmI9DzpEjXPyIE1vw==","signatures":[{"sig":"MEUCIEjVKFKxuKY+B4iYYxmboi/zjVhKsX1A14Z2yO8g1LoXAiEAh31IK3kaNyXvQWAFpHEN4mzlA5CJKsq8JqJHLV6SZ2s=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220908,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgBzJ2CRA9TVsSAnZWagAAFYUQAKGTYymGObzAhg3s1Sf+\nicWKipwp7kG5lG08Ht8rzBErZM90nZ3cANFNdcBKcQh3Y8rDElraNeQ+yqKi\nRGvEHzAltIWAQ5dwhBCnVZfdoJL1TMg4OxlPBFm9qi9M/iNT+UXQ8gcAXXcX\nSQGuYQZtF6Z4pYG6GdZtAoqWPwz9DzBt2bZC6ceHfp804j610j5N+Ub+udlw\n0V1IPCbINOyrRpJXVvll/a1ZPRL1C8PXFFPc5JhPg9AxeBAxT/XHtGvThRSF\nqkOUh3ZIQizTfdz9jSV7E0ylKjr0hAduJH721YLh7ZNZPH6HGF3ebKeWI8mp\nG5jXtXcmEBNxtm2j9d4kmjd+LPNSw3hvoIrvLTY7mQ/dYjef98lkqi2IsYvS\n9v4jMTyRFau4Uv2ImdyGEKTMVyHunrj7BCfhUa23pbG13Uh2fGUUv8TwCO/F\n5TJFJUO+orc5MwTvEkNi2Z4N+rtDDxTxwhoczSUc4iiQ7hFloZUAx3PL4qTt\nKLkhHKiLxA+kr7vVEOAosJFe7Fd3pUcp+CfwdFjQIPJ+Ek0d+k+6dXjWo90/\nqwBpEHSDkufMfTWGsmusPob+sCL8ghp4L7AmIEXt4DKrLmtyxwdtSuHuHIyh\nq0eK79nedvTreFHU7oWHqEFQ+t+6LO0aQWvBqu/b657JWlkVdLGJoQcujbwm\nTw0r\r\n=Bj+L\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8c83e6751cbdbda8095b6ae0686196398066d600","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.1","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.b2faa116a.0","@material/rtl":"10.0.0-canary.b2faa116a.0","@material/base":"10.0.0-canary.b2faa116a.0","@material/theme":"10.0.0-canary.b2faa116a.0","@material/animation":"10.0.0-canary.b2faa116a.0","@material/typography":"10.0.0-canary.b2faa116a.0","@material/feature-targeting":"10.0.0-canary.b2faa116a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.b2faa116a.0_1611084405710_0.8386449258368498","host":"s3://npm-registry-packages"}},"10.0.0-canary.0c95c9f7b.0":{"name":"@material/floating-label","version":"10.0.0-canary.0c95c9f7b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.0c95c9f7b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"db32837aaab63d3d477cd594e919820917655131","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.0c95c9f7b.0.tgz","fileCount":34,"integrity":"sha512-xLu/heEg/wadZ+bshhvEBEEqMGoG39tRNgDv6sQuFf+vmTbOdJvPGk3S0rAsE+NFMpCfdhNP/OKigkRC00aeSg==","signatures":[{"sig":"MEUCIGz6nU90PdY9YQzUQg8aJL6kyZpVFSxu4aXkZXNt88dGAiEAh51kwEowzS2mHQvapAtxbPknvog2LtBzQWocR4gQsdo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220908,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgB2MICRA9TVsSAnZWagAAsKwP/2/zxwamP9UOiQV+JqpL\nQ+e8b9HYCpXWSDHe2PhSHGStU6gaa1k1pJQqfhdB+8/myxxfu/XAXZ93G+2c\n9ab/4oj+brsYvaigtHbMznJjL0UvD/c+FgKZzQnPK2DhjaueHx5bdZY8HOsR\ns018XKATzRp6Vgvd5RKxbAf0CS7XTVlWDw5/za3NlhONAw04XcPT3TGKRtVs\nUQNygRgJcjfLGjVpXFUwDBRU/xkuxTfq2JQJskU2oycW8QkfuOpp6RFyrru4\nWFEj3d/IPPU1TFusnVP/DiA6celGD27ygu/FAobx/+QOzhjsJqkHEQALsOaI\nOeoQdx/ru9DntlOLJVET8Uqo7BmKxHZd03Mn88rGhF4KXjwWLWcf//XH2SvI\nwJtEvga0J9442mh424EkxChvqZyuPJKfcaBVDR7djzUF/dQPtuytssrbg8zp\ndmpDI9qQKx/oTiQTBLTz51c7uGebd2YPlnnOU/+8FhYgec8yiElHQfUJUXnj\nxplqsM/nLkDjxCj6bg5f9zl1vu+hJaqN6YeTYYjoiLQ8Yqu05Ny9T9BSU016\n4c8P/2AeBm7WHPDRi3D37K4SBmKpvDYbPzhR1/1s0n5PaXjD2ffoWrsCjVsz\narji44Pv4YhYe8uaN8D7Qat8p781E0i1u/1ZpE5DsSgfky5+cNSEVvRFSl4x\nEzEF\r\n=RWsE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c9db31c38cf439af3f1498600e029c2dd812acb2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.1","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.0c95c9f7b.0","@material/rtl":"10.0.0-canary.0c95c9f7b.0","@material/base":"10.0.0-canary.0c95c9f7b.0","@material/theme":"10.0.0-canary.0c95c9f7b.0","@material/animation":"10.0.0-canary.0c95c9f7b.0","@material/typography":"10.0.0-canary.0c95c9f7b.0","@material/feature-targeting":"10.0.0-canary.0c95c9f7b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.0c95c9f7b.0_1611096839832_0.393627383067382","host":"s3://npm-registry-packages"}},"10.0.0-canary.5268222c4.0":{"name":"@material/floating-label","version":"10.0.0-canary.5268222c4.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.5268222c4.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"eb4297bd4b752fa8ba3b9a758de2665d4d5705af","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.5268222c4.0.tgz","fileCount":34,"integrity":"sha512-NMKnjTKnqg/ZaH0QKaut0a+oMir66R+eSVZOqchtaGOFIT+pWPNmkmIjuWO3LBX3QIg586z+V5kbWef+zN6yVg==","signatures":[{"sig":"MEYCIQCmGC1b4FLfTtXHGNM0+QXKugu5fOf1UGW7JFiU7BZQ5gIhAJ+M5pSM7/zDoRBrPhaJ5Se2ej/TQRt+Ubkre0ki0Eux","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220908,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgCIIzCRA9TVsSAnZWagAAM6AP/jGZ2CSdCdTViubFbA5C\n/TYWk6c2Zhixu3kz5EMEACaOOZ4ptpAs0Po47K84t07DwjX3MGTOo6yHx78E\nEkn0AqSKvsjUP8WeQqb4PeF5U8sWWxKzqeARDktlDBZq5MafWHSmER8iV9tz\nO4LxrAP8ckvMESB+QM9CHxtZU4GooN4wQ6Su/1INzbpHt101aNIxBivivNLy\ng/8ftk7VfMJ5j0Vm1E52zAPMiLzkheqLt9LrWex9q4A99MXVsztwFh5kIYol\n/fe+0vtV7YVjzwzuTa+BNRR0A/Y5J1HpCvHLQDzqqkHfNEzLDhlIKLLULwIJ\ne9o+cadwSViwrC7EcCInOh0uN+YzBEtCX++H56rbhOb6Nh+JjWtAOLv5DNwR\nGQ5zvC0URIAN0dWcTa8NBOyfSNpSr8cXS4YzkhwzfKHaKs08g/yr8UgfO4QY\nO0k3oNFmV3r122H8BQW/tNylAX0zVr0EWgKAlBOg1K2DmHbim/W66aUI8xv6\nAK7CBLXyElnAwChFmS2Wf70IvQyNtPMwtcJV9cYm4InzXQZpIPL5KIhRzt56\n4Fuy4ez4BFh/eJcp83fwrJql9jLm519M3J+L2zPtChL9gDRNWA8ttnSJ3iBR\ncTpOHU9t3VE0d76EuX/D0yYdImPfbKrrJeTzL7sKqMf6nFL1RYQUND9TaFi9\nhjWM\r\n=YDY5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"149775a975bdac97e3f25a99b254c8b632e6ebd4","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.5268222c4.0","@material/rtl":"10.0.0-canary.5268222c4.0","@material/base":"10.0.0-canary.5268222c4.0","@material/theme":"10.0.0-canary.5268222c4.0","@material/animation":"10.0.0-canary.5268222c4.0","@material/typography":"10.0.0-canary.5268222c4.0","@material/feature-targeting":"10.0.0-canary.5268222c4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.5268222c4.0_1611170354820_0.8510304685825156","host":"s3://npm-registry-packages"}},"10.0.0-canary.2ed2d829b.0":{"name":"@material/floating-label","version":"10.0.0-canary.2ed2d829b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.2ed2d829b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"09b30e646a42d6a0d8521392c5a100ae29660e28","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.2ed2d829b.0.tgz","fileCount":34,"integrity":"sha512-N7/bDUBZM/o8gIdBFlpqjieWNzIgveMqILLz218ukT84T7o3p4eK3oLRHra2Y+ZUuAw2Ygfv0CWMdzYV1YSnwA==","signatures":[{"sig":"MEUCIGAGqq8uLnyz2/AhquX4seU9ciykbD+glWeBtP/QCpt5AiEAnchUyUySapWhqy8YjYrYr9q/gPRDIbSV6m35T4aN944=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220908,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgCLfdCRA9TVsSAnZWagAAcr4QAKDhcNmpZl1dGndHiQd2\nzf56NDpAvQQMa1ocXlQEb0D2/ITfSsFSg7nJ4oaJr2r1rbabQ7LgNtjHYFof\n/aNfg8NQh+zajks4o+G+HWCfs4aOKzgEG8aEdh8cJoBwcmfd6x6Fw7EW9ZDH\nBWQZBPxAFWSu9x6wbLsYh0ZiiLkN5jrFb62ahEFiVhXL6dgtT4mLLfKnkv7w\nSI4YsfnLWbkpfdAEsBeM/b/11qLIKdYwjQsQf1L63X1FffSHM9tQrPbTvB87\nuSXXIy/oWPSpB0RDLgsR1LeFoUPxD1Ym1tZ7cIXMlTo60GL9BAav78I7GkMq\n36FPphfeyBBWZCrcAdAmljgaRQiEGCf/7PDZ2x1E8B6J2UyYJOv4cyKys2Yf\nARVvG9BpotAjR1JLvrCR5vb2A4b8QedQN6uEgyaqwijbg6iN4nK0PXebZlyy\nEPSyusR+FkarY1pdiso2E1Z8AaxqlYRCLykZaiEF+qt3YlRpLhTNwX95I40i\nIuZnuCekkZzpB1XGLW4r5ilxL3ORiRsbLmD5x3mdZiCyiMO+zbxLY0gDWR3Q\nZLOTlZWGGZAaVRYpodKQRiKXLr/ryw4sf+mF3JjF/BVoprbnCf8VgFSvO0XA\nzNw+TPRnc2vCKbFNdNCBFLIYHmc5AQ/xb3If7WN94sFTwPzgc1VBzbViH/os\nqNq0\r\n=Dp0H\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e937a8c393e2170307639b8126f0a461ffaf9e6c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.2ed2d829b.0","@material/rtl":"10.0.0-canary.2ed2d829b.0","@material/base":"10.0.0-canary.2ed2d829b.0","@material/theme":"10.0.0-canary.2ed2d829b.0","@material/animation":"10.0.0-canary.2ed2d829b.0","@material/typography":"10.0.0-canary.2ed2d829b.0","@material/feature-targeting":"10.0.0-canary.2ed2d829b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.2ed2d829b.0_1611184092890_0.5945130609518428","host":"s3://npm-registry-packages"}},"10.0.0-canary.df00c2b30.0":{"name":"@material/floating-label","version":"10.0.0-canary.df00c2b30.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.df00c2b30.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b6ea94a5a457a19587fd1e06125ff4b39a278725","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.df00c2b30.0.tgz","fileCount":34,"integrity":"sha512-kiIswnge+VwYCom4AFyz2C+OZon+Hh1Suxl0v5OgDbzhWY4aSIl+I/E9Z8ybgifGqwtWEGqvxc+6kwcQV6TTrA==","signatures":[{"sig":"MEUCIQDccbRtXUwlshSCDCW3vc67ZC3R0KjR3Qgz07dUeNGe7AIgHRqGZpW4jhHDdGkRiLYKyO0yt4J92N9OlU26pC6v6vQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220908,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgCdwdCRA9TVsSAnZWagAA4lQP/3+KpxBoVwddyGvv6CAM\nwueXWU9P4uf9I+om8L70bmtovc6uPsR5uUfl45qur9wo8UdIKxCFcqZewocm\nuSPeTM28jtcHtSsNFV+2sU7eO7qqN6+kPzba2VeniWhJBlHKdpat0P7yfc97\n3lXEY0OjT2UFJAoO4amIicQ25evf9kxVsc905Dd9tDSW6UT43xCIAffqltUY\nH0wUK/GIn3nLaxMUSSU7oPjvCu2kamjz8YdPmxDqbi2znhc9EOOWT4Ij1nId\nZld58w2JYPxJizgfeO9aac0y0nnfnwE96Net03e+2dl838Wlq/0B7lPXNKzu\n6ymNK5gxBOzscO567/iv9PYvlkUpFekEyd4E/Mitszs0bi5ZNiKo7O67wzdL\nK+be10eK/95zLtzUjQy11ls/zsaSuH5jLQ4AQzjX08XYNkI4gz0pU41Aq4HM\nhzWXD6aQRrav2xiZ0x9gmNZCdS82K7iO4RBtqsl5v3aa+6cr6Rwv25FK1/Ck\n5YkNNFVN1Our3FcT1U1S94GNfolEcZBHvHM/J4vgnCMTIYS56SePLRObM9BX\nhn8lcwZD+H/CllcKcRf5iQUQCo96vXNcn742lxdykvfp1z+shVHEIOZ2nVru\noaDsy2rL7XpKQ7cuGMP9M3fwf+NY+SqUj7P6V6p1tafWu2HYGtcoDDege0W3\nfNZY\r\n=UWVV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b80e68ca5ce1e4ff7a83ec06c805029869aaa5fd","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.df00c2b30.0","@material/rtl":"10.0.0-canary.df00c2b30.0","@material/base":"10.0.0-canary.df00c2b30.0","@material/theme":"10.0.0-canary.df00c2b30.0","@material/animation":"10.0.0-canary.df00c2b30.0","@material/typography":"10.0.0-canary.df00c2b30.0","@material/feature-targeting":"10.0.0-canary.df00c2b30.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.df00c2b30.0_1611258908977_0.03902444401107652","host":"s3://npm-registry-packages"}},"10.0.0-canary.fd61b0476.0":{"name":"@material/floating-label","version":"10.0.0-canary.fd61b0476.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.fd61b0476.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6643e69ccbef866d45b9df195de3399246f1fc9b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.fd61b0476.0.tgz","fileCount":34,"integrity":"sha512-UDsOuTnukBF1QPbXW+ofUZEPAd0OfWU6Arrcpp4yfQ6WbceHtVVzuCzPH4E5MNHRUxy9q+Rbd+3wbs1QCn3GMQ==","signatures":[{"sig":"MEUCIQCUhXNREY90RUI6vBmoq9ScWyNcWoJCPKs4lOiPnf+SqwIgYqPR3yQbzHYnbzivXXPk5YIt/gvpwZqqTSh0n9FeOZ0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220908,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgCd+HCRA9TVsSAnZWagAA45sP/Rf8ymLPl56zQxjb07Mp\n//ExZW0EIrzDfd3A0DFDb3wCmwF3k/ql/BcbmLTmk3U1n0CeSUO4LD05AQzD\n1ARTkmqx7CFWOhXVg+38TmdPYLlS8YS8GRiMhyTr0uKeLDJSWLJYdoXOu7wo\nnnGOcxitoI+L3C/nOgK8sxApEDRpyQSJr7Sg1uRPCAFRtG4t+FQoSEFYxGmN\njetBHbTYQyRT6tov4FRzAQ0HC8DswlHFErQ5okHmr4o9BpnrLz2wHywar/TS\nb3E3b28e20X34A86tqqBtAeicqGtUvltdvKPBCvmgFPoixs+Otpn5Zr2KHVz\nQl8OOmVL0+u6sgWM/52f0640+gU1rhg2YS70c/2Xgs0IMmhBS0MbGVzIeEwW\n8urifweBcWM+Dl5B+m2+OrL3FGaMTsOwJVdPWPVhEVjvIXjsQi+eZJW51Yho\nriwewPiRNLUW2er4XSVkgIiJDnJC2aW8ac8MkT8EwvFkERT2jiPc37fdSzLI\nG1JyKnXF+yZi/Bz6ahO36OUtkcEBQUimp7eghe9UCX4x7WJaUvMITL3lA7PP\ni4jO/vGRS7LP18XZm7HWkz4WzlFYaBuWqpFlPe4h0Pwsb1mxcAL8FhlHkQH+\nzucZja1WzBXJa9kEMtn5moCTY3FN1eHzBJD/dmm6mIg/uxI5ApBDyPQzRK3F\nX4Q4\r\n=ol/Z\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"67853fc809fc128218f211f5b54f854f102d1ec1","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.fd61b0476.0","@material/rtl":"10.0.0-canary.fd61b0476.0","@material/base":"10.0.0-canary.fd61b0476.0","@material/theme":"10.0.0-canary.fd61b0476.0","@material/animation":"10.0.0-canary.fd61b0476.0","@material/typography":"10.0.0-canary.fd61b0476.0","@material/feature-targeting":"10.0.0-canary.fd61b0476.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.fd61b0476.0_1611259782594_0.5370164048774113","host":"s3://npm-registry-packages"}},"10.0.0-canary.3fb3a0265.0":{"name":"@material/floating-label","version":"10.0.0-canary.3fb3a0265.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.3fb3a0265.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f28ce6578aee8c4f369a955ff6e76ea8199758d1","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.3fb3a0265.0.tgz","fileCount":34,"integrity":"sha512-+EsmLOxWA0zMA+5BRsLT0tExZBz9LjUE2+6vvUcmD55p6hpRMbQD4K5adVWTOGvCdnP1nW5K6qcvwArrbCOc+w==","signatures":[{"sig":"MEUCIBEGGfNcdFZJ9RzAyXkvQFLFnq1a9mS2Wz4zPneP16KJAiEAhDL5lSJPN2ju83jqTJ4rAO78A3+cZdXomr+yXgUdeVQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220908,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgCharCRA9TVsSAnZWagAAHUUP/1sYPdlCTeP8z/Ev7SSo\nD3T8mTtNrfCXtLv7qBakoTOy57pLxax93MWAA84vvcx255je3KOM6htOBthf\n8eAL4GuQqNRBzQzdlc35fYVe2ZHL+4dvQWxxT1w2ZxGdV6a2FK4VUvTSP77D\nrTLY6IdYrV+k/vIaGlK0iLYftublmkbRIIT5+phvbBjIwzGKhDTEZemT74er\nkLYmAZkyO2SMUDKBdzrfYNXd/Am9mRMD9HZbQDGTQXz+3lAU/jZ7wjDGAE42\nhFS0Usgnyu7DqWShQc9Lj6FsVkEjsXVqaszwgIphHZ6J8Lq/kmvxQ6ro43OB\nuCyHjPUrCfNQTTi79zz5/PY55ygnbl0uB7Zw9PwdUQL7EsWzz57tKzLjw5zF\nWSTqtB2BgnEUuhQ11qRoJogYuahY/P7+ZNr8GQ6lM36xcHwbTXiI/lsKku+s\nvSV+wQGYZpytD312ANp1L0OHG3Ngw4l3o5zD0c/LRSm8OwbJBT9Ywf5llsly\nhJBiko3BIKE0IUU9/kYFIUOyxKAytSkyS+us8mvQ0aLajvz26cqyA1oruda5\nCwH0bqzPgE8a9vH9DHhOOIUM9UzOGMSYZmw75RJl0se2wF1pXfcmqndkATix\nbA+XR7b8/PMcTtNbWDl1RycuZLXV9gq9cG+Db4HNp8Is7LGxxESe1IX/2jUF\nOJsI\r\n=WgFm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5e619e42cc5398fa779a726d775cc7e9a72a1acf","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.3fb3a0265.0","@material/rtl":"10.0.0-canary.3fb3a0265.0","@material/base":"10.0.0-canary.3fb3a0265.0","@material/theme":"10.0.0-canary.3fb3a0265.0","@material/animation":"10.0.0-canary.3fb3a0265.0","@material/typography":"10.0.0-canary.3fb3a0265.0","@material/feature-targeting":"10.0.0-canary.3fb3a0265.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.3fb3a0265.0_1611273899146_0.37235277808655276","host":"s3://npm-registry-packages"}},"10.0.0-canary.07deaec27.0":{"name":"@material/floating-label","version":"10.0.0-canary.07deaec27.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.07deaec27.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e804ff72b98dbf5a732d7c3f44f0b1fff819d219","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.07deaec27.0.tgz","fileCount":34,"integrity":"sha512-C/pnM4QOybQA/d47Mj65ONZMSLBiEAg/vAeHv75gMxT5Ypanhz2rAd694IhCfADjw+iDCwCd8ejSeFHFSTU/kg==","signatures":[{"sig":"MEUCIA1clnwE7+MumLaUK55TJjFprl0fBizfmako/XkPt6KLAiEAqJvFgtWIKBsJY/GNuLxhMypuT36xbJfThMt8V2Q08uU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220908,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgCwPACRA9TVsSAnZWagAAd0QQAJToq76boED9aRdvNMa0\njCnNIpgkIx4E51lXASJ+wpKRemQdt9Iwoc9dEvWuIoC0EHADpo79YkCjrVOm\nsDFOBre/mjmdFgObnrpsMmgf8owvAp4BKzDdlDyktwERb8NAwas5Yd44iH3c\n0jXob9aWy7xZ3L1KDQa1t7LfOOFu1LKDoS8nGJ2W13wwWC/LkktuPdp+bdA3\njIogOqE6np7m+XFH3bMhldbu9DEMMq71VLueFGh3Sqbd2MMI4BDUKKv5mDbK\nEeSqEolBGcippVcDxAmV04pSb3ffN5LEPHGvOeUGb8TW2TUqxYIvShj0/3jO\n8COh0b50VQ6JNbwmovLxrOUWKf9qwUVacwFeuBiSxowek42gFX5TolZ69fWH\n9a32aNzURKY7UvBXl9BjgeeoCUO0t3LZtASp9THNwvODpW8xN/xN7IzuxJYo\nOUbD+S9oToOCS+B1n8WfUxjYe1jxVaRHnZU1AOpai6yjSQ4pkZLkGZ9XdQLF\nx2Cg5HPIcnTR7XWOD6zHPy4BJr+h/iP6zw5ERuriZa1WLF/C86rJSJwEVXEt\nMNbng/UL5O0fkPzfdzyY71nH7UncJ/er1a+5r7pTmd8tUivhUXKYaUq8LX4o\nRy+gy96WAHjHY181Ysf0oKUtB5LYDvib6pg6m6nNrdJ3h7vBLypA2FX4n6oe\nQuic\r\n=55vX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"be75b8d81f1ed6f8ebe94c8673f32110d71cec7c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.07deaec27.0","@material/rtl":"10.0.0-canary.07deaec27.0","@material/base":"10.0.0-canary.07deaec27.0","@material/theme":"10.0.0-canary.07deaec27.0","@material/animation":"10.0.0-canary.07deaec27.0","@material/typography":"10.0.0-canary.07deaec27.0","@material/feature-targeting":"10.0.0-canary.07deaec27.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.07deaec27.0_1611334592210_0.2547637944200585","host":"s3://npm-registry-packages"}},"10.0.0-canary.d2959b16c.0":{"name":"@material/floating-label","version":"10.0.0-canary.d2959b16c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.d2959b16c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c106e5f087170a772e23fae396fcd3e90d3c8b82","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.d2959b16c.0.tgz","fileCount":34,"integrity":"sha512-qLBLDx56BzI0hx9qpA3I/F0E0OWjiNgIRHAvSXow71ZVKArKJLEpN1KVfupLFMXi9ZqBqggbSF+zOceC1LmCcw==","signatures":[{"sig":"MEUCIEAAPjcdeXV7cZORrjoXDXHAz9awz8VsQhnaOrtNgqH6AiEA7sIxLa2bw8aKawbrDmhm9Oaivke+YV1otTcDoiVyiVI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220908,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgCx7iCRA9TVsSAnZWagAAqeMP/3KE8D6EwN9mjGhnEx3Y\n7vGuOgK1ruH6EkGnuh19mRBk9AqrlhvospoKD6PbdjEENkMn1yNGzwbmITjj\nQ2i8xOSy4SyYjwIayDEmxp9oXWIdaCEbGZJaOFE4G396U0FDjWZw+7z1j8GX\nrT7HDzefUf59E7Qda8Nb/pcOBBD49CZJtUX0hBj/UGtXibvPAv0C2Hcz0k2y\nrapX0ss8ioMoezbqVtORUuRsZPtmxypGVfYBqeuYbmFsTaTCL/GeadY9mxTw\nHEsL4Jg+USgJZe/sXgQPJPCr5Z7YFqMAegDUn/0aXibT8WwQpFgMJ/nfjU1n\n33Xo/tT6sumo2J/UzNbvDXGmZXPS71fjuQOp4ZcENUFNm4Vbe5vlR+W5UC6u\nqtQ5KhrzkDH8vGbpBqat6LangPpHktAeS3J3piqNrsFxWd4p3qkj5N1f/7B2\nwPyFbdsNs6r+ihE0QEPs9c2mrjqXmwi/KlhTQQQhGUUI/N9BgNs1u7scqpwF\nh1AwKpEArDjgY12qf4sOdXAXxw/tjnnCzXifPcntf1fRYfgyabyVkdXP9J2r\n28uNaVwSFuf1pJF5iFgRqRbb+2kwdgcyLRXffK7Nf3LgxfbEaJd3lKjhqNBo\nDWY7iZfbhgSHjy12ddkJAf9Pf60qfUeePRTx+u1ypvMGK+cZrTYywcqmNZiY\nLsxu\r\n=jwUy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"9a89df0257ea15e66bbd565cfea291993f0c4ef6","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.d2959b16c.0","@material/rtl":"10.0.0-canary.d2959b16c.0","@material/base":"10.0.0-canary.d2959b16c.0","@material/theme":"10.0.0-canary.d2959b16c.0","@material/animation":"10.0.0-canary.d2959b16c.0","@material/typography":"10.0.0-canary.d2959b16c.0","@material/feature-targeting":"10.0.0-canary.d2959b16c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.d2959b16c.0_1611341538457_0.2944032279476414","host":"s3://npm-registry-packages"}},"10.0.0-canary.75f3bfe7c.0":{"name":"@material/floating-label","version":"10.0.0-canary.75f3bfe7c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.75f3bfe7c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"8b1ab0d2f13ce7baa967ef4b36542433b7c8ce6d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.75f3bfe7c.0.tgz","fileCount":34,"integrity":"sha512-iSvdtuidKksvLQofmFNjwHxC7wI9RZQYwfB5oobx3B89TBwC0tsXAzxpHaDaw/CWFsb7MrSqdmZa+VbFlknbWA==","signatures":[{"sig":"MEQCIGpX07viuUmhOBqy/H+RuYkM8UHEyL0+iQgnFYv7/jHKAiAjo5EKBfjX4c7Q8RJw5pMi55aOReEImnDqk0zudFp+Mw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220908,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgC1b9CRA9TVsSAnZWagAAs3AP/2hTmXlT2bY9nWSZuC4F\nwopoTk6TSxiBOe5bnyOJJOb2kTwM0BjiuWZNReiuHNE6D4nCrTL93wCat7Hf\nK+8SiX+38L9TjvxN9zHXBSt1V+iAE81VTE260tJxAxrvp99k4yaT3kRRDPnW\naeynzs79qPH/lN7qltVL7C8EteqP24uT40y0SCCcNoy0mz6ZFOUZ4K1wsIG0\n6wg8pulmmuApFFLYWf82xE57olbwp2imnIizcvenIKX5G9Pw7JdTR0NqL7DH\nGZlvqbV8TJfwd4podaIsMq1VTxcSr4R6+Ay7UopzAoSbGHotwfBHQxKI+fEJ\nYYL/7HcDq16JP7t2sQ0E2DsHGsfI4nRmZfDzVKtex0Y1BLCT88PZy+n5PBdq\nFu+QcCC6Q77y9VWMTaC39b+6VSXelKaYD1yLGcJyyp1NVrVMyZYNZ+uScAXS\nA4cG/Cslyw5OGe7dJtaMPHYhhPZ6BSjKigL/GLuuG0tGUu1+uP+fHiiSbD62\nvZEzkAqloFSJaxAQlF1Catyffm87tkOvhkUXJMDWZH0ZGROnP7PQQVZf27IT\nQBRRV0oVOwI+dKTPcfwNo3nfMCPbELHwrSYu4BO0YDSJll82+7if7S1zOwSR\nAHWMqPL4racAvbH77Gmz2YYC1+feIv1HzATQC8wPGtpsPttn6uHdWi29RaBo\n8vFW\r\n=YKkb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"057941e604e02f88d571d61967040f58bf499bdc","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.75f3bfe7c.0","@material/rtl":"10.0.0-canary.75f3bfe7c.0","@material/base":"10.0.0-canary.75f3bfe7c.0","@material/theme":"10.0.0-canary.75f3bfe7c.0","@material/animation":"10.0.0-canary.75f3bfe7c.0","@material/typography":"10.0.0-canary.75f3bfe7c.0","@material/feature-targeting":"10.0.0-canary.75f3bfe7c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.75f3bfe7c.0_1611355900711_0.4009230104082433","host":"s3://npm-registry-packages"}},"10.0.0-canary.b9adb7a0f.0":{"name":"@material/floating-label","version":"10.0.0-canary.b9adb7a0f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.b9adb7a0f.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"581487451fd801084a14cabb0e6ce36581096a9a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.b9adb7a0f.0.tgz","fileCount":34,"integrity":"sha512-OEMnhBWpH0D0vyxpmkz8e2elGyymZ+Q5FKJ3FfxZCeln7bBcma1FtC5uZ0xFS9OH/Rj177fc5lfgwXym/qEDbg==","signatures":[{"sig":"MEQCIAyJ4lSbtjal+WhWVtfSvBqBFVa8Ei5bedLQDp6l2zK4AiAw3RMQGVvkUnWUB4pDy0N0YdriB7EIGnfM+/Ua4wgSBg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220908,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgC2FcCRA9TVsSAnZWagAACQUP/A+3w927VImDE3JyAII+\nDY2Ioxjr8v9u5K1pa9EHFy1H1SvvWlKpuNatKulDzqC94n8KLLAS0ivVfyf/\nzld6C2DlN0wtMQW2hmo9bkBMmkooTWNc9M7gABEWUHTXpf2QjHv0k55WooKp\nAG1fEQYYxSNhWkmvXVj9Ovn/rutXqhSMBznonuu6y17ue95pkRGX2Jwh3AdH\n8/+b+ddeQZFal9jxya3TsVP2d51ZMkZ+wGv0LHIpk6pZo78bY+sFeCi623jV\nWUI2uJxfMGCj8ODwWxrFf4/rmlX/Mz2lJ/bxH6sc9TpfMyrut5spd+ZQnKVA\nKLj6bcOGhzwQ/Hi0oMTqQvGvibiGBEBQ6zNn7Rj/7nJpcGeOzNRDcKyX7Pys\n2OypObaQJbY4myntmH8cqCCZ+TNd6t8jrm653gGCjQuazOpa6Z8oyp3zDJGx\nIoqLvZqSTy7Dt+RN3lxedOfNyeWsYNaOaqBAfburT448dIBLbMvelAlBRK2r\nKZOXko9EOBBpv6Yza8KTDDYuyBXG8XlRtf/RR20sYDi22WYAAjjjQdGfKf85\nvDdloiI/uGxDFBTuOas7uCbn6cz9/eDdSxpLZNtg88g5nTOmkzHCE2OocOj5\nRIUjHKL22+198mPifcCNONFiafuDDdOOhFWDLv81wOGf7wQMhtju4jYNrNz0\nftMP\r\n=IybO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a591eb080c699d02013eb9ab0090fdd5e9813a72","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.b9adb7a0f.0","@material/rtl":"10.0.0-canary.b9adb7a0f.0","@material/base":"10.0.0-canary.b9adb7a0f.0","@material/theme":"10.0.0-canary.b9adb7a0f.0","@material/animation":"10.0.0-canary.b9adb7a0f.0","@material/typography":"10.0.0-canary.b9adb7a0f.0","@material/feature-targeting":"10.0.0-canary.b9adb7a0f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.b9adb7a0f.0_1611358556464_0.43929645573081344","host":"s3://npm-registry-packages"}},"10.0.0-canary.d29ec2862.0":{"name":"@material/floating-label","version":"10.0.0-canary.d29ec2862.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.d29ec2862.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b9e2a09259bc345bff5def0101d63fbb985934a2","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.d29ec2862.0.tgz","fileCount":34,"integrity":"sha512-JlPYEQIoBcn2TVhnQLAgR0GKh3F6qQT+cgLzaTS3NrVM11qc5MJogGMfHhqWinLXH9x3Eb1jkmgFPN3jKRxVwA==","signatures":[{"sig":"MEUCIQDKoq+GWELhecKwyVMBwt57We29XX++gHjrIF00154F5AIgZNErcL0jPRPkrNm4jGO4PoK1wYmNhxxa11K7aVNXCE8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220908,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgDvClCRA9TVsSAnZWagAA4ncP+gICakU0PdmlVLYM5ARJ\nfcFwQflGNxRTDWIVe+NbmOqykuQhW5Qzw+HWbTngpr1pNTfCzO5RlpDr7Vre\nqSKj7VDWbLHG9u3Q55i/qgbxCV4sdLv0FCe7kahKw6eI+IFIspKmRnOAsmOX\nveagt3JhnnbC5UrXJE+Uk6QB9RzU5x70adYAkeic3as3aw0Da6LY5ZDa4wwn\nkUAe50kRM0SXc9m1fEWiRc1VsFIWo4jrQnKkOKokHuqbFo6/8zUXPEAlVfqq\n0stfZwLSw17Gx8zhpwYFImkMNV7dVN0ueC82FGA9r+Hhs1YIWBdk93ygw5Wq\nO0ZnwR6SGazWUi+WmTQk5osNulMxygFJGNaSTxUr1Ythtqaz+foJ2tJkVKFd\nWVKSonik4rRhwC7IQMqBOoMT1Ksgrd3BxYpJLNUOB6jHRiJnNm15at2y7ssm\n9MEn7NXww0hvYR0HmUoDjwdJ9EUjYeefXfSvamh9fwSI5U6nwVI+Pfzfdscm\nThY/50Krp4lu502fAXmogYOpo25kk5T8/VLy+WWLREmSM5SnR1Han5AadG/Q\nSRN2RNuicjbyGgIuXh6cC9UOhJF+o25XSG0p3eDy3FA0y9H7GIFO0B6kGbII\nyhgqnnxk6lT9MihecIT2KYfRg9t+mufchAhfuajwEvlTm5wU3HNvRWdWmCda\nMkFs\r\n=cfVO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1f2d18d6e94fa1f0808b7d768169b9f4827dc692","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.d29ec2862.0","@material/rtl":"10.0.0-canary.d29ec2862.0","@material/base":"10.0.0-canary.d29ec2862.0","@material/theme":"10.0.0-canary.d29ec2862.0","@material/animation":"10.0.0-canary.d29ec2862.0","@material/typography":"10.0.0-canary.d29ec2862.0","@material/feature-targeting":"10.0.0-canary.d29ec2862.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.d29ec2862.0_1611591845008_0.8558258624134518","host":"s3://npm-registry-packages"}},"10.0.0-canary.96be07c68.0":{"name":"@material/floating-label","version":"10.0.0-canary.96be07c68.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.96be07c68.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"dc7ddedd11074aa86ee417669ea8fab30cd7b9ab","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.96be07c68.0.tgz","fileCount":34,"integrity":"sha512-QDNaqPdn0PkOJ3kFlgBjtRoksCyRMlCeZ/2TICt7n+9ucEv2z6FJmz4kGjqR9TWJvDlvsZhbjFUT6EScpJpTrQ==","signatures":[{"sig":"MEUCIDiqY/9lc5rQh+jAT2GgNssLniPIkOCKHH7Oq3RTtx7TAiEAzTRFxlTzRWv0K8w3L0qRqRli3OmcnN0JJA7RGdMrN1c=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220948,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgD13tCRA9TVsSAnZWagAAKaMQAID/33xuL3JQcutKmdFG\noy0EJaSbfeQFHXJB2CAn3jiG9c1zDWrhmexYsvpFXhJU6IR3HQfpZJgwJRsY\nwX+p1W4Edu2kHljTjRTSbqyhaG9WCIbz1KBbFDTx28bUYXOZTVCfjvJ8R1BH\nTut59+M4WabxtXNlWuQVrwcI5784UQ2480V0Q6kFGGeSi8BxqGkE8/GDfEtZ\n5swO9gYFDga7Q1b0t6cg7yc+M8Q/NLotgh+f8XtbFTMpGMBFK1du4jT9DXvz\n9ZFP2xgBms14S5Ew6C3tJqOUtR1TMoybG/iWUMjs8MikWwI7mjflwE8w4moK\nhbhL+iE5RaPjWVRLamGIZ/0aOBHfbwwqGN2yLu1g+JiTqvSfWqdWaj7MN6IP\nPeT3rlv3ViukHvPYQEhENFwRmCr8kab2/OzKCbupDIAds+07cITiis4ZRT0D\ndqI3f8qNF+qnmhZPGxqyGw7Fi0E1kpXz34OtmqPRrfH9oRKx2kWH2XBRVCPA\nEtmD5mmeZpaWuWmuNRIjAAmz4nLxpvDo2C8UcOMVngRtbQDoWD4snQnaPfqw\n4Rm62g0snYxAD9rsdQxqozezAZ7/ckqbyWlk9SFSl9YlklNryPWRdWQSSE+k\nf4h+7aPcp1y7drAuGPxIoM03v7N0mhhV5a8O8vIid1KiQXMLhJMWyGPuf2/t\nSRh5\r\n=CRNM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ad510acabea4f02cd7399e109ef73d3b0bb52e0f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.96be07c68.0","@material/rtl":"10.0.0-canary.96be07c68.0","@material/base":"10.0.0-canary.96be07c68.0","@material/theme":"10.0.0-canary.96be07c68.0","@material/animation":"10.0.0-canary.96be07c68.0","@material/typography":"10.0.0-canary.96be07c68.0","@material/feature-targeting":"10.0.0-canary.96be07c68.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.96be07c68.0_1611619820787_0.49098888012216646","host":"s3://npm-registry-packages"}},"10.0.0-canary.e383944e9.0":{"name":"@material/floating-label","version":"10.0.0-canary.e383944e9.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.e383944e9.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"205c1eae77e368b1e543e57408de4c6129ab5a4a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.e383944e9.0.tgz","fileCount":34,"integrity":"sha512-nCsn2smnYMyo/T7GYZfKkWxEIyj73rBLP/WBi8LY/9AMdFKrIhfqYd0u1QgPedxVr9CU+/HJc0VujuUwTquyeA==","signatures":[{"sig":"MEUCIDi6120Y88RadQIK7oVD61qLfmO1CzzjhrZA59HrDcubAiEA5G4zf/91urs3Y5COP1PJDuM6XFaAvvhiRjrT+tWd+Vc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220948,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgD3QlCRA9TVsSAnZWagAATFMQAImqVMfrziaMFiY1W/aF\nyPDx5imeyPpkJ4XT0we/wZfl+Pqxq3/pXkCBoh3afhu01p8q9zPxYXaQOFPG\nZXt5Gdjjtx2NCjVU1tC88Eo8j5qVoE0QKlpnMKomMKUG5HxDyo0Sbaf1RupN\nqJhshPFzmawpdhKPsaBzhcwOeWRmrg+OjU8uA6f0jhut1gK70o67UV2+AkGm\n8OIhgjQJisyE05BHzKh4D18XsNsnPtoMfXBV5sNF4shIXeCk3D/31RXIOU7S\n9c2elc+iolG6nFo96zvy/TgeaDXz91g34w4zyvy39gHfF0wqCxExulCLiJH8\nqg4Kfh0fIwX5QRR+kd5pRn81ZhCVDIzFMxhRLhnvtwAvAozoCx3UyscSc0Ry\n7ZaXAA+49jCck0KCazXUaR0SaW7kgcTHqXgSA2DEHq6SmKsxcXSWWU4+kKfq\nNv9Gslk1C7TfCF1d/DbNCoXjDrKNz9U/mwbWsxbbpn5NdMC4ZSjKC3ANyfCx\nAiG6Ohnq5DWHENiIXpOUH/T+CD6yxIPq+iDjHHyj8Ic9We42QBo1TmeFQBae\nNlDBUJkP638F1w4JSLvuIwHfGBlaTWYl+JwcFemHhzMxYEBbIT6+VMbPUmZY\n6xm9qK5kGBzJZvy1rTEb2T4Jkm0LSxjE9PBn2u4KcRgVS9Z3pnmEIrsRRAok\npxlV\r\n=nEK4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"dc6dc4efb9210fc9c70fb089edb90278a8ab66f8","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.e383944e9.0","@material/rtl":"10.0.0-canary.e383944e9.0","@material/base":"10.0.0-canary.e383944e9.0","@material/theme":"10.0.0-canary.e383944e9.0","@material/animation":"10.0.0-canary.e383944e9.0","@material/typography":"10.0.0-canary.e383944e9.0","@material/feature-targeting":"10.0.0-canary.e383944e9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.e383944e9.0_1611625508638_0.8179577533142681","host":"s3://npm-registry-packages"}},"10.0.0-canary.623af861e.0":{"name":"@material/floating-label","version":"10.0.0-canary.623af861e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.623af861e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f91fe7191128be7987e98554b74da22968536123","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.623af861e.0.tgz","fileCount":34,"integrity":"sha512-7X1YtOE8hSKLu4W3QOuaVFzD4c94XwL1OkqYdLEoU2DCS3XZ8knjpZ/BTGIX8f+93CzkwFR89GlRS+V6/6+9tQ==","signatures":[{"sig":"MEUCIEOPSFgGsbjvqD04/6GlOXcfGNHh5G1GvlUnJ6CFxFe8AiEA/YW2ykWKJIzw+GeiclWZPLeQLJ1RGTD8SncXeQWhHso=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220948,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgD5BVCRA9TVsSAnZWagAAOdMP/3RwewJhhelDYbFEQ0wj\nrN0KMy3AyzrAwQQtfj5ygYCDIuSR5Xxi4x2DBv5FMbQ73Ikh5Vl9etilwdIb\n5qhtWW9DQ46OJB4Ztu04tI26kbfHNTYXyK0X6uf32eT7jxwdlRuMSxUZznOE\n2pdajWta2h+sWKT1mZh7DLAzGvWkjw+LOLmEnSnxLa4NvPlYuQEfglz5j6Gl\naIwW6bmTXU7If44Qh+stfBL+Yizvn0gUFsLSNbRXkB56EmFECvCi6w8FJl4e\ni7fwB8Vtk0qJTtmyYT6JKrryThZdsWZVYHNtnVHWO2dHMHu4+7MOeCizM2jO\nsQHuELQWnzmdl/n6/gv5B6DtyXEGHpZccxN8reCSwAhBTifMKbt9ORn6KR60\nsXg32iFnwvzekT/6BG6doYKSOmw/knU1s3qi3LUYH+Rb0rmendlR1T03Ac+7\ne1WJ4JCJ4bzv96GHPTXCDmiqj2/1djhbtzypFoEdDXxB0ghKst9CPSiPul1X\nX0/0/p7uda44lrnivBe76APz0CCMKbxouEQ5wmyvLLFCa83JQv/3NF09NOTf\n5Qk8DJjVwIg/40Vhvry4REZtl2Ii+fQ3uyYlPpw1deQFCOhS6ukvz7brMgzc\n+OLCqrInJiTlZTcGQbCYErbHQv67O+MjivNWpOg/2ZIiH+lBGV5iO+TdJv1i\n7RUv\r\n=xG2o\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5906815761339487fac225651c29aa422211a72b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.623af861e.0","@material/rtl":"10.0.0-canary.623af861e.0","@material/base":"10.0.0-canary.623af861e.0","@material/theme":"10.0.0-canary.623af861e.0","@material/animation":"10.0.0-canary.623af861e.0","@material/typography":"10.0.0-canary.623af861e.0","@material/feature-targeting":"10.0.0-canary.623af861e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.623af861e.0_1611632724960_0.2796486083595249","host":"s3://npm-registry-packages"}},"10.0.0-canary.6863fd43a.0":{"name":"@material/floating-label","version":"10.0.0-canary.6863fd43a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.6863fd43a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9e12dfd93f77272f00efbaaf6dd80ceb86a53263","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.6863fd43a.0.tgz","fileCount":34,"integrity":"sha512-rZAcDS4hLEBo8s902afYtmMuniBcXztcsdYmuMBNOdIqlq7e0n8KMTKDFx1wY0Rin8bJstMczjF5xSAZ5zGCNA==","signatures":[{"sig":"MEUCIQDMHr0rHcuI99y6lDptvOJ0aq/j5N4XhIrSFWRCjH8EvwIgUlY+uIokmh76HofwENYywhf307F++R8P8Q2tm/2EvMI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220948,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgEIqgCRA9TVsSAnZWagAAytoP/2GLjkL3kkVIGLE4ao1b\nVUJ6WE86OaIrWsCgS+8QpOiCBvn9vN0YOvB7uPNMFKQlm3Waenqr8KlLeOEu\nY+PgRrtRkH1gUemUmhb52x7o23RRGJ1lBHOMuuu6oMoX10KTeoPjG5HhQUj4\nz8qVb4F9IvDRo5FA+9DwANcqnT1pqz6EtlMfKHWa4GtKhNngx2JO+0TZQtXw\nZG8HTonxuw+NoQDDVPOoTXmEq52HNgoS3zDcNhNP5mth0jRLozBuFklCKXO0\ntuNPWDwJrj/UJZWGZnxu3xMH0iAHjD5qoM2CkLBvkIlRqj7GnPgqCaXwDDx6\nglV/IE+MjunsL4OErW6hxqR40ev5yuz/GsEUysI1QLHgbgf5YKw+fPh2LiQA\nxKeuDHn6M7E5CwTbgmZ+PCeAdjxjJtCeIyDnHIeqq/cq4ugqnVwG8KDkIKQ2\n0pQ0X+NNRLmuC7OV4WVIT/xzhCHa0BBnJhKoV6IRc8J10P7pbgYWh7+of6V+\nsfSR2XS7LiYKZfQ+B6OhvJxjRDiQM2qnXpt7mmsYRByHQ6u/glCEeSsS9lyn\nMicQdCL7Q4/rVdbzGPz2MuIBuUVKc9cdrqeAlNKWkmF/bp+7UGuPs9W9LFJl\n7093xsVlrujN82sP6Bgd2bG472hJTKcrf3z1nNCv6F/U0+d2C0mAsGLqffv9\neJxZ\r\n=j5Xb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"49d0dacd3a675991bd5b8c454304b1f10dbcfda4","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.6863fd43a.0","@material/rtl":"10.0.0-canary.6863fd43a.0","@material/base":"10.0.0-canary.6863fd43a.0","@material/theme":"10.0.0-canary.6863fd43a.0","@material/animation":"10.0.0-canary.6863fd43a.0","@material/typography":"10.0.0-canary.6863fd43a.0","@material/feature-targeting":"10.0.0-canary.6863fd43a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.6863fd43a.0_1611696799626_0.5919737666861784","host":"s3://npm-registry-packages"}},"10.0.0-canary.ea55b87ca.0":{"name":"@material/floating-label","version":"10.0.0-canary.ea55b87ca.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.ea55b87ca.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3fadcc1db528c1b881b8353ad860f16cfcce3ef1","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.ea55b87ca.0.tgz","fileCount":34,"integrity":"sha512-DWPQsAIAr/MV3sGbWKC8/P+KgrKzE0R3seKbwBJtXEaL8davHD+ktw8a+dq3OMXW+aLJikMZ35HhfOZV+r8r2Q==","signatures":[{"sig":"MEUCIFcrgfBnGOa6qemEOdq0HASXuWYq1BH5tp2xvfo+tMxnAiEAulBrNq/OTNC8eJKlB4ej9e1n3Cnev7SoglEPoznV3Rk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220948,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgEKm/CRA9TVsSAnZWagAAmGwP/jybrkvyYbOJ4CvCZfxt\nh0xiKYE9Kth9ux3/1GPc9WzUif8D3e5EfOOT5GLPZRql3DyikdQUQdIVEtxT\nxK8OTet2/OMpfFswB1zLQf62g0eDdjIjUGbE3JRQ9RCd06tMfu34MehRWbvb\nTheYN5qyBecBiGb9ybNxS6kw1GrBhO1A4XKNilRYSZhc0BEt1W2tjCuqkOhz\nJdKjotqA5nM1IlyAsec1VmQeN4fyIEbq0N/48g5j3J6sFRCzRCbuBsvBD4cP\nONEct/WsWZ9RPXwW8BcmAtp3UKd3vKssckNF+UKw155Qib2n5mavZ1A6QOLw\nXwwjGBNVRBg23J8Xf6/vZFZ2udbHfa9oNRvhrmC3wAwKrvNScX83w97MOAIr\nufvVMWtfycJv4pobPZRGMoYR+T37hrzQdjugG0S9/7FyUNrktZ5oAX9fS09r\nqzbUHhgOZ3wzFoVS0YNB57j9Dc0lBNKZvsI3QzlAtSkoRic9tUuxV/S1zcrg\nR8Le5DHecmeq0byHS3FvPHgI2vZNv3z1DOwjsIip1rBKMRKCdGezEaaSCVRl\nz225bfET8bxAOS7pvRD/hLASdQWCI8798uDVq4a3nvWEkqBqyxVpIFDryPrb\nnrzJ+hXiyPxoFz/FNA/qMx4TkekM5eA4b6kk1dIeIuz82cXqA2ExJEPozkHJ\nyM2s\r\n=r+ts\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"00e7569feb0aac4c4dbbfb9b292c9f53adb608bd","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.ea55b87ca.0","@material/rtl":"10.0.0-canary.ea55b87ca.0","@material/base":"10.0.0-canary.ea55b87ca.0","@material/theme":"10.0.0-canary.ea55b87ca.0","@material/animation":"10.0.0-canary.ea55b87ca.0","@material/typography":"10.0.0-canary.ea55b87ca.0","@material/feature-targeting":"10.0.0-canary.ea55b87ca.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.ea55b87ca.0_1611704767488_0.8068658549448093","host":"s3://npm-registry-packages"}},"10.0.0-canary.e902ff05f.0":{"name":"@material/floating-label","version":"10.0.0-canary.e902ff05f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.e902ff05f.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5282d8a4e5a2f388d9a51c263f451a3671527d32","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.e902ff05f.0.tgz","fileCount":34,"integrity":"sha512-LUJ3a/8OxzBSLR/OM4VPEzZiCVgQWWq7WVEJyTyK0lmtkHTTNg3vd+9JT3DRvGyklggO/JyLiQuJKL0H9r6Qug==","signatures":[{"sig":"MEYCIQDLQV07xElrXUrnEBYv8h3lNqK1yVl2Yn3aDk1vEXNWjgIhALiad+pDnCN4aZ8RymW6OuxeyQbGaDWw2fR0lEem2a05","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220948,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgEK3/CRA9TVsSAnZWagAAJRkP/AqLNx5lOP2LwnizR1of\ncSrDEgnZk53LZwZiAzPX0tKz1bxqbR/4yVzMzLarbdTp5JmV81RCIB2IJR13\njhhI2A+pzMpmHJ8deny1Fn1cezglbLyRV89VOa9/Labt19mmyv2FJOGVfIkb\nMQHz6fa/X8Hvr3UofdTR6AhHTupLanc1sdJcAaD65fgrt2o1lkCX2OyNVz38\nW3gXh/jFy3ipGv31gCBydV8XbwHSB3vmDO+C1RuxaUWWKAXAAjwhZ4cekmZe\nSUDfRF0FSfZU6KZQ/iM0SNttuvEIL29I8Xug3nnDL77u/HdejRtV6TTYUbuz\nC4Ze1XK4dVs9xy2fkFbAw8Kv4ZL/vVCDd19mad0QJfFo6pmDMf1q4Ea72kt7\nkFz71QO9LPNLLmpR7FPBpuqXBaXwuyTyZ9RXHVi+Z/lRR2dTIFxvfOtdrsF/\nqZjpIkwSFSHyV+Mi4OZmjpKwtkjpxQWtq77GPM7Iun+gYXEKh8d73jXXBWsy\nG4ae5vAF9OoaO+PiRroEykmgvLf/2JgPzqTmroyajRt8xXqgM8MoZW+DX6qN\nQWuko7qKRqHrqnbOiLrFAX6j55Ze+hTqxdo/2RBbhbnm63ryvNyzJi7NlS8z\n8sh3EG9zrGd6SZRrDLc89xBX/9+5DrfomS196zDM4vQTY2QqTB328WMSRDO+\nUjQT\r\n=lkHw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8ae6ee07772b70becfa69208ee5a4849f86c2fea","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.e902ff05f.0","@material/rtl":"10.0.0-canary.e902ff05f.0","@material/base":"10.0.0-canary.e902ff05f.0","@material/theme":"10.0.0-canary.e902ff05f.0","@material/animation":"10.0.0-canary.e902ff05f.0","@material/typography":"10.0.0-canary.e902ff05f.0","@material/feature-targeting":"10.0.0-canary.e902ff05f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.e902ff05f.0_1611705855394_0.9465811731994851","host":"s3://npm-registry-packages"}},"10.0.0-canary.2c9fc538a.0":{"name":"@material/floating-label","version":"10.0.0-canary.2c9fc538a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.2c9fc538a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ecc3e95c4c2d1f9728e90fbca9dd5e04090fa727","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.2c9fc538a.0.tgz","fileCount":34,"integrity":"sha512-7cQQgTLoGCJkW1hTNOApJZzyuIwKAeEqCsHtfv9ynSx6tr2m9L+7vOtbmMPTpCGoT29Lw7LDbCEBtWf30nTuRg==","signatures":[{"sig":"MEYCIQC4++PHAzMCi+1xiOdgHvicv0mgmOZM7T1wrqKXQbYGeQIhAJiIILAEUJzRcATYy4ceaEI6M/tcUPB+TtmN4qqDRuqs","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220948,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgELNpCRA9TVsSAnZWagAA+mYQAKDG8U6gC0Fwe90vPd+Y\ngCJDV0l1mQ3fgfnkWxry0ZOi3cjNTE24E6GNYIOX7mbh3oRpW8U4gFK0nIaj\n2KB9HqeOasv7fMpxJ33SWx4gnaI2OyNADrs4VNlZJLnn+SM35iYx0ycNxydh\noEP/DXV/1PtoOn86fwoTu27jjPgY89TNtFh17B1yvGy5eZmD/rf5Gh7m8IDZ\nonGgG0k4Zt0bHk72uWEHEaLsPv8hSpLp6/nKKaUrRPgLRAQETUzsuGvzzqCS\nQJE0NUl9h/COS7aPHnYi6/rinZT+9baqlVOGe+AK9jxFFKbO+nV8IxwaKGIE\nOeH+JbkGWLLtZNMU2vADwIi454XZ0Nh7Tn7M+mAmQ7FL92Imw6kSyqYx8wU5\n/KxaGjcfQCR8Qv/ICPxpyDlFEaPxSafC6NwQgegKVcoz7fSF1sBWj+kTpbv9\nZ0cuonRetCgzj9ds/XZqlE4Z2ht/NkHjh88wS6QWR3uXDt+h5rgy7xsd3zhO\nwEPeuj2Hj+Vriteq6dGpxKIKtGqdxty6T0GgJ3JqvyrJFds/m2CXJc6jSwZF\nchml3FI8yFSx9ddiGg2hjRKoseXjlFnaV8unup7YBmyMKxoYMBKHgJ2PWQoZ\nwBKVg44X2Q7NZ3AqL6w1AVHOQNTq2VddOtZHneKWaxoRWrM9Hajcs/Ksf5hE\nb8QG\r\n=K30m\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"4bc5fff9ddee1f7703010e418626d050ca883474","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.2c9fc538a.0","@material/rtl":"10.0.0-canary.2c9fc538a.0","@material/base":"10.0.0-canary.2c9fc538a.0","@material/theme":"10.0.0-canary.2c9fc538a.0","@material/animation":"10.0.0-canary.2c9fc538a.0","@material/typography":"10.0.0-canary.2c9fc538a.0","@material/feature-targeting":"10.0.0-canary.2c9fc538a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.2c9fc538a.0_1611707240837_0.8725275451697929","host":"s3://npm-registry-packages"}},"10.0.0-canary.6bf56aaa4.0":{"name":"@material/floating-label","version":"10.0.0-canary.6bf56aaa4.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.6bf56aaa4.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"0e9a8c9dc7009f8c2a2c8a6ade92ebb9951e416d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.6bf56aaa4.0.tgz","fileCount":34,"integrity":"sha512-/KWKuGRJ2qQdBRjQNgQ6ZJXYzDIR7u3Fc7SAGTRK+vQjGi8Fr/5NJPKYZc7ADtR9lDI0xG26UQOyjKNquJGTCQ==","signatures":[{"sig":"MEUCIQCj1zhDBfKiuTCrYwBBY8rDYtYgHvPoruabpIrEzCQLMwIgBkhVwPcKUoXiJpKvM59iGUPpdHVxw+lgiO4ZypM6/J4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220948,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgEL/QCRA9TVsSAnZWagAArSEP/RxWALZmk3j+PndvXTYJ\nOBZmlecbZ8bybBT7VHWTyWMwX+2PaCHD690Gd4pbxybEC3GK9qj8zaCS7CnZ\nY7SvConTvYZ2avBOvXSIJ2lSZC5yFfQ0o5ikO5yLwBHCQ7DYOm0lUFokm45f\nm0uxSGGx1j8GKFMsXaq1Ogtc+jUvXZIkbsuuwTzHb/loWwtZKnzDNXL+lFvl\nIYfToY/Vk8Zq00axcEUUj4c6N9yQKATP1liQKqgxuOgJtrjBBmXQlE5o6TBT\n/cvtUzvAVArY1RUSKka2USpd3x04BunliKIN3i4ESGuvcBgxrIi9kS8ZLDBO\n/QlcVyDcqEvj1wuqKGRA408YsfWjtegz2TpmLkZB0JwHnYW/rt7i8wxtQItT\nRr8GKC99DqW/GJehWDFpiy3+WqGIaAvvnKyFtz7MkC/kGS6Xh1Rh6CLAk7Bk\nPyODNHYcJ6Aa6jMWPBpjsPU4k1MlcdvsUYc486wby2GUmt0MjNvuY/Vl3Mq2\ngfCIcRQKUrIICoBc1FotOQGuECDvhkrDHGmB7idHxxt2XrqoMxsQZkt2UgP2\nB56suM7wjifZpbHNMQiWZGARXPY2VmB2piwUlvS3iSgs8xdRtnT7Kn/M/9iY\n1zIC1FdwXI1XBdV2w90uT06E1sp7XUzdCC2IsRn7HJs0KfqMvQYyy8U3RCFY\njS3D\r\n=GGwB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"557b9cd09fc15e60ea09bd17651230487a292b59","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.6bf56aaa4.0","@material/rtl":"10.0.0-canary.6bf56aaa4.0","@material/base":"10.0.0-canary.6bf56aaa4.0","@material/theme":"10.0.0-canary.6bf56aaa4.0","@material/animation":"10.0.0-canary.6bf56aaa4.0","@material/typography":"10.0.0-canary.6bf56aaa4.0","@material/feature-targeting":"10.0.0-canary.6bf56aaa4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.6bf56aaa4.0_1611710415589_0.7223778841660331","host":"s3://npm-registry-packages"}},"10.0.0-canary.994873795.0":{"name":"@material/floating-label","version":"10.0.0-canary.994873795.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.994873795.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1ce2a97aef55050ea4160d16712d408fc5da5999","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.994873795.0.tgz","fileCount":34,"integrity":"sha512-VNckeE9DYVf2gN81CP7QvKpJFnzN+L9LjCnbNOZeFxS9F1BH4ZR1CPt1mzlwnKrLZBbNfT+e8hqKq05pVNOHeA==","signatures":[{"sig":"MEUCIAk7poQQhw6kkHg1IU7GjeCkDC81Aub8o9qEKYIHPuwkAiEAhsg4Pw73yRi2U78WXNXJHiJywcvL6n+5gIIArvHsFtY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220948,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgEX3kCRA9TVsSAnZWagAAEfIP/2Srl+lBhwy7ac4uMgWL\nwijy4r3AAqe/M9t9ttZB1VoClnDBbhdfQok0ZjXh7qvoQB5RJXWSEGI5NS3i\nDwnA28SjyeMYU9QepKjd6o/bg8uFdPCrr+Nsx9C/+7IiGEAAPCCBneybULHN\nDY4A1eLprb+YFjThjbgFqZ0ahuIIHJA81M8V075NJtwQtpUPsN/dIH2AJRux\nkymng1ckg1ydFcYfOupnVXihKEsyscrOt86VDqIPsa8LsAMIPy9u6ZtY+E0T\nOZUG8fsTcmxtnydCNoBg7ls3wzzfIYqYTrsafHpkKJNm8OHxWU4GC9kOm0Mo\nXA56+TuUO9iro0ELHHeX2KIGwKqweN+HhcS3RMm9xy3RTtv4hhkuvikapLGS\nCAJ9jWGvViJedJ3ms5xDdFL79/Kc9ZxsNVLr5UQx8prSKuQ4WpGQx4Rm9S0U\neiqhVsfMWGfwfaPr9VNfeX/qcRDNOf+GGfJXdzOlP1+LIbKe58DBD1Ewp5Q/\nxIVDqUH2jY8H2cSrUQsSlTSFTV9e/nDW2fqkyNbSeR6zK/RE6qYcPEc6HWME\nS8r04rWuaLEeDJB9Mp02FEmegSowxWVn2qI5VRrmX0eVtBmEPcg9J2HcBxhk\n6fSgW8rkOXZxYmbR8RElfRsaW0FxlInd5Umtf6tV8znP+Jh6lyOYD2nAUewa\norkX\r\n=zr5i\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8d1337af6a27bed9f06167ca1cc1c996fffdd9a8","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.994873795.0","@material/rtl":"10.0.0-canary.994873795.0","@material/base":"10.0.0-canary.994873795.0","@material/theme":"10.0.0-canary.994873795.0","@material/animation":"10.0.0-canary.994873795.0","@material/typography":"10.0.0-canary.994873795.0","@material/feature-targeting":"10.0.0-canary.994873795.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.994873795.0_1611759075743_0.7178716995501992","host":"s3://npm-registry-packages"}},"10.0.0-canary.96878e1d0.0":{"name":"@material/floating-label","version":"10.0.0-canary.96878e1d0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.96878e1d0.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d156dc78fd3d4ff8207eaa5b014d00a7651899df","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.96878e1d0.0.tgz","fileCount":34,"integrity":"sha512-tLbliG+KmRQeukvH2pe55cVbnHGFqkbUY29d2eh73Cr8Aa/4dmEPeHBHEknRiKW9a2Gu1TGbdO2C9UVyNgQTbA==","signatures":[{"sig":"MEYCIQCC8hHN1th1PTWXfVcDre9IzLrMn2/MPwwjjwxry8OhBgIhALn1y0V740bsUknPwv+W6eVUQEFZ1JhnF+8DEEy3qXKO","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220948,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgEaqxCRA9TVsSAnZWagAAZ7EP/3KljuyXpgZ23wYkadWM\nNK76KUiJIP6ecdIIJqOtyC0KMAFy9+ZraECEfzSYRswT03vIdZccFr0cjgbd\nMFNk3ARiewdacO9K9iM+3Lc4B/HWs+jGp/PO968Ee3/KBjF9/0YBHBbQ7x/f\nKqagJS1JtS1xs6PhKJ2Bf/GF5/3SnR6QM2kj6ETuWvXMmATWBuHsBZMuwaMl\nEbrpOrpX+AktJq2JimQFixjikDx78epzVo2JWtD5zqESuLHQdZdq6GR0BU0V\nT7TmKnWYqg6xHQOtxeo8Ge9IbD9ir+d+ig/q5mFB1GllPBEtQHImmJS+z1/Q\nMDNYBFTS7nZu7u9sk5u/fnuGUhqxGMcYBmBSD+kqulyUNqOW665CBsZ+QYB6\nCA4OT1OMB1nqyUBFXyQl5EvEv4R+lAk+D2lTGXqVlS/5iT37Bd9GLnsb7stF\nFq6Aws8MOuPtq07kLw/2YlWtHQOWi2jZ3w350ENZeNE7Y4gKuzYQGhjQp0GK\nRGOzoD4YHhmV0ICqwk285N1MH9/9Bnpyp6/Wnpc2eGNV16BsYaJHY51zhi6P\ng+TUse0nH9l2rb5nYhmAyXH5l816GkzCWItu/cLxUKwmU8utGbiZUGZMe9uR\nZBO3zfTB1XyxS9rr9Wx5yWzPSkCAlaeQ3pynXy1ya6ecWffbRVHsy0dw+jlV\n6sWO\r\n=7hPS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"cc9f62002fbbf03874065eac25971ed2b49a47ae","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.96878e1d0.0","@material/rtl":"10.0.0-canary.96878e1d0.0","@material/base":"10.0.0-canary.96878e1d0.0","@material/theme":"10.0.0-canary.96878e1d0.0","@material/animation":"10.0.0-canary.96878e1d0.0","@material/typography":"10.0.0-canary.96878e1d0.0","@material/feature-targeting":"10.0.0-canary.96878e1d0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.96878e1d0.0_1611770544898_0.08027254950514595","host":"s3://npm-registry-packages"}},"10.0.0-canary.3c117cdcc.0":{"name":"@material/floating-label","version":"10.0.0-canary.3c117cdcc.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.3c117cdcc.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"47b024ebd9d32180897e0f8e4700a6d48063d390","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.3c117cdcc.0.tgz","fileCount":34,"integrity":"sha512-+FR8o7K0XJ3wD1ll8h8/14yqHmVsVEUAay2df0WvCSAivsFjbyX4loQD0hhTZffmOXQq4MU9d5wZpl2+BKoxfQ==","signatures":[{"sig":"MEUCIDVm83Bhbn61hxV53/5PPkhrMLRCkzlGdc68FpcVoeRrAiEAxQSJ3pjX+503jFTbLZq9cEl6ClIuBEp84OGQilmBN6A=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220948,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgEbHACRA9TVsSAnZWagAAxBIP/07MxYw+4mwDUkxDAe8h\nY7gQ/k0gLrsIdQs/NA0QFWTzHM7ohCVuCokforszx/j96eAgtYe6l4huKhOs\n7Lrtn7SDiRxx2Z2j9zlR54YwECe7Vn7HRN9FhNP2V/r3WtWZ+Ix4R97oZ8xb\n75XMS5Ka1GAf+lWfmdLbmAozvL49ZfuAeRV0QarATTOlvGM157RINVPfvhQy\ntp0i2z2PM45iQ0aJsQDhp6S+ry5xwA2F372HPBU9ZXzujZvMfXNzYddXXg6F\nxRgep6r/YFApRvIuuNSj+/hoML11MUWtEUcfo6DSNq51KUofo26qX4miPVPE\n3DofVqUw03KigI4kgpqDJmnSyw7FVVknriaUVQj5J/k2ZWaQao1JnAPYNUIV\n55bv2oDTGyMSfDJ8lbX7BAz8ODDgZXEo7YNLtEwmRb7GeElY9pgbu09xcMSn\n5ezx2FU2EF7c+j+eOTRI4idsla7LjCl71l61/EWA5FdUmJGj3iuXQclbIR9D\ny2/hoC9s9GlIpi8n++UkQShHopGj518a8tuNSghANVhjxxo3mNZD96vJfhL0\nHGYBMAtR62UiqA+I2UJUBzXv2aZQDWVdRgNszLHOGa5RncXXEGCZUXBV03nK\nF5RfCWUIAuR6BtWzWsQGuAc+KZFCbXCWOf9RXrdJWPad3UJjYHsk2SJFg+Nr\npmhU\r\n=EtYF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"dfd1ede4a4727199e63765d305bb36d91509dde8","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.3c117cdcc.0","@material/rtl":"10.0.0-canary.3c117cdcc.0","@material/base":"10.0.0-canary.3c117cdcc.0","@material/theme":"10.0.0-canary.3c117cdcc.0","@material/animation":"10.0.0-canary.3c117cdcc.0","@material/typography":"10.0.0-canary.3c117cdcc.0","@material/feature-targeting":"10.0.0-canary.3c117cdcc.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.3c117cdcc.0_1611772352402_0.323353357957463","host":"s3://npm-registry-packages"}},"10.0.0-canary.b411e7033.0":{"name":"@material/floating-label","version":"10.0.0-canary.b411e7033.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.b411e7033.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1973c43d7f356b297f32cd8cdff847c9252c9c1a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.b411e7033.0.tgz","fileCount":34,"integrity":"sha512-VWDabCGFObYG2pkqER4nEYVYFJFy1U1J+LpKwBRPv/E6AYCqsebgfpBakdVrpKTy/cdzrK5IOp7C0rzFqS6aqw==","signatures":[{"sig":"MEUCIFPkZuCWxyp7LtG27HC/+r8Xz27s0Hsf6ZCiGoNNqwUFAiEA38WhVZexSAU17H4oZLmrUIVGsrzQ0FAndTtulOfqLaE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220948,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgEeNECRA9TVsSAnZWagAAMwEP/2UXcLRk9iwKsbV3VRcc\nzn/yRav9ERrIZnfDlGOHNnrr+JpRxMrbBlcDEAKOSNyFob37qQ2hY2PR5FiZ\nlJvepgwpXEteByM+NwspT0vhX2O+ZNHZPpwjVKnEyAnmUxJqsy2PsDoRiTBk\nvLCq1wIYCGYE5z6B3zS9TvepB1BNvDAz9kF7J/serw6Y4Zwd4DfentPRn0ln\nmr7PjFmloc67mdmDXYJF3cKAcMHoVFU8Nju4p2DAbyIQvBWzhvTdwESQ4d4H\n5Q23k2fyglGPqMdI+vzmfH6n8DcF/0jOp1kYzKI9a8cLiz46PBsbMU7DT3Ke\nQPP9LMl6hFFXfAQ5AXEscEDsDmoyg3brIzBXvEZci1LODr/vRe8qudcvNn5a\n0S/docw2Dm5v9cJLTL0CiYiEC3rBeMuAmyqySCR+zWrYqjbu1RRv2wABvK/W\nCxBh9Wxh9EVVmb0ao5972VJ+UCv36m3s/yFAAOmkjXvxXPgGBdq+XHlkuJHa\n/bbpjLcm1+VRgcb6gGvSiwibBMw9rjCcyffN7qixPh/KDfD6V7JiQi7/xx0O\nVDJMAeI21gDTDBwl1aUJqmZZaEyzuoPpW6+xuo1bUeENjZokx4nTF7RiI/Qy\n0IsN8pZwrfeBv2TR4wtYmGkn/Uih6TBmXpcTBf+9uL8RR9vBfM8FxpCnYjEo\nA5Pl\r\n=AU/0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1d12550a6229cb648f6739f83d7ba5feeaa67dac","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.b411e7033.0","@material/rtl":"10.0.0-canary.b411e7033.0","@material/base":"10.0.0-canary.b411e7033.0","@material/theme":"10.0.0-canary.b411e7033.0","@material/animation":"10.0.0-canary.b411e7033.0","@material/typography":"10.0.0-canary.b411e7033.0","@material/feature-targeting":"10.0.0-canary.b411e7033.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.b411e7033.0_1611785027744_0.9834932916027921","host":"s3://npm-registry-packages"}},"10.0.0-canary.a9ac16b4a.0":{"name":"@material/floating-label","version":"10.0.0-canary.a9ac16b4a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.a9ac16b4a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"68e819b45b2846c4cb4bb1fbfd8d85c19c59177b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.a9ac16b4a.0.tgz","fileCount":34,"integrity":"sha512-Gloeut6aRt7p04bc2exsFkc97XjmaXt3Sv2DU+Oum52dBWrtCze/ivN8uJGMwEMIosoTGCqmFgzOHm5Gbcjeqg==","signatures":[{"sig":"MEUCIATPl2zlAH8T42kiemTxOw2hnM2PI0IzOFqzgRIsI4g7AiEA9bF+Voz3N/VTmQfqGRHEVi1rtWEY8TLTOTHE4/EkN3k=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220948,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgEfFNCRA9TVsSAnZWagAAiTgP/RjWCM6ESe99a3bwnzru\nRgtEtJ5Jo+MOSrxM0Ny7eLXw4x7Qk7jrBNFz90NGbhcbl4fFru930RfqXcLB\nRDklOleiIt8oKnBDWaGUTod7cRoFkcCcJlzpdX+CmsR73WM+JCuPgJU4flkb\nE78COy6RSwcSfW3HrTA8spX2siYN/jKITqjIJFUCbpYAghCcgfq9KYR+SHvz\nTducxcWDc9NUg/vvzN/iFk2VebkNAZbWqp/l++QjR3LzgRO2c6v4Fj/Qji/F\nhPbUjZUOMeImZ3zJYgTJIj/xyPTARvqBOnBoBZGKssHIG0iW/NMsS41oF34U\na/oCP/fJsQ5wfBBCczH87T/gfLbG5KwZNs0mIZ9Yj7DWalazuyJd00qaffBz\nTMxNDpUl+64aeqrfLQwigTxb4BeElOmsWmoYJ7/2tX9De2S2d6WdgBvZ+pAV\nvVG3mBV7xn5TcT0WcaIBzzo9TrfAk5Hlwt2isMZU+HHtInaFRm9f49a+UObj\nepO0cttpY3M1TKqkUmTQeLH5Z914jeh3OFRJpEayIvWg7pFbSuyF6z9sCXUj\n6LUlm69pG8+2mRRt6fYpTSQXki6o/NSTmg1TfO2bmUrayv7xoAow+aPEYg88\n3AYH7dPGk8YN40QB5lEu6onCbJEvosfUKr6KPST39idI9VtGjKgLLtYwDE0l\n9xfG\r\n=fih+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1635bad405a8d329ac4e844d0a2b5f3bac553113","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.0","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.a9ac16b4a.0","@material/rtl":"10.0.0-canary.a9ac16b4a.0","@material/base":"10.0.0-canary.a9ac16b4a.0","@material/theme":"10.0.0-canary.a9ac16b4a.0","@material/animation":"10.0.0-canary.a9ac16b4a.0","@material/typography":"10.0.0-canary.a9ac16b4a.0","@material/feature-targeting":"10.0.0-canary.a9ac16b4a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.a9ac16b4a.0_1611788620810_0.9568046012264826","host":"s3://npm-registry-packages"}},"10.0.0-canary.fec7b42ca.0":{"name":"@material/floating-label","version":"10.0.0-canary.fec7b42ca.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.fec7b42ca.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"adda9990c38c47646df4b2f2ebaa31f9a31b65ce","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.fec7b42ca.0.tgz","fileCount":34,"integrity":"sha512-3OIJVzk/SbO9LVSo+4IUSxUgCSCEN7ssVWO3nsEq3Z36A07smye8x3Zb41WuMjzkjB9vDdru/goteBmwFit2Bg==","signatures":[{"sig":"MEQCIHK6iR58J8eybdOdFAMxRdZgrRJKkvuGL8uC/vuE+TQmAiBrx6OmqYa5hf84Cqlkx8p7vjK9fpJhYpwuSmAzWR6L5w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220948,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgEw0qCRA9TVsSAnZWagAA+hgP/0JKWuOiVxyNKg03KJE6\nweutq1x902KsJpJwoRkaX1njWV7cBtFJtLMyf9gWWwk7Ehe8sUI8m27nHb4s\n133sugQvOI9oi8Eqwi8TEHj3R7EqHvrTLIl3a1aZO23gCG8UfEZoIWdjrPqm\nzxsMqgbjMiLIxlDH5ivHOhsYFMqkk+rOqjY566SnKKshf5TlZQbZ5xMkOlFe\nx6vb2yc/AXcgnnTKl2u7kHD/y21J6z5PkHKNaWT4ZvcleLutl+34HbUbQhdc\n0p1GRpbyMAWfBgBCVg09GI6VxqVSnrbcxjZCz1/7sMAdtBtYjeciEmJMN7Ls\nRQtm6IpPbUF1TUMcmsiUisab8Nh4AEqDrv2jnwvxeOQXKoR285jmcM9fmfGW\nDyPme9k/CLNmkwXOYBIA86QF3nMDs42FUr8GfFepPodVDH8UP9o65pheVSK6\nYIomQMOV3yeJ/5UBmwBOgSfEOeWBXvUAJ2qJSnIwqHZ/Wr2eisEjdSaBBUGT\n4er3z94NRH0vAB74hUYAUbNDbBYE9x7g1tAyML3mpIsfuDBQNVWAflmuC6bO\n30a4LRPW9aEgm4rS6Nmvk0xiUtePknUFofYBzKMOZg74FDUy/Vjbxp6mz7vu\nnE1d8iJIiHuxhJ83nCHmsfqXGo6F45ZQ93nu2MukEMs5ec8UKivx5Skcoi4b\nUrIv\r\n=3CfF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c05b9618cc2b93ff9a68314dc20c83c691206159","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.1","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.fec7b42ca.0","@material/rtl":"10.0.0-canary.fec7b42ca.0","@material/base":"10.0.0-canary.fec7b42ca.0","@material/theme":"10.0.0-canary.fec7b42ca.0","@material/animation":"10.0.0-canary.fec7b42ca.0","@material/typography":"10.0.0-canary.fec7b42ca.0","@material/feature-targeting":"10.0.0-canary.fec7b42ca.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.fec7b42ca.0_1611861290219_0.22314039116388984","host":"s3://npm-registry-packages"}},"10.0.0-canary.8e66dbfee.0":{"name":"@material/floating-label","version":"10.0.0-canary.8e66dbfee.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.8e66dbfee.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"0ded120502d5209a9bad47d84e467c1b52d294ca","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.8e66dbfee.0.tgz","fileCount":34,"integrity":"sha512-E3XpczpfLoAjZ5PHMq/S5IlvMX+zhg04kAZGqVLc/BUY5w+QD8omhyUDjMntyQCbcAIgCaFtwchVWzhPpnLueQ==","signatures":[{"sig":"MEQCIBtwBK6ZS6BKO0jI63s21pADBj1Pe7l4g5CI1c8lV/BlAiAld8DTySyWjnSEyysLUwyi+qoXkwMcaoQd0P0PRZJJoA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220948,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgGIzECRA9TVsSAnZWagAABmsQAIyItcrfcu95LLyhG4JD\n9hzy2EG2t9GUxmT4Le1qeizlKIQ4hMBu9Qluhsrkgl88KrB4n2UEu5jO1bCi\n6mH2Cs8RIWggm9hn1DlyBujI/17MooDrYcYHnV4GR9+UOA0jVciKo8l3gmIk\nQECDK/ugDRybxgTzioeb3PvwEFdU6sRCwF345rcmfTxt/ZDPQ2Z9PZDM4jVV\nxOZ3Hq2UoGhGVFIWmgP93DGAPOkA5xy5LYpVioLn+Os7awGCqFuB/TZ0zRx7\nhlGyiEdfE2/1MU7rWaVcXWyXsrUtZfQ7TELUEhYoYmWOr1q0pWnEZ7mYNt4i\n+yY9uHemJsnGEfZKmn1mtol7BiAGFBuvnApd8yHucv7B5mYVh8SiwMXF4QTu\nRQA/CqeSLcV8SMMdGatz6fxx26V9aChy66snU3rZyj6bei7KDAx/MTKBn7yo\nN2dE1whgKCQH6/r99rdDmHbf7G5CcObo71JJYbelyRLE2tSbGvK0qtOcg7k6\nlAgMreZTsjyNN4awRhIjB845UwRfuj97/OODKvW+Fpwc7L5wI/8MQWeJXrQ5\njM0edZd3JJppnAZRLL9XoH8W2U7E9XfqD2TKidoj8VRMi/6bK+aSv8sOX7oM\nA8dQqUOIFrYLNFAEqEwqBaL4Vjqxu+4V43HRcZnQ8kuJvKx4NzBlYU/t+Ef0\np9ad\r\n=xffv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"63606d4d60d94cbfccb1897812018e02aa13bd18","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.1","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.8e66dbfee.0","@material/rtl":"10.0.0-canary.8e66dbfee.0","@material/base":"10.0.0-canary.8e66dbfee.0","@material/theme":"10.0.0-canary.8e66dbfee.0","@material/animation":"10.0.0-canary.8e66dbfee.0","@material/typography":"10.0.0-canary.8e66dbfee.0","@material/feature-targeting":"10.0.0-canary.8e66dbfee.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.8e66dbfee.0_1612221635836_0.9448351476715005","host":"s3://npm-registry-packages"}},"10.0.0-canary.637d15da6.0":{"name":"@material/floating-label","version":"10.0.0-canary.637d15da6.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.637d15da6.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a4c540702e1b1557c1163b9d1c985d1070dce31f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.637d15da6.0.tgz","fileCount":34,"integrity":"sha512-w45HtdXQVx1mur6BQ7XY5S5B+WgRdy1wFgangWfFMQdYvENtMK/axxSofrJMsHVN04PKBxzr+81SkHwYkExAoQ==","signatures":[{"sig":"MEYCIQDwnKiNe4UF+TOc5v5ZlMtEyxrUx1e28YBf08yH0TMwxAIhAKXJVyYd7Jkl4EIxh5QyrEEa+MF+ouuYQe0O8YqkLed1","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220948,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgGZ62CRA9TVsSAnZWagAAvrUP/2bENu1Ef2SynbAOTxUW\n/xB2biFwMEY6zCw9cB/OK46juhgq93YBtftCMCt3cfGxnhRsxBNxAdHQSJmK\n7NTlfD+NK06JDazcjwfkp0Zalm5fkjlcOft0QL8ckvwL9Qnjot9rEWnWlPCf\nLIWNIcm+jEx/JQo2TMi0HB+E2gdXtofHtzh5D4knklpTO4kvsZxINRZjPHFM\nzuX3OvxXxhVR/qFe90nSqAbfDhsMSAmWYDIx09FrQQnlX3AEJbODtygmmH5A\nehtqrGutxBqmAL6SYI/FiJz1++jZDZIZiqRKjznolBqFMvsP0Ax41rZ9piSm\neSe0IZicXdzrMh0331QqpXHShJsnOORwejIHNWRRlq5jDwcNPuLgygLJVWNN\n+Oyi+g/wWtBANzZwPAYgc+Dnl4xOJv5pS+l5aGIkmr2iYt99/80PUj+IWWfS\nxXmmRwSLJgBMcoI50wC51ifubaQ5OAKozKglPfPntxv+YSEY9fSIVltZQdP1\n2kCCYxE2pn8Yj8IZIY37OYQ4bQ6qM8iJPVhU8v7f0NRvREZ5PFBNrhaZLoZM\nlw1DCTO+lqoplhN2hzsqShCmiVoEZFwdkoPCe7q2wbrxlb2KuhCz7xI5esgQ\nPg4vJ8mVQrriGYDuWC70qODm/9Ku/RyDYKkEY7A62flMs9+Y+Oy2CPFtIiSB\nz2db\r\n=7rUT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"264dfb09f81436a3537d88f2366133e250344864","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.1","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.637d15da6.0","@material/rtl":"10.0.0-canary.637d15da6.0","@material/base":"10.0.0-canary.637d15da6.0","@material/theme":"10.0.0-canary.637d15da6.0","@material/animation":"10.0.0-canary.637d15da6.0","@material/typography":"10.0.0-canary.637d15da6.0","@material/feature-targeting":"10.0.0-canary.637d15da6.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.637d15da6.0_1612291765555_0.26016512255324153","host":"s3://npm-registry-packages"}},"10.0.0-canary.fb793939e.0":{"name":"@material/floating-label","version":"10.0.0-canary.fb793939e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.fb793939e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d8ed21f5f8cfbbf0aba0bfe20662e21117340852","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.fb793939e.0.tgz","fileCount":34,"integrity":"sha512-R66i80j0iAow0Cnt+uz4M4sJHQd0JvYua6BzISiEL6FG3msZpN0YMatQ1iKvlZCzEDVt37+EPK8yZ6zNHUHXGg==","signatures":[{"sig":"MEYCIQDuEEX3i0MEduKC8y7MltFe3HAyrt1YpHfrRmHl7YzQzwIhAORQR60YUEHwNoGK9UXLfC+6QA9wDl85pArwHM9VUQWU","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220948,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgGeOSCRA9TVsSAnZWagAAWNUQAJXLyrFM8iiYOW1zb5h1\n8m3SzOJcgx2AcDRgE8lhE/q0ENChRuiPvZY76QjrRosXAkl7iaUqW6tbiAOP\nbkQ8I7Lxd05KnY5MmkjcHqKNXbjndma2U2cCL7vKeGEVPJecJ4todKePdayK\n7Igr3p/1jpvf0r3OYYNGkR5f4gqalPB/J5sKmkF2X366MnFir2oaX16qVS5x\nWqN6kjPPvG9C8Z5FaMZLLbEJs+0m3h1ovgiJ0oUZ/hXFDPhIgFZxHZQdAfpp\nluuEh5f53vyu29uWUR42Br//SWP2y17bXs2ZS7JokK/e1RfBc0+sssAHs2ln\n6U33RQmVsYvS3z5j/x0IRLDcr35adczSDYgRT0twxE8D419XQddxDku9dvyG\n/NfOSMUHbEK4ThcAW2SpSB3AWMvAbrB951t2ExHrFDf5B6YPESNn5foj1P9e\nGRrwx7vEnceOvpaEqv/l+nu4w3JXS6C+yfoipzJLp+hcTQTEhYhI5l9hsRVB\nogcax8EPKNOKL4UEcxuEzdsNMJsvg9okGgmbDCSHAwJtzIWM1klmvLrTHsXJ\nF4YIXYPq187mndRPompk+jkgJrYMJygBa+THY3RvqLopV+ZkeoPEL1PGCl3O\n+KIamQ+IO7z7PV1JKyKQvrD+yz6PoB8D82j83gKMJRT/XjR3oUtVn9RsZuWW\nSuju\r\n=fCed\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b89489007d2a0c1f3821bd2291e448d44723ac68","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.1","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.fb793939e.0","@material/rtl":"10.0.0-canary.fb793939e.0","@material/base":"10.0.0-canary.fb793939e.0","@material/theme":"10.0.0-canary.fb793939e.0","@material/animation":"10.0.0-canary.fb793939e.0","@material/typography":"10.0.0-canary.fb793939e.0","@material/feature-targeting":"10.0.0-canary.fb793939e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.fb793939e.0_1612309394005_0.3834427261818021","host":"s3://npm-registry-packages"}},"10.0.0-canary.15a4d40dd.0":{"name":"@material/floating-label","version":"10.0.0-canary.15a4d40dd.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.15a4d40dd.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4bdb0fef52bd09b4dd4bc9ec90516c16707b62b6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.15a4d40dd.0.tgz","fileCount":34,"integrity":"sha512-ZxNpE+HwASr6diwHrr/Z2dEu7CVBNdaxxPL9sWjLnXNz3JmZB9dnbRFYupn3TXkS5gPD3ifYkGdFbX8ii2R1SQ==","signatures":[{"sig":"MEYCIQDl6Y8K13WD3eMvfJBDMXGNUakZBhYdL9wb4ZoJ+NS9IgIhANH9By16qA+wamd9EtplemaRBKAQZNUeD4Fib6ysQyYK","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220948,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgGggFCRA9TVsSAnZWagAAa70P/AwFsGYn39x27BF4AYYp\nQuBtncC5XSGfAKrdZQWFlDSMma0zdeUWcSGi4s8HZtmdOmwhinWqqESL1eZ9\nwZgIVzIbrYETRx+8nHev3xCObbKjEIYypKsh2sgM+GBtNfYnzI8M9rTtb3c6\nnZBufY3laVriooNHnYmJq2fzVg6c4MWUJ5Tu3GxmV5zgb3PSQXJ1kjjeVPEy\nvkjC9bF2b8PEoFs8MBQdpRdGM3Am5TjbXYvqMQM1EMcfk7mO4rGWflwBXa2H\nZ9bmTwz/0x8aPHnHSIro5iZ1mOEB6SAyB3wBI3Kl48+fNuVPOOJOrNC2JLKT\nIQw7KDFHietnQtzxQZTxHRFR4w3uypve2jmLMB8xum8HVZxuKGh+iDxgnDS3\nVyY0/AL5TYtLLC731bu4imEoSWRXbOR7E6GRPHbgO6cGq/8OJkDrwsNsjEVv\nm4Fiht4Ttu5qgn/6JKlzFskLxWM5IUWp3MJgopJEKZxa8biLakang4FAnbg6\nr7ANHUPx7nGnU3WSs9t1jl/mizz91yQS6uFSEySw6KVORSYMQRVMo6VlMdDS\nAZa0+TZJTSDd8TZ6uKBAxWO1s6Hh6G5otfPVKCPE35R19U1PD6SHfQNTFxX5\nbEW6RkVbyuLQfYeVyDwZvnL14jxY4iRPvHrZk0kXxB6aSRZYgAcubhLu6Au9\n8PKD\r\n=z6hR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a6b5f072852f1f101d03fb492c57fc97f7f0ca9e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.1","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.15a4d40dd.0","@material/rtl":"10.0.0-canary.15a4d40dd.0","@material/base":"10.0.0-canary.15a4d40dd.0","@material/theme":"10.0.0-canary.15a4d40dd.0","@material/animation":"10.0.0-canary.15a4d40dd.0","@material/typography":"10.0.0-canary.15a4d40dd.0","@material/feature-targeting":"10.0.0-canary.15a4d40dd.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.15a4d40dd.0_1612318725280_0.5995249976256931","host":"s3://npm-registry-packages"}},"10.0.0-canary.7a003acf0.0":{"name":"@material/floating-label","version":"10.0.0-canary.7a003acf0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.7a003acf0.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b4df7894019663dbb42b513ea3a76a8e95cafd76","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.7a003acf0.0.tgz","fileCount":34,"integrity":"sha512-Sjm1M6y9TMAv4Hxzr48EBdWsig/GA8duPw4YHkCc8KilpUN/dtt0kMyPh+cXzzcPSSVq/xsB0iTRK5sQliKUxQ==","signatures":[{"sig":"MEUCIQC7nz6rUfzG6QSZS05aH3XxxK1LDU0TdUJt8rO2C+/qoQIgTGUGQUO6bhoCYwuOoG21sHYLlFD62eqt7OM398eBgio=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220948,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgG10hCRA9TVsSAnZWagAAD9IQAI40GiY2abrKnPC4gIdV\nUwGJSKpCwekZOKizLN5PVZnnaSpU5pfmaYce6GSnSyqSyh6cZUwTSmQJblZW\nnDQmkmYmjTEGjo2yKnxEetgJE9Fhrhm6kBKy2NnemR+XKoSPChz07C/Z355i\nupNop+UqUfU9AbfGdJuPvRgaELuulG3i2G6H+ligmDNSD4GUkYCO2WFnN1Wz\n+GH0PG2bZYmY+zyy8WU8hjd9+TgXbr/N8BqfWXjjtXTsgBZYnfyObtA3bI8a\nAJxlQJdE+0ThVBU7/q07F6kUbLFN6x2+phLE/l6e/0xsN33/0P7tvsKVRrh5\nAXsQF2HEG7Z+Hq9U7YqUNRgIjuue6NZoqa6xMX6yyW0DIwZ1eZ91Bf2qZBKN\nmtPCN8xFDYgbPO1CY4AsGft1r4COkngTZXAXlyCgplJbVhf3/n5AC+y/ElSn\nOSZgpeY1+Vwm6JKK7/4v1Bwpw5UL4NYnjJz+Wts00hkF4x+p2EZ78rotc8bO\n/RBPgE34q5PFDPrPZ8s8Sz0t7NFv6snsbKLAPbxRNtB74/pDOkjaDUrbwurm\nuAO4OluJD1LwhQdsW2xOxusou+0ofD283ITU9GcpTD3MtbnNm6sZWBfwERPP\nHWE2rECiNHRsag3WzaDENqjos7PBdmWXK1vfZV9Rmf6Jf0lSRIVr0GfgQN2Z\nqyzY\r\n=jotO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"50aca8110f6412e14432e118e1f9229dafb02d85","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.1","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.7a003acf0.0","@material/rtl":"10.0.0-canary.7a003acf0.0","@material/base":"10.0.0-canary.7a003acf0.0","@material/theme":"10.0.0-canary.7a003acf0.0","@material/animation":"10.0.0-canary.7a003acf0.0","@material/typography":"10.0.0-canary.7a003acf0.0","@material/feature-targeting":"10.0.0-canary.7a003acf0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.7a003acf0.0_1612406049288_0.8951003158774025","host":"s3://npm-registry-packages"}},"10.0.0-canary.05f249666.0":{"name":"@material/floating-label","version":"10.0.0-canary.05f249666.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.05f249666.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"036676fafea666a647db07c5cdf4c9937f737fcb","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.05f249666.0.tgz","fileCount":34,"integrity":"sha512-PoDPAiJ1ANUlr4H05Jo4F0C2CsBf8NdNid386vlJsSJHe57awRBpzepRiSYGTdlbmFWyJYK4i6JysFcdly7DJA==","signatures":[{"sig":"MEUCICEXtPA59OhW4unbJBg11h7c12gieE8+POlCF/thQZLAAiEAwrVu7K+9prrmcqMe8NmwICmaO6LZOiwiVj4qH1aeezI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220948,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgHDPgCRA9TVsSAnZWagAAzWEP/0MgIw1YdexSu/LRVNwm\nu5yUM7lrGON5+H1YCAcsRTSy8FPhPw+QhHTC/+Eebuy5Xv31dfZ9JHrQmPkE\n1CSq6J8llsQBh3/AhTdBpgjJj3aaTV3vHjKNPMu+UNZPyauSXecURTB1SAey\nVfkENKypO0lkit0VWDMAARGQZDlB5NwQxRBmc5MQMRNIs5g1cFWpp3NkPZzC\nF4DOxpRRUIvMGYpIJOSWwmtHXBW2VIBs+6dNPZYzEmvJdtWkEXKlIAhplaoy\nq94n2rbOw0qR4tw/f9lJg3UWvovPoiuHLoRsTc1/XI2J0fzl/oSnW5Qfb9b6\nnsE1xjoim97Ah7KF+BaKbOWysGABPlzZqdz3lgs/1CPXqsNMDFwFwPXPU1yi\nmp+sMEWkB0egri6gr9YKBtGXmL0v+MAaVfAHVetnemkR0AnwsqZ3ZOrXuOgU\nl++82jVck3s/emf9w5vDQt1/i8xwAG/jyeqrydJY5IsJVeAFT/UBDCNgj5A3\nKNTjDiydLB4BqQQL0xmF5llrLzd+qv9MjVY2Sv9fQ+Y3Sgziwipr4pJlYfN7\naclUsC+lWOzgSqu9M3BYECiczBq3FkWqtcDnFHd6pHnSJPu4lOwU/H20Bi37\n3JPpvYPuDonC1OIOpoaqHOLPRX/W1YJioXZFcEech2pNZUBxJxa8lm1Fm/wB\nywQm\r\n=kFbF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"6f1fffc7e905a3d49f007f288c26a4b5ea11dfd0","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.2","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.05f249666.0","@material/rtl":"10.0.0-canary.05f249666.0","@material/base":"10.0.0-canary.05f249666.0","@material/theme":"10.0.0-canary.05f249666.0","@material/animation":"10.0.0-canary.05f249666.0","@material/typography":"10.0.0-canary.05f249666.0","@material/feature-targeting":"10.0.0-canary.05f249666.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.05f249666.0_1612461023654_0.4923185736772404","host":"s3://npm-registry-packages"}},"10.0.0-canary.1a3a39629.0":{"name":"@material/floating-label","version":"10.0.0-canary.1a3a39629.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.1a3a39629.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1cc3cb959f23f40a80c694d0711e1ee7cdb6fa16","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.1a3a39629.0.tgz","fileCount":34,"integrity":"sha512-ebEPvuy7k9P5x6ILwaFP+5F9lZAQaAIBry0ASaX6FahqLKRk+ulFXZi4ipZLYDMduVEpr5mdfjt9wO6waitNfA==","signatures":[{"sig":"MEUCIQDMI5Ot1XuxR934Mn958eUgPFRh/90SsBoxoWOJtb8ABAIgVMGOrpKddgTqLrkaXznRrR4XQ331jLeY+0fQQ55zffg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220948,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgHEBHCRA9TVsSAnZWagAAjrcP/jtq5vI1WoK529Yovgao\n22039qNMt0N5q0T9wxYrDyZk+W5cxLlUxrm2rXkOF+DyMBcen7gbJXROrzrQ\niZrj7ACRIj2J5OAjShvlrv2mggvjT1cf8wYTIVJSL0PhoYg2KrEsJMLUqsH7\nTngY/TkOKHFagXR3Xa0jO6joWOeM2Y1aYlA2d5yL2zK9ORivz/LEVotvvHW8\nLnNnr63TShSfztDA4WWJgWpomrAzzjOiahR8iqY443HqXW/mBm0IgUxr2nY+\nDo+RVAfkYVPhXeedvenoK6u0enTTDxVcIXF71+Ernii+sPj5BoI5Jfk4A293\nGN6PAX2OAUOzweHjDW2/ML7vqDLHRCUVkzUUKkEwf9C3jnqVK78c01xu+Mjp\nd9L1LYW7Cm96+E3/L61Lu98G0C8nZjKqT/XgFAzlcmHBKJAWWqTEiI1k6wx7\nhBzOyvl4nM0TQABMrKEA1Uuz4h/fmeT7YjwEdfQXNPyZ2BL/BksBB80fbz41\nFsEdqt40kf1sB6OC1rI3A+LTWMvkN2WuyF5N0kE3vftG3s81whZJno1l20s3\nOgfbt2gY2h6qikDn+rhhuruqLuGuXY/k9PyCxnGzYlkvRO/BBZaTCY5zZTB7\nPPwD63K6ibyrivDoIq0/vKeTUmTvI/QSOlXgGChPUvHZTIdJbO3/8Y0Img7p\nNkXf\r\n=mWa8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"87d65275f85db5a2c4e630df10d231afaba36449","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.2","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.1a3a39629.0","@material/rtl":"10.0.0-canary.1a3a39629.0","@material/base":"10.0.0-canary.1a3a39629.0","@material/theme":"10.0.0-canary.1a3a39629.0","@material/animation":"10.0.0-canary.1a3a39629.0","@material/typography":"10.0.0-canary.1a3a39629.0","@material/feature-targeting":"10.0.0-canary.1a3a39629.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.1a3a39629.0_1612464199223_0.02278123777254204","host":"s3://npm-registry-packages"}},"10.0.0-canary.8b1cdb1be.0":{"name":"@material/floating-label","version":"10.0.0-canary.8b1cdb1be.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.8b1cdb1be.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"abe09d676769398b737a8cfdc58bf74f7d5b7820","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.8b1cdb1be.0.tgz","fileCount":34,"integrity":"sha512-m8H4shpu7wRGoqEfuMdbwofguA3d7/YVMg2WXA7HoLjHSYe87kM302/YAKzYs05w/L5lvxWuzrL/9qykq3SGQA==","signatures":[{"sig":"MEQCIH75h98VsZIx8trXdBbTLQDlEfEysFaGlRcNApvRY1GnAiBFNFdFyHE5KGJ6MjsaQR0FmZqXmPwmTstNeEigMLPj6Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220948,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgHHaYCRA9TVsSAnZWagAARNYP/jpijLVL+F+dBAC8Dax6\nRoLB7Iw8ifJwQSXKRSKkJ/bkKBJaLNr3fqEOfCwSqsb3OiVwtpoLXAMc+T1k\nuTotzEP8Kedw0AJ7FQHUF53d/ZOybkM/bSvSq81HYNQOgBG+Mw6v9DdBE8KX\nayPKL+FKqSNmTUB/8ChN5quGscmiZoOdRv/qeH+Ghb/TmiHwXJhFys/py2La\nxr8rOujrXPZDNx3Ke5Ow+VYPL+05uXs8pUqoWRPc78EcGvOmzmjK+O4GEyt4\nqjSZ9bI0iZCdS1P3YZFI97SjEjUZa79mg8s6CSfoHN0ctzo2MlRJDMnoLaAo\nVlzUmHaGtw+oH2JP57LnTHoRiVXzcd4HnWcUqs8MrKCGGW0akyye/4apgWOm\nAU6LSSBTY0uUz+VX2idUbuuBOv0DnZecQsuhTiTobOgXOnmmIHVfYV6iXqn/\nkw59yHz2F57Zyfz6lJMtckLcZgETpuplXAriY+URVvnwy6GfJOkDcZlP8sqe\nNZIFsguZScAX3Soj5Ohf8LmRFInSy9ILgo/6/iHaTAicEymoT7opZzrrX86H\nrxGaidlmqDqSWOVTf1JBVXkbeFbFtqIxtdTZcJhG4rHwtRaE2y9GB9VXfMI4\nPNgP9QmggFqip+wwAl7Aurg16TKAZgp24Ahyewhni09O5F4/SbnC+1RI06J6\nUzPG\r\n=nAsc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"73f8ad23c72c2fe32bd1a9e5e102b6aca8ce21d1","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.2","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.8b1cdb1be.0","@material/rtl":"10.0.0-canary.8b1cdb1be.0","@material/base":"10.0.0-canary.8b1cdb1be.0","@material/theme":"10.0.0-canary.8b1cdb1be.0","@material/animation":"10.0.0-canary.8b1cdb1be.0","@material/typography":"10.0.0-canary.8b1cdb1be.0","@material/feature-targeting":"10.0.0-canary.8b1cdb1be.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.8b1cdb1be.0_1612478104245_0.9397163811514049","host":"s3://npm-registry-packages"}},"10.0.0-canary.8271f00f7.0":{"name":"@material/floating-label","version":"10.0.0-canary.8271f00f7.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.8271f00f7.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c8359379323e00b58ca9f36f8937c01a9a1f9879","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.8271f00f7.0.tgz","fileCount":34,"integrity":"sha512-6wC3/WeVYqr7bM8tvMhKVbe/q0N9Ju5ttwA4WK3VDncabSfIQJNA2Z7nZiBsy2uumT+8C2tXTAduLcGkE5LsGg==","signatures":[{"sig":"MEYCIQCB73B+DxwQrm9xDwdrKCMXkrkFK0NN6kdqI0bcQbqKqQIhAMgwmYNYGaqbx5N80r5mdfmJx2UN0SUVPWTRb13TQPCL","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220948,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgHHyiCRA9TVsSAnZWagAApyUP/RZLXj0P/EwrQ87R3S3y\nGPsIj4G57sOOZ1tYv598/GzFITXOCVPzLBh9ioktiKuwDfBjvlSjv8h1D89D\n6fGeM7rgyiZM9ZQV0IwHEfrkBGZA/fSYRxvUBHeTLzQLTWKLmmWSpM7Zrj1w\nYpQ6M7SPggE5PE7JZIjiThXJmnRKnaSSDp9Jqo7138PBQLIs84/dSNGW8Hex\nE41uQY15VJMzc13PeE7UFkonAcct3P49gfHTwkSvCw+1apdvuD0fsSxQh3l2\nmQETdG4bss+4CI1PCVMV7g2cCnJzkDNTB2OJivYPeOdw3RrLSDr3/T8GLvFc\noCB42QjrlnVdp5dOykB/1icf43UZ7XsAmWe/OVQkuxV/rmVeREHjU2Y2gDNh\na4gz0zpltLlH+ysbwEJA6Plkghy6l1+4xpzoG1KJx3A5wPKpkDOWqMa7VlU5\ngeTNqXD3T+YUvn8V+dIJWc9gzvoimScaSJgQpGYHdbjANqFhAfYez9N5Zt9j\neHxtpyZNroqUtCq0t1QUDaFcDlf6JaGKIbMF6UmwNK9ppjSgPZ5LkCKMEMy3\nEkplU2rycqnXgqfNeViVSvgU+pmv8NSOBRH7Gi8Q+FT43z48cUe3DxodNpZr\njhrc66vCuBiLiCNkOf6QNZ0CUM59etv3/Tul2pCg1YEIyAIat73PXDJ/ooge\nWea1\r\n=qcMs\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e210c5292564fea23c9cedf08acd2b8ecf86e94d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.2","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.8271f00f7.0","@material/rtl":"10.0.0-canary.8271f00f7.0","@material/base":"10.0.0-canary.8271f00f7.0","@material/theme":"10.0.0-canary.8271f00f7.0","@material/animation":"10.0.0-canary.8271f00f7.0","@material/typography":"10.0.0-canary.8271f00f7.0","@material/feature-targeting":"10.0.0-canary.8271f00f7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.8271f00f7.0_1612479649585_0.9581980851381822","host":"s3://npm-registry-packages"}},"10.0.0-canary.533092a90.0":{"name":"@material/floating-label","version":"10.0.0-canary.533092a90.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0-canary.533092a90.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1cc682b54964ba1b24f45dabeb7275eab1326acb","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0-canary.533092a90.0.tgz","fileCount":34,"integrity":"sha512-W4nmZ92GC3ibrRw1KYDQITPO1GD1rRor00zmbMfc8xOplCr5LSTLm3n89tpvSsCjvojYqLKwG7yV2YeN9F2+Bg==","signatures":[{"sig":"MEQCIFjUpXtWRVAvJ7FVIzJwhy6pNrMlAtFCJG6x4D+B+fMsAiAxBD+fGPnzw1bQAlOZ81cVy+Lyu1l2ltIUnIhyd/WNjg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220948,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgHL+vCRA9TVsSAnZWagAArNIQAJwsVAdbqe0R+31br5Et\nCpHJ87AQ8ujlGuzVzAwI7vyfb1w0vWl6dEapqrQwCxPwq96EMkCS+0YeHYO4\n1Hi6U1prqR9fKf7RC//y/ngJyuAeT1w+ebDRo8kSuSXj6Ach/7LCtkPzzA1/\nimYH0B1G28wlbFkGmglw48fN5WiDquygKdoo0jlaHzVaNn3BngeTaFUh7vsh\n2/o2lPM25FNz/lI60DUKZY4Jk3hs0UywPkEI9LKhkICUXLaX7jEsC4FIgZlN\nCgFZGtCO9LKpk5VyfSNCuYdDpP0RLjHWzZMMWXuxdZWdahAvpbk8OfSA0Cma\n+nJVJnC4GuIg68bBKYndVPcmrFDfuIlDR2uA3CXLb1onOYCGMZ07wzMYkfp7\nrmrpBHwR6r62ifadrnwI7bpiIvwHgZNQjD4UMYZ3Hh5nJblmdR1ETBSOxlXg\nxztMqfFEr4onV1hjmRlNR9oByNywjzUq3Pl2MIvRexZDHQH2VxxzfIhC0lpB\nKlne+6a21Ptzo0Vln/JT6rOo1XOw9v5ZRSSwm6XfSn/p48gr5YDdizcQMCV4\n6mELcCGkPg1qb0h91LhYzJPyh8XiAYZcjvC/bze4wSSarizUZmu1xogKxTsQ\nArja4KXbdO+H7bLd9lfVJq5fw65XO1x480KmG0zbrl2SVs6WX2qF5/3g09CQ\nY8QX\r\n=vXUl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1f76aa244e85ddde7348716259e771c739c09f23","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.2","dependencies":{"tslib":"^1.9.3","@material/dom":"10.0.0-canary.533092a90.0","@material/rtl":"10.0.0-canary.533092a90.0","@material/base":"10.0.0-canary.533092a90.0","@material/theme":"10.0.0-canary.533092a90.0","@material/animation":"10.0.0-canary.533092a90.0","@material/typography":"10.0.0-canary.533092a90.0","@material/feature-targeting":"10.0.0-canary.533092a90.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0-canary.533092a90.0_1612496814848_0.6043167858553167","host":"s3://npm-registry-packages"}},"11.0.0-canary.633a9fc7a.0":{"name":"@material/floating-label","version":"11.0.0-canary.633a9fc7a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.633a9fc7a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a26059c2ec1ef3a2a8ce0c4bee655973ec815269","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.633a9fc7a.0.tgz","fileCount":34,"integrity":"sha512-aFlDsz2DAueJ+30pPk/NnMumMGTu7Je3Y95XRmF3FgrklQEeQbGgshemZYjVyEZlo3KuBtairMYACetKjgXG/Q==","signatures":[{"sig":"MEUCIQD1bgvhsSeaji3012SRqvNE6KqIWysdnbAEbHmdDR41kwIgA0Bs2qM5Oxbq/bpi832D/FR2RRzwVOjnSLd21EGoWRQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220948,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgHW+eCRA9TVsSAnZWagAA/e4P/1mhUgpq6icqMeYziOjs\n+z/lXL9mp1Bt+IpvaYITNvCdsxVM0N7lkmCA8TDpSCI6SnYlslm2+me2OOX5\nSvQLm96b1f2ShhGJrUIpm59iQv5Fksh0cnkZXtoNFPigicc51nZG+61AsmH8\n5NlvFxAkmAj9uT3mxoHHWxm+UHEP4ZO4R3YUIQcYfZwGAniQfO5y0rRJmx8h\nJmXBb/MZwdMpLqHdiXaimrSVlSd57Ljjne7QN85t5Age2oGY1LQ4HXetQo05\nychbON+bIL9FU6DeHQupu6atULR5DvNaGrgJm/vEUZEnYvlR4drdeEG08kGh\n9rsqD5Z7E7xxwZeZ7c6TEh2L3RZ7pvSx5Vuqel1MKVuaOPRI7Fc4L/9lzWdk\n1h68bQvi0mR67PTJnbbXbAnXESCI72BfTj9/xqyqNhu5w/6EcwHZbeb7b8cv\nnjmpnHb4hmo1dl5JC0urTtUB8a0HnSnTu9uZZ8c6CM8WTq/zLvh+MNa429Z5\nIrsHZiZeQlvfeYE8TtKxJ0PoLy91W5UcMxRaDHavks+pgUjqVinRRI/nVeQR\nCt+PCF5TZ2l9UHiOHQx/08my3bIf4nOIPr8vezmo/wXBAhD79obhiVEOSD8K\nBGPZH+OUgEC2GOWmjzxfdB3TadEAq8HVUy7QW1fqhCEg1bvx5Aq4MoWUqIx7\nw8dl\r\n=1ptp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"9fe28e8829bc50c384861e340d551c0718dac053","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.2","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.633a9fc7a.0","@material/rtl":"11.0.0-canary.633a9fc7a.0","@material/base":"11.0.0-canary.633a9fc7a.0","@material/theme":"11.0.0-canary.633a9fc7a.0","@material/animation":"11.0.0-canary.633a9fc7a.0","@material/typography":"11.0.0-canary.633a9fc7a.0","@material/feature-targeting":"11.0.0-canary.633a9fc7a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.633a9fc7a.0_1612541854028_0.8701551194699766","host":"s3://npm-registry-packages"}},"10.0.0":{"name":"@material/floating-label","version":"10.0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@10.0.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d918b220ce28db5891bb02aefa4b5cedf9d3847b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-10.0.0.tgz","fileCount":33,"integrity":"sha512-np5ETpkZiv4WkgO9b4PKM9oWnuMaF7smxPx0ef4xvwj1jfj7z40OSV85p+3xVp9fJ6UkiDQBqqB+5xquf/o++w==","signatures":[{"sig":"MEYCIQDnpxj9t/PEY6RjABynjrxyePJvuBfddjohQFHrAr7zAAIhAIR4LsodrvnXGcRQXfiO/we+vQDKQ4FkRWn9uPUbcDmo","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220419,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgHW/zCRA9TVsSAnZWagAAvY4QAIjYzGIY47O4G5fMMTDN\npLOlCLeNSWw5j06j8IKhxtDyquHlr+mik7SQtKgESCjn2206x/b6RjWUAmgG\nbbRl5fUg5p5lYsuYn7UWCAYnvUz9fPP9KoAbFsFRK9IZaD+kkbOaTN/SEgI5\nUdRHqyMpDO7J5PKYZcrMUnpjcEKeQEOf+VpI+l8zlqhRs6YDngKX5F03HViF\ny1JhWuiBozsg7D/rJQdanxuLDiDGAdAGqtedMg5mtlx0TmOBIEZ5H2gxXNHi\nLK4N24bi76LYusN4Nj41vZdmG9u0+MiJ5OicJH+hRw1oxXNLY6R5/AI5p6Dp\nGSe7goH/9kU1FPGwtM1ImN3kzpbAeI+JiHDBuVgUacU8ykxP2mvmjgtK2Lnj\nAQ2YDKMAqZ1uLNeoGmT27So7BarkLqroJC7G1n5Srp8t3WUegdDlqX/KD1f4\n3hmzxZHiHMBNLKGm1p/31czooCil6b0NBNhLtU2Wk01SGs6OLGA74ZtNF4qd\nX9K1i59fffI9JfJOQgV9fx1NhO0NI9p5wzHRje/D5zc4LqZyakyEBqpW/31g\nXa5VvH1Z3B2oHRuJguqj8ruL9TufgPonaP8ooRWTazgS92Ab6HhBWqCxX0Us\nam8mZnty+ZJyogpv09cwl8ibIBbomri+Y4t8zMkjQMCXWcBPe2F24B8MIc8t\npRla\r\n=kSx1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","gitHead":"633a9fc7a98d0d9bdc177bc9ccbd49beb25bd5b6","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.2","dependencies":{"tslib":"^1.9.3","@material/dom":"^10.0.0","@material/rtl":"^10.0.0","@material/base":"^10.0.0","@material/theme":"^10.0.0","@material/animation":"^10.0.0","@material/typography":"^10.0.0","@material/feature-targeting":"^10.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/floating-label_10.0.0_1612541939105_0.5349998793224762","host":"s3://npm-registry-packages"}},"11.0.0-canary.b5227247d.0":{"name":"@material/floating-label","version":"11.0.0-canary.b5227247d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.b5227247d.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"25205e576f880d7bfd84f31882bdce3f701c325c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.b5227247d.0.tgz","fileCount":34,"integrity":"sha512-AFaHJIOXp8ieA89VoOVGRvLn0VV6LA10iAY8poYqOaTesT9UXQT1YiSeUAS5HvrxqVOWUEC5pTnMHvH+D2OkWg==","signatures":[{"sig":"MEYCIQCoZJ4CITXxDVd3eUvl4WoQwy7RFeq1aZQbjMzAz7/HXAIhAKoiWqji6k+hJjVaduJBIlH0kvoNU6s+qKVUMs02pNl8","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220949,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgHYN2CRA9TVsSAnZWagAAASoQAIHs9KuU396GUp+etfF6\nXTXiEKcnxRifPhowRPYHOHNr1s9/T7wySno38bZe1O7kQGqKLra+dFGK6uNs\nSgaDLflsTIgFTugKbdhK/GyV3ou6sts02AfVfQ/D9wKID5M+Fm/fjm0RZ9cd\nFqhtjoatH12A0P3uHlPV1jr43Bq8kSiL6JMhvBceGIkx+uUcgeD9ca5RUwyv\nHew3+izt3IEJH9gC3w1RdGFgmoGyIPbTs+W8FsHrAaaapHVZ3SbT4Rn//HNU\nQg2Z22CY0PwruulbJM3G/cM4oZgqJkJJDLi35Hs6G8+5g79fB75DqIGof4Ed\nbzTrZgCD7XfI/aPTkmByN8NCEMS0KwT6gXbvBOgAWAoN+kHjcLrBgTVTFaay\ns24/KKvKukIPI0fAXT+xAQm77RGR7a8Gj1SdTE1tmvQDAkvNoB84/ChV8HnE\ntSt2kc+ikKVdMpToTW4bh/TfXRSX8w7+MUQgEOayvXBK4mw2yyTAoBgpxreN\nsoefiWNm5OMe49ipWP01DjGQw9MIn011PEZuGKpmdQQ7uHcayMvVFUYHE4GU\njqwvkMC7mqRMkU5XmO5aDDsDABmZuXSH5ZKkexTqfmK+O/p4lSbTEFhGBWKA\nxD0lHes8Cy9AIUrQ3ownUmF7iJRpZg8URjlYqMdYgBG0tw8XhheQuG75Eukp\nBxar\r\n=ywGp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"6f733c52a8cabe9fdd3ba4c35cb19e5526d8b312","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.2","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.b5227247d.0","@material/rtl":"11.0.0-canary.b5227247d.0","@material/base":"11.0.0-canary.b5227247d.0","@material/theme":"11.0.0-canary.b5227247d.0","@material/animation":"11.0.0-canary.b5227247d.0","@material/typography":"11.0.0-canary.b5227247d.0","@material/feature-targeting":"11.0.0-canary.b5227247d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.b5227247d.0_1612546934235_0.9208705824725729","host":"s3://npm-registry-packages"}},"11.0.0-canary.95322b11e.0":{"name":"@material/floating-label","version":"11.0.0-canary.95322b11e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.95322b11e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"dc7bda7b4d7a50da35294ae06f3f847ed2473e73","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.95322b11e.0.tgz","fileCount":34,"integrity":"sha512-oOrEdpZ8YUWQBjtEC+tirYV4Tu40/vGRyFgQ6SLPlygG8IZHhHwaO7mnmL6I51oTT8JYGporoeUX1csSRmGwZw==","signatures":[{"sig":"MEQCIF3J3qngfl0fTHGnRUJu8Vsmf7kVG/MmHpEHXbo0b9HmAiAOjvFbvf7XAUmhv/R7v4Y9DJiNubLy3m9AvtR2/670Nw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220949,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgHdVmCRA9TVsSAnZWagAACtsP/j/iul5vhWNSg+/LTxh7\n1/iAAYQuqn48mkEXjpaa5tfsJu1OZ33D5iyIq5PnwH8P9qW5XlECYx3uGvW2\nl5rFxynsQEC9p+ad9usHmRIIgZQLaHThCAa2NBI8yCGdcmD5YBiRKCBXiq3B\nOnBwPdonLQqmaGENAgH22MrAlhEgqgxyhiwrEpVBvGNv4YQJCO/JVfK0e1Wp\nJGLcAk/+9w+nXpsvwHfLUKCx8x38iFrOw+DZyiJXVrEUSGc/bqPhF1CLPnYo\nG43j1vJ9M/vQde1SLLQRgdAGqCf+uGQyE3QQSN4e+30dH0OQHn8sMWeVjfWM\nSVoJGYpPK6EzE/hSV/0e5n1TQ/9UQpSKEg6fMuDalDoa/PX+HXVvgVqlEqqg\nwsb3BvKYXM9Ygkalu/LWbCwl46iYLqTEbaMctIAfaKsU/cgMQDUAVeELnN5U\nFJ06LHtys7BzFSXrqQwq8XnJFoTTNskFEg3F9lxbQAEumhBygg6hzvB5fzoX\nhJ7i+xQ++8kdGx2QYwKj7zdQQTciWFkQJViNgQzftbJVu6tWdzAvZW/Z73Py\n901VRbW6DRn9J9tbgpCkYX/PIL8msUc9u1eV7iieszpWAKC1R3j9kmEgmckk\nlaIcq/AwIhzQruFgP7zL+jEU7Ggar4zHPsvXdLSfOcpsHdM7pn/lLU+XaZ6E\nGZTa\r\n=S0q7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"96cbc49ea4bd39eb1c275fdae68b6bae32b59ad9","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.2","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.95322b11e.0","@material/rtl":"11.0.0-canary.95322b11e.0","@material/base":"11.0.0-canary.95322b11e.0","@material/theme":"11.0.0-canary.95322b11e.0","@material/animation":"11.0.0-canary.95322b11e.0","@material/typography":"11.0.0-canary.95322b11e.0","@material/feature-targeting":"11.0.0-canary.95322b11e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.95322b11e.0_1612567910313_0.6336169762573343","host":"s3://npm-registry-packages"}},"11.0.0-canary.1f318ff0f.0":{"name":"@material/floating-label","version":"11.0.0-canary.1f318ff0f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.1f318ff0f.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ab501a31d5ffb69984d209ff087c8399ca698436","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.1f318ff0f.0.tgz","fileCount":34,"integrity":"sha512-lBOjQMLuydCvUXKCeIUFzLoxtX4AtLpcJZdonExoGQeKd+7JILJRCOh43mBs/YGQFxkBMd/8P8I5Jfq/d9a4fg==","signatures":[{"sig":"MEYCIQDFnk0dP34ZggSoWsDu8+br45AT9LFkfT0DJD9N6J2zeQIhAK+DEKGr3wD8NzAnY/oqy1OGsPjYMD6WW/LT1xRYx3pH","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220949,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgHd0tCRA9TVsSAnZWagAASdkP/jzUUPaZYavrmYEabN4M\nQrvBrEPT3gQTg1FhblnSvTTYrebkyKTiOLjmIq9S2stoLt4MVjsIuViFMT9Q\nnvOTiJmsFPqJJJIRZ/bt1S1yFWGsmnfcVAcZAszZoeYkQP4WWIo0ef/VtF63\ncgv7GcK0KQVq7jHH0T3VxwZh+e+VuQbnXRBxwjCBrC4qoi+8GwezGuhHMq/L\nv5mL19ufdZOzPlbGFm1uJUE0rJm0FqZg+ipZQhRqBDtgYIRpbT6PjRMcSGGH\nqa+x5mfG6G8kx2TqjzaO2QNgjQHRQ21Mrh/1UHAw67mfBlpfSuZfP9eKeTGR\nYo4w/QSroOkddYYDvUKhWnUzV5sbS5uSQi/Dd8kWFnhCo8p1lEcn3xEhlUlW\nggS8sZ7yJODdYGcFOb2fY7cKafdMhJNGHpIEn/I21yh7MyXyxvec459fv3Vm\nA6NAQw8myyB+zXAr4m/1UnSRdHWBw5zo2r6EyBHFgMuZmLB4Yqrtq9xQSxgN\n8PNnRYNClNTOt5VNWx13hFnSvQr9mAoNFfRR16BMGqmbGQlfjvPkz9wG1cTI\nZ6PbvZNQyRvypifLThCdc/F2XiwP7rmDKpKNR4+n6QHENM3ksccy1sGXxVUs\neceB5lO8SUXrcw+oZK3txBn7xW56UfxOeIUZlYD0miEnn1l44SIy97mywLMB\noy9U\r\n=tYIC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"fbdc53421d5701ba23a43e18a010bebd179dbae0","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.2","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.1f318ff0f.0","@material/rtl":"11.0.0-canary.1f318ff0f.0","@material/base":"11.0.0-canary.1f318ff0f.0","@material/theme":"11.0.0-canary.1f318ff0f.0","@material/animation":"11.0.0-canary.1f318ff0f.0","@material/typography":"11.0.0-canary.1f318ff0f.0","@material/feature-targeting":"11.0.0-canary.1f318ff0f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.1f318ff0f.0_1612569901103_0.4665868553011414","host":"s3://npm-registry-packages"}},"11.0.0-canary.ab12cf7a3.0":{"name":"@material/floating-label","version":"11.0.0-canary.ab12cf7a3.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.ab12cf7a3.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"acf29ae01e42fcc282746970eb2399ce604e5fec","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.ab12cf7a3.0.tgz","fileCount":34,"integrity":"sha512-4WSepvwNc0UujDQREt4mw3dVHOgHk9GSJCRM9LaKl+3GTf2geq6DPplIstFGtJFgKERYm6ve0IOtISkdw3KHxg==","signatures":[{"sig":"MEUCIFqfUw74Tu6P2kN3XikQL4Bx0BwOmQNKKlLylXmJtbP+AiEA9q4kClyhMBiqgrwJJxJY7onSDYGoM603unryx5mlH40=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220949,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgIVLOCRA9TVsSAnZWagAAO3kQAIMjThUH37P3H7f/Cgbb\nektWd7XXbQ5wvsR+lgxOp9OzlKLHa1LkuuPjQzIJXxqXF5R6dsFanZbL3gqB\nBOvxr+qy1kXBJU26+yolTl7ioh2ET5ntWA8641dgKjNdAxeTkfX+/HzHkGVu\no5b8TapKLFbxyV4gotBUyBcARFYnw5xsNuRcA42iV0witICUuojj7GR89SLs\ngIs4f9ke0TXpulJQYu4Yhbe9PGQFs6fDnFMXq46kqgI8k43qDYSZIkfUHemc\njnm9FWkVzDMoSBQe4iUN3opWdLcdHZY4/eCcWAb/CvK3LB2Gu4hyPa8P6/G9\nJem7UIwGPT/eRM9Bj7nVUIPi1pGvxkKz1E/qsGFOs0MpqsDR1Lup0HzliAbo\nP1jWC0tui/4mbt49heutV8bGaRIy/bE5AVoZ8QzHUMgpmgAS/rlQ3+11QF6w\nK7O+9KwiqWY5OVi4eTwA2qbptbRKvQNsIZrLrtc7Uv5vlEzNiSeWJ1HFMF1P\nB1goSkijVxchiyk+wuxQrCqc/utFZrBxSXa0kofhavKP4VbJulgCi/evfK7s\nXLMZ6B2CIIBbQnseAPBNJXU7ix3tyOIt1BNYje83MPqdaofuCoPTfCR7fEAT\nz2u2b6xo2nwikPov5Wvex/Txh1HX4/sn6G9zU2ppK8309r30SaT8ZG9mceE/\n93O7\r\n=rnpq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b1cf52745607ed664e2dca58a230a3b3849aa273","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.2","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.ab12cf7a3.0","@material/rtl":"11.0.0-canary.ab12cf7a3.0","@material/base":"11.0.0-canary.ab12cf7a3.0","@material/theme":"11.0.0-canary.ab12cf7a3.0","@material/animation":"11.0.0-canary.ab12cf7a3.0","@material/typography":"11.0.0-canary.ab12cf7a3.0","@material/feature-targeting":"11.0.0-canary.ab12cf7a3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.ab12cf7a3.0_1612796621710_0.701014720238812","host":"s3://npm-registry-packages"}},"11.0.0-canary.98db2c5ec.0":{"name":"@material/floating-label","version":"11.0.0-canary.98db2c5ec.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.98db2c5ec.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"fc3ada48b1e217eb812600f4fcdbcd5307333c12","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.98db2c5ec.0.tgz","fileCount":34,"integrity":"sha512-U9F9wuIiaihPZn418pnzffPDdBRJSf9lCOMvd7XKJnWnca7M+HiqESIL5BuHFLF7h0rf8QKvqU+YwEa3/azrkQ==","signatures":[{"sig":"MEUCIGQ6stHamI8Yak4aDNcOTaxPEFhQZn1ykNn2X4baELvCAiEA7Msq/JMjx9O/rWuH0kqqACLMuKTnT0HVdgdiqkBhye8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220949,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgIVoACRA9TVsSAnZWagAAowwP+wcjo0X12454tfwAOHlX\neIeA27dXmlqPe2XbbX168wNExvJafGYli4hLxG1Tv3GW4m/y3GdscO+YjMzi\n45417Q1pGKjTtgfdvPSTg5vrKSsvy5+muVPddLnsNn3g78C2M5ClNZ9DxLLr\n6d+DekyIitwxIrFIYuPeG3iqtjN7GoyTAHbJzaySnQjNUxHoW1kqbEvh1Eiw\nIoH/T2WQ0RHrKJmEw8MG1T4UtMW1zMH6VvFZyVDUTpsgOy56zxTRB5JU789X\nchGK5U3g1GPYD/7nMvmxIYFEoiPr6iTHEPA1DAvAXlxhZF32zHQuCiWOWQb2\nOcOX9Pv89LCTpP8oPRHJ9FdGIwhNpm00XXzRyYihDp5Y4UwzOZCDjqmSJx4k\ngWKpVYrm0Dycz8W41AajSgbMVgyCEeFXG3dsrz2BO4S/vkUUa2c5bDsMIi2c\nCHviETjiy7alJk+7leQrJ96SRElAj28j/GptFLMlMIMNoC98QuhfCq3C831V\nQ+PkCusfQnl5kzYQIhSRXtxAxU02QWSqJl6jUY0Zn35dntCm9EFxQMkPL4HD\nIGVVZL67wq13G/khOT5usDEiOLsYOcR1yQbDffqHOBPENuSxrAYz3iXExDa/\nDtuNff792HK96b7mMLlgHYgSooi+DG51aM8FTjZAaofrtOIZLACs3smWPLsp\nkaA5\r\n=Oy0B\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"cc1b9da2cd7b871fe0f5c8370793e0ad9b1a5f1d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.2","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.98db2c5ec.0","@material/rtl":"11.0.0-canary.98db2c5ec.0","@material/base":"11.0.0-canary.98db2c5ec.0","@material/theme":"11.0.0-canary.98db2c5ec.0","@material/animation":"11.0.0-canary.98db2c5ec.0","@material/typography":"11.0.0-canary.98db2c5ec.0","@material/feature-targeting":"11.0.0-canary.98db2c5ec.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.98db2c5ec.0_1612798463859_0.97855381149295","host":"s3://npm-registry-packages"}},"11.0.0-canary.1f86b9f6d.0":{"name":"@material/floating-label","version":"11.0.0-canary.1f86b9f6d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.1f86b9f6d.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7581d39bdd8185a1feb9c1206a2a63acef95a022","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.1f86b9f6d.0.tgz","fileCount":34,"integrity":"sha512-2GNJa7OGCL0NQ2GImD72dgUBAjxZy9vVBmN20sWQIC5U7OqJNNc66YqRg6jRgxKfiwsgxYYh7eQ5IbKbJkmo0w==","signatures":[{"sig":"MEQCIBYh0yGmYiUulS3Ocneoeuyfmewmn3VTXASeJfAO5Nc0AiB92uh3dHmyCKL8QU5BQGrg9m7qwn4QuodtjAfDxAKKUg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220949,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgIXImCRA9TVsSAnZWagAARp4P+gO3CJY7yAUArbB+uHOF\nOTNPgyC5Xp5yGKSdRXIEUmb2ntsX7hypfMq0g0EDm4ThTjzkxFNCq4WLUGX6\nEt0uay1YZAPVMcGZwt98q1hBCmjw4BnGTT56ppvLS0jbWLrbLY/ToMIeQjfk\n2oI+m0Illx3mTLjQyYiff+uoWwGDjAprUTijbHOmi83oGCZiZ2unAyY27O2q\n1gPXAoJ81JvsJZKq1FpNwtAXIxAZAh0OHsI0niIxCLMG35pkz9IRa9OpyU2A\nBXdjdbkYpMsCB1LGlKDWj+1aCPPSWnVNt4mOqGF3jQ32UlDod1+6kudN2E5C\nEhGR8RbyJ3UOoFaJiIk1PqtS/YiV5DklJWDWQsC6B4QmxFIYIj4hmQQFlHt5\n9JSlBFodlFC/kvyD57nSja8/m1mviIIjdLyyzfBXwVHZe7itz0brambWSlXO\not/CcrJL5Z/pmHO/YQ3wRpRIoqJYS5BLtKYlZNJ8GPHvRv45KujvjPTw+ned\nBANEJZkBK6k1cr4v4TLSNrZhJ25QNfdJ8KfGe3Z9c15/33Qq8M3Xr5fYE3c8\nNLQ4VvRTYkjDCRNHKxq7xRtC7UAnJNsLDHLe/R9cTcRN+O3NR88h/AYN/189\n+rt/Q4itog8PFXmlJKHjaqNcrl4y6C7pPU4RtxMo01YXNATyYLEd3n9qOlS1\ntrou\r\n=4xb6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"aff88a7d3786743558ecb0dabd92c225698d2b93","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.2","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.1f86b9f6d.0","@material/rtl":"11.0.0-canary.1f86b9f6d.0","@material/base":"11.0.0-canary.1f86b9f6d.0","@material/theme":"11.0.0-canary.1f86b9f6d.0","@material/animation":"11.0.0-canary.1f86b9f6d.0","@material/typography":"11.0.0-canary.1f86b9f6d.0","@material/feature-targeting":"11.0.0-canary.1f86b9f6d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.1f86b9f6d.0_1612804646126_0.0155630702224141","host":"s3://npm-registry-packages"}},"11.0.0-canary.aac8f5d9a.0":{"name":"@material/floating-label","version":"11.0.0-canary.aac8f5d9a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.aac8f5d9a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"60f8410a7936e13f936dc846d62eaf942ad75e71","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.aac8f5d9a.0.tgz","fileCount":34,"integrity":"sha512-mgiJAMd2mkyoIJ/Q5dgYBXgIMYc/XwvNP9F3iFzX0D7BtTrdXmkfwNBju8dAY9hf4VwR+mOoOXlxEsyVgqUH3A==","signatures":[{"sig":"MEUCIQD5GMCs6x3IeN7l5hwxDCF1ff2721ODjqk/9nFKMB2RVAIgIoP6ARw773CaFgItnUfIRcZYcrmvbsllSa21j4dwVIA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220949,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgIXwwCRA9TVsSAnZWagAAIYcQAKOTtSaj86pKYejqZoRn\nB15g5ABQPygKhISKBF8i8CZ7TE7wPP0wcU6lwMIbtDw+Cr8sQjTQeWR93oT7\nNNhjUZZhs7+HI0Ey/CNGfkZ2jyzniL4598r9pGmozsJxGr14Uw0OncyTxSBN\n8o0hyygZn9mkaIWzloBwE2NdyIfMu2OTH8MBmTNrWzFgee+d/NElkAsM5Dba\n9wAMtbeomLKPBxLedVLskDutGHPE7DSDwjF6oLR2c+bjY5FfM4jOy66qStSA\nxs/lCPF+fhwYpvbBPlpoq1MzwRaGU+Q65mblixo9homlbGml5acfmCc8Bp/p\nJaxPXa8ANoMKSC7Y0FE3BftdgRkEYheErcEgIwluVVujZP6wISXFYZj5hokj\n6YGWzFfXOfBVR3t5Kyud7bN5uagQANNP+fh8A6KM5JEGTa+F93QOuT9WgizQ\n5219EB1Q7aZD51dRzGdB+uuv3tOLOkIKDVQRtO6vxe9MVbre/PVpfpP2XUSE\n83ADydiJ8gG+EuSkgsmJwCC7WOw6jQU25+0OtGo2Cusu2x3vn8UinCG6nNYx\nv5fqC44yUJSRyIzWVadQBUmGnaqSudR7rLgkeW0iEXvJDNxjH1h4+WHDYdSW\ncnGvP7gAyFA4daQ6e/FY2AEmWXTVeNWtI6GyNkfotQ2eRom8EX/jTLrwKQVi\nVYEa\r\n=9gwj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5accfac22392cfbc1035dcad920093851b33cc79","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.2","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.aac8f5d9a.0","@material/rtl":"11.0.0-canary.aac8f5d9a.0","@material/base":"11.0.0-canary.aac8f5d9a.0","@material/theme":"11.0.0-canary.aac8f5d9a.0","@material/animation":"11.0.0-canary.aac8f5d9a.0","@material/typography":"11.0.0-canary.aac8f5d9a.0","@material/feature-targeting":"11.0.0-canary.aac8f5d9a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.aac8f5d9a.0_1612807216087_0.5832068724499755","host":"s3://npm-registry-packages"}},"11.0.0-canary.750e18fc7.0":{"name":"@material/floating-label","version":"11.0.0-canary.750e18fc7.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.750e18fc7.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"bcfb5f4bccc0a3c3a701f62465dac2831ee566c2","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.750e18fc7.0.tgz","fileCount":34,"integrity":"sha512-CgtdikM7fmTJuT+RryKl6O6FspB2JMs8Ur5xC361QQJAPO9FoxrH5fmK2ZpxZyfcoQs+51Up7kX9pWAfrzOerw==","signatures":[{"sig":"MEUCIQCYxOmrxxP0MQslBnAr8c2re1hAmBEOqKghSm4TKxgacwIgEPir4ebtd7Y+DZ3v/XcYYA6s6y4H3dKAzkUKepdzs/c=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221384,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgIbAGCRA9TVsSAnZWagAAGGoP/RYcMRbAVknvTnnhMllg\ntdzPVHUqp5QFKB+zqR13qSiBfjGQ0FarpHofY+FzQ3QmJ6ELjYOilTDNoO98\n7qSvECnwhes9R1fuRp+2wKXpN8U/O7YRjQR2SZCLG4+fnEvm2/MJa1cBZd+n\nnXBr5Hsh+bk9dkpXeHEoFo+JM9XZaqAS30e83PCsU+m+PqLacsTEUAY4CU0e\nXseLY8Q5P80bxq6J/X0nhyFsk8I9A8P8xGVhT9Ix2rhHnC9gdtCFH/GPfxkd\nWd5jEoIU4r/mLQK8vMKapTqrLzvtjHKVjmN1KP9H4/dtoiG9e6MYe0mDJPGi\nuFtaqBRPceyc3q981pk8Ri2V5wTHazjiN57Rp4rJp03ovKYGZgP/+vdL8QZZ\nU1wTB93ulO56nukwYgUK9NzMX/dZpSvFUz8ILFd6VGAckmpzD3NejoGZV6Kj\nTvsQPt/QLyaXu3kmSElLwo8zhqUNkxqwZw1/YVOYF4MYF1kgHnXQun8UUU0b\nwr55OHr1rc66nQMbSnVf2WLP/MOOcamWxoIkI8CS3H/67Pz4axmipuDGU5MC\nrmR/PKvVZ0sbiOe0l5yvvjPlmagi9K8e/LasoKcau3iydYIbDHElbw8ffwKe\np9S9DsQSKJP3XfEyQUUVKF13DsYRzb6CKQgQy2A5HE0I1ZvMMsFdwKMZHReA\nCWXR\r\n=QHkD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1bab3bfc895c50d4159c7b24b69d3ab3a7eb9e72","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.2","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.750e18fc7.0","@material/rtl":"11.0.0-canary.750e18fc7.0","@material/base":"11.0.0-canary.750e18fc7.0","@material/theme":"11.0.0-canary.750e18fc7.0","@material/animation":"11.0.0-canary.750e18fc7.0","@material/typography":"11.0.0-canary.750e18fc7.0","@material/feature-targeting":"11.0.0-canary.750e18fc7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.750e18fc7.0_1612820485968_0.788002230354333","host":"s3://npm-registry-packages"}},"11.0.0-canary.b62b1266d.0":{"name":"@material/floating-label","version":"11.0.0-canary.b62b1266d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.b62b1266d.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"db7f060dad9a10e37a0dd4e90278a31c2dfa4b14","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.b62b1266d.0.tgz","fileCount":34,"integrity":"sha512-zgoIlsQdzZ/sSBnwozGhYLHtDQjxbN9rzepfD5apzM2Q/5rNumeV+iW2BXi86OnO/0imkMFBbpQ5u3Fv7vIH1A==","signatures":[{"sig":"MEQCICFHixPfV5Nl2jISyTErvUGz2dPL1QyGYIU0t8Pb+GTeAiBJhZ0wePlHw85COPbviCWKb/bSmDouLe5wp6CHHjTdBQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221384,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgIwQwCRA9TVsSAnZWagAArZYP/0JeCB11F5DGSn7drfuX\ncNUp1i4BcEnJ4lYii3pYSvm59YRK5PoyKjOw/4gcIRfq4zoh73WyE5NxFuC4\nK2HBsZvvL1yLLXCVh0UE8tW4rKREJ4SIKuudgoVEOas511+woV9O9ZxwhPyY\nqCLwEtwp+tCZt8VMhwHcENbSWnZiLbrqL3qNAzfbyjAVY+yHavhoP0bjgCoM\nTWoH6rl2FSvD3vXs92iQLfigJvXHjV9fU7HIlHof0gz/ZOXZHCveT++NgFu7\nO8rVQ7LkBKW3GfCjJjyYm9tHXt2cVHQp8pTu7lE2nhjKPhRtDnmIC2KnxQj5\nT0rOs8AKEU8wGuADPGkZ5Yfa9BJqlEsMHPbh9T3aWiTR9lZZaI4DImc5Rw91\nwjQW3b1B6JShFKMwULGISXh/I8CIsjmEcvDHQjXfoCjwy+tCp3ru/7fyDAqK\nQz7QrcN39v/BSZhzBJozDbPrMuY5SJzPvew6ljYkLjrhqDYn1VhKRsfkY5zw\nzAHWMblzseIPItwRaNNIatcNYgoo02tExNy6HFmWkAzQiqwasQFYxWCHAq3L\nCZgxTyoXOYvSRM/bLZd29webcF6klLvIYz5FI7WD5i+2W+WT6CoLL+mZTMfe\nddDGEcw3OpDNfFB1uZkT2aWigYMCCnj+YRgwc32yBQmp9Y0ajo+12FkarCKW\n4bem\r\n=5JL2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2369de5a28b7ff8c15bb5f1b2ba96320e8a9126d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.2","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.b62b1266d.0","@material/rtl":"11.0.0-canary.b62b1266d.0","@material/base":"11.0.0-canary.b62b1266d.0","@material/theme":"11.0.0-canary.b62b1266d.0","@material/animation":"11.0.0-canary.b62b1266d.0","@material/typography":"11.0.0-canary.b62b1266d.0","@material/feature-targeting":"11.0.0-canary.b62b1266d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.b62b1266d.0_1612907567769_0.9565744798291413","host":"s3://npm-registry-packages"}},"11.0.0-canary.a6b3101fb.0":{"name":"@material/floating-label","version":"11.0.0-canary.a6b3101fb.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.a6b3101fb.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"89439baba4d023b00c469666f6749f806f28a617","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.a6b3101fb.0.tgz","fileCount":34,"integrity":"sha512-c7a1GD+q5gGW5ejyqpWfFUKBtmvTjmt0mN+ohVsgdscfDuQNPIc3NbBJ312YiauWbVCpxunxz5YvOq9wD8IaBQ==","signatures":[{"sig":"MEQCIDxpWLr3cAtTcEUeDojCuXktJbA2bP5WtX7vdi0YK6sPAiAp77S3NG/jdjc6+XkCdlsglXKtxgI0yDQSl3obxJx0FA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221384,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgJbriCRA9TVsSAnZWagAAVJIP/3g+fMvYjoGKi7Nb6GBt\nIoNAzdPeEDo/mjFv86mLmOfyLxWjT2D5rO7Tvo471LKbxpi+AOrvXzEH1Jv8\nWuehT1eb4ycUPJGKdTSm8wGc6vylPPGRaMuj9esffqaAdCJoVo/IFb3KYQCn\nOXa6Du4YVatpI7DiF4VmIDW+/CFSorJFa0UIjXoCh03Had9YrhAX3rt3VstR\nrc89+BlKmaMNNZoIFWpwDsvjaWWaY0hOxkpw3mIdR/YY5rcdVq71DDGQxcit\n5sl3OMNnR3oEvHVuRyiVvJhfl2A5qgIqFrtZoarXd39jVsWXu787ptaS2RSA\nf3/vgPVY9pppezpwH9oPB4ijRIE/SEJfN0in9vLMBA76iImRu+FtGassa5sG\nyV0z5K/0Mg28NczFPYfCJTOJH4qwjSXGSXuWf0tNyVpeAn5xdc1R0yqeh5LB\nZwv4MBX5/3dH7+X6IZ30DiSlTsoq8xKdxd/Rabpb6jL4+alHuMR8VNLstcXY\nZHXm3WbQYeYHEm5wS1p0QikwOxRNUdUCfRxEPLQyscnvniKIJ+D+OAmMd7F0\nDKYpQ3i5HRJJ6KHiL8VK3oGtj2wpw9qi/woGdwWCVSEfOfOj353jXs4FHmoL\n8hY4fnjYTMqY/gO5Gyp6JT8WMmWoRdneHquiOeu8fVtt8Q1zFHrE4wl4wnQA\nbfny\r\n=rR3E\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"4e94d35f86983ae07d81d1c7893ffdfca50c2afd","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.2","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.a6b3101fb.0","@material/rtl":"11.0.0-canary.a6b3101fb.0","@material/base":"11.0.0-canary.a6b3101fb.0","@material/theme":"11.0.0-canary.a6b3101fb.0","@material/animation":"11.0.0-canary.a6b3101fb.0","@material/typography":"11.0.0-canary.a6b3101fb.0","@material/feature-targeting":"11.0.0-canary.a6b3101fb.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.a6b3101fb.0_1613085410081_0.04669252472209262","host":"s3://npm-registry-packages"}},"11.0.0-canary.ed88df700.0":{"name":"@material/floating-label","version":"11.0.0-canary.ed88df700.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.ed88df700.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"be420d85f35142b1df5b17ac03769413995962b3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.ed88df700.0.tgz","fileCount":34,"integrity":"sha512-5s9zSjdgWBroUzNOeKSwLfjh1tezo5l7GgJEYKsQKbxnvHngJfjr7j+LP+0XTasky8xCj6IQBjzyqEgaHElxhQ==","signatures":[{"sig":"MEUCIEmoWA2D6R+0XTKWH5UBhf0a3zi+niWUlKGiC9X4YC0CAiEAqIFIUyVuXGh73dJ8DE/hpeNGNXrV+xqVZlpwwzhZdUs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221384,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgJcanCRA9TVsSAnZWagAAIKIP/3pRw2tWNGJlx1uWn7kX\ns1XDu/2oxnD1cd25JMnOVZUyF0WIqJAORetrRWHyqolnbgT01UBadxKltrjP\nJ48Hcc+sz+EeoM6/a2HH3cU36C/XEZ32xlyMeTlBvJgdY2TlYLVWJkT3+dxh\nJhKnaygf+iEYp4WRf4CQQjL+0gWvMwb1dd9IDb64W4bf9IMVoc0a0/NlRFo8\nT2ueSpwclHYvPcXqmnwQtfard+jceQcEfoZrrXMLYmDIC5pf/5kb0MDDVccz\nc+ROkShitQy+0SPigVlvEPMgvnHv8UWx6hPP4IzXfDrNyHOOVZTWLSR78u0v\ncZ59CwB58Yglb4u8UUV5XI7rbZJwt40G8wvepeSnSRaUdi/RyGuw/RP2QOLT\nj0P+bMQ7az1+IrmgwZ/hBvlm0iPIwrFgkJZ/5yaj6aNo0vmiGULQ/VWrTzNE\nTxSj/5UQu25UVGPv2k2ACFqZUOEPlUZ/pUw2W2Cg/T3O5tmP7NwRVSwTwIYr\nSSAW3VS4SNupN/6IFz/t2jEmq2c+3s4oKlLMoH2IJpJTjFnoIaRSmtXc6gpj\n7dB27mdE66UAPIO7WgdvU1iKOdn+oExE4L4yn9fuoQRq58V60lpRhq8WO+Xc\nkHQh2r+4YYCgo4KKe+54oPVae6rEmvLNOmLQV1uPKTLsK3/OWS6aP3j93miZ\ndbN3\r\n=8ciP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"9ee8b051c4fdfde9d63ea193e791d71e20094867","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.2","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.ed88df700.0","@material/rtl":"11.0.0-canary.ed88df700.0","@material/base":"11.0.0-canary.ed88df700.0","@material/theme":"11.0.0-canary.ed88df700.0","@material/animation":"11.0.0-canary.ed88df700.0","@material/typography":"11.0.0-canary.ed88df700.0","@material/feature-targeting":"11.0.0-canary.ed88df700.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.ed88df700.0_1613088423550_0.3684459201237624","host":"s3://npm-registry-packages"}},"11.0.0-canary.d30efe6b4.0":{"name":"@material/floating-label","version":"11.0.0-canary.d30efe6b4.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.d30efe6b4.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"afcf7dd79754865d9aeee0c9a9f58da2b141e189","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.d30efe6b4.0.tgz","fileCount":34,"integrity":"sha512-qvvV6cn2SjxoASGxyx8lB1oUFrgO8X7z6vUmJesD+PY/YSicBopMFGjQhimGnX/wUc/y7ybtSdzMVZmngzuPnA==","signatures":[{"sig":"MEUCIQCok3mbGtBZTL+k++8Bokz6atxkjGkyDZiR4B5AwwI00wIgOB1moJNiUw7/Nj/ja3+VZYmmNDgeIbTDz0TKtCRuVhc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221384,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgJer7CRA9TVsSAnZWagAALEUQAID/LocqkaBtdhiV/bhd\nRng8OG+ViOHVIFmHrjFFf6Ir9DZw1ijTAvJ7UBy0n8S+ZqU7dQwzigdE7ArB\nujoSWP61So88jUnjOWqVRZA7icBJjk8YIqygkU3LFz6aQZUkjDhryUx+ZQxb\naa6ac5LWIwAPCJ7X3oprkhKjU2dk0PBfVPDzREPb3bmVtwbYXOgSNijdsw42\nmqJUyz28h/tkZdtTHmKdC5htbee+cHsIxUOOXhenW++kj+WBJWQ2lwpW9tWX\n+IRKzqvxV5il0HVF8gU7rGoN8tIdpR/F9Z0vBusSqLmLTeWZ+WYQOerf928y\nUXRQD5lptffboHzqZ5HJRqXQcOgoVAbFGM+QQg+6Zfzk09CKM6JHQIuRt8he\n9UhkY0GKxZ77Md9+Xo8aFOaafOpiKH8Tti8s+mfuqoV2s9LTMQt0C87xfL/k\nH9nlNekA9KwJYAZ1n/A11C79dNG4r593/akg1S/X3yOArnQcWwuo5UcKh1oM\nvBgQWzAVc8Hdm5cQQ8OJppltXXqzXKn0TT+pUTeRv1lHY5WtJm0fvq4+Z5i4\nx+KoV33lC2iKauxSNLButdP1oA38QXr9gkUEwSA3j3k4uIYUQFUTvnBdzqST\n0wzAVwc9pL1QX/dYUWIF8JvfnQC7cVae9xg95y6gzJKmAUZ5CdDsVbKZbceO\nMIog\r\n=I15T\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"0d2a46d4ab9ca5088511e4e0b5cf2b261e3e644f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.2","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.d30efe6b4.0","@material/rtl":"11.0.0-canary.d30efe6b4.0","@material/base":"11.0.0-canary.d30efe6b4.0","@material/theme":"11.0.0-canary.d30efe6b4.0","@material/animation":"11.0.0-canary.d30efe6b4.0","@material/typography":"11.0.0-canary.d30efe6b4.0","@material/feature-targeting":"11.0.0-canary.d30efe6b4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.d30efe6b4.0_1613097722624_0.22135455865346731","host":"s3://npm-registry-packages"}},"11.0.0-canary.0393bdc4b.0":{"name":"@material/floating-label","version":"11.0.0-canary.0393bdc4b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.0393bdc4b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"32cee2cf7fe3e253e86cda4e20f69b70a4ca82d6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.0393bdc4b.0.tgz","fileCount":34,"integrity":"sha512-XyI6pLmMUrm19UEn+dB7EHpCzyNjM4k3G5Fvkk1vpyWICXmQ+MqP5zdlDbjpJhdmTghduWdV2eXMZhrkWkJjPw==","signatures":[{"sig":"MEYCIQD4bSrNQMhOqlFmD5exFtbKR0jr6X7lBYxVUZ1b5lO6vAIhAIlaC6OdjE2RFvQkBlrky6TqWbSefGH5ZzRaxYNE8812","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221384,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgJgSJCRA9TVsSAnZWagAAtL4P/1V6ciiVOb7WsH0bCB1R\n93oZc+vh99x+glDYSTPDZiYaDgvbCMTEowqBccgpSFLQ2c8NQuYw/djF5vHg\nKG326lqbnR8n9gati0DdRW+5NBh69FoVfFmAVPJayp4X6c9CUaC2bA/udFC7\ngDGGMwZUlulAeNDNFl+i/Y6VAzjUc8yUXw5DmnhRRrHHMtxZerb1dH8JZfBa\nVszRVGjzw6gbeR/n7/Nemg14mUOVvxrS5b7AdLGaJlU6wKrhWePiYr3IBFC5\nbO7T3cWTFwUoYviEJYjPxfM/1x1T3+8ifFI/8agESlpegghsXRZYSfRPtK4A\nTKnHqK0DRVK2W7bIlOSfA3K/e9kIGz59/Z/By/MKKmPus3uBFyiBoo2iARxN\nUjqK+QB7s0hRxZrbjjYaUqf4gEacSllihiIr9wNaF51uz+3qpwOTfm9JhNKV\n0ZPu9wbDEKaK49nwIQdXQc4JAD4XgcIlEE82iWu27qC9xu17dXcA+H6TiUoE\nQ2Yp/4QsOHXoxSbgovzII09jFlikmR67qtvJZharej64GQKzwFmRTrNT2nGk\nzXYS4bBVgvZOkIggNq05lK7SLT2SG7BYVq8ywCKhEl3sZTy6DqD11Ya0KUJD\nulJFLP4e9Zh66tSAmmjxKePGHRP1wMCxujO0xjwSSvnylNWy26Id2a+o0ImL\nNJdH\r\n=/0E5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8f241a2f549ae5b1fefdbb0c93ddadbc1e1705a6","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.2","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.0393bdc4b.0","@material/rtl":"11.0.0-canary.0393bdc4b.0","@material/base":"11.0.0-canary.0393bdc4b.0","@material/theme":"11.0.0-canary.0393bdc4b.0","@material/animation":"11.0.0-canary.0393bdc4b.0","@material/typography":"11.0.0-canary.0393bdc4b.0","@material/feature-targeting":"11.0.0-canary.0393bdc4b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.0393bdc4b.0_1613104265500_0.33958238725851353","host":"s3://npm-registry-packages"}},"11.0.0-canary.7cd26af4d.0":{"name":"@material/floating-label","version":"11.0.0-canary.7cd26af4d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.7cd26af4d.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6b2b06971b9eafb2e51a38a50cef2c4feb875467","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.7cd26af4d.0.tgz","fileCount":34,"integrity":"sha512-5kbaCHlwJfvVjarxS+pDtdi9go4XGIHVdU5if0c7zQMEj5ghF6ms/8yU6oMlKpRPLAeUoVnDMoNFugHvwcvnuQ==","signatures":[{"sig":"MEUCIQDXYNoY5DYf64XXw+D35GLeT8kvB+Nr/QMA2b9HKx1nTQIgI82N5dTxPpKNOATYxT/QZ8/fEbKz4FQPpVw3iM4XjqQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221384,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgJqXjCRA9TVsSAnZWagAAUwQQAKEssz2+Z3IhZZJXqUUD\nFwr65XcKedvRHTZxC6hP9xgRtYsvoac9dLndEWcUXa+wUTf12M20/iMf5Zh1\nFUb8z0hW6+nm/qBpxsXrncCAv15Y9Q0pB3oWfo6tiH1pki0WTQ91ZENgHq/C\nh8VbEf03GtOO464vd0BRHcBL/WIzX36SOpMIJfFR5jhHrY+uAIgCsMKa6tzX\nRzasTRxhqoXAFB+5cdC7YnvMtD8a7SQ92VubCEsHCVlVX4lRHmH9MAMHZfab\nqIfeQwgfR45TfUQB5d6VBpeb2VEGOhKYkNHMR/oVnHhNhd2hJqSvOc2AxQjN\n40cZWFEGy+mDErymSGgzLHcn5suvAdOT6288fNGzBi6j+LDsli4EuV4/gbVE\nKumnZuBYoW4iUiB7Ocvwxr9tcmOxmWVDtfobohET/aI0m3RpQcPLor4gPLHv\nSHm4VsQ6k1F6uPNSYR9LWE3mQkyFa39HqpN/1Xqc10WDXLAzFtHxoUMgpCsk\nuv94W/YWZwIQqV+K4a8JpPzJwTbnKJWsJBLVqzDkufFW5xAPXPXmZC7UEY16\n15es2ekbOJQ5AL3HI4/yx5ypwblpB3P63QkrRRag2lybye229A7lYIQ3Nb5p\nCJzFkJYQ5HbWbaToeRXY2vFGYEPH08Rft3bX1G9XSv+tRDG96FSyoAhPU/De\nrIFB\r\n=3+3b\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"da78e237011a9e38abc623fed26601ad22a7426d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.2","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.7cd26af4d.0","@material/rtl":"11.0.0-canary.7cd26af4d.0","@material/base":"11.0.0-canary.7cd26af4d.0","@material/theme":"11.0.0-canary.7cd26af4d.0","@material/animation":"11.0.0-canary.7cd26af4d.0","@material/typography":"11.0.0-canary.7cd26af4d.0","@material/feature-targeting":"11.0.0-canary.7cd26af4d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.7cd26af4d.0_1613145571328_0.3614032935800173","host":"s3://npm-registry-packages"}},"11.0.0-canary.71fe9a067.0":{"name":"@material/floating-label","version":"11.0.0-canary.71fe9a067.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.71fe9a067.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d1dfff0f9f51e9bcc21c1b60f53d2123c2d8b494","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.71fe9a067.0.tgz","fileCount":34,"integrity":"sha512-3xKr4D6R9CTmmHXeaAnHAcMVg3u6b52rsH7i2lzERp2E6q4k1IE59Lm6iLijyvaS4amK6qKR4X/qd2e83RY+ZA==","signatures":[{"sig":"MEUCIEeoqvVsIH+B0J2CqZv5+CfrUN9xrl/WDo7P6A6y4y4yAiEAzER9aYSSjPU3JNdxZwwz3ASziUc9r2yRt2Y6oZs7B50=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221384,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgJq1HCRA9TVsSAnZWagAAV9EP/34LPI6a9nwMMgIxiqzW\nr9IBfKcSFz9FBlbjUzZtjgTYdTy1uQb1RmZOZeopVbBsmqE3dKGnJzv1bQje\nyv/5nGvKTPG6QQIvMvj/gbfxjYkKdWXQKAE9uhg9HNN8DsHWURETpaqwcCO5\nq3mggQmD5qZXTBKnY5MBfV1e1wR3Mzr/EwSl2Ee0gIHJHCI8b9tsQtE/MZXe\njv6jQrX11h182tchWAaJ7cnTeCQ6fEUghbDAkkQf41v/mrUnOQKGArFf/Mxj\nezCHKEKMU6gE9MVAuL4HJU7IY7X16x4M+6o86YxnshwL5i68DwhWHLakM+fH\nspyv44zVRs+Zuw8EeNmg81OxtXCbEHvQlYkxkNAlF0tQE09jus2DdHVYb1cc\nrkW0ccDGjxKrWH9QmvRuvZ8JeTcNa3Qp4Ktr0htiXgTfh6oY+B4f/XLBXwl8\n44rgO9YIer/o7NQ6LACXkCvSYNH/TSrrX8/UxA4RPAiwzFZaGFFoxsY7poE1\nvAKgSRA13BV77DXY1n/OLvIhGY/D7aa4sGk32ozWzBnmqjRMWfInFIZrj7IV\nU3DNjaEyiDUVUBDatvqJUJ8ZcFKaprFrOPEH467s11VICYrvvXMK9x+dZvPZ\nIgeDtLiMruT3PNcOMD5553zVVQxe1kONGk6E+4sOPytNyfqsxcrme6B8gj5+\nQpxk\r\n=QdvF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c79890da6d0bcf08c3d7c57e31df805b50394019","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.2","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.71fe9a067.0","@material/rtl":"11.0.0-canary.71fe9a067.0","@material/base":"11.0.0-canary.71fe9a067.0","@material/theme":"11.0.0-canary.71fe9a067.0","@material/animation":"11.0.0-canary.71fe9a067.0","@material/typography":"11.0.0-canary.71fe9a067.0","@material/feature-targeting":"11.0.0-canary.71fe9a067.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.71fe9a067.0_1613147463249_0.8656468104730062","host":"s3://npm-registry-packages"}},"11.0.0-canary.0fd56a86b.0":{"name":"@material/floating-label","version":"11.0.0-canary.0fd56a86b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.0fd56a86b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"bc62ce3f78f007591f086859142b0a0aa600fc2f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.0fd56a86b.0.tgz","fileCount":34,"integrity":"sha512-K6W7NxnFKXUK5V43mSvjstFFa9VI8HYWwOvdzU+D8BCatIaDNvGtOG37YbL0vmN5bk2IAFr/tABZU7lZ9KoMxA==","signatures":[{"sig":"MEQCIH8MUugmkj86sUaljJDZw/Purde/w1bdnTXWOWotCncWAiB2i43V4E1jKsWHmbYBsTa/T+yYoqld/F9Nn+/GnG3auA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221384,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgJxlKCRA9TVsSAnZWagAAXtwP/icnijM9ZOYE9NIv16o5\nzkLKvZmhooMwSpnfkiYgpFzESkzCWR0ZzX7zwip18NJEYZIBXhDN38BatW5A\nNehM9KW90ufEcIsaRLhreajHu3nrp5st/pc1K2RAtVxzLCRBEMDMUTxCzIuN\nshyccrqVhSClII+cwU4zFmV5ocgdE9HXnCnvDBkUn6olcMDyW+LinUiB70FT\n25b1k0jTv5E+9bdqATxyVc02CY9bQMgJG6eBKU+9Afs8PGle+rFwh1n6myFm\nSKsC6Iro4iIhrqIh8IcUsNJhnus4HzyNWhcp/k3eNr8RalILzyUhTM13UZ1T\nS99wNiEhYnG3jI3DueFkhRioba/Gdjv1D3fFYJiuNXb2TO7PwVF+iKOQXLM2\nzeKiSHnJHC2BFnvSSn6G3UkxM/y2fhfG51pOx0QutZeR2BrJseWGA90HPWO/\nRjyXIRvcEXm9QfcEJkvwnrX9+cZ82/qJJc4uUn+r/N+QU63AfJ5mTZ9x/Lz8\ncnaAG4BTZ6XJ+VcpeBqx7wpYdX6Awv5TJatD3ysSkv3XHIfNSIbAr+Nkpr16\nLjqIMUDkrgd9FD6aFz03gHcCkRTirYUjUyCNic0ZzXtExYujX+NkKO/HvJN2\ngStqCyOUWPLiydWWjMAfFOTZ0RjQwXoKlM0yztgTGPBUwKSipF/l7n8LXuD1\n53yv\r\n=L3Np\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b5d7e78bfa318c864343a15754f4c5ab98160ff6","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.2","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.0fd56a86b.0","@material/rtl":"11.0.0-canary.0fd56a86b.0","@material/base":"11.0.0-canary.0fd56a86b.0","@material/theme":"11.0.0-canary.0fd56a86b.0","@material/animation":"11.0.0-canary.0fd56a86b.0","@material/typography":"11.0.0-canary.0fd56a86b.0","@material/feature-targeting":"11.0.0-canary.0fd56a86b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.0fd56a86b.0_1613175113832_0.8765894841000874","host":"s3://npm-registry-packages"}},"11.0.0-canary.f19bbc4af.0":{"name":"@material/floating-label","version":"11.0.0-canary.f19bbc4af.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.f19bbc4af.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d27bc251db131b96f29e6c9932514f595c3c5856","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.f19bbc4af.0.tgz","fileCount":34,"integrity":"sha512-y2kmt+S30qRhbk2RPxbhD0g6GGMlH6PYklYrtigMIo2ErCvm2kNru2PIK9TI2BwIciO93qYX5zcv4FGnK5XSsg==","signatures":[{"sig":"MEUCICSMWyL3UWHj3qR3fJSmXTwwMe5n7VSGRCDKhmh0HgiwAiEAu0yCg3zZS1N96+5cEwp8coq6emgkQGeAFcEM4+xuODU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221384,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgLEQ1CRA9TVsSAnZWagAAV2EP+QCbaIvPLsXm9jiRYPOl\nAJREDIhWrd3Te8NYS6f3AxHaUOYQHMNF58pgEErNts+Rb1RG0HpXfIsH2fxO\n/A7h5GmVKAf6h5v51BkQIiZHeJRd/szPNp6lueFTyil9PqdcDVxhAWdCHLub\nn3yh/kTUfVpDOXba+N8BnVANyrLSXOzaOCAuns50I63YnJcMYTziRAa10yUD\nigPV6gYMfLdLWYRvWyTmH+kdIjLu9rKOrueC+sgqbiw+Y85spXYbAJkEvFQm\neTtK7145y/R5bekDdtV/eP8McIF0ZK6HpIZcc2NvGHTjPtk+pw+0srOONZzO\nnhXtLA/PAjHus4vEdFtIdIzcn7MRfktfrqtwUkW+f6LP9WAybFmSPpDeSJeT\n/H+3xcZI4Si+L7ZGa2MQb7DkOHKPrexZT++OzJMHbZlcrt7jYspWfiqKKHh+\nkEXZzBUtq2gpnJVQpf0V1sDp1pfIjXWrQwpHIj53TFMJ2pNiwpAX5XyK0DlS\nY33ewHeuhcp+76pRI83U8N8ZH455/OSZLpwZ/ZRgWuN0WnjDXcGkzqUCWsOk\nMyyCoyZ5NQ8yS4XjZ+LO1o8IXinh7yQ6ymea5XrnvPWhDE9Xphg0qEXa5pQX\nZJ33VUvHAUPm+Jp+M+44HW0gUowDlA+RWpEplZCiMp+pakeqm8pabOAKGT99\njxjD\r\n=tWe+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"842729c260f5a3be9fec8618b41657a90e725af0","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.2","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.f19bbc4af.0","@material/rtl":"11.0.0-canary.f19bbc4af.0","@material/base":"11.0.0-canary.f19bbc4af.0","@material/theme":"11.0.0-canary.f19bbc4af.0","@material/animation":"11.0.0-canary.f19bbc4af.0","@material/typography":"11.0.0-canary.f19bbc4af.0","@material/feature-targeting":"11.0.0-canary.f19bbc4af.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.f19bbc4af.0_1613513781001_0.7325187041300674","host":"s3://npm-registry-packages"}},"11.0.0-canary.f9cac96cc.0":{"name":"@material/floating-label","version":"11.0.0-canary.f9cac96cc.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.f9cac96cc.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"22f024f816478fa82f671d88485934e8347cd8fb","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.f9cac96cc.0.tgz","fileCount":34,"integrity":"sha512-af9QMM9fX4TXlN+e59OHWEJsGD8MY/buZeLKMl+afvmHvkvbCwz4h/rC0reNQLyRihZwbDKEeCwp7OxFEzTLtg==","signatures":[{"sig":"MEQCIA2xieYzQ5w0wXYAnHReTld/Ivo+qovlz8YQ9QgDYq2QAiBlZe9JrkyElHQg0nC8jNuzbN1gSWTLP49CXXvMBfuseQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221384,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgLT/WCRA9TVsSAnZWagAADMAP/RQxOtIbY2ecdNFMEQuE\nSCGTTqTKw7MKOVVWUDuylPErwk9ucC1QQed1e+CCqg9mvJUClE16YweR9W3d\nLoOXbVSLofeRXOK6+dtxGmWpdstfkC7EjpTSKh/4H70Vu7rXrz4vRR+9rC8Y\nZ4YMMbPekkB/psfjPZEqGefLXfd63ihYHQyBiqWsrbruo7dvLjfIsOxI2v4P\nSyVsc6Nx/3Hz9lHC69oKJNO9uyM37sKu/2eNCvEIzHAnU5ziITJKyUc5lqgh\njzoVEsacWvFEs2yNtgbX+WynktOnQ2W8F9xckVHxNcPYRk+EvC8RfWaoJqFC\nLfiEsREpXVdBbPNKwynCAt8ZceLRMxOAd2TQqmc7ROgd8MZc7PoTrA5ymKJg\nDSUhFHtnJFba1tLSM6VPDgnprqIQ19HrNwXOTvNxDbRKzp5XSFCSFt3zW0Rd\nvFfFMzRaxPonts0w+lh8e63pUDFgrWzkKr9vza+guB8mkXMhY1Hgq+pVKZQ9\nt0DvTB5gy4mqV6fP4W5ERvk9YQCpmIf528UavgGENjU1fiW7RkEfyFSkem2A\nyt+LP4yMabwfczFD46EuZ7lZGacTE7njNm/pVBb16WDV4eF6IXyurhp5XdAE\n26tJsIgIR5cDh7wFxNnLpyfupyYYfuLDqlqHjpzjB+CCW7HbryyljiS7fVci\nVILD\r\n=plyx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"993e327235c8cd36a8c15095389eb149ada97cee","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.2","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.f9cac96cc.0","@material/rtl":"11.0.0-canary.f9cac96cc.0","@material/base":"11.0.0-canary.f9cac96cc.0","@material/theme":"11.0.0-canary.f9cac96cc.0","@material/animation":"11.0.0-canary.f9cac96cc.0","@material/typography":"11.0.0-canary.f9cac96cc.0","@material/feature-targeting":"11.0.0-canary.f9cac96cc.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.f9cac96cc.0_1613578197598_0.008638022894336794","host":"s3://npm-registry-packages"}},"11.0.0-canary.79ce0878b.0":{"name":"@material/floating-label","version":"11.0.0-canary.79ce0878b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.79ce0878b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6b179c13f439952fb93cf4e86366b5f139626c1b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.79ce0878b.0.tgz","fileCount":34,"integrity":"sha512-OoJp8J45QHPPkbKT4lkfZi7tcYRsl5RcEP+hO+UMj2IJCqHrLPRH54f1hu7pJbHKm5la9kSriorTqpcqzNsnRg==","signatures":[{"sig":"MEUCIQCqZ6ASdXr/ns79NPNsg6MTztaWfqsnVG9M4yt1ZyD0rQIgVB4Nn2ZERaA9VTiHk3+uFzm6yrW1GFy/WWPXqhSatU8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221384,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgLW2cCRA9TVsSAnZWagAAulsP/2xEeW3bi1Kd0AAYJUtX\nU/oqc9wuZj6FWsgwCREiW6RlfkMmn7mdZnGOVdE4+iyc2Z+y/yBc4hNrpC7D\nKrrGL8q2FcMuN/mf5B0e3P99sL1khGPxe/AJfzSWjUAZpd5fDuLtNvJmU6ml\n/I1jIcz8i80z9h2SYyfTaHoXiIMVWGCT3qGTUz9rXuEvv3pwxCoV+e4cupBv\nMO/72KZfmCLfj3ktT12Ox90DDhJQUrRjtACsCkGFTYoVfL+BEPYcv7zbnULZ\n0BTlIXBaG4WvKXWVv4Ia4SX0l3Giw6U/FJxxbxM4Y/sW+9fvVI3xcw2M7Tj7\nrnCye1PHTj2qN7opGkgAvZ4s7LDUMSAYunhDOs8RlF0dJhufOdGDG8f7gFaH\nSzBwGyEZks3S7FAJ29+cH1NwUabxpa3wl6sk1pedh/uAhJJu2IUw7YmLday9\nE031Bp6cu28dQl2g1T1E3Imv/4fbd+JqMbSEKNoSmZUrBIu/IjGbNSJHRv77\nDCnXV8HCHuBBJbA+dSUVyNhtAMnt9XOckWusqVvgOYYB5RBjX9qZtr1klh6t\nmbDa8huyeu1mH6oNKoSfSvLGXl4J8gMWC3jhnBpj6G3NAk73/afKzSaP1tBk\nsgkLAZUssKGiLHIdRAh7DAZ2AJvjsTvec4IyNfyOWF3snzdlY8sxpC+8RjJA\nZVSy\r\n=SRTM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3941c218ed650b1d1767cd6b17652d4e1b5f7ac9","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.2","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.79ce0878b.0","@material/rtl":"11.0.0-canary.79ce0878b.0","@material/base":"11.0.0-canary.79ce0878b.0","@material/theme":"11.0.0-canary.79ce0878b.0","@material/animation":"11.0.0-canary.79ce0878b.0","@material/typography":"11.0.0-canary.79ce0878b.0","@material/feature-targeting":"11.0.0-canary.79ce0878b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.79ce0878b.0_1613589916174_0.9769846080902251","host":"s3://npm-registry-packages"}},"11.0.0-canary.d6e507b5b.0":{"name":"@material/floating-label","version":"11.0.0-canary.d6e507b5b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.d6e507b5b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"bf6fd16d3116752c609c349937d5ef45cfe9c759","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.d6e507b5b.0.tgz","fileCount":34,"integrity":"sha512-e+nBdiDY3VyupAtg0RpcMCnCAog9WeXkXkrj5kniy+z7pjPmC50gral+yHqK2vCoCalRROmsSvVoMXYCmL9cWQ==","signatures":[{"sig":"MEYCIQCpougreYgseal8Fnuup1OmcKXfCRtKsWGOI+AydeoHgAIhAMtJoro+vfcOWC/0Ko3hAYpDmBryrINXcJmeN9GeV+xA","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221384,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgLXVaCRA9TVsSAnZWagAA3PcP+wd1jYoiPpeZwAWo/AhD\noMKzbXKBjQozyWugw3aho3G1VYXK73Hz/1S6PPM77S9+E/uwTM9XW2IU3YlE\nR8g+b7dvHW7EZAMRLE3k9x9EyQy3lgGP05ohZgCC4tLAnxU3qgbycu8IV6fJ\nFakwVvYYOWmdJImQPI7+lMoXMOJXo+qJ6jVJUUHhHEKfgc0HlPqmVQkAsqU8\nI+IawlKNpbELOwBuRjFhLSf+0wyGInoyg9hkGlsxLYYFGGVK2Yd6Q3Fp86uF\nKp3+wziPkgtZuRh/hym3BiJbK/OGbXjsDZhrxq8jw9sP55dNuSSE4Ik6u5Kk\nbYksnIxeMVegeDYEBJYOwxkkG843GigC473N5r6JQsT5AZ3Sw+w3OPxZW6oA\ntWIasZjA8hkNRxfNwmlT2lpzjeezE2J8w05ow3P/AOPjSLT/DzF9OwV4t22C\nzUgGkE+NYjPeBEpNq09/8Sms+FUCUummxeYGIjiGxIl8FcybKL1xF+U5C7Pl\ngJrRxjy0uizOWCJeVaArfEGJiKtHK3s+eWLh/vlA3JJLWr/3C7c/acx0cAr1\nJ86HvnZSEtv2D5Z4+Wd/w/IC4pRRHd3TEy18kl3D71d9URkOPnui6N2sZE5Y\nFTcn8PLTc4CX6cADI6eth/pOEaRXw28jryvb3piZQOa2sgIbMCW9yXLhUjU6\nuou+\r\n=OaGL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b20b73a4aa16995dcd0b73e46e4dc31f7914a367","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.2","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.d6e507b5b.0","@material/rtl":"11.0.0-canary.d6e507b5b.0","@material/base":"11.0.0-canary.d6e507b5b.0","@material/theme":"11.0.0-canary.d6e507b5b.0","@material/animation":"11.0.0-canary.d6e507b5b.0","@material/typography":"11.0.0-canary.d6e507b5b.0","@material/feature-targeting":"11.0.0-canary.d6e507b5b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.d6e507b5b.0_1613591897621_0.5525613431351271","host":"s3://npm-registry-packages"}},"11.0.0-canary.f2658381b.0":{"name":"@material/floating-label","version":"11.0.0-canary.f2658381b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.f2658381b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"8339d38ddfcb82bbe8ec737faa6af5076d719aaa","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.f2658381b.0.tgz","fileCount":34,"integrity":"sha512-x1RYi6L5pFeGd3jRvPGLGJbzF/wOGEWS+EL5XLF9+AIQ8GDFIZluPcx9tCJ/KkToKsObiUVI22zewHbJia4vZw==","signatures":[{"sig":"MEQCIHRNveGZmQarkCzHu226dgK8uT4awMQD4l0oD+HySJUuAiAbXXHgZFX4/fMER6h0MaTUwEZCU0DcmnR6U0IitDke/w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221384,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgLZxnCRA9TVsSAnZWagAAAq8QAJHsRzHovH1HmnW71SJj\njUunpo2XNfg1VXjDh+uoHht2Eu8OEbsHWAP/ECVAaNmXDtYDyQy//RcKGV+K\nVbeLQvSGhTh1eJOTnxc3Hh9vQLc+QXqvK+pyGAhToOF3ngezKGpH+5FPRY03\nnQ805yJ3T26ZATWkzXDvPdO/JrCh5O2oQcNb8RzGqN9IFJbWr1/+rJ/BRz3A\n3B0KJb7fSXU3LWRpTitrfWvsHaq9kUcXxtJeMkeFCFi2dPeTUDz+ckt72V/g\nsBJMFS9wwxzTj3Pff5fPDU3LLd5UF4r9NwLcMUcgYMOeBSNF/rT22o/RTiFn\ngKTSwLLJsmd9gCb/1VjXglnXrHNC9ME2AuLkVTjf71zlOBmJXt0Ir88Hq8OI\nomPzXPBKY0WRmpnVgmIyu1QvHXBc0wnEG5uM4QJDFDU/umUr7O1GMeDAMNUf\nUf8ksv7wmeagZz7u+Z9rr4f5I1sWsVOdAaqViVDGbVrenmgtc2ujK+IqHgPA\nhiYKo6zw9VxabUGd8DtmNH3PJQ7CTFjgnDKdh1csLXHrqYdZuWA5zTBJXuRn\n+YGL64C71LiC2JB4xc/Z1dj40MoOnyPo6AylvOiI3NbvIgEfxO7Tq00FIiSq\nGIYi9GhQFUCieQS40yrsFZjvnnHWtHDy2w7drZt7s0jrfy+TyLuwRQv5BPao\n5oCv\r\n=e9jS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"bb1b60f60cf9b1a4184aa52e590bcb4003d3c09b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.2","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.f2658381b.0","@material/rtl":"11.0.0-canary.f2658381b.0","@material/base":"11.0.0-canary.f2658381b.0","@material/theme":"11.0.0-canary.f2658381b.0","@material/animation":"11.0.0-canary.f2658381b.0","@material/typography":"11.0.0-canary.f2658381b.0","@material/feature-targeting":"11.0.0-canary.f2658381b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.f2658381b.0_1613601895241_0.3394969497608198","host":"s3://npm-registry-packages"}},"11.0.0-canary.97c4d4035.0":{"name":"@material/floating-label","version":"11.0.0-canary.97c4d4035.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.97c4d4035.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2918fb5da6a41014dab6acb3c7144f14c85e1a9f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.97c4d4035.0.tgz","fileCount":34,"integrity":"sha512-nip1LgNvRiNudLmTzi3+WuQb/JvNUFCP4CO2YdUZUAjTAEKD5Y9v3i34KGI1/y/D2Zr241iSrNrOonMTobSwEg==","signatures":[{"sig":"MEUCIHTinAXTr8y+3+4l3y2Oa0y06vxKBFm+PCTmyrefNMqHAiEAtzxuSqdoTpso3Yd8LRdaMc+UMxrwHLvlAiQKjqoE+Cg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221384,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgLdJiCRA9TVsSAnZWagAA3boP/RBj6jDm/sULSOqnjdQG\nGKi7aCyoiMTFoEI8+Gf6UA8+7NjgOmEwOmQp6ltefTXsXKLkJRfkK1q9uwLe\nf7XfuU6aYKbG36ZCO3gPFXT86HTxbUPpZvQRugTZQ2ePsCozLdipM8Yaog8t\nuMPVCUyRCfUMV03phOmgFOUyXjY+j5xiBERsnxCNh42UEe7OV5asihqF4M91\nMUFwODAguoHp125c8aL4uMCezsw16YkPZJgv6KRrU41SU012ynTvVZ976Aq6\nsCW4OiNJTci2cFopHsoJhxhGpzQB+KafcLTXkYJUwpzBOJroCM2Dsi0sQX9m\nrtb/kynxlGRklPj1RlcUB2jned1kf2vxfqUU+KB9GlAoex9FvotcE3S7kV0X\n7EJ9jv4sTzhdSyluly1DBr1TnMj8J2pnViJEA2svXJNwZsMjB/9CG9JYnAY3\n4rEvjgT/IJQNw5YDG9h9jE+vqmjirkO4sNE647pz53pD8H/E/4o4+3b6ZKuh\ndlvNM3qMVRtnCBtHVxqhQB26scAkGzfJ0py/S3SZlqePdzectoABdlaj4fLK\niRU3+sw07VkT5pUiowiz1uArB6FLO3CYmC7ntfdaZ2fjl17FafhcSEFJO+fA\n6az2Rootfq4gZNY44DPajUi7DdSUyEB+L6rrN1Trc3T9ZVpoHJzrnEV2gqJ8\nvoEx\r\n=fujH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1d9a223ae17277dc00b76dbbc4263232d38e50c9","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.2","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.97c4d4035.0","@material/rtl":"11.0.0-canary.97c4d4035.0","@material/base":"11.0.0-canary.97c4d4035.0","@material/theme":"11.0.0-canary.97c4d4035.0","@material/animation":"11.0.0-canary.97c4d4035.0","@material/typography":"11.0.0-canary.97c4d4035.0","@material/feature-targeting":"11.0.0-canary.97c4d4035.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.97c4d4035.0_1613615714216_0.29331729043784227","host":"s3://npm-registry-packages"}},"11.0.0-canary.f5bb4648c.0":{"name":"@material/floating-label","version":"11.0.0-canary.f5bb4648c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.f5bb4648c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"155c95820ba9ec4f5e2b25bcd6e550b86fc06f18","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.f5bb4648c.0.tgz","fileCount":34,"integrity":"sha512-j+KyEL650+YAFacEp7ElQCSjHHXqr40ix7qLRSvdZmpSUQqS047tkE+wOiH4zDVwvpg1213u+Ok4VLvf8+E7vw==","signatures":[{"sig":"MEYCIQCZ5bMvqUyhutVjGR9aFSndJbvY+QTs8Fs1UC57x2G6AwIhAPoXXOQRU4WXoVeCYWM5w8b4nvstJEl2aXlotWOhR3JL","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221384,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgLpBRCRA9TVsSAnZWagAAhjUP/3oOc0Zj1zmpZjM6EtQ5\nqjmXkb/wVio0ornjDMEar+8BmLyyvcbywZJ+TWr+1QTZA1zfg0dcs1yPhjYG\n9qdOoHfUdeNkq7xSci7VcHo7gbLUJFpTcLg7p3THYr9+tObArut08qaVxfl3\n5leEC/cBkHQGyCkeVJdrEqV9mVrs4jyLhhM6DHWrsQ8hJoWETp2gtI+vwE00\n0APAjn+Ru0omFralodSpRMzbRLGP8jxW01S6K79b91OyyhOug2xiHXVuVZAT\nncheNdgyJPflKoBYBz93rhbhOyw48lq3w4Igh6Fx+7K0gKkv90GgRZNPSZFr\no2ixWFw7kdsfQzh5YRUgBqcMQNXLkqXJWylBFw9aypcwvsx3Kr67u8Mw5rzf\nChSPZiBWowvhrlNzJ1ivs2RQrhJR4VgfRazKz5DxG/wLPu1TJKtiFwFYJvg+\nP434jnKcD6RWhKsRTP/8FKAkkmIHtpdC46qrOTgRS/Tnlb0MlRTt5hSsF3Jd\nN9bHEOZvWrvGN3G3Llh5CbqhQIkslZvodbZhdH0LowOOLdB2XBwKqBM0sPQ7\n1vDzCIFYTIKybMY0J+FDaOssjLmK2Oiy/rj2gJp9o33BMqqzmLCIlgHeHxZm\nd+0xMNkHa5HqRE995TEybtvq9hlLdmGavqIjghpoHASjzIhJgww3/kL8CnIV\nAAxH\r\n=MOVk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3abc3c2f94ce48fd3a6cc689419e03b8f7769ce0","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.3","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.f5bb4648c.0","@material/rtl":"11.0.0-canary.f5bb4648c.0","@material/base":"11.0.0-canary.f5bb4648c.0","@material/theme":"11.0.0-canary.f5bb4648c.0","@material/animation":"11.0.0-canary.f5bb4648c.0","@material/typography":"11.0.0-canary.f5bb4648c.0","@material/feature-targeting":"11.0.0-canary.f5bb4648c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.f5bb4648c.0_1613664337057_0.6347015712311861","host":"s3://npm-registry-packages"}},"11.0.0-canary.302c7a960.0":{"name":"@material/floating-label","version":"11.0.0-canary.302c7a960.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.302c7a960.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1dd52ef4514aa43a547064854669b82e12468691","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.302c7a960.0.tgz","fileCount":34,"integrity":"sha512-0K9WLWVmBQ8JKpHgmOLCQAm5M93FrAMwazL8RnFhWdQ1lWQyed0FmyO7mqs9iwLIb/t89qyLkT9dIEtET9SdiQ==","signatures":[{"sig":"MEUCIHefnnHsP/yyRogD12uVvcSG9MMg9ZI2LgWYj0O06V7hAiEAxayDv/Wb0jAsU+CuZQHD4QvCrnHwz0ywhGdbbLTLq28=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221384,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgLrP+CRA9TVsSAnZWagAARWUQAJWejHo46/cTTpj6JRIM\nHpm4Na7rAW2Iqr+z9dV7UvYOOK309M1wWNZtMGehs4ysaOjuXKr4GW8RLFmT\nakeYpUVQqIVsJg7FSgpPmspZwFiI8/ABlM26Yp+vR9NouQTDp0rH5bi7zfPo\n2Hl1BB0ew3/KledZ9vCwmeJhsQZYXyNWWm0UgWu9ywvTk3vpSXRgrUd1XhZi\nH6lw92jwPyISw+QYfNdM9lh5pFL6QHrvylWjFAIr6IibaVUuIMO7GLQ9BetU\npBjfkRX/oIxiJW1Lw8GzUDWJzcM7QibWCUpAJmNxzVz2qAXVcV2z6VSh6TuQ\n8RomjFvMV70054YLiJhNVwXhtk9fHczNf5FjZWq8+O/zTHZguP2kMloVE03r\ne2kweNRN5Lj4vgHKHhvo88zZNNPrlymBh103uhmHPeRq+5fOmDQzA39ms+jh\nK92RwCJk54B/ObJx/AH2xeC6X9Z2eeN/f8Zx/W/iJsxBAOsWtu5SylBNzzFl\nVmr9/3tHHIZpJAbYjC7k8d/tcwkYT+5RStK1cTGchEqD315TDKy2MoMJo82o\nu+JOTaGT1Q/lwUTk04ImIQeF+J16BDUHmZVWHtUboyjzu4wJ0at6yY3M9ygn\npFsOhGeO/GIF1JZs6eoHjJyytJyy/KWAv91R6QDvjjWD6LwQOd9KG7+2YkGI\nATBZ\r\n=fGkK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b16c4cf1d0826970ff04a72b663f1838cf8c37d0","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.3","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.302c7a960.0","@material/rtl":"11.0.0-canary.302c7a960.0","@material/base":"11.0.0-canary.302c7a960.0","@material/theme":"11.0.0-canary.302c7a960.0","@material/animation":"11.0.0-canary.302c7a960.0","@material/typography":"11.0.0-canary.302c7a960.0","@material/feature-targeting":"11.0.0-canary.302c7a960.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.302c7a960.0_1613673470294_0.16664428923839747","host":"s3://npm-registry-packages"}},"11.0.0-canary.aa0aaf026.0":{"name":"@material/floating-label","version":"11.0.0-canary.aa0aaf026.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.aa0aaf026.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"179aad96239e80398340cee8b6c444a98a1e4540","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.aa0aaf026.0.tgz","fileCount":34,"integrity":"sha512-ULxnNqmf2d1Bf/mRmrwqPQuVlX079Rhwiz/LPruTDiinbh1loPxyNBOt99+4sB5+RDh0RQ5BjiLGavqMvpdgLg==","signatures":[{"sig":"MEYCIQDwg0kS7+WIbSf220aUDR6AE3Vm6+lNI9jF88xawJxDBQIhALgJ0Xrpj4BaD/t7FvX3A49zuNbr4gmtb7YdiOyKCnT1","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221384,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgLr64CRA9TVsSAnZWagAAFoEP/0NMLQ7pRGq3Qt0qNTah\nYpT0q7r8JNZm4Mm0kqM28ctYJimkYDkjKiqokei8kwmMVaaTI+a/gAzS0ISW\n6+Q81uy4bnyZuiGBVhrK33almr3h7npuWhyhJUsKxsZw56iPuGawMg5E6vi8\nyy5BMmYrfwrKsvg13HCoo9krP+DPswZoHr42fmhQDfIl3j5hwHtpDlKs+0LC\n1dLzdUZxctnAPzrlt/PkiIuFD8cnCwLsv1Zk/uhgCxyvWCDOFfx0zH9Ag3wC\nlfYpQxqdGl52cbxaxfaS9AA4vWrnu8S24sz6p24Gc/3K+Kie586MwYXzjCic\nqa9d6i6vLZVwFcIqI4IksaNBiFI+e1IUkrLZ5LhZZQ/HEbP5wcI0fx3NZorJ\nhaSVHrrqj584cGhobkSC5oxMGsOuK1qiwdvS+fBU6jHjFrpEQaxKDL/nJ/ef\nHGaBZLYM4kAzz2rjqKuLgRCMJbLgiVQ93oZxE2w0Z/t7Z6s2CYab0jcbkx2Q\nefvUr/RjtGQEwQUNOGJ8KXUGkc6Zb1ME5FvZ37IEvYzi0PwenbOSxujpA+as\nnxoh+00w5FBZDP6HKAHOZCsf6bnvOZI+vFJjPC4wVJf9Xa8IDhbJ3h+aIdfC\np4j1il/1LmwDpq+YFr9Fc/uYkN0zElTyMOAS3aJ5ogBrDHWfkgwD2ckhH05a\nobph\r\n=Xz4s\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"de542de1d7c4c8f5f51199fe207ef527fc1265fe","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.3","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.aa0aaf026.0","@material/rtl":"11.0.0-canary.aa0aaf026.0","@material/base":"11.0.0-canary.aa0aaf026.0","@material/theme":"11.0.0-canary.aa0aaf026.0","@material/animation":"11.0.0-canary.aa0aaf026.0","@material/typography":"11.0.0-canary.aa0aaf026.0","@material/feature-targeting":"11.0.0-canary.aa0aaf026.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.aa0aaf026.0_1613676215905_0.7749939565370285","host":"s3://npm-registry-packages"}},"11.0.0-canary.07ff0c452.0":{"name":"@material/floating-label","version":"11.0.0-canary.07ff0c452.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.07ff0c452.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a1506c3f68e5a52b65626e9275a6944efdcf0efa","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.07ff0c452.0.tgz","fileCount":34,"integrity":"sha512-564DXAJpsK4XZmk+kqhEgGaIMhqyzAf8zAcfowPDEP8WF9OmVH+SUAVnfURQHUBD/DTKj+gVOKUZdKKm7fIjOA==","signatures":[{"sig":"MEYCIQDI2UucGFH3dGWeP3Wi04WBUWHP/9tbnwiz8KdBTaFewQIhANmk+y/a2mlLC5Opfom75zRjyLgtPWvkZ72EbtGzn4kD","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":224488,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgLsMuCRA9TVsSAnZWagAAiJYP/3hioIYB/f5QZ1pbCgBP\nll7lvY4qOllgCXpnHHngjQlBnBkp93/uPPhX2427UgcO3zYDxHJULySNhx0U\nwiQP2/n45Okfpa+XIGj06+g2UWFTlJi5zcKGh3DiPONUqAj2/isn8js4PTa3\nzK0saGkyQjEFRgMLcvkz2uYog7foA4HqwotlfSH/Ne8QBnOKgOn84v5eW6cb\n6XLES2fAK6rpn58Vs7yqk7bPZUs8ftc+KEYeIMynKQXlSSio+s7+q3Wkymn2\noMe2ouQ+xmtFXh1UoKaAdERKr53VKiD/V3uioOYwFFpU2dyrthzXw1KWvJN4\ncOH5FqFvRHnUEBUGRc+i39PEdcUCFJXyhX9vH+PzRKZ9qf7LAYXpfOSDchFF\nMP2ZejKxLIzXrQ6YlJZtPJnrrvalh3a+X8Ud9yxOakVjZTBnAOEjZY3eJeR4\ncprtYxtnsqH3kKUoRiTzN3+t+mDjlXaMwO3qiudKSn0uhrZB8Ga6lZXlBtOC\nF8o1i5uUyPHZcaX99R8yUJdd0f3c6M263ez13yDjjJLSqchkDr5ajwu17lyM\nqGXSMHvn3FY2IV+ZfHej6OXTQHbaejF4QyJ/Y1jU8iDCDlSWXYJRtcROG77h\nQ3HnT9PGWkicmXP9N0nmqKhbdaPNF1uwFvVmGLAxZ5+f4gqBjBxGIQ3qPm8w\n2546\r\n=VAFO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"52e3f1cc8fd4568a48ba4314f982d5613f53ef5b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.3","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.07ff0c452.0","@material/rtl":"11.0.0-canary.07ff0c452.0","@material/base":"11.0.0-canary.07ff0c452.0","@material/theme":"11.0.0-canary.07ff0c452.0","@material/animation":"11.0.0-canary.07ff0c452.0","@material/typography":"11.0.0-canary.07ff0c452.0","@material/feature-targeting":"11.0.0-canary.07ff0c452.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.07ff0c452.0_1613677357700_0.7649143834946421","host":"s3://npm-registry-packages"}},"11.0.0-canary.bed7ecd3e.0":{"name":"@material/floating-label","version":"11.0.0-canary.bed7ecd3e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.bed7ecd3e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"cc6a502f83c994f468c89931666810d0ea42614e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.bed7ecd3e.0.tgz","fileCount":34,"integrity":"sha512-KbgD5n6vcsni6NixEEDFeoHK2u6U0FNQG2jK/iBy3YkJfidxIBqfSnV5EPwxnZfdKm5tCyWHMhzjtIoKVr7Dmg==","signatures":[{"sig":"MEYCIQC0jVYCcxAdsXU73vNIIeLa/bETzw2lxYF4efaxp0mxnwIhAMcc7ibCJAiZHk5O+ex7uSTKqsaOSxRVpYk8iCWLLQjp","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":224488,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgLvfvCRA9TVsSAnZWagAAPlsQAIT9dFKaV+m+n7RuQGR/\nb1PGXzUkES6YRcmK0xsDseUayJNXZqeWlZlO+KT7l6SoNqb3fHamHKJp91I7\nVHmbEMphKwqFoZTQTpPf9OePEdA5Su1j+1/fhnKjI0AwpgIQQilDSkojFvJV\nbIBCSLN3hjzznIEOR/lXQonAgdincDjqOi6HX8/3eUX6/rar5JEXZ1JJK6y9\nKd7JIC3H3tS7QmyE5G+q2nyiYyUnrPzfYm/IgVWGJe87yWEWoDgNzxXRNqCh\nPjzQ/RPZ4hQ5b5+86/641hUvwGzjjG4weFKc85Z814YVdZhTAuydEy18sl/e\nR8bwLC0ieeapbPE71RhozMWy8RT5FEU9nvGvc3YUGdhuVj3XnXJ7JDwqxXAX\nRP1LEUlPPQ0zcociyvYhJaBtUvSV0/4kX2XX0hU97ivsjdpR3GWr5ppRCj7M\ntYIu/L36wSM6qZeQdxVl66YoDQ0/PAptPwa/dBfl2FGGlHZRYZ/gkb1+Mt47\nGL9LcGgAuTjNFb1LtYUoNjsnEhmlWho4vQ/LIKIWl4jvN28gMIYc5U1mt4uG\nxzR8RJmVxiFWJhc5/5HdRS7zD8/oI/7EPCALhmPVmEa44Jhv5XFOGLKXbl5d\n+L+MaGTcCm2DpoCXTLTWqSE+XxVLG0SAH27VlVxKJ61CjwFy5436fbUqM9fB\n8vPe\r\n=vjkc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c23b9ab547a5ebb36a108742217a017fed1886a5","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.3","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.bed7ecd3e.0","@material/rtl":"11.0.0-canary.bed7ecd3e.0","@material/base":"11.0.0-canary.bed7ecd3e.0","@material/theme":"11.0.0-canary.bed7ecd3e.0","@material/animation":"11.0.0-canary.bed7ecd3e.0","@material/typography":"11.0.0-canary.bed7ecd3e.0","@material/feature-targeting":"11.0.0-canary.bed7ecd3e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.bed7ecd3e.0_1613690862857_0.8685389535319885","host":"s3://npm-registry-packages"}},"11.0.0-canary.06dead2d6.0":{"name":"@material/floating-label","version":"11.0.0-canary.06dead2d6.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.06dead2d6.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6028db8650694a17168a50f9fe50870f9de20ca4","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.06dead2d6.0.tgz","fileCount":34,"integrity":"sha512-V6mA4eA+egsyAa2E/1cJNSIMIegykGZYVsJxe3CgBcIESp/MuM+05iPncQCOp5NP3WC3uuomuDj3BSm8SzAqPQ==","signatures":[{"sig":"MEYCIQCFw6N5zxWH7iLwefk3B9rs+YOoxG/ZMHj0BAaJRcO58AIhAJ5YAvqMEPqAPGvkghJ+PN5gQvDjStrjeThxtXyrNkFR","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":224488,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgLwg0CRA9TVsSAnZWagAANu4P/3Jkw443AlmV3J6WsiBw\nuBo4TK60HM3vKq88zappuEQobctKmMCxLhCpw1TcCoxQXT9/K8qHpiL3Rz4m\nmhm2GlG+A8xAHQ1CxRx9cBaDkVl0Dw+AGqw6JgO4AHyhKZXSQAgNCmIcxaDS\n6j8mtF1WopoVsT45qVqtvWwEJHRaTKN6AYzqkqX3vJbgxh7sCbPhaiZeChL5\nKZ+ymQPVpiPZZ/c4yfMUZZ5n37u+sxyT3q81m1QJKevdcI8pFZxP3ofXFFLH\nHL+CQGgH/jiBRjtzEgactqlQ+fhK5lrCc/ldzfZr3u7EHsh9GtTgDi0wg8Yi\nEn7Hb+foZkRc4HGflPFDZqmgqj8hmwuGh4/ZjXERnuap8K7KQWt+7pnNcpNW\nMcw11NOyzEVIUPb3tfLFcariiARfLmRqFra7eYdSgaRF8beNZ4WoWjUrXSAQ\nBFVqhuEWGZqSPzPAkSp+6hpoK1dsAHiTdvRyelPnED/ICNvEsbWbq9Uq/sKM\nCPsk1zR4lsyLJa9tqk7AVKAB1DFq2bLvhgjfM+5jP22mIE8KANMPKJJuT4DH\nzwxMl1x6q0vez+V/YmOCIN69PtqbFRYrsXIe5UMOAQ/Xr7hS1JoRu8r2V95Q\n7tpHTfM8LSDNdyFagkpWeoyOl5oFa8mW2RyWUt8l9Ud8uFWN26ZHmtOpHvSO\nxHW9\r\n=5xoC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7458ca9f14be94c1a279bd594f262289d278bd39","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.3","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.06dead2d6.0","@material/rtl":"11.0.0-canary.06dead2d6.0","@material/base":"11.0.0-canary.06dead2d6.0","@material/theme":"11.0.0-canary.06dead2d6.0","@material/animation":"11.0.0-canary.06dead2d6.0","@material/typography":"11.0.0-canary.06dead2d6.0","@material/feature-targeting":"11.0.0-canary.06dead2d6.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.06dead2d6.0_1613695027836_0.2029484372141077","host":"s3://npm-registry-packages"}},"11.0.0-canary.cddb03553.0":{"name":"@material/floating-label","version":"11.0.0-canary.cddb03553.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.cddb03553.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"455f5db92fb3645eb98d993b2a44c19ef4118e74","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.cddb03553.0.tgz","fileCount":34,"integrity":"sha512-TA2mNL3O8tOIvowVjjJB/Pw8YnyU4XYv8y2K83JvGYcbuI3hvHW2CmSjeK8uLKp1nl3KOt0tk9h2/0djQ26Nng==","signatures":[{"sig":"MEYCIQCKZwnpcyvkMskibZ6PDFF0xUJMNDGc/LXk5sIkizFp5wIhAMVxiFihlLmaDCp3JFIXbsUxFdMe4qa+vxiVX0ilmDjq","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":224488,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgLyzSCRA9TVsSAnZWagAALXsP/0CBvUK5oaNxTHkHlh+1\nZLG/aBGNk0ETdjXuvRtZRDDiLo+dtTxZKfG+Z7Inh1px3wymdSprDo5/CJsF\nLqMLsmCCAxtH03bnI/wjVUSKWYI4FmEnuGqOwMdRGrv+17F0NxyQkJg/3O/S\nTtAcmhrewJqu1pbpHMr0IxEEMvrvjFAKZ2+ncnpEOrAQtOjryiao+xxIGlVb\n5AmcmPqdKGdTzQBrDTifIMHiH42opu15HrzJBe1GzsoujUeH4UNp2XxTYFq6\njmw4hDpNAj5DOiAlqP1oF9qqIDKMAdF0xVmM/H9aAcm80KWhCY8rhn+nnBrl\ncSA6/flnOIAJeibvrT5bDBkTCBOAE613wD7MfinxKYlZzKczurBbcP5aHEn/\n5DYgLEtE1JRZYND18KH4Wae3KfpkE/5h6gF85N2AD8ws+tfjUUcnGFbGjtCd\nJAGeM214gwfBSwjCkP/AoyrMQQ8zVl9qcg0o/qiSn06cXViXLjGKzl4eiVJp\ncnGdqy8BFNjxOzKxOIP+LjH75QJGTQcoTelXWvwcbfM1fMPkqfl5F56aTNAZ\nRlK8ecU7EpL3A5zphFt4LWYB2mTms/sFA4o8O0/rjUCvAGkBu74QoCOGzfZ6\n1/KxJfW1PL5FmzhMdvDtR7maKt7uHrU636PBLZO7nLac357GizzEEMKBujJk\njLk1\r\n=TdTF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a8deff13e5978e42ae51f60c844f7ca0abf64b45","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.3","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.cddb03553.0","@material/rtl":"11.0.0-canary.cddb03553.0","@material/base":"11.0.0-canary.cddb03553.0","@material/theme":"11.0.0-canary.cddb03553.0","@material/animation":"11.0.0-canary.cddb03553.0","@material/typography":"11.0.0-canary.cddb03553.0","@material/feature-targeting":"11.0.0-canary.cddb03553.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.cddb03553.0_1613704401882_0.4465990571262677","host":"s3://npm-registry-packages"}},"11.0.0-canary.d6d8d0476.0":{"name":"@material/floating-label","version":"11.0.0-canary.d6d8d0476.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.d6d8d0476.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a1b5dda300e1cd88f2d399fb9aa27e0e51ecfa29","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.d6d8d0476.0.tgz","fileCount":34,"integrity":"sha512-+QmJ9VuN+LbyNNWQL+A1EXu0axsJjsH9XwPPqxVfdi1Iinada1f64qjMTN8OS0A7G68QRsToq6tWzzXbQoTVyA==","signatures":[{"sig":"MEYCIQCVOTblNX097OAOj2UTtqad99NL5ax5WrMyaHFx/iDvbQIhANofc9B9EdpOpcAFZGGGygTiUw90djcqv712J0kaeanY","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":224488,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgL05tCRA9TVsSAnZWagAAjw4P+QApZ0KPLdJvMCyYzJzm\nKAdD/3ujoBS/6F8zPrquKzBOwdyig71JCoLavjVcT25iigeqwpL6hQRKZcJZ\nx0WWHNQsnzgPTPToj1mzo3KujnWwXhWTtkezPLSm346lPDz9+CYd9hPzNbdj\nCMEOjLyxzeabmPmaY74qoGHmP20NY4NWZxksOEprXg5D/gIut/sR8SHXPnnI\nTtOn/aAUn5PRbG9wcjV6nsWhK8AZs+M2ThyRB2co4jBKD7/xAUetXJeOderD\nFRvzCFXaAJcEDDCU0cDlQeS32DgHs72K4wNp6UCLvVugRrfewqZ2cEu/TTgI\nwy8HSXNsPGx6XiJexNAUArr2T7QNaVFy1Lg3WDJoCL3O6CXxItkG63BdJBHR\n1Ee0V21WHAzaY+yH88Jb+qsE7po8U0LxwXoawQPzr8o/ZF008c0Xss/hi2Yw\nHCO2jVF1ohlexkodOjms5sy6z7lw97imcPHa/mLG0YUpdkVPgwO5b5jg/Qxm\nZwUPUEXIDmo99d/okWcXU9g8pDpC4YwwttoxF2NklNU43xLaqEvt/Vyjo71v\nw5j+bIr6GWorMwX8ekwwQerZGXqS0ucsjJHV6i+Fj4MH21KMN86ZW/LW7PPU\nFTo5v4JL/vav4v756aQ5SCrgLUWwXtqpsfA8z0pCTFuRCjfIRmf26jq3/Mdh\n66ue\r\n=JUXr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"17aa6317e2c1a8109a8bae34e962d438f170f811","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.3","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.d6d8d0476.0","@material/rtl":"11.0.0-canary.d6d8d0476.0","@material/base":"11.0.0-canary.d6d8d0476.0","@material/theme":"11.0.0-canary.d6d8d0476.0","@material/animation":"11.0.0-canary.d6d8d0476.0","@material/typography":"11.0.0-canary.d6d8d0476.0","@material/feature-targeting":"11.0.0-canary.d6d8d0476.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.d6d8d0476.0_1613713005258_0.3078110613988856","host":"s3://npm-registry-packages"}},"11.0.0-canary.0b4a4b2eb.0":{"name":"@material/floating-label","version":"11.0.0-canary.0b4a4b2eb.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.0b4a4b2eb.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d95024d3abc791f9d9928d3a960a8a17519e7841","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.0b4a4b2eb.0.tgz","fileCount":34,"integrity":"sha512-0C/j3zXEtDBp4cIjXkUcy2RDVbmyzB9Osr1IQvTGuhg52DciZ+O8KocIaeaw0goncB36EJh+lDJPT0Lb9MQnzg==","signatures":[{"sig":"MEYCIQCDFWXrxyLm7JpzP8rsdODm0iRWJYwezB4u12KiJZHV9AIhAPqg2IKpwk8YMUGf9Q1fO3foVHUjkwKyEGET1o0diKTE","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":224488,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgL90uCRA9TVsSAnZWagAAWpwP/0QozDE3uyQiXwV2y/vv\nTk5hg1vRAzD7xpOH1vbaG0z8jzp3JXXErDwVp704CgK+s8g7y1SLs0WsjoLJ\ni0ZaLGnkALQawYCuDA5thQ2RvllOOrRp7M9jwnCh1BWBck8xVFKWvmPue1Gd\n4DfpYBukYLwkYjBC+8Z8/afn2Php0SKaH6mI112NtjPtPnoe+owCOXioltRK\nwY8zbJJvfhLbGfQ3vErPi8h0WAsY6sP+NKXHooM+Pj+eARgOH4cqe36CZ3e9\nnZdgBDswHxZQIjch9bvvNWeNNcHlYc5c4m4oV47z71YzUP+iC4GytbTKEgUz\njwsQsP2Emyt3aAT9OIZTdx0Pi5NZMEOYbcfemiuvC+gvBo+wp1388TMnrE9s\nWn111wshQvjQXw/OAedaDLM14ZLysBfUM5RJ0hRQaY/tFKzV+5OvdS4Bqzc8\nfUfUwyn7mmYKSzTh1JSFAhFbQF05LspUJQfSytj7bxoT5sJggkI4qhlso8cI\nkqdAvzCYIYd+CXGHzvL1HZqS4/VHmJcpnxQSKeo2I9zp5UQLGCaBzFuBgh+d\nOZ9SqrLkaVekOu2RQEA1tFEHANiNdFLqJdFkrzaJKM8hDyHv/7q6Sk4Z5XVU\nBpxVf5nwYPs6B/nMb9RDYU5yB5b4uGZzUUcNQuiD2+ACd/79DGzAFGtHAavl\n28Df\r\n=n1jz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d96f438a60c2d44b9a3f9ec055d1dad78d316e6c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.3","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.0b4a4b2eb.0","@material/rtl":"11.0.0-canary.0b4a4b2eb.0","@material/base":"11.0.0-canary.0b4a4b2eb.0","@material/theme":"11.0.0-canary.0b4a4b2eb.0","@material/animation":"11.0.0-canary.0b4a4b2eb.0","@material/typography":"11.0.0-canary.0b4a4b2eb.0","@material/feature-targeting":"11.0.0-canary.0b4a4b2eb.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.0b4a4b2eb.0_1613749549446_0.7885588653175939","host":"s3://npm-registry-packages"}},"11.0.0-canary.3201cae47.0":{"name":"@material/floating-label","version":"11.0.0-canary.3201cae47.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.3201cae47.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f9bd5afcf4a6f8fde794ac84fbfa9bc607a03de9","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.3201cae47.0.tgz","fileCount":34,"integrity":"sha512-dbWVqcvRQpj38ol3pq7QVGXaz5VOE9z/FFVVQgKmFWVtBAxP5kmg8NVKlSdbY6Mvo79GkCukir0egckljADVhQ==","signatures":[{"sig":"MEYCIQCnrugYg0+4ThJlfdBmDUYVpSyM/Q2AMFajT6DvSuB1DQIhAJ0Z4nquRLlB5Ly5eosh7Qkt/wToB1KipO7fDjkAgJy/","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":224488,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgMEMhCRA9TVsSAnZWagAAPr0P/2sYX7dUn0XY74cPR09v\nO4aWCeuvQ+GPplzvpc8pE2sXkdUgE0FOemFUZMJuy2JgHGgm8QU+e3Bhg+fK\nhJ0iDr4Jc4RU8v+ya6vm90TCdRmwIlfQFll8Y0ujton8oGRyS4rZZLpqGRqP\nlpKk0JuxcuNVYyPDVIkLM770lKT2b5j2bOXnXpbzEmNb29cMYKpPtI/uhU9k\nE0cOMsBYGAYu/Pyui/Iu+/2qPOmEP1SzNPXd6WvAaIrGVVZWFckewWInYMhe\nsRtJAlHEB9uaTZdCoZEDPIvtqWcOO/82VZF01eQk8JXtpVdeNAZVxW2WmCDh\nCDaZv4f9Ibq/7btc7LXtT6WNKfnhOoiCbINaz9ILJosLWqdznmyN+x8ms1kO\nSUTwJehgAWBN87khNLNj9K19Kj9QCdWv/f88rfKgAzU4nrxta3Qd2xSMhVG1\nL4hohJF3jWMsIhGlDV7WqUqJQFqh+CoOVyXL59CKcC0+7CZiYMy6QnQDGr+h\nn6r2T3Vu2CWOZm4bEcq+UVd6fbUJKWNYB9VNSyVMvakdA6WXPXwPOmIo5zxF\nGx8Vd3HwyEk141no8FNovP0x9avlRfIScrHeJIeiCmi+z+vCln4tVgTWgc/e\nmui84E4QwXR/yFGdXVJvDIqz1/1LA7X1cxu4EUsU5sRKn+p0LCplkE0fPipJ\n2z40\r\n=LiGO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"274d3ca7227bee74ffff3d46ddf3ae266226bca7","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.3","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.3201cae47.0","@material/rtl":"11.0.0-canary.3201cae47.0","@material/base":"11.0.0-canary.3201cae47.0","@material/theme":"11.0.0-canary.3201cae47.0","@material/animation":"11.0.0-canary.3201cae47.0","@material/typography":"11.0.0-canary.3201cae47.0","@material/feature-targeting":"11.0.0-canary.3201cae47.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.3201cae47.0_1613775648749_0.8405753825034039","host":"s3://npm-registry-packages"}},"11.0.0-canary.f1b1fd5d3.0":{"name":"@material/floating-label","version":"11.0.0-canary.f1b1fd5d3.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.f1b1fd5d3.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e573fa7c70bcb3e6f2857953985b8bfd5164c2fc","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.f1b1fd5d3.0.tgz","fileCount":34,"integrity":"sha512-y32mX5OGLZGb3UYuysx9wg5zcLp6AP18In7cmA3mXs2aZ0fQK46Ks0RjSodnuMhDqWEKTwbnYmoicmmg+LYDsQ==","signatures":[{"sig":"MEUCICS72yfDJfIy85nPFwbl6aS2co5xxeD1GonwiU5Jzms/AiEAxPDd9GJ1Rnzk+3/ZdrJ+khuKfdFKPGekufNxoDMeoOQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":224488,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgNArRCRA9TVsSAnZWagAAJFUQAJRnBct6J1erOh5YxgxM\nOwkmVH5m/vqhHAlYf0SVl7Uic+qlJ9/CD1Mv1K9jtUaXfAjFasJjcRWVrX+l\noLtmfG8sCqe/u3b3kSoa+Kd33wQCdvk6WcNPPQ2wACwtQP805bEPH1b/3fga\nXaBHANi17tTrozv3QP6kU5jTSUHmcfFIIMDkLpCdUJkWDO8uvptdjhiDomG0\ni8ONr0Abu7L10PWV0fkM+F43N8sWVkSQE6A4aY7M/bPTIoN2elIqTusrjr5B\nJDISlNNEP/AqiFjpWxJ1Yfw1OkmNsTx4rKYwitg3ugTrUvZzb9nQe7kYsaLx\nRQkVxTgDlD3KK9PsG4QEc4UyrNg6Apw9d194EtWfYXPgP4cGnkygVzHQNu7v\n4tiQ/qTywfc3zJ9aIrzuYH58TAhM9PzI22I86H7XmrWca7w1T1YksZy6f3eA\nyXoyrJWsHyh++h0WpLT56doTdgffWqdC8Ib/wfjwKBFlBiS88bWCXSSrLRiW\nDTsvKNIAEc/cFSppF/f86rGKJBp1iUee22zT/Lwa/19fZpAcIM9UV0HVLd4H\nOawbTLbhYNFHsVv/GMYzCwpDRTzfocioAHoO58ICZjFBDywH1EmvLTTAerlG\n2UutErwrePwZ4IAILdP6Yh4mRp1Nz3QNY0P+UL6QFnYZPsOys1n6r0tQIlWZ\nCGJx\r\n=Azz3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b73a5cc3b15b450664de92ee70312cc1e8b17304","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.3","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.f1b1fd5d3.0","@material/rtl":"11.0.0-canary.f1b1fd5d3.0","@material/base":"11.0.0-canary.f1b1fd5d3.0","@material/theme":"11.0.0-canary.f1b1fd5d3.0","@material/animation":"11.0.0-canary.f1b1fd5d3.0","@material/typography":"11.0.0-canary.f1b1fd5d3.0","@material/feature-targeting":"11.0.0-canary.f1b1fd5d3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.f1b1fd5d3.0_1614023377132_0.56788292522271","host":"s3://npm-registry-packages"}},"11.0.0-canary.7899e0fe0.0":{"name":"@material/floating-label","version":"11.0.0-canary.7899e0fe0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.7899e0fe0.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"090512a1e73dd1bcd238c3859f21900188e23c35","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.7899e0fe0.0.tgz","fileCount":34,"integrity":"sha512-k9RzSnqeShrU/qVmfWkMw+Zeuha0SFW4kx86YYUbBnYd6/rKF5rF8AanW2fRUYfdvbIV3zuBuQ7M9zFrrUhDqw==","signatures":[{"sig":"MEYCIQCXL/Qw8UDZIIXLSV6+1uzRHAKixARll8Ph/Y3f1WOzngIhAP8ZJ1WiNjXN+kmcG3CB+d55vBKg447T12XzDg6p2gLR","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":224488,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgNDQrCRA9TVsSAnZWagAAmtIP/3gX7Xx2IS3Jzyg85ElU\n5xoxQDMUPIC3ajymq2Nzt7YHv9mgpjKwjtX8CLMDxrdA46pJSjWM+l//v9op\nKSapwyMq5UKbqQ2qQUs8znsxoiENXfYrljvNK+xwghqEZBtELz9FU+q4/wFV\n2Kc6ia/lk8jiCyzqF59Wh+zrbcmTnIilHFYyfxBMcO9cH1A4GJtcAfmy8qmG\nFdLlwMWBb03pYtYgyU4V/pLys6XOM5XPKKZsc/C0NFZpXp72msqXcCIx2Zvm\nqUWIsOTSGRkk1l9UtWip2wv5aqG0G7lxg0aiHwRYG+NHOWhQmPjnvqOSYlZm\nCckoyIpGY2NjetRT7zYzBlTVyD1sdgrAWbuKiHnFuwFd3x2Ne7pMHVdF0wkN\npnhxIlDyWE9T+KRqtsq+7na/a7+EG9wep9xIhhCm6YAcOHDGlIkQgd15ZQBm\nkag8Pj33QI2sTITy69cGKLvDA5EFZ9Z6bLnkkcf4qysJh/gaQYUUMYHykmUY\nySwm+wXFGQbJ2neRETu57KN8pCaxtqA6/hFOZfR46+MIsgaNCk7gR56ZlkRa\nhx9bmcAqSBfIiCNPL2WKBKawXAl3HMN5a/s7LQIa19tpO4XgDO+PR+ZGrI2n\nbSheI/5vBeL8Z+CMpuz+e96VFXoc8r/46j+D5bKWsKvVzZGGf8lXg9qmX4Av\nAEJ2\r\n=8wjI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"73b260d2233a31311cff76e4c10438913b91c2ea","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.3","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.7899e0fe0.0","@material/rtl":"11.0.0-canary.7899e0fe0.0","@material/base":"11.0.0-canary.7899e0fe0.0","@material/theme":"11.0.0-canary.7899e0fe0.0","@material/animation":"11.0.0-canary.7899e0fe0.0","@material/typography":"11.0.0-canary.7899e0fe0.0","@material/feature-targeting":"11.0.0-canary.7899e0fe0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.7899e0fe0.0_1614033962631_0.8453027493654381","host":"s3://npm-registry-packages"}},"11.0.0-canary.f19c86d13.0":{"name":"@material/floating-label","version":"11.0.0-canary.f19c86d13.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.f19c86d13.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"98a0fd1ed1c2bc94bb4e255d155270dbc69d76c9","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.f19c86d13.0.tgz","fileCount":34,"integrity":"sha512-AZvy+XvvZGUspIYvH7A5vpfPlbM3/mOxX23SFo//ppB6ub/2vNvXX8VP0QIyBSC8LIsmo8M5BmQs6OSFOVVTWA==","signatures":[{"sig":"MEUCIQC0T9VtLQNW9gWaH5cuQKUf2YH4woOyUD4atxPufwNQNQIgT0km/onLbKi4wRlkbvFV4k/rvXO8YBCyWFCLOeLNzvM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225466,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgND6mCRA9TVsSAnZWagAAAsAP/jp8pD8nQOA4L8zvuNoA\nm/1SeaFBYJ5I+BrFvfJrCeA3Z34OXijOKkWkbIV0XyoPIZJsAlkbVFXYgHNc\nEzv+NvSBAF/0g0hymiP2uqiC9mbhBTjiCGK2oq2GWbJietZR+AsTuh4/5xK8\nmTygynpLv/P/hZ2XA/1YGWUfcPCjcV1Oz97yHY5npeE1/gUlvNu1/dfUmsH9\n8j9PRIfKroV+d8A2KWof4ADwaZSubk6o6XpgK+D5Yiqlscsoul/MiFww/xxv\nhMYyyGRHEoeaC8rwnPa7OfxjmhhS/oArybViYBpz36j/kb4IVbZ8MUGGcqP4\nv/sSl5eCz0Lb6srE2t4xNy24RJezsmBNe0s1ztjAcLXQ8o2o5LeUaYZlnfs7\nfcVP45Db8HSW9GEn2vMmcL5GjRAB8iQXmcOfk34Nqw/FtBGOnXDY5spt78mu\nHTprTQzJNi+aEpPXvxOf905mjBY7sKvCSbnpwGhpgq+pZzr/OXe6rSuhWLXG\nxq8Sgyw4eMtMZRlbOGTXn3uBiBuGUGKxGDigcVsErRYcF8V20lxUHXb1sAiY\nmtEMNO+MluirkQJiYTA7prxz2OPEDUIN5m0sKo+Fb34A1tMuS3oEwIY80jiD\nJnpRoOxU62DxRUS5mT9Y3TOKhRY4udxPkC/3QVfOQ7GzOPzY0+gysdtshrQU\nyRmd\r\n=w+XB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a4b2b851fa6f3895a9e915d4bdc5b6b6715a4260","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.3","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.f19c86d13.0","@material/rtl":"11.0.0-canary.f19c86d13.0","@material/base":"11.0.0-canary.f19c86d13.0","@material/theme":"11.0.0-canary.f19c86d13.0","@material/animation":"11.0.0-canary.f19c86d13.0","@material/typography":"11.0.0-canary.f19c86d13.0","@material/feature-targeting":"11.0.0-canary.f19c86d13.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.f19c86d13.0_1614036646010_0.5831310385764701","host":"s3://npm-registry-packages"}},"11.0.0-canary.60e892d79.0":{"name":"@material/floating-label","version":"11.0.0-canary.60e892d79.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.60e892d79.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6871cbb7ed855609a59d3b76eda40717da6e9503","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.60e892d79.0.tgz","fileCount":34,"integrity":"sha512-S5GmxGJ/DVYU7g78ZxznGc/l+v6rgT6IXjN4cO7A4UzDKSCcFE+t4gZEr6ZRVfXTzVhkfAROK6n/f0NK59fPCA==","signatures":[{"sig":"MEYCIQCFLUpVR5Fz2IJYrL+Yr+iItR4fxmuCf39yce+cd/uDDwIhAOdItMEMT5iEPUj+zcacdIbS/L6WbNiWnonryrNrjdTP","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225466,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgNFbbCRA9TVsSAnZWagAA+ZwP/2Iqnid9nIJU/KAfes58\ntVrUGDNKfGFIgZCw2lMwGnlUV46GjH48ApBJ3hfVsir9Ez14fnO3s+fBWyU5\nPu9NOUBH0ZQn5meyv9xPpForkFk8GzFlHZ3A1UFJLfromDNtncSztxD4EwbT\nqP6mjA+bY9HdVvRyuBZ9Y2zojw7U7QXrwks78YL8r0UTEOJHnE/W0DwGAxmS\nN0yRL9imLtl3HLIZAf6tKIbYLJxZiHgsfkWPluFUkVDir9hNSo0qV27U2xs8\niSke/f0ucrVAZtVTeQoElboRrH3xIohmRj1m4jPdZLfvziD+1NY2Qee4agvp\nX/Hyi2tOdA7PhB6NHrAbcc0/ozZtOvKT5Lsy//atgIQyfvvskLqUle2qPBqZ\nmxkolvB1tdpnB+zWU8KQzXwH+WjPTTA/1zc7WjxODK62WBzhG7yMB+NDqE2R\n0hBq8roA5IJaGtfT0f2brTwHgvHmP7PS7B6iLGhhPoXf+BYyDFE7xvaRKWQw\njKQna2E1IwAQE1Ss3ukw8AqeN1gybRi9Y0lBrtbY1RJMzkzt37DVuw3o9g3+\nPI57ugbhJ0+dNLUdvv/DeBdQ9H3MlQ/DJG2nZNSva59qOWKUTZiHki/pB9oH\ncXWeFHJMqEcHndiogimJoP98XfUKHSxgwEpxav2MXLaJSujjQxA9lSS4gMoF\nfvhd\r\n=OpvG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c94f9f392484897a962a9b7101ddc6d70e5df67e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.3","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.60e892d79.0","@material/rtl":"11.0.0-canary.60e892d79.0","@material/base":"11.0.0-canary.60e892d79.0","@material/theme":"11.0.0-canary.60e892d79.0","@material/animation":"11.0.0-canary.60e892d79.0","@material/typography":"11.0.0-canary.60e892d79.0","@material/feature-targeting":"11.0.0-canary.60e892d79.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.60e892d79.0_1614042842781_0.07780691224233482","host":"s3://npm-registry-packages"}},"11.0.0-canary.c96bfa495.0":{"name":"@material/floating-label","version":"11.0.0-canary.c96bfa495.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.c96bfa495.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"409ae8accb64fcbcece2309c543921fcf78a8b42","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.c96bfa495.0.tgz","fileCount":34,"integrity":"sha512-UkkdUHzyN5Y5LS1MhIpS23CDV1l1TKUbZmC2T+LG8Ovhs2Dbe1RyzNpmnRkkfvyP7Q0nksG6odNYr43r8Oi+cA==","signatures":[{"sig":"MEUCIQC/sGm+GNEf9QhR/gd8ZqT8zeUYujmnBBT5J10H+oNAGgIgeyBo2zyyro72oskGfCGawMta15pKZ0qCPqxe4I/VGxc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225466,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgNVhuCRA9TVsSAnZWagAAHLkP/is6xSSN0rbJSk05WIOT\n9IBV1xkH6UKvdEVQcOJCY+zXze2oo5Cbj6oZeobSaCbV8BsEVeyAYrtyy4CU\nSHyBGmXItNs/aa0V3jmC4DG9WqrtRTL4hxrS+VW5m5M4vVUXnRKIWrfHpald\nmNlaIjAYhwX/BwvlFIqJgN7Hgv8ikYxmQd8e4IX22FXScEQvR4i9fwf/khCT\noMvObbb60ZzMxOFuYVhrPNUTBOL5xX5SfkFaFyI5lxwua7avP6hFV5p+ZVI9\nQNXA+c3ejJ+FbH/bZs7nlXHwSS2SVZbIQQ8LLJOE0l7FBKLJtAFLTfM1axO6\ngKz+iDPQ4yJJHBAqnJZrI8WOZpFZTJJrQ5Y7vWCOtENIzL0HmNAMtDjUsi0a\noH3Twbo+pbsi70vBTke+lDCucMFBa8cxvpCLOIblnNanFZCkNMxPNj9k6k+s\n+wmChuVvmeXQpAzJ0wjh3B7CZaXBB1wdGXDnj93Gqx4/Iehsjujpi2A9BT9o\nPvqYUE/nk/KB9yiufOJ1j/borQwmlzYPRizqbt0eqXqnG+7ioSSAdsEZIyD3\nBFCOJM8GeBHJvF/odpxf2bu/fIKczj7eSEWQjfUOJ3COcy10KPwDbzRr6eDW\n3/MEAV083AsJumDfLwTgWrEv4jiiTqgn+abMcS4Ot3LSOJYJeQxjzFEJVYDm\n1Nfy\r\n=/E7S\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1fd35f98370bc606c6677b7045a8acf16c0ea7a1","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.3","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.c96bfa495.0","@material/rtl":"11.0.0-canary.c96bfa495.0","@material/base":"11.0.0-canary.c96bfa495.0","@material/theme":"11.0.0-canary.c96bfa495.0","@material/animation":"11.0.0-canary.c96bfa495.0","@material/typography":"11.0.0-canary.c96bfa495.0","@material/feature-targeting":"11.0.0-canary.c96bfa495.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.c96bfa495.0_1614108781487_0.2682499402751708","host":"s3://npm-registry-packages"}},"11.0.0-canary.fa9b59f67.0":{"name":"@material/floating-label","version":"11.0.0-canary.fa9b59f67.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.fa9b59f67.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"39318cb087fdd424e64884770b027ff1285763e3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.fa9b59f67.0.tgz","fileCount":34,"integrity":"sha512-ScNLoVIOasGfqM5Fj/ANwca+PKf9Tsq7huKlWfgphHaUdw5Gfv/C+Hu/iPaV/GACWrx3sOTrgOZjdLUXyKN3Mw==","signatures":[{"sig":"MEUCIAWzjuGnKjnpTHsqU2Aq7CUbc+pWFDl2yZ+ipvx8XPKiAiEA9RDfKxxvtO9PMKbCvajKqdC1qiC02gWtxitTo9i1NlI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225466,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgNVi+CRA9TVsSAnZWagAA4O4P/ivLsjtnNwdBF0tZgv5Q\nGje+lJrhhTRm+X0xyw6uglJIsc3+qhp+hosipEKW/XpdG9FimhjNTKhv6FOQ\nLidV4Q6dxl3hVGbcsYbNEBVpnAYd6hiKK9NBetb8l85wubov6lTrlv8lBR/J\nBUaHXFcju6sT7f0N1XFalUPDfzUFunSY9nEDYGufJGSohtKugPJ2NuqOdG1h\n1FSRbWXwYv4bIjAyZxeE6ALDw3EgpoWnhK9l0oNVyb0hQXrfPZwIG9ic8jHc\nsc4zFRt/BbdISZALRzmkmWQKtIBLYC9avhBjCuEfCRF4WUJxsynvSH3Z0l9m\ngU7lxuX4yZwcZ74J/ymXgAIVQU7/ePpsfeWVXmz7rf1lMXn/SQ34ZoFN65FQ\n2YECSSVAnSzgM/WUa+3iHx8INwY8JCxbNEnTnrz/ZcKHYq1bBq7Kc0jHB3Hy\n36299VK5eAZnVGv1tF/dfSvI+L/9rMvO/sup6vrddRCqDC/GVIRCdkqRkRu2\nXO39VQ1DB1dqumByKiQ6pqBJlPhOB0xx8v51lVJbY3m2c1tNd+Yi37MMYxjv\nFraIFiVRYPjcNW0qHg6G825p74viOLOM18Ur+qHe6OsjxgLaxyw7CSEr/5bg\nGQd+YquRzf13C0OKkmRgS8IRfZcLgK3DPv+TDYdrDnaXii6cjZ9pLxdM0uGj\n6ZqS\r\n=F0U+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5fd97ca8b5906f3b3097bd333237976e3e93d192","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.3","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.fa9b59f67.0","@material/rtl":"11.0.0-canary.fa9b59f67.0","@material/base":"11.0.0-canary.fa9b59f67.0","@material/theme":"11.0.0-canary.fa9b59f67.0","@material/animation":"11.0.0-canary.fa9b59f67.0","@material/typography":"11.0.0-canary.fa9b59f67.0","@material/feature-targeting":"11.0.0-canary.fa9b59f67.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.fa9b59f67.0_1614108861901_0.9086223553659372","host":"s3://npm-registry-packages"}},"11.0.0-canary.869e3497c.0":{"name":"@material/floating-label","version":"11.0.0-canary.869e3497c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.869e3497c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"00bf5f91f13abbe3ad7f8472a6dd3024c9506fe0","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.869e3497c.0.tgz","fileCount":34,"integrity":"sha512-3Uw+51RRWWjsgQGWajScOHsP6kAvnVbx+/h4P/FfZA09Gq7Yn/3B4NgQNHPRqHfvbCXLgEr7dp8B7Ju4M2lyoQ==","signatures":[{"sig":"MEQCIHYEdft8rV+oXu194MerF1UXomHWdQP00AXY1xVimEVNAiBFrycCv0fyHb4nbhHp5iP5b1gSVQL/+9pwn7lhAHYtjQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225466,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgNVjSCRA9TVsSAnZWagAA9V8P/0U8x0VVMKUFUIUFy6nC\nCtYI2NLI+M4AN5ObLCBTL92QpyZOZ/z9thzMjMGyTtib/25nUwh7rDa+9R7r\nTEEVTMvJ02f65w/JdxyUxNvZS1sXcRYzn8nP4OO+3HhLup3poBUA3/OwuJhq\nNR058qiQuIobYYGz71GgM9+8PmwBOafY0DrV8D7cXEfLmjxZ7zdSih62cno4\ncgXqNlkYm12QlGZnTNmKZwImFQjKfQ/uySyRYgaxEDkJbnNU5v+MgJYmNT3f\njiAJw1J3wdWl3XalXqVzbDDO3zJ2yuWuhJleoLdukcnWHT4x7Odcvwd6wCxL\nY8Gpwhqu8J6WJWW6QYeQZsYVPS/FMEoYY30ZeR5CN4TTA7ZnJdapP3viTMYs\nOczDhoT+GIIuZ8ZDPUxCSwCBgKHJUyyIFq42o6+LLx3SiufdkMshGDLba3fs\nFWD5mFOqQeHxQt7ZbKHN8ezxfbkSZ/WSvPICQwtZvYAWFkCGV0QEgdEIB/hv\nzyiPUh0hLfEfKRE2ezzlXNqc2rKWFYw/PXTHwvgcTKBySR6SGfqorXPuTdLv\n8zrLdQDU+b3u2ptRZblBO4Mp6IsBkj6aYkeMblqWS2k/uooEjfhplNh0e4fZ\n3htz1niB8mFLn8Jjxu10rJNmfatuyh4mJQn1hZDu+bP+56sA8Epj9r6P8x7H\nqu/x\r\n=INOw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2e1e116734dbd0e962ee4e11a9952ba9ee6684da","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.3","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.869e3497c.0","@material/rtl":"11.0.0-canary.869e3497c.0","@material/base":"11.0.0-canary.869e3497c.0","@material/theme":"11.0.0-canary.869e3497c.0","@material/animation":"11.0.0-canary.869e3497c.0","@material/typography":"11.0.0-canary.869e3497c.0","@material/feature-targeting":"11.0.0-canary.869e3497c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.869e3497c.0_1614108881778_0.519363018271614","host":"s3://npm-registry-packages"}},"11.0.0-canary.8ecd7c9a9.0":{"name":"@material/floating-label","version":"11.0.0-canary.8ecd7c9a9.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.8ecd7c9a9.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"eef97451e6897fd414cd92760e6bc52f1fb0603f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.8ecd7c9a9.0.tgz","fileCount":34,"integrity":"sha512-y6SRZP6h29qE5D0AWgXJJK1vapmTEQvNGnllJrOndRj73Yp287oTdIBlUiK0UhPShzD5rAkOaye3EznEyQ5ozA==","signatures":[{"sig":"MEUCIQDZABxZ+O0GrKTDaQoigBwdgNzTJL7LSbm1kpR1LkAm6gIgfedv4mVWsMiQHLlijQjpD+CkB6SBk578Ea6SpEcB5lU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225466,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgNVyWCRA9TVsSAnZWagAAZbIP/31+FN8yzAW/FIjf3NqS\nuWRlAfA/F71w/t4sG5e3S5huW+H+TqBcMEtFspzs8V+wqhyGCKu3hUprx3Ve\nN9ogj/SbqD9G+sKeWrxxRfsuLF11qYFQjKnYmIOapZGImA53gS2vAZ0sCPD2\nDSxs3vk9Brba8iFvpnNKh5LBN5ziH0eS+Q8ZXg3PDRo1aC+hS+f2NELfJ5JD\nUtOK6leyAnj7FV8pXlXByg69D29z/PLBI3eDrcvJJxFYS98zaqB+WqSMvGqC\n0RHIpwOPheSXY1vGf2mr2HxdwiU9FsDEY2oITjCZDVs96Z/UuEGVr9jdu6UU\nb1vGWAXFK5OF2vlOEMNtTdEQAe2tMyXd8714RS4oXw8KKGfCpRBqunZUMu3j\nlC047MbuStO3JeurDUhSiR4guF6tdf5p2caHIcV98ONp/P87fOdusDiaxp12\nUdxnEaIFEzr+wzt+8HZ/bT6hy9FmuLueAwdBj1N16SWg8Wl8r1fhZUizUcxb\nX9HxkubHHPFRJ/T7CSOj6II/Y98pF/+OJOnbrSReYl+dIWsDQd1GMjmLVkqi\neZYQJpERRMx6kXYnkG9UMByk7UprDVfR9h5mPMg6WTXQfvbiRgok279G+2rY\n4TTpUiY0e8Dg8lgKzeWZOk6yWlkCCxQoSQ69/+imJyep6Yq7T0MIAmK00iYj\nSfyE\r\n=WD6V\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ec70d22f543f79f769bc5b509c9dc06cb8114af1","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.3","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.8ecd7c9a9.0","@material/rtl":"11.0.0-canary.8ecd7c9a9.0","@material/base":"11.0.0-canary.8ecd7c9a9.0","@material/theme":"11.0.0-canary.8ecd7c9a9.0","@material/animation":"11.0.0-canary.8ecd7c9a9.0","@material/typography":"11.0.0-canary.8ecd7c9a9.0","@material/feature-targeting":"11.0.0-canary.8ecd7c9a9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.8ecd7c9a9.0_1614109846130_0.6643715560202723","host":"s3://npm-registry-packages"}},"11.0.0-canary.9c85d505b.0":{"name":"@material/floating-label","version":"11.0.0-canary.9c85d505b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.9c85d505b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"70218aa016921c259169fa3e27b1664bf9b567f4","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.9c85d505b.0.tgz","fileCount":34,"integrity":"sha512-6JVRwF+JnW+lg9clLh2SqgLfydq6S6e1gbUliEXvrjPOkWwjryqI1q95ANvzCoyRudGeolmK/to79TZXUME9yQ==","signatures":[{"sig":"MEQCIFKXw6YbaQPh37fyJX6GwI8y/NPMdBU38kwN1SNRVk1hAiBPWXiGOsHNspWtTqM7aWVUI88qJUnk2liaiV4UIDK8UQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225466,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgNX6QCRA9TVsSAnZWagAAg1cP/jh63Le8ISE/EbtIjRUw\nvkD3JhVDR2YB4ELEU5Dca5bznFYULb5JcF9EgDam3Sgv2Vwuo/FuZqZlBWXV\nIT1G4tYmrnWY7tzSxWmUPVV21VBFB28+8vYKENnds/+M8T5i2dMgaaa208vg\nfUUdRuSFhaSLD2X0tb0+jnLAU+PXV3f3sIflrlwT3ry6XFNM5okFzR+uLCWS\nG4q2UDjIg9L0tYQJ1H/tW5S8DZBOAiRUPPF3HuIPRMMdoprpLCKf5wYbG99J\n/qVCuIs0R9T9NudqTDUBd60LL+VeFFHFX2HMi86++fHQ2NyEPT5wi6cg86yy\nI0RCnHjZmLpeeGofShNF1r7Fh7mc/qmWno9SD1LIjUMXgqNWl6QuemtUyjnI\nX/xnW9aUmHABrHXJ7Yi2x8x9y7aeTpYQGwkLYbtxtUKgCijaBa26kI60rYTW\nYxorJq2B6viI4cr9NnvZX8meAQ1v7NPi3LZW0D/oKxkz9F8URMk0KhQXrKG3\nGtGw3vDClmtcJmoaKr2xBykES8Uk+f4DMtR1aDBqMBZXjTckFjv6wdwKY9gI\nzzMvAGiVZF0hH28/LbeGjxPVpVa5M+jLrzEn3ZZtEL/8WBHk6BcJ0rO6e4ge\nMb7iaSltlnVdaNEuvFCFr6UU2mBnxxslvexATc2QM7p7+AMXDpNfUISCeJQY\nwPOC\r\n=q/Ig\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"374562c85250daef48b37a0e27a506a7e81c56d2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.3","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.9c85d505b.0","@material/rtl":"11.0.0-canary.9c85d505b.0","@material/base":"11.0.0-canary.9c85d505b.0","@material/theme":"11.0.0-canary.9c85d505b.0","@material/animation":"11.0.0-canary.9c85d505b.0","@material/typography":"11.0.0-canary.9c85d505b.0","@material/feature-targeting":"11.0.0-canary.9c85d505b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.9c85d505b.0_1614118543693_0.9288050676049457","host":"s3://npm-registry-packages"}},"11.0.0-canary.9f2e85fb8.0":{"name":"@material/floating-label","version":"11.0.0-canary.9f2e85fb8.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.9f2e85fb8.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9837ad416ddb19bfdf2fb0b27b7a4ecb7d5d3564","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.9f2e85fb8.0.tgz","fileCount":34,"integrity":"sha512-Jz6lLlZSawImk8ZhLGs35a9R6+q8Q5V0itQSSZND3VxRWL7/XoWa8B/s7+reGjQk+XSEnmIJx5FSIWPYooSb+A==","signatures":[{"sig":"MEYCIQDZY+7S9ea0wVtvVgROzCxupGn2ysT6kjQE9H7INtDM+QIhAONBMPuuqPkdykp2PSoe2XbiPPTOCwkRAnenGPCZAdMy","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225466,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgNbBTCRA9TVsSAnZWagAARKsP/RN2tGJIK+AZVbntRaFg\nll3EiixpRvPTHmarpeQZm6ye+RPBfVSk4upOY357zUbVyzuirh/Wf1Kg0JWC\nhCULB9nqRSlPkPTwxgLLm1CfvN7JPh8hhq/b07OrsC633QKqJdjvJ/c3trZ0\ng1kGkFRvTn5Dp1FL3O8ibaXjEcAA4f2rg+913eoBqZ8xLTsQvdYxgptwSJWK\nvRufw854nnr00mBCJH22O0ScBQj4XM8X0fne7SI9vtr71HI5RsHG+O8hzwDH\nrBcNQucf37uMbBLQsTFRgTIhqOh0BIlEOsP28ahewfnINp0aEjcAS/4JyAyq\n11Q+wUpzzQ/99erf/I4LX+wG2mlp9NsEYKvC2Ib8RgqCbavJnv16bnvNm+DU\nqCWiGQs4+wd0++KNrh5HICd9ic5Ugjf9frJ60QTwOyhdJJCxiiCc7YKcyGeR\nQy/hPZmDOZydcg51KS5XYqn958ZtVmIgT4Yd4Mc2DGaq8o9aGWokHSoqFHxS\nlFnsVv7eixcjnJixS2WDfwEZy48hwcJwPlZdC7pXb/msyum5HHF4Doae3fTu\n7atVY/HOYhUJzFs+5fs2IPAUBisj0UJRCWJ5It413EzaY63+6sQAU7iP0R/w\n/iytZsmmkS0G7t5vJvzagM1rMo38v/uqW9/3X1JZjZnOM2Gl6vhMIj41z7XN\nAFOd\r\n=LJME\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"4dfe4e49ca9339b2914b3dfd9e5c12642a0fd60e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.3","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.9f2e85fb8.0","@material/rtl":"11.0.0-canary.9f2e85fb8.0","@material/base":"11.0.0-canary.9f2e85fb8.0","@material/theme":"11.0.0-canary.9f2e85fb8.0","@material/animation":"11.0.0-canary.9f2e85fb8.0","@material/typography":"11.0.0-canary.9f2e85fb8.0","@material/feature-targeting":"11.0.0-canary.9f2e85fb8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.9f2e85fb8.0_1614131282828_0.5823324634459353","host":"s3://npm-registry-packages"}},"11.0.0-canary.19c4f29ef.0":{"name":"@material/floating-label","version":"11.0.0-canary.19c4f29ef.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.19c4f29ef.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d9e762a3786ef8dcc90a1c22abc7dea97d786e67","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.19c4f29ef.0.tgz","fileCount":34,"integrity":"sha512-/sGnE6zSghEhUfitKLtRMYSsOr/c7W22Vly6Frx9ccc3JWgshi/MuvTt1tc4LeVDk9pAjazownSFyT0cFqwVlQ==","signatures":[{"sig":"MEQCIByMyVyISbzql1m4dSlj7X3qA/ejJicreu9BAFmNTzddAiAG+9MELf+KqyAVqHIfMSMGU3n9S5BXJEDjkQRXgqvO8g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225466,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgN/j3CRA9TVsSAnZWagAAXasQAIxfeQrpmND+uqaNedha\nJsxpt4bvLvxCAbOcREpq4tcpANvoG1DxgWUluKZwzukF694OqNMdALBRJGEq\nDzzDec4SpHvjzuCtHN8ZKKKJGQYHlrohW3LTpFVYWv8y87yFeYtVxd2IemRI\nK88OOz5yFRPJDohwmJhQJGy3K5AZHp34uiAedjWz3GWJHZnMhRp5ivLlc0pM\nt0x51qpbB6dYfNLPUYSPaOLbkdnJpZAnroEglbaZS6hw+Opde3/NJS13C3NS\niU8Es20LC6HJ/FFH7D9Zmv5qhS4k4kmi60xtKfuFF30ENdv0q6NGGLwIxOeF\nZHrd1Ws14Mn2KF5i2Ok3fffSVHDT+TNMd6BPzKVZwHhfwpz8UznLQ9VLeOS/\nAcZJgiLMPyOkXqe7knHeVGTXNKL+EEprkzmCm3wZwad0n8Yy2VT6ttc6QviJ\nJXR8SQMHK4Z7EBsEj5lmGXkrogZ5rqa3vs+3rJr7Xg98cfSwcHXniWSxT/P8\nQmXDveNL7pdqADoGBiD+uw8CHJcteJt/zNBOzG2i1TWv0XtPfsESdYEL4l0G\nr5ott7ElZLYAFb2jx2I1WZzUFq2TYbEIbYmy0zOjQPZ7RqSCZqy+mdWLHN7D\nkSS6qdK4dSLVYieV4LUL9N2FEBGSKlnEORddBwKGsn+n4eWdBlsWsS+sHHcE\nf4q8\r\n=ve4T\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"cf61b54810b37e81ab57d447f7d050104a2f6f46","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.3","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.19c4f29ef.0","@material/rtl":"11.0.0-canary.19c4f29ef.0","@material/base":"11.0.0-canary.19c4f29ef.0","@material/theme":"11.0.0-canary.19c4f29ef.0","@material/animation":"11.0.0-canary.19c4f29ef.0","@material/typography":"11.0.0-canary.19c4f29ef.0","@material/feature-targeting":"11.0.0-canary.19c4f29ef.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.19c4f29ef.0_1614280950924_0.5762622295252793","host":"s3://npm-registry-packages"}},"11.0.0-canary.63df6e9bf.0":{"name":"@material/floating-label","version":"11.0.0-canary.63df6e9bf.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.63df6e9bf.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9e6104efdcecdc942c672985fff7fc135774afe4","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.63df6e9bf.0.tgz","fileCount":34,"integrity":"sha512-Ipj7hn9vFcMCGQDsndLbKl3M6ESB4x6opfmBR9EUp3KryEhRgzx7zZ6h0EytWDlOeVVtIZGCN4M79YATLZ9hXg==","signatures":[{"sig":"MEUCIQCVnhvIgIDjBQ6GNoZ+Y44rnZllvGRhFDALeMwguXyLDAIgXUdv8FN87tHLuSdPMpaL0gNfDb47IwAMxQYajTK53NA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225466,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgN/xqCRA9TVsSAnZWagAAE2kP/117DPkRkl/B1LHptrci\nvt5E33lrnmZJrTjiL49Hf99j9GvYI/8uqxM/n9GUwOaaL7Vshu3wqvOD8I2B\nWJe1GWCFSx0pxboRN+fA+Zteyo+ZIp373t8XHGPmnQl/1b/3hwCXxY4AdfKe\nXcG/aN6AibJCeDBPs518mJaLuBISg51UZLSZVKm+nrH3la838eYNuv3zxwsF\nrKDVeAGkxN35J7l5Cgy3iq0pA7v+LM/Y0ughrWifC4J2FgLNHuRJIrAGIzPA\nsOMj//VKPwaRGJCClRIZSz3HmJaGTDi1zx1ocCpvMJ+jfjNBl5i5k6yWzadK\n4yGNyErIWtBR0oNh5PPgtr6HwuRqJXMaZXkSNMZn7u4YF6zG7bBZPG6vW917\n0g4jqvNwuz5yIdfNX7IpaifcP4S/PcDYtlW7EKJifl0c9bQxOTJEYiDp4lwL\neLTCM1xeO6ziUNbD/W32i4b94j2NYt3rHQBpplTR6QSMK3gjuCVtNglFyVni\nuRkISRMD9uA3kCrTyK3UyGFlyrKJVNEpIl60JAt7sR0P6UQfpcLwHRI/+VVh\n1B7oJzYygVv7+TuxRfZugTA1g3/7aFu3nVSBX7fbtzPI6rYnBdT3g/qUO7Dp\nXBLRxJFjfCyV4qIGtTOVkf8X4PS+WMmsWgV5R7vEQX2dbeypj7vU6ALwACls\nB3jg\r\n=WH9F\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"6d11b414d4ea43b5c780988e2437ee30c9f1c0b3","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.3","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.63df6e9bf.0","@material/rtl":"11.0.0-canary.63df6e9bf.0","@material/base":"11.0.0-canary.63df6e9bf.0","@material/theme":"11.0.0-canary.63df6e9bf.0","@material/animation":"11.0.0-canary.63df6e9bf.0","@material/typography":"11.0.0-canary.63df6e9bf.0","@material/feature-targeting":"11.0.0-canary.63df6e9bf.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.63df6e9bf.0_1614281833802_0.5045511950641348","host":"s3://npm-registry-packages"}},"11.0.0-canary.981ad970a.0":{"name":"@material/floating-label","version":"11.0.0-canary.981ad970a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.981ad970a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3c19b3cc0da06ef04e4d452c979f55f75938a92e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.981ad970a.0.tgz","fileCount":34,"integrity":"sha512-FwT4MRerQ1X6wa5/q6eUst7oRbKYIKEgJuSve1pGFted8kncbkuw7amwTzDEWUqnZcFASO2qSDWCruFrsxNYgw==","signatures":[{"sig":"MEUCIQC3AytPfqpunwEZnNHFQr6y6uuoR1ryzQnqASv4MaDgSwIgVeh2+2sE5PG4lGf+lzOhQoJvnLREZwyvcM/vY6ilhlM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225466,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgODvCCRA9TVsSAnZWagAAVPYQAIbtVC1bDJsSNDDEtGM2\ntr+gvSjuwv+xJ45lbBuvO7xpEb+eCYxUn4Fhg2jcOLYsjVW8VBrT/tjySpVC\nTA2TmqcyWwvawD3OeOaiTGf7zHirCgYYEA1ACdHEAb4cQNnaMBshVVh1Hjkt\nKNEv0IbkLYbVnwJKwcpp2Qqjz8UYaNg/uz/xI76scyAVTD9gjw6XWtiTffD2\nDK6a62vvI+lfu09FAiZJ8biYMfRugCfOODBbaZhnI1/QyhHT0ziQI+e7JZ8c\ntm6ljVAdCbmUOVhlOUNJm8EduXLz0ph2tfIWlSQYblF0fn05dUaghWJbT21i\nMP1R0F5//ZCqz7jRfan7d+wRi/lQNTvxzI4CpmHf65fSx3/GusfjaY5UaMPS\n83U5DkEzOq9QjmPnEhaG9d4mQGvabNTvYgT9QZOY2XTwKghzq14Bny6iOW46\n3TMf60dGju441aor1fM3Mc+YcqOFOWG/mcsmEdIjS++HelhxNVxLsB/J8dtA\ng/li8VaIukXtk3BtYpKdWcgfiSsj9QlMfePWccjCpxZ8AJa6u9BvbPRjlD98\nHvSGcJZRmjzPRN4U2aFCK8Wp9PilPnCAneAOQ3qhToG00rJpGQwmFztivKqd\n0j80DUve3GPSq/s59zRdI0K2eRdpKVYTWhIvre09dchyFlkyHl1kKkTperKu\ngFJJ\r\n=n2AH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"0faf6e6b78f0c9b2c63f416ae85331d13aea198e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.3","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.981ad970a.0","@material/rtl":"11.0.0-canary.981ad970a.0","@material/base":"11.0.0-canary.981ad970a.0","@material/theme":"11.0.0-canary.981ad970a.0","@material/animation":"11.0.0-canary.981ad970a.0","@material/typography":"11.0.0-canary.981ad970a.0","@material/feature-targeting":"11.0.0-canary.981ad970a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.981ad970a.0_1614298049610_0.8039096008970179","host":"s3://npm-registry-packages"}},"11.0.0-canary.f9c9e39d6.0":{"name":"@material/floating-label","version":"11.0.0-canary.f9c9e39d6.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.f9c9e39d6.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"923625e5698e6349681547df7eface1f648639c6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.f9c9e39d6.0.tgz","fileCount":34,"integrity":"sha512-3a8d7Lc+w5c61OUQVGKdxH3NRvMzO3zBivlydRRp/fRVshp1AP9hWsPjxtmw4hvQMP/lmExU7mbtsR9ZIINLPQ==","signatures":[{"sig":"MEQCIF6MDNXInTdzx2UuYh+f6eAd5oXSh7bFzmlJ1KcezFXxAiBpOlo/4mSdubkVgZ8dMXmbnfatNBOYQm2MGCJ2mF6j7g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225466,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgOUBCCRA9TVsSAnZWagAAjyoP/j7HRPBETrDb9TnKMjdH\nmMwVCiamqP1LTD8OiM+RouPc1RK0kauYu/YhFbposromepNCO1y2123wVikD\nMKW3gNP4xSJSDw20/57ZpTIC2+CsGlLqgoH1RtNde6D93S/4l7voE+r2taSC\n32iNYRy2Lb1PTtcEM+UgiGcM7KwsBSGwbY8hatQ0sObpoKRsWRXNZuPzjX/V\nzZzGxgz1Z7FDLMx1PNeA7mNKhY+bggiR/P2Up25j2sZVP/dLlPCdn7IxIjL3\nWodyhmSlKG2M6Lf7EvCsOLb0mlNVzG6x4EAyv7024ptpkldwcE4koLRrcL93\nr6hQkLbEe4ydHcvZutQmUWS3guead6GWso62PruLTpYrq7fqoa2UbTvLpkfR\nbmGW+OFhoQIjVFriIDQ5rOSS9wc7q62rbGVKs+0V6qg9F6Lt+R8JNG95wn/M\ne1YWRQSQtWBBuZTtx4e5mP96ZJw6sNDAHAjEmyqeCnd22XtXS1BoVjiEpLD/\ndwTfw9MwpVRVGCn4fOINQzeHmiPjQhdDvNFlfbQeKoB7UDjmXcgAz4hmqQdL\nmqOKrRLPQsHrmjfkuaJRVuxHCSjhVB3uRydfPYnkvQKxvCkDYnKoLRz+A5UO\nJ0A1ObIulCwfZdNp3gG0hDp2iTnOw1QGnWiuTo9EbSjdLcY2sfivJ6pg9OZr\n/jC9\r\n=+7qi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"81d489ae3f1defd63ee64de05a2a330040ae6406","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.3","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.f9c9e39d6.0","@material/rtl":"11.0.0-canary.f9c9e39d6.0","@material/base":"11.0.0-canary.f9c9e39d6.0","@material/theme":"11.0.0-canary.f9c9e39d6.0","@material/animation":"11.0.0-canary.f9c9e39d6.0","@material/typography":"11.0.0-canary.f9c9e39d6.0","@material/feature-targeting":"11.0.0-canary.f9c9e39d6.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.f9c9e39d6.0_1614364738338_0.18088174472649876","host":"s3://npm-registry-packages"}},"11.0.0-canary.c97d7d881.0":{"name":"@material/floating-label","version":"11.0.0-canary.c97d7d881.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.c97d7d881.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"244ce10ea4870a31eff5a53d1cbffa11b4f0b86a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.c97d7d881.0.tgz","fileCount":34,"integrity":"sha512-/FalZBGsSjLcoDgEAGEhMoh8OfDYoo3/YTqcWbiYGEj1fmlYOmOpIYssSQrIldHlGkzdqgrB9gKoaRIfyY//Hw==","signatures":[{"sig":"MEYCIQDYf8/sj6xGKgEJ3RYAJTRJB5yyTfIdHeixfZdU0J5slgIhAKd32tu8WsuAsljQ+a+cyZf+D5rrNZc5+KzxicVFyXFv","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225466,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgPVQ+CRA9TVsSAnZWagAAmFwP/jOpkAPIT4lvl1agfgQb\n8YFhcHtDmqQOrvGfTxRMSAfW92xuOnP6rtt7Ua3aeFUqbDtHO28XcUc0SQ/g\nbrmveSQgshkv8xgWljIOERO9++f11Iic3N8plqMPCpJq8S+iDnqeaHzplYlW\nMINxhH6ujACGo4ILUeknz0cJ1O7lGkYCB0IRHbFTlNjxwg2x3aqVKMyt95Xi\nFaR7QIA1sIoIqFrj3WnI6gPCbJ/g1AITjs6QVtO/NhpwO3l9JAF6Yc4giAOG\notqRAigvfHihs9PEUQC+my5f1PoFDvmnY4LnBWPoKoTivEuaMYLB6mDbOfXV\nf7j4+WSYozaitahTqIwaBfbyG+pQtT8sr/gx9abIua5fXXR9OSmO04qZqpAz\n5EjodDiWlbyv1ZJiW7axclCvZjTzJkcYPUYkBvxaNcYkZNhcJSKZOyRxZ0DW\nqzgCjyFmlETp0gB/riZMtjKyQ+OZAt+v+4hKI3E57I0VGLTT5mst6C8Wk9Tn\nXkxwpIiGKymQ70JK+i1RKsdCZ/e8YqoEv8c+7iVjJA/7EhycwUgNG/QKC+Gr\njI7AI2XRPTKfzsX51rheDtDBAu/RHJrhAnxA7PFU19xUWB2ZzVw6PWoePa/+\n0URofwZ8Q3c0gl7kESkdu9soy+WULD0i5x6Kgo/3txJ6HC+bI8ZH0WqEw7Vz\ninzz\r\n=+pVx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"27a49055320511cea9f431f9c62d44a6490bb64a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.3","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.c97d7d881.0","@material/rtl":"11.0.0-canary.c97d7d881.0","@material/base":"11.0.0-canary.c97d7d881.0","@material/theme":"11.0.0-canary.c97d7d881.0","@material/animation":"11.0.0-canary.c97d7d881.0","@material/typography":"11.0.0-canary.c97d7d881.0","@material/feature-targeting":"11.0.0-canary.c97d7d881.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.c97d7d881.0_1614631998292_0.23623425053526104","host":"s3://npm-registry-packages"}},"11.0.0-canary.bf670dad7.0":{"name":"@material/floating-label","version":"11.0.0-canary.bf670dad7.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.bf670dad7.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f6ad4e1b17471a3375eb5bdc970d88627fc861ca","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.bf670dad7.0.tgz","fileCount":34,"integrity":"sha512-GrPcUL8h7Tys7cXRVVFld0ygS+tGdyr9WOzhkcj97v5fGmlCaH+O/WbCt5j+pPtKx2vK3HAH6cNhlXyUweYbOg==","signatures":[{"sig":"MEYCIQCgI0f1I8Ex8agT4AlIeCZcwGBooxlNQZK8ivw4CSATagIhAJovQMRn29FYH87uLtSam2m1p3qwdeDwcvrEpv6ij+46","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225466,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgPtZyCRA9TVsSAnZWagAAokMP/RHGQemGHV2EobopBdMn\nGNPQf+Of6VYzYQZlcoNabNxcPEosvkAcEve+NQxXR+7AF3Ui2uzpTOnApaZs\ncERl52HtP+4cr+E6lhyboM3MSmdzYDjvE4wJodSNwLPDr9MHTaweJavreq8i\nu/6F8nOhcXOdvn5U4uLJr57MvSn0DHdZoWsa5vMVJxq7wu8gPqh5EEyGTviH\nt6fdVTidxXKUD7rYCyZCF8svxcgmRf2UWVh/J6HxmOXZv8YWd6VFBC8or8wY\n2hKmJixSSlFpqgcRnpnE+Syv5YuR7nUKXHyUl6eoD3s610bw9FISbwpsWNn8\nOgxE0bv4FC5YGfsYnJzNk+pgsVs7OywCCAf69mhDI1D9UKJ5rEZFKFMqn3a7\nPlz1NdG8a8eafHiz/9VjsyurtESY67zw+XmVUnLunG7iDBfuMFsPtHq3vw8F\niYnJa/owRnwoNJrogIO0vOA0VWhjEYgMYAzZUceW4CTOy7+lfHFXLhFhGq7B\nm9J+mmmqMgUCr64/kfZP5eGkZWcM5Lgycne39WuWTBrnCfmGUsmYwQ8KtTMq\neGqyR10zMAkNQ4geUx0EHo6cq+v/AqdWE89sleh6xyEkHPyHZBl6CeYO22PT\nTX/AK0dwdLLmY+yR/0WYH4ShVGUq8U5iDlg4ZevOiGbSFOfblRj8iDKnK29o\nsgfb\r\n=QgTi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"61b03e5331bd5c886de5c4a57a4edc1b53878e47","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.3","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.bf670dad7.0","@material/rtl":"11.0.0-canary.bf670dad7.0","@material/base":"11.0.0-canary.bf670dad7.0","@material/theme":"11.0.0-canary.bf670dad7.0","@material/animation":"11.0.0-canary.bf670dad7.0","@material/typography":"11.0.0-canary.bf670dad7.0","@material/feature-targeting":"11.0.0-canary.bf670dad7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.bf670dad7.0_1614730865925_0.5700992797620192","host":"s3://npm-registry-packages"}},"11.0.0-canary.c7d98fcde.0":{"name":"@material/floating-label","version":"11.0.0-canary.c7d98fcde.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.c7d98fcde.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"97e214de4e0421ce51650c1768494f2502656431","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.c7d98fcde.0.tgz","fileCount":34,"integrity":"sha512-M8aNXoTTholQQ9+cydQvt3XdZJK48ubmSTHkXpkyrLkodX0GI0+E8SoFddYVQLbHh5UhxARhKsN6ruoUG4+d0g==","signatures":[{"sig":"MEYCIQDdCgpgbL0KHC9HEDIwusZF4HKCa2Q6i4FEoYaTccLWvQIhANAQF8JplRfV1+Z+TbKZAUyLDzJOF913zUqoQQLHvEYW","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225466,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgP/I8CRA9TVsSAnZWagAAVUIP/isZna3htZ//NqRfS/AJ\nxeMCuE5mll/riHR4Pk83cie96pnfLTvllhOfwF33h8fCJ9kQxEYCMxdQ9LNe\niNvGtdCCHJsBqeCIkkqZQpuKrY62KU6wHMe/K4N/6rgzMyilxYhue8URBJIs\nHv41JglLt9VDsDjFA6ddtWDzPurLrYaqj8JJhC2o+Dcp2FiXhadS97v5drHw\njPlOwUH95nh/AB8QzgY+splo/UDvJuv+o3p5q6dnf1ER2PvkUUxNs0pzbDti\nM42P3z7JwAxFQEpJo9v2+S3aa5USP0HnQKhogDZ/GQPpYa+Zt/CZ4LE4t8+C\n1AhxXkj0KB3b8ltKWgt4g5yUs59TsbHHE6CsfoMaSTfXUJFJrqVshXw4htZq\n31frsDB16LJpCzgbvGu6t+fQCMDN7SWhOnK8ZjzoM5EKbJfUFdO1OcAFFcuJ\nMDpimBj7BYJlmKv5E9hHNqfhxAhnlrxWfeDfMG+a/UiBVKlDaOqDh/zGKdxc\n78zlzBzt+i22b7QU/9HRdqY46fINfc+4y8PrnGu1QkAPU8isA3d6qnmg8krz\nvapYaZRpMGx9k4A5vB1fLciL1JZ0VjQkMAe8U7HJr08+DcguMzEW5s3jhsoh\naNc+zXjQc/bEFnBQ1RAdUx9bPzzf4gN7du49SNsVoZmqJlE9Qx90wGfAAELZ\ncU7W\r\n=vpYD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c5c4c5b417df34d141edcb1fd743d83d7a2b49cc","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.3","dependencies":{"tslib":"^1.9.3","@material/dom":"11.0.0-canary.c7d98fcde.0","@material/rtl":"11.0.0-canary.c7d98fcde.0","@material/base":"11.0.0-canary.c7d98fcde.0","@material/theme":"11.0.0-canary.c7d98fcde.0","@material/animation":"11.0.0-canary.c7d98fcde.0","@material/typography":"11.0.0-canary.c7d98fcde.0","@material/feature-targeting":"11.0.0-canary.c7d98fcde.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.c7d98fcde.0_1614803516177_0.8418573914479497","host":"s3://npm-registry-packages"}},"11.0.0-canary.4fef8bc1e.0":{"name":"@material/floating-label","version":"11.0.0-canary.4fef8bc1e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.4fef8bc1e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3e75b502af0a71b1602a71d15aa83541a1ca1f5f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.4fef8bc1e.0.tgz","fileCount":34,"integrity":"sha512-uTZ8k61BRbgpc3Sajaq+cau9Nl+FcQSlyDe/7pxKX4fMzY+Ej2NYo95r8g7MqcrpnZGZeXR3LT9tt061SGxrGA==","signatures":[{"sig":"MEQCIF87AP5aoG/unAxrg97Kv1bgPYfh26RXH8c6DER0ooknAiASVO4XP9M1mXPsnxgk6vdCo5V4Xy2UofIyTU6yeC/2RA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225466,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgQBqiCRA9TVsSAnZWagAAybUP/2tMoa/2Z8vnTijMKqK9\nlGvVZxpck61IYUozHMFFAneOrDiumMNIcJ54vIBZyqhgHDeSOoBI1cZ3U1ku\nn9TVHDZaBYJWrtGTJzyFXe3CigmsaIp//4fQjvs6O6SxWJeERiuqoQdwJ61u\nvHFLJjC6fP4cwDBMVl6ArgY+9HhVuuYrEQag+ZmWG7slTIf/LKNfBpi+DSqn\ngWlu5O0LZhWyiee8JyrQ4gQYbjd8SulhgBuXFjQeplTf0EwngQ2HckadtY1b\nmjnDZDIT3woBXwGcOalNJpos/x1dfGOxYsiEd3s8xthKAqPn/uCJsjQcItNC\n4r0FyNxZTwqzDWGVbypRJn/ppLLZAxxVR2VNDrNH0wcepvtR8LjrkyK1hUxw\nOhMdY+CoHoOqML4cOPsI/m5Otm7BWAo93c2klXPcWT2MLxpQ+kx4sqRkpiSG\nqdR+1VvNEMw4RtRTKf5evzAQ9yQwzKHWvgDIcDJyLY2tMb11jRfo9c3Vj392\nniRa/eOduCpd0zntpu0ElVxhqbpVtTNFg4xq6sWmpuVdxFUf//m6RbZ5rj5m\nXFs+DF3LbAcplogWEsyUDyVwng4ZQ7W6VOM8YYCct1KYmPt6pf33hPQN2teu\nub9XOwErDsrKhKmk1bgIL6Krabo4KNg5Sauv4EGUXzZD8smg9o/2NGIuBSzd\n0JjG\r\n=PKID\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"933905005f9c16276caed5327bc6ca581afabb6f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.3","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.4fef8bc1e.0","@material/rtl":"11.0.0-canary.4fef8bc1e.0","@material/base":"11.0.0-canary.4fef8bc1e.0","@material/theme":"11.0.0-canary.4fef8bc1e.0","@material/animation":"11.0.0-canary.4fef8bc1e.0","@material/typography":"11.0.0-canary.4fef8bc1e.0","@material/feature-targeting":"11.0.0-canary.4fef8bc1e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.4fef8bc1e.0_1614813858089_0.9661062637000526","host":"s3://npm-registry-packages"}},"11.0.0-canary.afae3a3ec.0":{"name":"@material/floating-label","version":"11.0.0-canary.afae3a3ec.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.afae3a3ec.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"bb48dc60fa4bce2ac2d2585cde466624abd9c412","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.afae3a3ec.0.tgz","fileCount":34,"integrity":"sha512-DTD/0XokM+0Zk22FolQuvIZtnBG98nrhabgTPzwaKn6JYj5ZjbSqur9a/SGS6oz+/6IRcoexh/+jPx5W5ceUpQ==","signatures":[{"sig":"MEQCIGwc7uu91bCtJs4CCOjtBGVGXTFNyGl8LsiLKomDn2atAiBbfqzpF9VLMRuTVQfbM+t1x1clfiHjLMD7W7f+5w5TcA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":231665,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgQB7bCRA9TVsSAnZWagAANKkQAJ8NlYCwUMm3WciNxyhs\n8S5U4TGjwN/13f6wMq8ci8ppsc8IrBKA+9VVd3/C+M9f838pnMY1O2v9uRmD\nu2CJ6ilHINpnaUpX4wZHNzua1R9bINHF2SUB+r+NPlQi+KL9NkyYNujOrYhx\n6jhePUYP3DdyITMrkEwj728K5ODpTQ3P2HA2JmtyE4XnoHeb9Kxbl60uf+Ha\nxnpmbcyM6fwOBcdcDBPEKX7z8EJ6ZIJHWu2kNxN6fDxWj/Ewqbsu0SNI8N/z\nBDfIe+sbn5566000YZZuaEhM0HzHQtWMwXYg4/qKUw7Qk8nUHTYOLeh1YbMj\nW5+P0VLv8sA0Q79PhbVXFX1CHUsDlryXYhbAhtR6QgLlWtiD+Uyd40iftdpu\nWJ274Olk/DXv1P6Yja8Lhs0+uVL+cbYsjA4CPAK/fSngwpADZtH2GtxeBzwb\nE/DHpbAXvPLfjTeuMGsn2wIq3KqRRZ9RSobPiKPMR1HlSmjQkTED/Y21n00X\nwVJWyzbvkNsLOj++j0FqVgrehwoJycZ6+p8PS2G/Pi5GTt+2LnCudhCsCjLn\nnnDlx7qys0MbgHUX/yuBmdvfI6czdasxEwY19RoQch7HOiOXMYMn9kXIbuho\nIp0MsxuLtHMhnmrwhc2j2eUR2yP9pl6Y7RhzMxSFe9xD0Kzwt+Afxh24+Akq\nAzCL\r\n=99ar\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"054b07cc588568c82346f2cab8aa8948b77a80d9","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.3","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.afae3a3ec.0","@material/rtl":"11.0.0-canary.afae3a3ec.0","@material/base":"11.0.0-canary.afae3a3ec.0","@material/theme":"11.0.0-canary.afae3a3ec.0","@material/animation":"11.0.0-canary.afae3a3ec.0","@material/typography":"11.0.0-canary.afae3a3ec.0","@material/feature-targeting":"11.0.0-canary.afae3a3ec.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.afae3a3ec.0_1614814939376_0.3814390585063343","host":"s3://npm-registry-packages"}},"11.0.0-canary.0a0b10f22.0":{"name":"@material/floating-label","version":"11.0.0-canary.0a0b10f22.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.0a0b10f22.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3c47923f2aefbc91411c6cbd6f1c68d57f739f72","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.0a0b10f22.0.tgz","fileCount":34,"integrity":"sha512-NQet6FlUHmfeKBJ3s6rjF+aRK2JnwsafmLQnXnr/7cjHhtDmhLzxWbajwMMhjr4IXxO2d7x07vMSsopHOnfv3A==","signatures":[{"sig":"MEUCIAS0RuoyinrnZloYLO6FYq2L4oFzHI8+ZGuliqs9jFmNAiEAs/43DfCYJBzxDWihJGnjsY+GoHsqgpWcLrcP5Dxq9FA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232275,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgQCNECRA9TVsSAnZWagAA0XwP/1sxJTcH1AMAg05vjXDk\nvySYNTZb8xDXJp4IFavcLBcU5VTwbtPZMB6wZ0vxEXbNAW6H9QG4GgrijuCq\n4oQjhZMnFL3K/miZEK9FdEHz5t1mDLidHeboo0wRyPg4uLkfqlJEGdaSHHWt\nasHB8PW80Gz3Kh6ktDqRyaRr28ciOzMV+vAK2CjugT0nKWAO+8onDcRKAfNT\n4vbDjr5/9KupDWkL8njO+WrmqkCGFvWzuxWcrPx+AshURWR6fOyccnsgSVBy\n+znS9ghX84Dt5kDNbpHW/P1AT4o/DhXQmkyXGvgt1wKc6aR3Ul0aIFa7ABvE\nzdsdjoE1vhnb4FGUUUnMXWuIB7/Blpblb0cN562LwDYdVYY8IVvGHCcD6nLI\nkWtxZcZT506XfJSm3dTWHUgv9RyHmoReFJ3GhyKJzfixAFoNFh86eViTDxS5\ni+IP6le553KAmW3K7hLgKTe/Eek7tABh2tmZ7Sod2Ocmy6A+l9z21BlJQmW+\nIh2lBwD202wPjsHtZ3gZO+YFnExFlkUFTqOg2NMkkFaS1O+D+TpT1at7lfHk\ngNSek2YtHi7QKF6gXALn+zuiQyWb76pNj6uzun5BADRKGnFlZa3pNnWJzmhV\nJHlwtDid1pUvjJ3G+GZZm9zzL3YISlxX9dkUH1d26jSDmrBmq+NhP4u3/uIA\nwep5\r\n=WwcP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5b560f4bc4c4b50a124c9432e81b3287bd348abe","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.23.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.23.3","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.0a0b10f22.0","@material/rtl":"11.0.0-canary.0a0b10f22.0","@material/base":"11.0.0-canary.0a0b10f22.0","@material/theme":"11.0.0-canary.0a0b10f22.0","@material/animation":"11.0.0-canary.0a0b10f22.0","@material/typography":"11.0.0-canary.0a0b10f22.0","@material/feature-targeting":"11.0.0-canary.0a0b10f22.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.0a0b10f22.0_1614816067763_0.29476790230603234","host":"s3://npm-registry-packages"}},"11.0.0-canary.6f678a91a.0":{"name":"@material/floating-label","version":"11.0.0-canary.6f678a91a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.6f678a91a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6e3ce4a50243e91d1cda30c1cae306095e3ec173","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.6f678a91a.0.tgz","fileCount":34,"integrity":"sha512-4u0L7HMfFHb0o2mg2QO74mt5TvZ3QUfJp0+5y+l3MdtN2JSl1PgGH/+lOySD0Qpowo9EjwdfejABeYEQZiJCJQ==","signatures":[{"sig":"MEUCIDmTc49f910beANiqXGV/vpW70qytMjNJ6C0g65dXXvlAiEA9hACxoYvZl7sDYJd49lCfsj6/wfQ6QFNGZBsjY7evAU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232275,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgQSmICRA9TVsSAnZWagAAjbMP/RucLo/muL09/MplvX4N\nC1CJioGUgT3te1qs3gZamM7FQpi76S6AnVLMMt9rDgADaFGUnKxiwI1unWV8\n0bhmgpNdzptXCGQYwJfshaBmkr8dQCx/jmkxmHS0GgfT1vPkoBYzx6GbY5Ss\nd5p8TBJ9ucqYioCEYnjNQeHxcmIcM/M4g2pZbL7hWY+hh7t+agnnem1yqwNj\ntDl+6MQqr76rc7aBXnZKHRDa3URQJ6U2x6EhvrAzF7q+/94Oh8AGi8PMyx0S\njoEvDUpal+G6SH7bTO9GdM7QGhIbosAvdrXHENbwZFKgQnJwRESpE4RPChZp\n9UuY+rPZ7aW4VE44RVbls4El0D91y3IC3aLkvp7q5Xjq9Opg1B/x0miCmYh3\nBNsJouH/mnwNgfW8lKnzTpgdHcGZlhZ8c9/zOQBd6jLs5AGNWsVTRcsPsHrI\nxihccSDFlkUeCaAL1NUK9fafWjMhtF6bWogxtUX8n9jGgByFfdj3FCv2RXIU\n6zsFrvDkTC2HsrbJaxhe3tYY5sN8utW8fNkLutCABt3cPe99IWy8fcxAfEgO\nuCNQeO04UBioGVHnvkuW4tIfkDynzdUNeMHaAzs/TR/MIjp5FfDuKoBt/II8\nzARrHKuFl4haKe5WGss/m2+psigXJTsctlDmSfnFtDaFTLLnsDquATvNpZUw\nt8ER\r\n=owec\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"863e8a04081286602f8b0c9bf446655b9399e8c6","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.6f678a91a.0","@material/rtl":"11.0.0-canary.6f678a91a.0","@material/base":"11.0.0-canary.6f678a91a.0","@material/theme":"11.0.0-canary.6f678a91a.0","@material/animation":"11.0.0-canary.6f678a91a.0","@material/typography":"11.0.0-canary.6f678a91a.0","@material/feature-targeting":"11.0.0-canary.6f678a91a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.6f678a91a.0_1614883207769_0.6123614047557036","host":"s3://npm-registry-packages"}},"11.0.0-canary.f5f1b613c.0":{"name":"@material/floating-label","version":"11.0.0-canary.f5f1b613c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.f5f1b613c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2da1d86b1c3854c3d5878c4072939a9a0fb9a730","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.f5f1b613c.0.tgz","fileCount":34,"integrity":"sha512-IK2rO62qP/2cJUgNvVuen+z8JviObv+uYBljAX1a2u9KsxJCmse9UoXDKWh143Z3WprqBVceUyP0EHxeTq27/A==","signatures":[{"sig":"MEUCIAtGMXby3ANl9dpgtWOkDajt+hb/e5Wh19haI+mj1GyUAiEA8EvDO7W71qhsGqvDONx0EvYwkQtp9+vbaFLv5hatqRw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgQUffCRA9TVsSAnZWagAAneMP/0BrN+wfqvJFZTBQzRHH\nc45jN6jhHbZyi4JTcbqfp9O7vC3Ny2NjfdqUj8URYEXduwoYfu1gnJLKJTCB\n/WY7pCozYcY6YpauwwMZDkqY6Jqqv8rD10Y8B38h/1c0EQSq1ZSG/tTYo63W\nKCqx8sVmBp7sERdfqH4SD1vl4iO/2JHhpHOTTbJDJ/qi90HLLO5eQXLLFg2+\nRpJTIYq3JPADPwAhgHJl4ZgRpFAhzPfNbVfpD1F1rfoF5XoOTxCUPpverewA\nIyHNI7XpmNH0cDGG0+8Y3+xMgohJakc2TqmcuqE0T7OkVv/CtxcFjCirOv59\ntHLfsj2Dbz/peoOLR0vfQHPMauYkfaGXZJazPDaUaZ+sKRGlvndx+ImzoSHC\nJ9UIw1ahv8p4WHgCiMqt89x42+bbcQzS7fAxsB9R7IEvU3dY5BVtPsgNEjHQ\nFtFAOzAQiDbWfMJmqPnFbGjFKDE8/aOpQBF4PIbhP+EglU1DOZ63Nhb3Fz13\nII4omTSJvefCHyCsmRG77Qyl5gLgpXHW8ZoU6ypK6i3r7RHc6exZ7ke8Wn4k\nc2t/NpaverpOYwfxsacwL9oogeyaiMwiM57ZgqaOr5P7dCXtNhvPlUlJZMdJ\nBuHnoJ9EsG12aDaIcQxUuf9cdM1n4zmi/r6p5+rr+ShQZNu+2+xL9XyUx1eZ\ndgLS\r\n=2LcQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"20e2000d9ec732c7cdd0b5c15381f0a55f778036","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.f5f1b613c.0","@material/rtl":"11.0.0-canary.f5f1b613c.0","@material/base":"11.0.0-canary.f5f1b613c.0","@material/theme":"11.0.0-canary.f5f1b613c.0","@material/animation":"11.0.0-canary.f5f1b613c.0","@material/typography":"11.0.0-canary.f5f1b613c.0","@material/feature-targeting":"11.0.0-canary.f5f1b613c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.f5f1b613c.0_1614890974852_0.2882352031971822","host":"s3://npm-registry-packages"}},"11.0.0-canary.606e767ef.0":{"name":"@material/floating-label","version":"11.0.0-canary.606e767ef.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.606e767ef.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"df6fdd2f9591055497129f22570a67c927a07e0a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.606e767ef.0.tgz","fileCount":34,"integrity":"sha512-6pj7Loiot9G+SSwivNekP7JKIrnkBA+Rei+rPzzhWu8OEvVn9H0QmEt0PQgp+qsGbyd8tMmKH7f+UlXqbDfTBw==","signatures":[{"sig":"MEUCIQDYupe736YUfsswdbD/aDCZc/dJ4kHg2qU2cpA/UaP+QwIgNs435JfxWsI2fHFj7d2ZQLhF9RlK7Lipxlw5CcqSBYo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgQVUHCRA9TVsSAnZWagAAQgsP/1L3d0pO67ClOucoAdh4\n2+lLxXp+3g+Fat0aaGcFzgcF2o7opgdsY9jlo1sC8eQeqs2idObbX2z2vYWl\n+OXWF90qxtd1zu3bqcHuqnxyASSA2/UFt2WEzLfb1XVp47P6ruhlfxLezkh5\nVVJl52Ecb4zf2gKTA3sPBO1QWdxkPalILs88mFkmfLBuztfLv8IVFiPEgQIR\nP8JHmQd2U4Lt20VSA//mf+qByMFu7olLEDTGv5UiZx3go10JZF5c3DoegU2s\nEj+bXAhOqxzekoM4BIGcG5L5w0fQXGXWqhqGAgYXqc7xfn/sCim/YThA5rY3\n/D+a1Mr/mXDvml0JdySUQPp97dMOeX8TkIfi9XOzUPAjT007zf1qTJbWosz/\nKyWNalFJeN/jW9tQi0bBQaL4aIWxPysSD1Hx4v6KR66WXxHbw4+PQZu8GDsW\nmM5fOLsd3YdxkdDjb3kvEUhwlymosWnnj/A6f83aNNzB6Fp9Gt2XsOwl06Cd\nkoL/qnlhVD/3/IA7rssVednSY3wV2H53IcU5cKQ0c0pPCBsfAi1QUNAgci2P\niDgQkYMenP89j+0LxWzrI1v2y6b08/y020OHnwkXSCAzBZnpU3Ioj7uw91hU\n/JztwtQXqzAziOnL8DITUaO4MOdLYRHKf4QSgZUEnBek4o6rAz9b37jvAuzl\nazMa\r\n=i92B\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"34c41b3553e1ca4ee49c0c36a1685f3f462d33ce","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.606e767ef.0","@material/rtl":"11.0.0-canary.606e767ef.0","@material/base":"11.0.0-canary.606e767ef.0","@material/theme":"11.0.0-canary.606e767ef.0","@material/animation":"11.0.0-canary.606e767ef.0","@material/typography":"11.0.0-canary.606e767ef.0","@material/feature-targeting":"11.0.0-canary.606e767ef.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.606e767ef.0_1614894342424_0.8005982504838458","host":"s3://npm-registry-packages"}},"11.0.0-canary.f77a4dd1a.0":{"name":"@material/floating-label","version":"11.0.0-canary.f77a4dd1a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.f77a4dd1a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ed97eedba3a4a3382bf7aa3431b999e906ab4b80","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.f77a4dd1a.0.tgz","fileCount":34,"integrity":"sha512-QbxO5xMnf5fSyCRNHpjhirqkYULSamjZjmakqaGpccYXSYDZYUhj9K7rYiMYFITwWYZFvnKUACU6EspK80Hi5g==","signatures":[{"sig":"MEUCIB4Jqegjdea93v0mtaFbA0x8ELLMy+tcowScnEx9BcH1AiEA89UFNKLjhh4so0xPVKi59xk0zijrzaT0MHQ4Qr9uI/A=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgQwegCRA9TVsSAnZWagAApmUQAIDhwQFQ4b4OrZrQ6gJJ\nrL4zMg8FGmgewGiMek5BbpSCnAVFJ+2EJxbIJYt6aBH0mbC19TW5p5UfoKYi\nNx4ZVmxeoAcS2vdTHV5wz6UacuFXeuQ64JMX98eGY6L3O2PK+LILZhh9mHMO\nY0x0o8cOiSv+Z3tfevkKeqGSGyTbUz28Y5VivXQ+8KohJ/G8L4NvS1znV5pZ\n9MkrTPlQxB10dl/Ufs67Hef6/D00JnWBW0livHq1b4Dj1ESayNrFcwAZ65W2\ndYJ8VkeQflONmp7TC1Cz/Wgzvo4w1nwPTavunCHZR9vdoeBC6V8gLUkVpcvY\nMU4M7okHAmlQHqnO1b/UybhvwIENz41js6Wc0rN1RPIMKB8Cbkm2/QLfdJVv\nMRkBme6SmIBcmko/ToeLoGVQh+tunLDDfHHrHylb5T/6H/tFVEbLec5jV4JS\noutKFe+wFevPsd+MLynzPfI72B5inDiGGCPaSNIujoutTpCOeP2SV+n59qrs\n7ES/cYIEFFkaV4eZrDKdsISmQUC3HYRgTM8Qi4Id86TrOsF2w6LmdJUXzBav\n8qWaZCHaRGr1C3OkMn7u3piknO4211SisjjV4ewq2wLdPm7272r8DCRm1Zd5\nCBJdA/IZAXJe/wRWx8YDyDn3ONqIEZzKC6hwLUt5shcBob3nXGlEqUw6w1bP\nTmIw\r\n=cuIB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"9a729bc3e368dfd8685190e8460ffef16eac8947","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.f77a4dd1a.0","@material/rtl":"11.0.0-canary.f77a4dd1a.0","@material/base":"11.0.0-canary.f77a4dd1a.0","@material/theme":"11.0.0-canary.f77a4dd1a.0","@material/animation":"11.0.0-canary.f77a4dd1a.0","@material/typography":"11.0.0-canary.f77a4dd1a.0","@material/feature-targeting":"11.0.0-canary.f77a4dd1a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.f77a4dd1a.0_1615005600427_0.09711139079416342","host":"s3://npm-registry-packages"}},"11.0.0-canary.2d6ba2c23.0":{"name":"@material/floating-label","version":"11.0.0-canary.2d6ba2c23.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.2d6ba2c23.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2bc8bdfa84c28d0c6a123945f5a031344e309086","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.2d6ba2c23.0.tgz","fileCount":34,"integrity":"sha512-On2zzwRGRL7evRQnwAclXpbmAI8hEb2/uA+D/XdXuDnAXtzWjoQ+tMb/7pT/8trPJb7SMgBSLfB/M7J/S6Hpxw==","signatures":[{"sig":"MEUCIHLbt9NHCdrwERcqDTSuK2aeZW3wQJ5hX+F8NHUIClXLAiEAr2l8GT1bgNbAGnKufM93oOIFnqRnBheVlX1236X0fV8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgRqi/CRA9TVsSAnZWagAAm9wQAIsyNjGvhvF3/17+6VEM\nhwwWcPIyiF1z+DiPA7gnEJi4PPgxdKBF3Mq4SbxwtLBGKY1yT3JUlBJOTZGK\n2d+NaR2/7IecenrK/XqZq6ZyXceQZVdz6CiciX2hdFQpZCbe+ZlFku6Fh9DK\nytCdvvtID42DdY7JGQ03M9uo7GZolY5UfYMLUylaPdFEcwawwCP666xt3EEp\n0WJE9AMueWi41o/9P1WniN5Re7lUuSdr1Zjriqcyad8jQ4FztkMQvY9n/REB\n3NUe7QGan0x3UqVKLRjDmq0ys5xUShH2XAxLOFugDk0fHCzNI4MyYEGavwky\nPveiaFDAF9TYOoHiEm2bUbqJTFMkB2MutFnPxoR5rbQcXUf+dDq2vhY+hVnI\ndeKYkxQB0hOplEJsua3zliWNJu916KG/Z4ijK89SSCbwFScck5izZOTZMbVv\nO8km58YuIJy+b7pBsQnMqugRNfNhiK0HPOZaP7iWwIQw8whPq9cEZn7d0fhD\nptrpU8y0H61K9qYYJwCykn2Pab9+r9obhcUdnXySHojhRcWDatkmyWlnmkyM\noqoBQ0WlNmx4JfY2qwe9PYtHRyQTijfwOvl87xxmRzf66lhQuzqxCBtMBOAn\nhLSwh353VVckvwyKFgLVyfbTvR04TdkoLbooPvw31ZpR0DpruZH/Cl7Q9lf4\nSBYP\r\n=yh1Q\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a0b889753d981e10bf70b9bcaead70c1549cf865","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.2d6ba2c23.0","@material/rtl":"11.0.0-canary.2d6ba2c23.0","@material/base":"11.0.0-canary.2d6ba2c23.0","@material/theme":"11.0.0-canary.2d6ba2c23.0","@material/animation":"11.0.0-canary.2d6ba2c23.0","@material/typography":"11.0.0-canary.2d6ba2c23.0","@material/feature-targeting":"11.0.0-canary.2d6ba2c23.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.2d6ba2c23.0_1615243454753_0.09849045906499088","host":"s3://npm-registry-packages"}},"11.0.0-canary.7522dcaca.0":{"name":"@material/floating-label","version":"11.0.0-canary.7522dcaca.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.7522dcaca.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"cda29b61701d580936a8cf17241c94f4ea812c25","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.7522dcaca.0.tgz","fileCount":34,"integrity":"sha512-ZiTgQwUeExK5+nmkyH9hRqKltv+ijz98pjSJQX2SoFEFEqOaUrUHO4ajbVbw8HBkFg3LdTqtVVrhS/x7H7n6Eg==","signatures":[{"sig":"MEUCIDo+KPPcy2nFvRrQ4Yc0RI9+0rgdkVEcqPIOhH8THvu2AiEA8ZOtOzs6z/P1MUwvt6vj0ZiC5EKjTZr0PUPnsaRDE+A=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgRsD5CRA9TVsSAnZWagAA2FAP/A9hIzTeHe7MeLlhVrB8\nhpo8CnfRXn+kQlBP5SY/jNeIoW0WNBCF8rwNP+GPI1ZMhM8yW8AtWuNIDgE2\n3dWJYIZ2efVnGkX0SECQlIzGWR6XLXETUaNTeEHkL0hAN9/a/xy/eiHS34PO\nEHOzpevVc9UK0ue4+HIi/KO8Y+sAT4nWN0YXy1orNo7uGlC6AjV9jLtnpDjR\nZ5rYUGi2GiJBMrTTRpdHzm92kIkjS3LlD2h9GxhiUYFz7ORmO2rLDU1/hisE\nCiI8dWwqAKTFnyTibkxYEZGFbQnPD3fNMTdCY/kugrJ8gRn4D49mCb/PMtEB\nywYji7qNuT6N1tbx6HlTuuHcnBw0YwdA4GcTI35U6H6MgCsbU6+mIkY/BSgg\nkOgtc4IgfGtpGDfo1QXthKLnDoNd0ZxtLpEG77DgO1eHx8bu52PI0FLIpTpo\nDHG5p8iSpeAyZfxIhTQUmpDz9as70B5EEtvIi/Ts0I1uqfMc1iIHYN6fh1nu\n6LIHAPjMItQyHgyys23UjW8QtMJ+IMmnSW9lkIiChPfbgDoCZkkXj1s15x36\nfnEIXIoN8oqH5VHba2/UTOj80kLBsZu5wWW7vk9OLwwcj6ldY9wERslYrRVQ\nKeNmPI6Y6pII508/YE/DXivSactC4UBVupb9yxjuiSV2VnqZviThWI4LtH6B\n0qlc\r\n=COBQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"6e73ae404aecb0602a5da37f40b650181ac48062","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.7522dcaca.0","@material/rtl":"11.0.0-canary.7522dcaca.0","@material/base":"11.0.0-canary.7522dcaca.0","@material/theme":"11.0.0-canary.7522dcaca.0","@material/animation":"11.0.0-canary.7522dcaca.0","@material/typography":"11.0.0-canary.7522dcaca.0","@material/feature-targeting":"11.0.0-canary.7522dcaca.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.7522dcaca.0_1615249656758_0.5072576124061008","host":"s3://npm-registry-packages"}},"11.0.0-canary.5c0ab7401.0":{"name":"@material/floating-label","version":"11.0.0-canary.5c0ab7401.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.5c0ab7401.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b0997a466701d18287b364fb03ef2ed5c48e737a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.5c0ab7401.0.tgz","fileCount":34,"integrity":"sha512-8DMf/ZLWMn/DDR8xqjRF3txm4aLCRb7X2o2/2V5EIYimoR2ZsS63t6ewf9edi16QqD8bdzhEefEdbTlkpkPm8A==","signatures":[{"sig":"MEUCIQDE/FCy4Bcq2Fw+bwJdhArSey4UMn6/KQkQpwOhe9HKtQIgSrFv5d0R1BymmSnbYBKd1SrjIM9dyLIcPcK4xdDnY8E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgR/wrCRA9TVsSAnZWagAAxd8QAI03UNGy6jYWRrUbVPHN\njI9gvh3OW6XYa157y9PRrQbur/NX3VZZtpXOiFXwR/xHRfrvjvrDinog1ZUw\n3lRGCauuGa0+y7SunansdyMeNZRGYoqZLr+oWhHTa64UYeJbOUGFVb2PeYxO\nwEXmafv5umKpx0BRYtRwtZcCCAe2u/rVLRwN2/fmqxDjbSJA6Xmye5dEFv6z\nRwu03/A6MEXfjIU+UAKIcP6N/gMFVdmaBkCzbkDD1C3dFM/LQXk4vrsHJ55t\nYt9PFvEsKGrQlRh/qWSxS3kCJKZs4o5L1+o1mfn6MVmysVd8qhHwkdfPSJ4d\n88qwZgrT4YHjFZePh972MBSmFFOQ4ZmP4nHrcFAXlt3/avx5xLKDLXT8RQmv\nBdTxbzNmZixtEyiGdqZUNxs0/OdhnYAdtHXXbZEAEqUnK5kbJLZJfHXINRWP\ndg6rk4SKmG7/M2qh9l6PYpTe27MC5TocdpOqjPqTfNs6s7O0elXEXS+RR7Li\ntzUZITwiQheZ3DtfonnjPcS+yMOFhSHzprmJfLAbU9GvK2lDGPacJD8ZCNgr\nd8mzppRDpHT/EDZddVX5dqZ0WHOeI7eEvhy/3v2jTZ6Qiiom10Phqm5rcC7r\nWCH6P/2EIW5t5SEmDRKYpFdZpAGqlWmI76q9PYQuLthwb1SRiXoEUEQXBBZ3\ni1XU\r\n=uY9P\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"95ff5a1121ca15128776896b8e4759594ec51246","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.5c0ab7401.0","@material/rtl":"11.0.0-canary.5c0ab7401.0","@material/base":"11.0.0-canary.5c0ab7401.0","@material/theme":"11.0.0-canary.5c0ab7401.0","@material/animation":"11.0.0-canary.5c0ab7401.0","@material/typography":"11.0.0-canary.5c0ab7401.0","@material/feature-targeting":"11.0.0-canary.5c0ab7401.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.5c0ab7401.0_1615330346737_0.9691843478748889","host":"s3://npm-registry-packages"}},"11.0.0-canary.59010b6dc.0":{"name":"@material/floating-label","version":"11.0.0-canary.59010b6dc.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.59010b6dc.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c4da69a09c29aa7f2fb9e64006425866d612caf7","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.59010b6dc.0.tgz","fileCount":34,"integrity":"sha512-227xsA9W1w8eAkymR71b3GvW9YPXdsEAJmv1JgzJxWbTqMMl+ddCJ4kPRHrApJvfiwgxCptlklJEcptUI7aBMA==","signatures":[{"sig":"MEUCIQCpwdPzEaaMGhhnO1fLFliMPyVUL1tzYxwBJVC5vrTNCAIgL/XgjhjLHKE8NLmHBooeg7yut+3voOG/9Xu6d+eeW28=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgSPpuCRA9TVsSAnZWagAAZVAP/i89ZjkXepDlFA45xQDP\nKwKuy/5YAsFE1CWnIHqCSYX1PL3IjqG3X6WGRm/UNWbat0B0vHUJoWeXcuoJ\nO2qItFJimmsBU0vGStFnHbCqbbE3BxuNtaGXl00FPOtv7ye0s8J1eEWsDFGG\nZtG8Wn0cR2net8S8I608NhS17K3RWjrn/wvvL81GutpuonXqXj5G0mBONoXN\nk3Tp8/n77QYl5mdjBrFsTjeblSJHG1ue70Fq6b+jLCRRBqraJWeiE0T9n9/Z\n3e3Uh0B8v5FZCBdO6CzbEVow+4HOEOUL5orAsw40rDItxRI97kg6/NHOKg2X\nmFi8vgmzGFn2tNw7oDF4TcDERsLCTfQn5ft/KR87LrOZouBE4oJ30bz5Gibn\ntCeEtZVUYJQlDghk9DDOBoKQ5529HD1kqFqWDxTR1HC2E5gwDgsHNMRqAGpl\nm1fEHld9qLYPhUmkA8I3JoyG2Bjq7itJNW7gTWlZkwc/jM6mddDgpkTtgR8F\nmJvnD4EWymjLiiuv7XM3r6KsmnGMSlidQK0bv+O5YihYXA9xuW1B8RjencjE\nr3R7PBn6V8u003q0G8gG/wTjpQtFA4MNFxnIQJQ/CmN2OUaV2lLtB17TRCgH\nWEqhSnsD17fi/HrZM0ylU1FNaFpUbWKfBMgCJ2QXw0DRkzRnAbvrieFnIjGk\n7F/v\r\n=0iNX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e697574285a5102f4c1e5002a85ae33a3bf2210b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.59010b6dc.0","@material/rtl":"11.0.0-canary.59010b6dc.0","@material/base":"11.0.0-canary.59010b6dc.0","@material/theme":"11.0.0-canary.59010b6dc.0","@material/animation":"11.0.0-canary.59010b6dc.0","@material/typography":"11.0.0-canary.59010b6dc.0","@material/feature-targeting":"11.0.0-canary.59010b6dc.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.59010b6dc.0_1615395438159_0.35303177537038644","host":"s3://npm-registry-packages"}},"11.0.0-canary.9e52f5544.0":{"name":"@material/floating-label","version":"11.0.0-canary.9e52f5544.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.9e52f5544.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f72848cb7ff427be60bbd5cd8c8b5dacf8fdb83e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.9e52f5544.0.tgz","fileCount":34,"integrity":"sha512-PI3Ocd7HZRT1950bniyjmhqe71LnBb+psFmUjYT6mkt3vPT5qtFiycfW3ZIAM52fNdQEiQWE4XJdCKcPl2S6eg==","signatures":[{"sig":"MEQCIDBf822Osk/Yk3Ky4Oq+r7FLtK/iVs8qe6XR7wFxWMRNAiA30OJpDqpEjyLNEgPZ3CZXQ6BR5UmKZ+WGJTGxGVVO1Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgSVVNCRA9TVsSAnZWagAAVRIQAI9rFwK2xFcyhjr2oNf/\nciGAyJxygOOy0YcQS7t1TjGK/ilqMabXI3YWYLAtnKdZYrbaZHlrDjypIh9A\nzP/rvtERa9HEBi1HYqwedsk/EiEcjqzSWzxcm+4m9lYlH3QKZ3JXYteSCRj6\nABTB7BE+4yS/ZT4XkbaXcFB9IsP59+Z/Wf/Wtm7wjjWDMILajk0L0/YQr5wI\nD/+hAhpSTQmfYMyUzTZDe1sY7Q00epAZcgMgopmeYryVwgcHJSlTYyk3snCn\nPERZZU2qaPjvbCP7NLam0rETFpwaYvpAwsGYLHbfrPq6aAtjuMpWgrrzcnLf\nIIsSBu2OktI/MOv9dKt7Apx2qB35Uowz6AeOlYeK+hy1fFL0WdrUIxvVf4J8\nto8tuJTIyZX3Wa9icXkhbALPuQGON9q4UHHh2aMwAmCdt8iFOMikazwvPG6A\nr2kGsb7PGz5r4uJh6meHs8ChPtRi5g4j4cjCJUfLeCJupHPNaIMywAnefnmW\nu/ZFZXUJxrnEC792621j77Thfw/Z/eZE241l3Auut9JvpUCvAJUceK0s/P8z\nXr/wRNkCaDzMu8BddrKUrjoRiQzPcajEpwUGy4xIi2vWJHGPSlHHHYMe++jd\n004UU9G2YDFsSQN30igNXLSOBFVi7/McetK/us3SUlBd0do2Z48C00NXzMtP\nAAxJ\r\n=DBnW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"4763f125770ec8e3a6ea4d8f1f5f607371847e45","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.9e52f5544.0","@material/rtl":"11.0.0-canary.9e52f5544.0","@material/base":"11.0.0-canary.9e52f5544.0","@material/theme":"11.0.0-canary.9e52f5544.0","@material/animation":"11.0.0-canary.9e52f5544.0","@material/typography":"11.0.0-canary.9e52f5544.0","@material/feature-targeting":"11.0.0-canary.9e52f5544.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.9e52f5544.0_1615418700689_0.857256856758674","host":"s3://npm-registry-packages"}},"11.0.0-canary.a678806f5.0":{"name":"@material/floating-label","version":"11.0.0-canary.a678806f5.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.a678806f5.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ff9647dd04b0dc23c5ce609d3fd818e039191a5d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.a678806f5.0.tgz","fileCount":34,"integrity":"sha512-JCPyiIRHvlK3jA/wbvNzvas+pU5c7TojV7N/7CW1JME9Jd9IuvBe1D3AzlisPjCbrX/RpNejt2q3XFBHywmpIA==","signatures":[{"sig":"MEUCIBHp1qeOMha5i4dNglzx7Av5hKcEusQ8WmlfFXFSV+oOAiEAoBTMTi0VngyLAJuJWW15W7KRIEUdN1DODY46SRjKbCk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgSXdGCRA9TVsSAnZWagAAd4UP/0Xv7ite1HEs3MUrkY/L\nuIZMDWohE9xZZDh34cUjwBzhj8i7iL4O+VifRrZ9FogFgiE9AbMFSaaw/GHq\nJTSAwfWqk9ONJGaxkB3/DsAwhbqataTbGSeWDyLEVR4P7p+z7tZcJjdLStkc\naMZSipc31KeaGLsL3nHgjwbknsvtGgiIhDg8Diluq0dcRRQ/hKHBtsoyEQWV\n7/EeTBz8xOAadruA4oYxGJwB3tpIbJoW3msVrSauDKdqyqcmH9S1BgwNPOWT\nmMqX/7wQ8ICnB2R+h90G04VQfFix4g2Bm9sbxOz4O+e2RMHvC4/a5qL0FtLY\nEBRfK3TXlKCLovmpsyjZMyPtoiND+a+rlGxzAOkAsPSFJ/rDC+SLGb/UvG9G\nLvApZ/yLPAp1/SVkOnGgKA41i/YQjaiCJh2bNOX3D9OS5kQ3bLHv0Q9XjMET\nfMUV14OKQiSGWb9ixoYnLJNoa9tffh/0zYJw9qBO7O9FCmAQWDQp1PT7Ukx8\n4Pw2EwrVNMWDWWagMNF3yEJ8D+2iqxQlE9+Lm1+B6g8wZyeWYof7wQUn3BDz\naMIoeZleOiP2/bqvuSYOPqioiqVGBQ6Rq8FXSEaImyh2khhXpteZils/G/LT\nSYo5ta0799EhnnSlsZuap8hHAbBUgcus145ILoqUDYyiC2wrMCvngFs1Mbzi\nuqOR\r\n=y5AU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a724ed1e64d54989ee4c27c71935f90fd5614f3e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.a678806f5.0","@material/rtl":"11.0.0-canary.a678806f5.0","@material/base":"11.0.0-canary.a678806f5.0","@material/theme":"11.0.0-canary.a678806f5.0","@material/animation":"11.0.0-canary.a678806f5.0","@material/typography":"11.0.0-canary.a678806f5.0","@material/feature-targeting":"11.0.0-canary.a678806f5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.a678806f5.0_1615427398315_0.5785494968565441","host":"s3://npm-registry-packages"}},"11.0.0-canary.b2d22df5b.0":{"name":"@material/floating-label","version":"11.0.0-canary.b2d22df5b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.b2d22df5b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3ae5ed2d9371fb78f6f80f539348d8d3099be597","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.b2d22df5b.0.tgz","fileCount":34,"integrity":"sha512-qFdotmhYFH/2mj4H/c9DP9rOfJ/WYScWT+hswV/hK4+v/0guJWuyvkS0TuFAASYitMPnOAG5zxXVjDoguI6lGg==","signatures":[{"sig":"MEUCIQDs8t6J0BRPtM1uVH4EUM85+YopkVosMhToyPDo2yqyigIgWKgjvig8c0ttUZs9Q24CO886hAfMh3cwBlzGONDY0fA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgSk06CRA9TVsSAnZWagAAFqMP/AvTQ1Ic/MSSsRhn81Tc\noFu7GnITB2aF4DTwXH/vuab6Bff5KmvIUHeXbk0gsUlxJ2Y9sEbFqo0nj54M\n0HjN/atPU62QpKlKhtKz/OmLi+jZUKlJU3MJMp4j+cPEHpYmk/bdLs7+v7Ly\nJp5ZLt7MAZMkYPak0QfNKcwjAjIdW0wWKrYbkGuhO7ksHhd2DkBQQHKwOoOq\n1GLhlC7uEoM+P92jjtsOC8S+bfOpQmW1sCP9viH+Z5PfP3MoEL3BeHf4Hf0N\nqS7zedPSAFrPxYbz1QxerQMbct3bEWskHhhZXNH/cLrm9SJFV9H8hmDpQoim\n6C860lD0dMSFLkQ2ufB/3/z4FP9ulodR0I3DUEau1zApWScL14Y2mFmd46OA\npWVbMl/b4i6TTzXZUIrf4ysOw3E3/osMaRWn/aeWm6ie/Xof7V+9iZqcDLx3\nK3VfvSIf5udcf1/EA9c7QFp2MRHEE6HzqX8xj3LojZAdW1YRFEANT1u+sqsn\nXt0dPqSK8Pz6tr/sFeG6FrToUkyUEfXC6hbe4EyJYAgqDINpt9MD74Rm3MHc\nOjmXCtxzNVZWXZyIgOIR4OZuH7dENRM1kzAfWwaUHPnqoyZGC3AN8MHMCO4r\n9620vXcydxhSswgD1r4uvHxDLLgW7jNsbGGJTxl+o1iKmI8ABGdD4oafnu5c\n9I+E\r\n=XMKT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5c38fa8d841f5b293e55e4a22202bc6ea8220874","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.b2d22df5b.0","@material/rtl":"11.0.0-canary.b2d22df5b.0","@material/base":"11.0.0-canary.b2d22df5b.0","@material/theme":"11.0.0-canary.b2d22df5b.0","@material/animation":"11.0.0-canary.b2d22df5b.0","@material/typography":"11.0.0-canary.b2d22df5b.0","@material/feature-targeting":"11.0.0-canary.b2d22df5b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.b2d22df5b.0_1615482169644_0.009336242368154224","host":"s3://npm-registry-packages"}},"11.0.0-canary.81911b707.0":{"name":"@material/floating-label","version":"11.0.0-canary.81911b707.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.81911b707.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e67d6024ff09d80206c07da95472e40d736abc50","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.81911b707.0.tgz","fileCount":34,"integrity":"sha512-Z7QJbCrIpw1UnzpjJ9fi6sNJNzH00GEpJqUdL126FfpszlsgyI3EbpajeT4djivh/4Sbij1CXouwS2hHxb5iYA==","signatures":[{"sig":"MEUCIH9+MWaCkAisHVR+hlZS/zGb3e5tsf6a7KPiAKlOD1GGAiEA4ZEtgVVi7slKY2mFdb4WwZEImOrGidr91Y8j2SLZhTg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgSmAXCRA9TVsSAnZWagAAIcQP/1iWJOOU+XMO88SAukIA\ntf2WRt26PFvENc4U3TTfrrzxx4KKbz/08wKof8nQPtZ1WO87lCRZUNwfMAnj\n1g0LZ33Pk7mKHquiVE5Hnm2qoAYF+2VsmBAtNO9ZEduBq5ReY+PIuQyqxG7B\noPcyXUXaqVujkY0DIvACs99rlPg/T+YlzPApY1PI81lrzvTi7SIroC4ic0wf\nl6eB5rLg9ev9qh3kRpmXcEqPbsALaDblMtWzOd/3LEKxse31IVYZdfVT5wyC\nkLF8F61cc7vs8MFZ14MlRpCSXeV6t3bDZVkY7p/wp2qxxcMUyg5+3aooOLA7\nQ1BGqwbDqC/WCUAoHdrEy8tLPON0YE0WgaevruMv2AEnZeY3RKUVIPaMkhFA\nY84BvfSCvYPtYy0O5GZ8JO5TNlRnNyBM7DMnrrAFjpGG0xgUflxD/AilF9E6\n7o4tC947YuoM7H3AxBXBV20xni10Z6oexE9DeXBIFDmjlwFeC0g1mR8vD0/l\nNnrWdOvjt8+h9e5CvylDLL1voCUb99kkqrllCyF2jRSls2byJS18gn4MAicM\nCIIU5tn1dIH+wj5u/fb7TM3yH4U4NiRLAV5Fffk98EwvqAbHHaMPZmh3a/rU\nbU4TiqwIv3TcnNRkpLER7+UBkSm0+O49e8Q8FPwOAMQKDJxFgMfivfVEZdzl\nvKSB\r\n=vpfT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3c1bd5b1d6d6453c4f616633e1d16b1fe0812814","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.81911b707.0","@material/rtl":"11.0.0-canary.81911b707.0","@material/base":"11.0.0-canary.81911b707.0","@material/theme":"11.0.0-canary.81911b707.0","@material/animation":"11.0.0-canary.81911b707.0","@material/typography":"11.0.0-canary.81911b707.0","@material/feature-targeting":"11.0.0-canary.81911b707.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.81911b707.0_1615486998903_0.23349044845841527","host":"s3://npm-registry-packages"}},"11.0.0-canary.9eeb35c38.0":{"name":"@material/floating-label","version":"11.0.0-canary.9eeb35c38.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.9eeb35c38.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"0a4cee6657e95c15594bc4995dd32a7310e0263a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.9eeb35c38.0.tgz","fileCount":34,"integrity":"sha512-ejbEWkR/HvTd0L9m8tasUWF/XP1dAD3wJ2PA/Rvb+OZ790Z1SRvVkuTEUPCNRvVu7aXWgzq28gsi1tvEpKHvJg==","signatures":[{"sig":"MEUCIDmEWXIhppmTIaAayuyxOX9Dq1S+WTQCuQlxbEDBnM92AiEAhkUaZmh/90qV4jP6BD5Wp8AdQA6sMrcaNrWRRBeoB4k=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgSnFVCRA9TVsSAnZWagAAhHIQAJQzGMm41TsrRPOiZwZ5\nY2Hg5rPeguWxhnHAlwA5colXY/dcOPmm9fZMFM+UxjfZXeplVDMWD5fjgcNj\n7QjqBM1E4nxAVZMnptr62L/TR2Z2iOo7PyaiA0NziR76JgjmY9t3jX9tN/+Z\nCUt4fpVjePFOgpNzDrWADENGFn9QZ5xHgiwImUc9HrUhMzxiHQIL65bMHKdQ\nlPfVEoBPaR/t/lkb2dYrCjtr6gl88/PPJiAQXxGBLT5nu2J5/QgEB0JLuL8u\nX94Gvgipmr2OJK3iwkE3jysfvZcBw7su02foM3/9R2/BxCe0Rn6IA8XwbM/F\nzNAOZQ2jZtJu5r7KLRjpX1Y6j+zdtMglcUj/gvIExDzkh07tSIEYdQQnNo0K\np6wJj1Ltg6V1tzVLhj45XmAjJbGhFHseyp0A3cIWGREfs5+lhI19YQI+luoZ\n8WpC1AIzO9bchVCqJzHrnq57ufGZc+gh73YRHgBxHJTrs/T3D8gPGg6iIgU2\n32MiUi5kGFBvsif+pcpdiWTy+EZl2klGp6msKX65jf3a1p+dQotq6C/V2tQ3\n/oAnqYgp1bjzUeQXBX7CADSpHKeLsVsCoEAf/OUTvX+gTkX1/yZJAIg+Uu6a\npO85sL0LIOoW4ULJxVO+OE0UZG8TTnTtMgkx39POFfor7sH4hy6xKybtXVFZ\njkme\r\n=2r1G\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"147a2a556e5155bedce0b0f267f64c26cf87d0bd","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.9eeb35c38.0","@material/rtl":"11.0.0-canary.9eeb35c38.0","@material/base":"11.0.0-canary.9eeb35c38.0","@material/theme":"11.0.0-canary.9eeb35c38.0","@material/animation":"11.0.0-canary.9eeb35c38.0","@material/typography":"11.0.0-canary.9eeb35c38.0","@material/feature-targeting":"11.0.0-canary.9eeb35c38.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.9eeb35c38.0_1615491413270_0.11654508797179308","host":"s3://npm-registry-packages"}},"11.0.0-canary.12be3e95a.0":{"name":"@material/floating-label","version":"11.0.0-canary.12be3e95a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.12be3e95a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c0a3c3dacaf073914b5117da499aec5f427475a7","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.12be3e95a.0.tgz","fileCount":34,"integrity":"sha512-zW7HAuh7pYVfUd6fNzyIk6Q39F0+v1awMFI3oD9+0uIfxmn5NZRMrDtWbXwfCjBgzvcWF5ogNn4MknuPUqcsvg==","signatures":[{"sig":"MEUCIHar6S73S1u7wz2kRj3n5Ww59DqBsNMzi4kpkYoBg8RNAiEAuRSR+SidITHqnViPAccGAsgZBpN4saxxQCw/qH1LveE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgSncaCRA9TVsSAnZWagAAASkP/2HS1/5B8TBLgkw+oC5c\nrFS48N3/38gXRY9XIUOfTKNSwAVNySNalC0/JQIS+pzGjECAZ3xncBumR7JT\nxnpo6VSnYHEjyVCOVVQ1DAjKU4V+oIrPRxUAbOdhG7PZvGMira+Xqb1nOfBE\nW0Cwx4O2ErwnYtvFN+CF/D5aQ32BzuvdP3rdr/3PixIbzHMUlTTJUG3eDPTv\nBalJIgZnGWzmVjJ20Oh+vLe9WyqXfrBZ/TYZjWUVICS6abFLq2A69Pfresha\nkgw6OKCc+O41y1gbavSPZahC6YlcGltqC2Sy+A5s1jAYqUULLF76LGC2XoHa\ndaLmavV9Du1vZ+3YW56XnFt48Q6IP4+A6kmlQ7Cpke+KeQxA4CPAhKRRAB18\ncvDyaSnVCDkY/ABgb6q1mbe8hYs9Y/MlzcbM07a9miyuU9EmKev6lcDErn1I\nwvwV5FDf+xsJtoD4AKLFlzm4+RCv/WxrPSrZKyueiy4Svb5V390PLw8EE/0k\nRWNOL6UK5wj9rt340uVbojPMR1IKu3Fgw3CMgxMg5rYtcJLM0rRA2Bzh0k1O\n72Jd2LwyI+hE/vZT5AKiXYFIHBdFPWBJmRVI5jow6+fW8IOp722jifgqm617\n1/m4HheQZzfazC/fzVMhFFvhwqA17fgMjmJL7+WdHQyxEIq/xe2XcGMIT9OD\nfAyz\r\n=AQ2W\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"883077446617b632d698e09818dc9d5903a7586e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.12be3e95a.0","@material/rtl":"11.0.0-canary.12be3e95a.0","@material/base":"11.0.0-canary.12be3e95a.0","@material/theme":"11.0.0-canary.12be3e95a.0","@material/animation":"11.0.0-canary.12be3e95a.0","@material/typography":"11.0.0-canary.12be3e95a.0","@material/feature-targeting":"11.0.0-canary.12be3e95a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.12be3e95a.0_1615492890280_0.6040145910880717","host":"s3://npm-registry-packages"}},"11.0.0-canary.e683bdf4a.0":{"name":"@material/floating-label","version":"11.0.0-canary.e683bdf4a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.e683bdf4a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2404dc71f0765784a3836c0644b5e854733d74b3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.e683bdf4a.0.tgz","fileCount":34,"integrity":"sha512-X6ZHF656NSM2kQoaKFVQQlyzPB27ycd7PcZ90s5sKe/Rfj2jlZR2SWxJqvQqbh9CYUiu/ncYStBQbJv+CVSXEA==","signatures":[{"sig":"MEUCIAZlkV6aGMbDaPqZpU2p6IDQkrCCN+LoWxes+2jVK2GaAiEAmkpCIH0j9qYeeUkfpqtqfzzo+ySezXHyRO1+OIWsJOc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgSnjQCRA9TVsSAnZWagAAQgcQAIevqjnEWg5Pmp6fpmF3\nx9Nh2/9983b0hixtS7LLnBXXJVpONWY2QhqVqm7A6lN8DZAj9w4YcWIQ+fx9\nB1IrQpP0idTM+oph2M5QaXErujnSVJRrbE/+iFgjSqKbA69u5Sg3b4YcBxzb\nit1xtJA+oUhiBQ4cL3JEpJgf5weukybMIakpiSs7rfu2AVdeIWymyhrCiA3G\nrE6VfvyoytGP3wVWtwrUbFjJFUsj/j3Ib86avPp1YqY75a+MV4qzDqcKeYFy\n7nXaC7YM3sz8gXqbX14NZu+Jvret7g5vff3TrxadLh3+ueCwnTGZ8yl+C0/7\nL2++SgVhJipD0Vx1EFsWG/7YcwtdfCqeXbZm0clq4CXMUUFrcPA5DY8d+Cak\n95+6I7RnpRJfHyD5V6+LAgaloQ1IOFzun3bxCM9xzmo9l7/bw6U05fi/kTAi\nS7ombs2k/MgvM/7CbYvrmHKWUGU3emCkgO0z9xQ5XBtIsFAoUDeL4xpIKXTc\nkknaOXhehGi7qY0YJgA7SgNLByplNFrswdN5FwykYCHHDtJk8aJfEINq8zf5\ncQXgoLL00Vj5xVdZf5PwUfV+/4ewPUxeUbNqJHT+FOGZmx/C87lU+NT3Hezo\nsKUFeWJCBfIDjOvZjL8mA9ohj24V89tvZOd4IJ8BOmUXJljExFAJaqNxl4Uw\nQQYd\r\n=kdGP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"0323fd7f39f825f8717fba8542628d111777ae35","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.e683bdf4a.0","@material/rtl":"11.0.0-canary.e683bdf4a.0","@material/base":"11.0.0-canary.e683bdf4a.0","@material/theme":"11.0.0-canary.e683bdf4a.0","@material/animation":"11.0.0-canary.e683bdf4a.0","@material/typography":"11.0.0-canary.e683bdf4a.0","@material/feature-targeting":"11.0.0-canary.e683bdf4a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.e683bdf4a.0_1615493328277_0.057340067505585735","host":"s3://npm-registry-packages"}},"11.0.0-canary.a07b6d486.0":{"name":"@material/floating-label","version":"11.0.0-canary.a07b6d486.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.a07b6d486.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"02f7ba00a03d994a130478509181fd1a601b6527","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.a07b6d486.0.tgz","fileCount":34,"integrity":"sha512-ExO+RNQRb0293F0+SZlbRxY5211COT21oVA/1LrP9nfN2iE51jyTzvR5ntrEechUH8n3ziockWUECPYADIh4bw==","signatures":[{"sig":"MEQCIF+gLps0h/0lgH8eTKDW/31BpkUpONtBIKAwh36jLREyAiAfSlPd/c18phI2I6mRefBQp2PC6lQqZRqgCZNcC69j6Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgSn6ICRA9TVsSAnZWagAAfr8P/1IKNB8Ig7Rhc/MSgqYE\nTKAtIF2iRDl4LDtBc9utSBQK65x6uNQArLwVVuOh0AtdTyEl39fDTlPNqMUK\nsVD+D8EEP5YuObC38eiKYpm6tnBPSxodnx2t/o107NeXozoPTPnjCRPj3FgQ\nnfd8/XNH56NcGdR+CY0jA8GzM4Rpsc08Eg4TQaqZHmSOQl465YIT+lWvLGiW\nWUPjwPnnAzHum6M5LwjoKcub8ShEias4pXnIj8YMP39GVOEXzZ1aO8cwUw8m\nSKs6Oo+2mMWBs207bq9yNHgv93ZrXQsBhKTSGJU2/dmlDNb1UoQtluic1UB6\nnnr+sfTaAtkGGVa/orCaKi5nKVvMisRD9UbAmx/+ttA5mRgtLs13HL1yUL02\nBNQo8+g34sKULcFf9dtgByxPtQg93AOoKUr3sXH/Qra1EcNuwOfXYB64356U\nVZlWq492CQXKbBJfjvTg9Hl65iFtj5Dm89ifjxCPqQM0R6WMc1FgEZDeuRkj\nIHPryJz8GUc4dm9e+kiNaNYsYw2rbZroyl/RUGnHNR75cnTZkLxnWW1RtQ/P\nrxx6Lm3ujq4CYCo6Zm9hMYjjeBNdU8RQ/9ThZ6qSnkjy/LaMMnE4kLvuIrOk\nX/FCpoQrS3C9IZ3iRDQhRhcVEfm0ewgCr+hGMn5L1RMQjFNN+0dea82/ww8O\nl9rg\r\n=W1pP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"425bbecac77849f8786f0a32de18a168e1874c9b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.a07b6d486.0","@material/rtl":"11.0.0-canary.a07b6d486.0","@material/base":"11.0.0-canary.a07b6d486.0","@material/theme":"11.0.0-canary.a07b6d486.0","@material/animation":"11.0.0-canary.a07b6d486.0","@material/typography":"11.0.0-canary.a07b6d486.0","@material/feature-targeting":"11.0.0-canary.a07b6d486.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.a07b6d486.0_1615494792211_0.21210369539009744","host":"s3://npm-registry-packages"}},"11.0.0-canary.1e0653477.0":{"name":"@material/floating-label","version":"11.0.0-canary.1e0653477.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.1e0653477.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"25cb2bc6c97285763ae7b8ed6ec78fe00ff26fb8","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.1e0653477.0.tgz","fileCount":34,"integrity":"sha512-et61yM6CU2IVQk1i7S2jHV4ksmkilT4CzU2vCXBvwi4aLdUZnkBwfm/SLlaUoHgozvw0OgyWaT6E78wVd2rCHg==","signatures":[{"sig":"MEUCIHqb2HHwL8iizvsKzi8M8CkAfz56SvQqnNA5s4WCL5+5AiEAn2JDs5SI1eXVuRgpTtabqqi5YF6Wx2VEevw0tX1HL28=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgSoBACRA9TVsSAnZWagAAKkkP/2Cgk6vcIBBObuDDVW7b\n/CS5suJFpsp83iZ+Jy1J8hQVAvf95FJyd3G3c/10r6YrrdEGbkOM3kDJmCwI\nTR0PcvePt/6DYZqjkW/tgSaCndHex8L0T5WZn8SOxV6IbQxMHtAv3cEjpCmW\niA9BL9+pswM4rBJFHe6zMPRq+UwwqI4uB37ig+5fGvjubbPShBM3ZxGvcFVg\nSrqx/cl6loVjEsaLDrCylgpMNju2ol87E2If983i9lk/2W6tzzoNmIIRtkTL\ncKkZjzGXYFfc8VXymp8EoEhVMPplODttWV13HnWFc1WjtPmcFAM+mjuaVVG+\nNbRLMWXQ/ZgRTqK7SNbHJrm+uHk1H8ROJGWIbnE9wTFKQo3z3RKLAT6rxm1I\ncjuvkmilPWR4H54CyRT9mCp7UEFLnAkkWJTEtcEMfZsl7I44lWsC2kyfiRI9\nUe5IySg+NNluCx5o+m2dqghRzzydCHVd2RR95Q1FgF504HKTZsbMzuXBDJMV\nY9iAPJu7/KgZBxYrAfQALamxJ5ONNqdwCFXd5wt9anGrIbq7oL+b9pwaxa6a\nv/czbM9HTAGbNStBeaJUvIKjS32ElB06mzDe+guwAm5H502PQR0CLp77+fv+\nWjJTc9qc4GoI0XG12jKmqyg38dAy18xAmauShJY6X1i9BcgxBJXwVP7MRMtq\nL4g/\r\n=2HJt\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"6130e0fb82d7c39da4ae1e02df8f0851da419fba","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.1e0653477.0","@material/rtl":"11.0.0-canary.1e0653477.0","@material/base":"11.0.0-canary.1e0653477.0","@material/theme":"11.0.0-canary.1e0653477.0","@material/animation":"11.0.0-canary.1e0653477.0","@material/typography":"11.0.0-canary.1e0653477.0","@material/feature-targeting":"11.0.0-canary.1e0653477.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.1e0653477.0_1615495232421_0.9932040036414551","host":"s3://npm-registry-packages"}},"11.0.0-canary.148e8cfcc.0":{"name":"@material/floating-label","version":"11.0.0-canary.148e8cfcc.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.148e8cfcc.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7d36a55e3a32a30975ed09e77226a0dd709d5443","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.148e8cfcc.0.tgz","fileCount":34,"integrity":"sha512-fUbU6MTx0nxHT9kYL1uw+h3CrZm24GOUpXhmMG0a4B7zqGsDoVXSDidkoaAt/JephJyTHa6bJouJMBqLyLsqNQ==","signatures":[{"sig":"MEUCIQCj1mVOy2zHPHjqKwopBxzyjmG0TfkISI8TYC06a92cnQIgAam/haTGt2IpxocGuHTpumogJU9s9W/0HHxflKd5d4U=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgSp0/CRA9TVsSAnZWagAAGDcQAIP05dp0U8hqpmtS3dGD\no8wifB/ZFZ+7vCMaKsZi3xRIlDJ9nc15UjdnI80cnwe+ReJa4v/aOOYg2RBc\ns8ttXyKsAuhWQHb6abyHInh5vQzlquN31mop/Wy/j6swC9PCfF+0CiBs8/yF\n2U3xzBKdjC0k6TsBYRp1aVM4M4wNJKRR5OsgDGO0DwMAUxoobCN1FACk9+Tw\nxhaGlmp1Y2SuuyRl/GM5VUk52U/Aw2BLPzTMWxmKeiVQ1ZBDfUTT0iTpYV7Q\nWfBER5gPGCm1cMJd79mXMHrG9/AX6Hiex54YNC31UNcRSDOTP8HMVXRrt4TZ\nVf2q07EIQeUdOkDHuDHvT2WJvcfBJ+Xa6GXBtiSi/dWaTX4bWCfGh9O8mzEj\nwJC+HVM+Gf0CibRXJVdCQAyIdNGjI/NmWeKHxwa0ZfFeYuRHykMU/eXFEhSA\ny9GH2nJW0bZfxvFi4XmHnG4uRxZt3xGlYBwjO6l/ELc45PTl+yI5CYmago0t\n02QTHzrID2sblVGY3blCFGrQI+7b8am6tXKUtIWHPpFCFEdptuztSuRBu4v6\nKWrErS4J+hxms4aNL8deC7AHK5/c6Iht8u5lHiJXXo7hyjDUALT6x9TBPe36\nFhg79OcH1AQ/S0AyrAqOE8e/gvfablZILjQ8JwRooMsBQgKq4uqKB6DpLPQd\nqqu/\r\n=hM2V\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2e686ac2d72b7a249bc4deb8b09742bba99ce581","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.148e8cfcc.0","@material/rtl":"11.0.0-canary.148e8cfcc.0","@material/base":"11.0.0-canary.148e8cfcc.0","@material/theme":"11.0.0-canary.148e8cfcc.0","@material/animation":"11.0.0-canary.148e8cfcc.0","@material/typography":"11.0.0-canary.148e8cfcc.0","@material/feature-targeting":"11.0.0-canary.148e8cfcc.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.148e8cfcc.0_1615502655045_0.5887309251559925","host":"s3://npm-registry-packages"}},"11.0.0-canary.73a227194.0":{"name":"@material/floating-label","version":"11.0.0-canary.73a227194.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.73a227194.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b038ec6c1ee02d5eef725d3869cc10833c114d7f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.73a227194.0.tgz","fileCount":34,"integrity":"sha512-N53ToIc4SeoKzjdxnhmp25Rlfis4w24Hirj9nDnAxbjOHKTfJWU5Dr+ooxX3jPi7gj5JZnre4JV54wGIKLqpYw==","signatures":[{"sig":"MEQCIClnbdNi4uLSGAx6DZBKf6o/QDvzd7D0ZOLx4MSot3c7AiBal4sLFjfJXrkxzCksgq6uZpM8xHYJVdT3d1+rXQEk2g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgSrSjCRA9TVsSAnZWagAALkcQAJ7V10c1oQugefxnTgvv\nsiSwPL+ahffW4Tmm+XVuJtqht5PqMK2QJPTxkhTjXw++foNql/PBBhxBBKBi\nIF24lQat7KkS080430/19i+lR9wgpKHtpl9kpfEH38Z/zljaUy0bgQ02DaIF\nn+62AQ5YOlQ/yamNnEgDzOy6wW3BY6n8qMahU1xD4Xvv6CTtmhRr7Gvq/adI\n62/gnAveyR2t4U3JL9XT2bh8hlYEKqRhFmq1kxiDJZjcEVLvrVWHPM/eopnC\nzA3zouBvzV2WEyjXxmkDUEvCn1X/4XB9ajebVXGNhMnSCmoVhjvoBx/46mi0\nj0kGHDTjAmp3+KnzlREPGadAFIF5KUn4tNsAsOxq5cq7+z0WWEtMZvzpH+VX\nHQJ0ryFUuvZaPTYb2RA1uKDXfH9twzgaDLJq8qOFneJMk/Hi2GZDRee4FKCq\nDhJS18V72imieY+0Vci3JRqn1e40gkKmX+juBvu+6rbJ4qvoyHl2lP+42mEp\nzw5Kj/kFjK3aGBkaFcoviRkVHDgi6KHRs8a5v4OhvFlvGTbgrBb/x/qqvBej\n8zHPBHJFG5pl+t1uZGbggndNdm07q8RXPFkdfUURqKnotXwwjmENT0eDLr85\ngZwimzYp6qujmtT8KZ2ptL/MHfEL38fpy1EpMqTg7g+F2j/+SBrAjKbMahks\nri22\r\n=0lm1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3bb5344393057d23abf5414ff61402a5091ac74b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.73a227194.0","@material/rtl":"11.0.0-canary.73a227194.0","@material/base":"11.0.0-canary.73a227194.0","@material/theme":"11.0.0-canary.73a227194.0","@material/animation":"11.0.0-canary.73a227194.0","@material/typography":"11.0.0-canary.73a227194.0","@material/feature-targeting":"11.0.0-canary.73a227194.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.73a227194.0_1615508642456_0.454004962308006","host":"s3://npm-registry-packages"}},"11.0.0-canary.f8579b7ea.0":{"name":"@material/floating-label","version":"11.0.0-canary.f8579b7ea.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.f8579b7ea.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"16b344f815999f88efe1d864d656e14e77df49ea","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.f8579b7ea.0.tgz","fileCount":34,"integrity":"sha512-/gjvfZo9HQ/Hj7+0Go/3cyGmqXxDaCmSfnwCje2X8dX9pUHv8Iow4OgGo7lWejfSI9g4GzRo6WJERuHh3FYFRA==","signatures":[{"sig":"MEYCIQDAFyb/IKCQZQXjcahM+DYESLvWD4odpqgpvihZUrE4hgIhAL8+z6YFY5Xq8frQcgPptNE359ybSQhEalBHseJj3RKe","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgTB1YCRA9TVsSAnZWagAAV5wQAJMUgBSruQHpZ4FMH0Fj\nJlaQXdrQcCFJZjWSWsk3lHO9TOYNvTCmn27YK19mqYkQsvSim+MKb6e6fz7J\nlU87c4ikQuJ+TafRQoaoDirRNNLZlABFzKmI275mx0FDJXCmqLrjTbkQjPAl\nztwdmCcRyfBj6U06QLIQVa2nuVuWPf2a5xIqCgsa0smQOeqA1vgE90+E/VxL\nCvKQi+QdT0IPRP15ia+qqJwRWTseUWBsgKrgmOPtqzq8pCAqamIUj21AOY3s\nqQarDQOhzWHP5lRJES+mXTo0Dy4agPQor0vfmnE5bTcXOwDh8EpoFIYgRKKw\nOmR4qHYwePqTmsu0LgKro7PfxcQnuFmixih0P9RRseUc3zWW7tLcZrzBOf6U\nxaMmZpHDrzYl1xJJyYSQAVWF/MVOBdCNS5PPpaLX/+rKyKgKDEol4BBzmcgc\n6cNzs1Gl3eU4sfHnLNaGGNQOTwJy2s6JcrzV6l1f4NJ2ZABLxwVCftGghKhk\n7hdsX+ntSD3NIwooYnZRVvcb/ckDfBpHzl6HD8vAbgu1ESX/8q78SehauoST\njrfyy4/GU2SrpEhji8Arg8SRz99EMNA8Gm1ieoiLqkNN0246P/6iBd0cJDpT\nWdX/NpAYgS0/0eRU23J3nUy0D9xasiRmjxf+dappVfgXadtDsV08sBSZ7fwI\nzSyt\r\n=W/Bo\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8b1a0816c0d3a68a851c5e6a199c4a9ff75cce07","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.f8579b7ea.0","@material/rtl":"11.0.0-canary.f8579b7ea.0","@material/base":"11.0.0-canary.f8579b7ea.0","@material/theme":"11.0.0-canary.f8579b7ea.0","@material/animation":"11.0.0-canary.f8579b7ea.0","@material/typography":"11.0.0-canary.f8579b7ea.0","@material/feature-targeting":"11.0.0-canary.f8579b7ea.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.f8579b7ea.0_1615600983927_0.10541414948277317","host":"s3://npm-registry-packages"}},"11.0.0-canary.d2a39d300.0":{"name":"@material/floating-label","version":"11.0.0-canary.d2a39d300.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.d2a39d300.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"bd96f475c41ea4de36e9ac0894dbbfdae99d042f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.d2a39d300.0.tgz","fileCount":34,"integrity":"sha512-37/USZPZXR51bLtjQH+vXBhf6HhrvWfd3xFXOwqerbiECRLqMpem+0F3cofvPIXu7EzElb5F/mq3Xg7T0GMyZQ==","signatures":[{"sig":"MEUCIQCJB6CXr+45s0pxzC98mqo5Be1IRBaYRhKpAz70g5ZUjgIgZUagGVNP8j6HHD/rkmObQOhARtDEW63+blDkVo2Kf44=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgT/0xCRA9TVsSAnZWagAALxoP/jZQ0rAdXB3eT45+FVS4\nVGJUhdoeL2xa2gYch2ADY/ZomPArlprfJ0UOCc9835BMSJfyIEvCqtfZRDzj\ne/O9j3TR7BAdcfbDRcbmvK3Dw8p6bSmpjLCg+T+kBkkyhvtnGfpwPF4Z/Wo5\nZiIkOdBL8IqvZkRy3IRWcCuvn/azXUyQ8ln2lVeIHTtMnE7e2xplpW2wivxa\nXOOH2Vagp0BK78UDMFP33cMmifXNy0Op2+KNV+OIg8dEunfJTIBO7ryNop2j\nKW8M93zF9NPuj5qMTdMn8qMngG4wHS+ZnJigZ6Kq/AJbPyO0U4x0vx5fnYwb\nQ5f1jByki1l7ekTnbfauV8tvvl8I+xgM4ksyrVGfO94L1tP9kU4aa6ca3L4l\nnxPHj+edQ3cBk3PDU1qtt2a5WOAiidLxEgMhM1Fv67KTgX8Mk0pLPw2uJEsj\nHgzREhjOVcxS/UPkbDl6MGYLmsrAqinzylA+VDFM/xcPpfgsMYprXBwVGGDa\nwTUKqEwrQ/Rz3J+VrsPsA3+J78aByMU5kcEUSpD4uUCJzd2f6oeJNVhtOKyr\nyaYKCqc0iv+7sS0Tq54LFX5oLA1Ca1vcL9LqmHX76g+lbPB8+Oz/86ReZMXd\nKfTRrpqOenzDR41iCJnRXM+5JR2l8qWi6M42LrnBVykqdgP+qZWr2pW7uUof\ns0bs\r\n=dEAy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"4e928ba6e35dc70b34314c7509f647a6fbc4be00","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.d2a39d300.0","@material/rtl":"11.0.0-canary.d2a39d300.0","@material/base":"11.0.0-canary.d2a39d300.0","@material/theme":"11.0.0-canary.d2a39d300.0","@material/animation":"11.0.0-canary.d2a39d300.0","@material/typography":"11.0.0-canary.d2a39d300.0","@material/feature-targeting":"11.0.0-canary.d2a39d300.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.d2a39d300.0_1615854897370_0.015248402104812486","host":"s3://npm-registry-packages"}},"11.0.0-canary.7cf67823e.0":{"name":"@material/floating-label","version":"11.0.0-canary.7cf67823e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.7cf67823e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d8f11c935fa7cd384590803992888b16e95537b2","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.7cf67823e.0.tgz","fileCount":34,"integrity":"sha512-cnsfAoUQsbmyMWMEH4tmi6lstpAwi+8cDFHhon0hsKvSBoNU4qonWC73Vw53qYAbhFiEaDs9GKwM/KSsQiOn9g==","signatures":[{"sig":"MEYCIQDGJ+Li/Ht41rWpNt4ZCxakIZvRr19MAVefzy5lQUI+lQIhAKKQmfjCgcAX2UipvQT3BhMvhz02mGPe9jWX7xD0CZ51","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgUPbYCRA9TVsSAnZWagAABz4P/3ovGUGGPTjJLqUH9Rfi\noWshiGLR82fYZLqIg+j/5xFhPgq8zfA7S9AdsVqgCbO/HAFdL2jIZrU0iEWb\nMdDHDqoY9KuHEr5Wvx9TB/7qiKaXAdeQmaeLiqfXgIdk0yBzFbDbr4WjC+NG\nx7quzpaLs9s0IRxdvUwSJa7tVGVqVdlu9V9PgfoyAwFNwx4z63HIdrFfSOyk\nbpgSn4vtiVUCiZCTvLrnfpPT9F9VbY/kkf5xmV66ljFe1u0CnuJqE1EGfia7\nXlaldvwmMDaSpoBMkqcqYaUm2PiQ+NMLjwW7VZyToSaLGhmrRe/wk9+iVNqZ\nf6DIgHH2zPQoU4wYxkQfBqqF1axX020vFe5cdKJMXFs8xrZ0vATtPwgJFABj\nah50Smz8ci5zvxBj3DsRPCLr0j47eKhutBeqGCqvEIynw+fJe/Sy6MDEtLlL\n2HYznr47vYNZkHMALC/rbRowbCKUWAVphQOAje/zaRAfXFvO32HJwK2vIIuN\nVKhFlvhlm6cboIBaCOL8iRKGQHknUoZfy0B1KJAUnwMm/TQ+RaV4PZT5k7QA\ny1OXSqA3mMI2G+cxQH6n/lNbaJbeRjwP4bcpQ0OruRNstdWDm7b/f6jp5XL3\nmcInhmB5YmRxq5VmKoAaLKbBGA7AIduVzjA+k2BXXos9JgqAHeDO9CFADjCf\nXpje\r\n=Idze\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"afabf42a48ec8775fa133ab10e023c1b5d2ab802","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.7cf67823e.0","@material/rtl":"11.0.0-canary.7cf67823e.0","@material/base":"11.0.0-canary.7cf67823e.0","@material/theme":"11.0.0-canary.7cf67823e.0","@material/animation":"11.0.0-canary.7cf67823e.0","@material/typography":"11.0.0-canary.7cf67823e.0","@material/feature-targeting":"11.0.0-canary.7cf67823e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.7cf67823e.0_1615918808564_0.7465893198573832","host":"s3://npm-registry-packages"}},"11.0.0-canary.67d780c79.0":{"name":"@material/floating-label","version":"11.0.0-canary.67d780c79.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.67d780c79.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ae24e573bcf398534c1f70a643d11fcbdf01c026","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.67d780c79.0.tgz","fileCount":34,"integrity":"sha512-XlgpLSphSErZqwvo10S+HWrx0axn8IR+LG65kno6MMBHfk9gI8ujHSgsITrh3UV8pNjUzdBZkgxd60IHj1PFVg==","signatures":[{"sig":"MEYCIQC5pygYmfrNBq/t3h5zd13l+a5gOpkmeIe/s8Z0zJbckQIhAKN/6X1qDChApHHCNYfCjkJo7vrNYOchPQg9GrMNjtQf","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgUQtkCRA9TVsSAnZWagAA8m0QAJNxx7dZ/dXn1pzdc4at\nuPWIykf5KWZalyMuQmLtGLp9S96zn4G3FijqrAgVvpd2REYHvOcGZsHNBnvS\nlLmkt1/VcPLddo7UwFhjG+MIRBY22xzRTsE8oRf1b8VSEahS9OjnP/FtZYF5\n/JaTC8GSm+bVFso+wvwdrHdwm5wT7oIt6hIuSWHgwwKjGl4shgrHc9b5axxl\nacHWIxp5BlzmqrFL2AF2DmXlXmC0qm+XoENPOOkgoAWPKt+d1QJ0GjwyzSd6\nRdpT5bpXu8mutyUlG7fvTQs3HECZYQF2gVlm9tKMQOYD7uAEg35OkPHqxkYx\nwKjg/6KWvEDJFEOsxpL9LgcdoE6x9yFKhjjdz47ZBt4z7RdizeasaNiTnhbr\neXviw6JqF8iuL05vaWwwg0E1y/0YD/J1v0SGfTQLHoQ9Um6C0bBIwDuLQgl5\ndsWyY1//amRLTlhxJphfszyQZWAm+DsPcCz5CGHZE034UPJ/8bpqtx6xKfjU\np9jruh6vVp0sZ58rSn2sdQH2rheXL2EiG4TfoebDFW5DTJiJmSmDLyqOCTim\nuYPS9uCMO7USl0Po/p3oYYpo6KyG+rXKMd/j7dOFah7aY/cAOf2MNRWGQX74\nrb7nSsDq7XhQ6zPSFZfVZS9Yk7ulRpChPmHWn0D4zB6uRsuORcF5ZYMV46yV\nE6hQ\r\n=9xRX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"05a76ad8cd6b15550e685799fb6b9b5643d7e0e0","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.67d780c79.0","@material/rtl":"11.0.0-canary.67d780c79.0","@material/base":"11.0.0-canary.67d780c79.0","@material/theme":"11.0.0-canary.67d780c79.0","@material/animation":"11.0.0-canary.67d780c79.0","@material/typography":"11.0.0-canary.67d780c79.0","@material/feature-targeting":"11.0.0-canary.67d780c79.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.67d780c79.0_1615924067521_0.8265080949532007","host":"s3://npm-registry-packages"}},"11.0.0-canary.0f358ddae.0":{"name":"@material/floating-label","version":"11.0.0-canary.0f358ddae.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.0f358ddae.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"8e1c98ff25859c07bd1799a8bc6829063d2e9ffd","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.0f358ddae.0.tgz","fileCount":34,"integrity":"sha512-pVaOw2TQhvoZ5GpSyhjARkLea6SUgdKza4k0KG3v11pRRWg6jDWvqdf3n2/zHR8x6yshZpZyQLct0aPyIPhdrg==","signatures":[{"sig":"MEYCIQCJiibTuKw61zpViJxEqIZRYEnBK7MYYgJPCaNhXaBW7QIhAKUFaVuByjiumuyQV8QsbGc/1u4qaSOdapD5raQ08GFJ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgUS1ECRA9TVsSAnZWagAAZPgP/1+OHKs8wshKfNEayDBQ\nooiX9OGlv97H6AcKrik/UlfgJT+gmvZ1oyfaFXGitAjagwKCb+pHKnLgfAS/\no7PjHD2Cpwqa85cdXUZmpypqAcA/E93lP6tgL+KfjZcS9P/lyVYDPIjKYYck\nM3VZeYMvMlmSgXuzGjSVJuiovAKZYrO1GoRUa2Z2QNXaYbIjPTaUDpQP8Sy0\nZesLjrztljPA/G2ZXC/qP1gkIjAUF/x3d2mqiyrWSGQV9CL1SI9ZFlS0Jmtb\nKDAfnayz+y6SVSwR8xB45SQgRjjNc/IP6Ut670JUjs7aJfN0N2hCnRp36mjS\ncmUwBj2EETsXmqTPpzfRyG4j4sje9Fk2Tfky1oZZ5smFWSeNXs1AbIgfNMOX\nwQai2a/Zz4ftyVGNxDyCNZGuU7GHnbX/yI+uBxW4DqNQRA8z5zjLRdz7RD1c\nHlQ5M2+SzSv4XoUWSmzF2ezMsmo1b+bStXRmjipsmwTNMp0uplL5Srch6CAG\n0OjCeRG5d2aeRHjCNlyR25nlWJzK7u/cmVpgQ9IXQ18kaPskTXsxes5b6Yq+\nPv9tdO+NgbptKpLUBD0BVq0sPc6En7AmEQffxCnhoXjZKTiu2kNug3ZUR3R0\nxhyRxaBa41JOf7G4Yyda0FqfthAiIAz49s9mjIUmdTUup9mZ8Fayfsqsu0zS\nu84Q\r\n=7Tea\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"6acdc7677f01b6502d0b491a9816d6600ea9cbd7","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.0f358ddae.0","@material/rtl":"11.0.0-canary.0f358ddae.0","@material/base":"11.0.0-canary.0f358ddae.0","@material/theme":"11.0.0-canary.0f358ddae.0","@material/animation":"11.0.0-canary.0f358ddae.0","@material/typography":"11.0.0-canary.0f358ddae.0","@material/feature-targeting":"11.0.0-canary.0f358ddae.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.0f358ddae.0_1615932740264_0.5916399060226107","host":"s3://npm-registry-packages"}},"11.0.0-canary.67eb0df80.0":{"name":"@material/floating-label","version":"11.0.0-canary.67eb0df80.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.67eb0df80.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b7420201f53e039225fefc3f1ddd17cca1306ccc","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.67eb0df80.0.tgz","fileCount":34,"integrity":"sha512-b84yOmz/u2nDDvt+pTN1tOu0P06DimRIzj17O4YXroJhh7GDZ75ISF0+9oAS0miQfdJZgAFIQDOpMGzH6Jk0Bg==","signatures":[{"sig":"MEUCIHj+G+kmpS9ICG11h0BYSxw4Nac8k7cmSN1H1dcx0nuhAiEAq2SA8AxsU0WULSUdOG0OuDynO8WzbeT+aI6PlhCC4JY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgUTOhCRA9TVsSAnZWagAA7+cP/0m58mL9c1TSvaiyBsBr\nGHgkco8OlM1VIbx/vlC0LfqnjM+LoiBTmeIpN3qpcmI3ZH0mvM66rUiW8R+8\nHRz+o6Z0sxa8flMklmgEMGnVRTZL9/uPAE6U4MeHGtiPyzwC8nmvbw0H9AFL\nO0V+93AH7Wr2wF/7Qz3rNFH6Jwiux/A9QUpniyrPe9QIVuXaCYJQkUYPC2UP\niPPC3TZMgnAASean8i/xs7bAF2jk/zTYseutHtsTptonb5TYpqPyIax+AYER\n+ztVBBBr3c15IoW6SaBO1kdKL8sNkL2SLyGydxt5slPKKkk/Z0VqNN8QkFW0\nBaeq7LjpaVrmJtzYQfZe/xsiB2EtJPRSRiEygAnBifb6D9Hkm/oam6ObME9O\n45sFvE0zEhJuXI/BQv8e5DsGQtl1OrP4N5oqyw4bnC4IgFH3OCYlZBTN7iPD\nUZfnVMjFA/QbqwWrvPONkrycvcalpeegIxwCadz7eB61j023j7KLtwEdcIRs\nCJvdQnT43g6JsQdCbxe9SziUEQ+TzxLkUrF41XlIaMklKaWrbcOXTUojDW/6\niQ1n9yboz56inEMo0U5HQwI3cAmt9Dyy4Jw+VvT9ld2MxDTlYPIB50llj2EV\nQO8s3JQax9fBD/BN0zAPQt74jr7/LX71Gu351GwMVnv+Wx0Vgu+T+c6TJaFM\nzJvd\r\n=aiI7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5f5e9d259d95bf3abf565622edf7345e62993020","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.67eb0df80.0","@material/rtl":"11.0.0-canary.67eb0df80.0","@material/base":"11.0.0-canary.67eb0df80.0","@material/theme":"11.0.0-canary.67eb0df80.0","@material/animation":"11.0.0-canary.67eb0df80.0","@material/typography":"11.0.0-canary.67eb0df80.0","@material/feature-targeting":"11.0.0-canary.67eb0df80.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.67eb0df80.0_1615934369522_0.39376993051994646","host":"s3://npm-registry-packages"}},"11.0.0-canary.941ca3b3c.0":{"name":"@material/floating-label","version":"11.0.0-canary.941ca3b3c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.941ca3b3c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"af93d63b8e1d96160b174922db5696f49b721bd0","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.941ca3b3c.0.tgz","fileCount":34,"integrity":"sha512-8kTSL+6p8+NgtQlkTkBqHYX3M8Iv6yDMY9R4FubHNA60E82tCTEsj12eCwyh6IpRH9MD6T4V7LIu5hJFxfuJmg==","signatures":[{"sig":"MEYCIQDQPXU2nQb1uiRgi9zlub91iegLlhUjU8OMZ0ETbHXl7wIhAMHn+azOvSi27L3bcrtg1dSkk0BJY2xDZn8K5mSbJ/UE","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgUTQRCRA9TVsSAnZWagAAsZsP/Rdm7QEfEav9mJJqgKl8\nKkPFzpjWhe/z5OzzpZ6+iPluROGJvmra8EuQqgCAIGRCvwlrDzZZAZoSjS/h\nuDjU/bxuv1r+N/Im0ga5nOVHBX8gEVnVco9fpv+OptsQZHFaosYRnlTc/UWB\nYz6tEubfYiuzHN8L7Mnzh3PTNfVHKdbqvLnfnhrRMtdbJmISCS8SNJmgc9bg\nzSvOjfqYw78q+NQPNphoEd9Ql/KiXzZOgjOpJnmt+tiw2Nl84ybjWedBjiTV\nAWfc2PnkZ+MqndMSL2AOBZ+3sRBVWO9t02vzxiZc+jYyBaHJ6XZ4aAK9Vbtb\nRd8N75PNGSD2SC2yMLxLV8OUoyRxAetRjt9p7gxSrY8q39ptuUTDjeuDtYvH\nuu1MUA29fnxoRvnTWlYjDj6ELYIi+p1h4ZcAALC8y3kNpMdzn9t99YFav2yv\n29cZ38qLsGj63ORZiZ+RgEvwYxGS3+LIr3YsHBiUQVlnayGkQLxOulIL9qHo\n1bl3HUmRJJdE09a90+j6AYBilrkbe+7De2ldqUfCLkgBs4An+L6RkWVinDiJ\nb76rOs1KQkGveYfKG/4gCiVEDX8+3T7ZojfYhxLN5HygK9lP4Ko9bbE4FrKW\n8btiWpOt9+/CkIuNubgqHpdUbBFdM45PakHrz3Bu5lcQlUMffnY1f4nFt4bn\nFQFU\r\n=NkLU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"27181e4c2c90af170c9149616613beb6599ff94a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.941ca3b3c.0","@material/rtl":"11.0.0-canary.941ca3b3c.0","@material/base":"11.0.0-canary.941ca3b3c.0","@material/theme":"11.0.0-canary.941ca3b3c.0","@material/animation":"11.0.0-canary.941ca3b3c.0","@material/typography":"11.0.0-canary.941ca3b3c.0","@material/feature-targeting":"11.0.0-canary.941ca3b3c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.941ca3b3c.0_1615934481145_0.5369404342291622","host":"s3://npm-registry-packages"}},"11.0.0-canary.3344d12ad.0":{"name":"@material/floating-label","version":"11.0.0-canary.3344d12ad.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.3344d12ad.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6b80733f2ac0915bce3d1261f18f92002a48a84f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.3344d12ad.0.tgz","fileCount":34,"integrity":"sha512-z1Sea9QXggwmuHJGfrAjY6/xwQe9eYA9JjlQtL/S7tF/c38va3RkrDfBWU20tAGasba31vU+UyN5bm0VtFmpFw==","signatures":[{"sig":"MEQCIDdcHlqYAAJRgWUqctKmN8Iufx88zQD2IzZ4GdMG3RlDAiAj3Pzd5KeG3Ahv768vLszS770NUOq5XoMXW16PtV2Fug==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgUdOJCRA9TVsSAnZWagAAsD4P/As1wIRgCcwxcBlmid5v\n0CJ1jeufU5yHxa5Rqrv/73gcsnWiCl3HNt3AsyXWtqX4sUw5kuYmBB5ZQIoX\nZLYCuJuKW+c4MAMXrpym72yiHn6P5vkw99uMWhGf3EvOt6V55qWs45W8NyNV\nr8bqwOZRbHU9FF1adfgiXe//tx8kvhYenRV18azOKpi6NdoBqwW4al6HJ+oT\n2yjszqNcNtIHcRjDfzw5foUWy6Wtf+We2LdoXeekm12ed+gp+FddLydXODme\n7dbXLNOlp83QKWirrl430shYIPjZzbtgiExuX2UWrdbh6YIhq6i3AFnxgddu\nz7qivBMXr58nVsONkvQQvGaC7d4ck2MiawAY2tGD2iXMlehtcvN+6Df+3U5x\n2MD2/wcXhCUAKWNIqNa2GfTaufLCj5IPMQpP9nM92cIjl4MkWETJ0GD8h0Jb\nnUiNbvSplZ7CiysgNDDuRoMgigPN6VyN56in7G4/q07kvVRDQ/0OjY2XHzWV\n3J3CONixVNpttRpAPQfaq8fDIUYDt8xUxPmDL7h5KMqIlJO3fDocE8HxoQ5R\n5/6oLauBixBx27O8MQsheoolkdFd5OiD+dLYrlqTFK8u8i+NgY63rOHUlwwC\nKwqAywrHH5KNbbjIrNA2B6uTaWWCZ8ssExjSJIftfyayRlGBGZ4odqm3OTL4\ndLdy\r\n=KNzC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"fc17c547b4aa66b6412c0b0b56b75978332702cc","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.3344d12ad.0","@material/rtl":"11.0.0-canary.3344d12ad.0","@material/base":"11.0.0-canary.3344d12ad.0","@material/theme":"11.0.0-canary.3344d12ad.0","@material/animation":"11.0.0-canary.3344d12ad.0","@material/typography":"11.0.0-canary.3344d12ad.0","@material/feature-targeting":"11.0.0-canary.3344d12ad.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.3344d12ad.0_1615975304562_0.6256021569583776","host":"s3://npm-registry-packages"}},"11.0.0-canary.6072ed604.0":{"name":"@material/floating-label","version":"11.0.0-canary.6072ed604.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.6072ed604.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"fca815ffb45092369975050cd1cc91c2c6c1183b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.6072ed604.0.tgz","fileCount":34,"integrity":"sha512-W1FGSYMrHb/oXhpPMQ319303KClDB0NLegi1UIy2fDwj3fYdI2mytj71O78MKF/dm1HqrdGAxHT0osvq33RbDw==","signatures":[{"sig":"MEUCIAq7La8ikKkyyhlRmauSmUXu1xQMDsbojX9UPmIpHOsrAiEA5/BkpB8ZZc3f8KZ2qQVbNgki7z1GNt5jGGvkZFUyCWg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgUonQCRA9TVsSAnZWagAASPMP/jfa0Y+g/WkSTq/t3aFB\n0ZnNEgRf9k/0rVt6g8q4Dy2dsbmAR5ViWGI9IFYtgikdiGyS4o3X1k2o9fVR\nQXPVPNEaxp2diG6yF/bDJrVHJuT8ats+lqFrlPyn4sFVP0UrYuxMhLy/dfWw\ncFniZyu/YPLtv7wLe/bK2vWkS0J1iUv9RLKD7fdC/fvVh04qO7+niIsOmfQy\n1BBY/hlgyGXIDjVPBjyy4ks/buZKybG6TGd3pGazL41IX+9yugzcX1GQCfM/\nMO6hTKdo9hul/huH031HnB2+Xbj9qmB3avHn9RF1jDmnpRhP63aCo6sY77F5\nCFQf5dKozeUBTMy3PYtYw1SbXYklNvLN9q2HcO27TMvRnqiSjFBuMM2POvsZ\n/6+RWsRFutKb3AnAxGgGHj9eCwwz6Un4XavMwA/JHXFackWQ2SLpJjFkQLwx\n+9iDRYlBuLw7AYFZ98Qsr743kUX/P+hbvpgfFce29I9neSN+/WHUkQNDUmIi\nioCKCJDTXrmTYR0yCRh79Yu3jto9hlIkziFZiPuvxT30AQ4oadH7KYKDdOST\nUl4rojJl5/PZQV1A99I52p++SaXaKnwCu4njWSWpLWs0T1YdyHyA065xjub7\n9FM+eRye3vvbc2NY1S5pAVkITP20c3jmgEJroR/gka7ofJ270Be4cVV9gBqK\nGxm+\r\n=b1WK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"219b085de7ee97c7b75e5f25dc757e7b5240916b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.6072ed604.0","@material/rtl":"11.0.0-canary.6072ed604.0","@material/base":"11.0.0-canary.6072ed604.0","@material/theme":"11.0.0-canary.6072ed604.0","@material/animation":"11.0.0-canary.6072ed604.0","@material/typography":"11.0.0-canary.6072ed604.0","@material/feature-targeting":"11.0.0-canary.6072ed604.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.6072ed604.0_1616021968171_0.14708611976918107","host":"s3://npm-registry-packages"}},"11.0.0-canary.d3a6862af.0":{"name":"@material/floating-label","version":"11.0.0-canary.d3a6862af.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.d3a6862af.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b52a228ac72f79df7a6f99e71e7a679c19972ea6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.d3a6862af.0.tgz","fileCount":34,"integrity":"sha512-3hRatIvEgv106jAIQZQBBKIJJ6v7TLS4NE07FLIDX7oaABCU/1uLr7QDCsnm7yQysJw+ZCyUfZvaeOl5jUq6SA==","signatures":[{"sig":"MEYCIQCKv0+VPSqiP1pKGtntsynw1lkCW4rxFdyyOHDPjizGbwIhAN5iBIX2sYi+4h8IPj/9OaQuRnqT1S3LqC57IA++1dVn","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgU32tCRA9TVsSAnZWagAAjNoQAIT2SD9WBYwBoZaJpJFK\nORxjJxwPKiVMrsCi2sn/R8ZWWlBJK+5BZProNymsFDhHEEbfFgoClMju1ND4\nZ/44xGWwfwiAlEKqJArTL1GmpRiSWVi+Y4juz+1q35SHA46YP8XvBJIFkiKE\nBsXv1PhMg7TVv0yF9XDPDX8rjM5yz4Yip1pjDyp6NBTCSnK8BNlxJR0RVRk/\nnsPaKB+grhjBlj1/N0u8CbxttBmuwVW/fq4UgY4ZdE+Kdmmg8Lm+je1GS5GJ\nlTiCRX8rhvgPQVKiBaDwgl+9fIw1xIRBZiTzF0f72mcXwosTftobMhOE2yl6\nQdqqUSSlKy1MFWntKqkZDXTAhiA4MuayjPXuk+rk6dDtdrfaRUN9oigosV6t\ng9xoiR6mDZ8D0I8k8yVMY29doxkc5B38Vd+KyFjxInN/5UbTMx7iSdMYMm76\niSa3MX67NZzJj1cvCDkHdupSQtHqPKXc/7PzOcPc0ZHZwwhkCtHT14uRcLlx\nEVvG48BPewcyyoyN5fISAXvzWEoZjRagzBcBvIcOTlCwi6BFuB7BjyC3Uf/n\nUFI2h+LIqZOF9S+mXhFIQa1Xxvlg6U16UFI7jcK6lfyoyEEEzRBBLJ+aRfnC\n/7MnDWO+aCNBPP9bVh+vfR80bj9evuogUMzWkpfuGhT9eIa7svcDSrnBR/Cv\n1Ugg\r\n=57pg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ab10f53a050cbeb103a3ee070a9134ff428deae0","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.d3a6862af.0","@material/rtl":"11.0.0-canary.d3a6862af.0","@material/base":"11.0.0-canary.d3a6862af.0","@material/theme":"11.0.0-canary.d3a6862af.0","@material/animation":"11.0.0-canary.d3a6862af.0","@material/typography":"11.0.0-canary.d3a6862af.0","@material/feature-targeting":"11.0.0-canary.d3a6862af.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.d3a6862af.0_1616084396772_0.6650451737620418","host":"s3://npm-registry-packages"}},"11.0.0-canary.40dd242d5.0":{"name":"@material/floating-label","version":"11.0.0-canary.40dd242d5.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.40dd242d5.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b6c27028abbb564e4b0524fee85b983a9a3c1cbf","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.40dd242d5.0.tgz","fileCount":34,"integrity":"sha512-X1B+iPLIv68xq3JFo++psuDz3qovfsfD6H8fjpo4DiD+BUIv6l89f5Y7Hd4yvnN+oKv9m7w/ayR7v2v7kGaV0A==","signatures":[{"sig":"MEUCIEYsWXjaQpiIbIZX/fsiJOCQhCW/f4v0gTudxKicCcgwAiEA/vAE4okIOa3snlqMn5p40KE2fS6ANKpM03IJH5jq998=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgU8NcCRA9TVsSAnZWagAAa+UP/1zTMuNIug0bn5pNH5gN\nId3r4CKuERc8onETF1tTS/TLFjikw6p0k/kWW8qEKespoEZ6XP1ECBQ7d44G\nvgWNNtsXGzG5jo4mNjn4oU4dtMVB/59csXVdtuUvxEBuW9w6Pfh/jmnHM1oI\n8IalsJkRq769kbMMeynSbYmDzdm6RrkuJDTAhA1MDKHIeYqgLp/ra76PIjow\nsqGUGfxEkl9HuZgFozCpcJZaWPE6GhabEcBkaHjmicqTl+N43NRM6mT05HPP\nayaRy8d3oe1MnEGH/IYkmEnTClc2thkqQD5+fUhSoqmvPD3mhpCTbrimSpvp\nhqJh/dwKERj3ix28F1GlSRt3fUMNKxDYC56oudRo1ShljrUqA2jeDPPLVVn6\nqFOXaGgC7uwvKEAGyNLwQJxuOxFGkztIaF0+0MgchaNIk79qpVKkliOSuSTl\nLEwK39wH2TN+Fb7nPSQbAzu3oYtig++3KuWbCAhd4bD3UzSI+f6L9vyPaBBw\nyI5Ec2whYIf7XXKGBuOY7A+ZSLgeGYzqj9fpeSkroF27+12mhJpqPrN8o4qB\nmLR403tupUqNZEhN+Tc+PpMn3aOAz7OoGh3EhdvlipGRQ2KQs7k8KUurXHHT\nygvcvMkujicad2gthYbiEC8ZupsWzHZ2ArVq9swm//QUP2++GV9DGiE6kDZO\nlrkc\r\n=aUQ3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"07de383ae306cbdee42be69fa0a06884d97ec259","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.40dd242d5.0","@material/rtl":"11.0.0-canary.40dd242d5.0","@material/base":"11.0.0-canary.40dd242d5.0","@material/theme":"11.0.0-canary.40dd242d5.0","@material/animation":"11.0.0-canary.40dd242d5.0","@material/typography":"11.0.0-canary.40dd242d5.0","@material/feature-targeting":"11.0.0-canary.40dd242d5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.40dd242d5.0_1616102235824_0.4736682816923079","host":"s3://npm-registry-packages"}},"11.0.0-canary.ec8f8465f.0":{"name":"@material/floating-label","version":"11.0.0-canary.ec8f8465f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.ec8f8465f.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"89d56de7cf07fd3d7cb05eb7ff160818500a4683","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.ec8f8465f.0.tgz","fileCount":34,"integrity":"sha512-ERUKP6srFULxXUioAqB3WbAEtTF9dnvTF++AOqqqY+KIxDCjRetSs5icjR8mK8dZn+ieVWv7W+jFE2uBo5tKfQ==","signatures":[{"sig":"MEYCIQCH5l7mAf4AvcA9CnXOV9O9t8LQr/BJnGfrSGMkm1o84AIhAO2UNsT2fzOiArgQ/hOYpdbIzIISAxVH8+XkND1a9Qt8","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgU8msCRA9TVsSAnZWagAA/GIP+wcTt0maFB2wwKkqIy/3\nk8JXS1uJ/170F2qigm1+22UDTu/314CNNDRUsyTdZQKVNCyPoetDn9p/0z51\nkxazMWDNX2BwCIbruwdKDopt9Jxt2viZQodVjeuQGdQ0xpFwakMa1D+KgUr/\ni5TJRcmdFBldVa/oVyVkvTnd3onPiDOZww+hZdNmQHNVVdSfbxalevLF2pHu\n9YLV2bCn9aBzZiExLZcQFhYYbRGTcQH1ga2N12AtfpkuUvQztBirhygjH5kF\nnTS1NT+rjQyIPuFBi4pA+NP7wzbIkkNOVWq8Glj6fVKtdhhvOcj2zvDxSRLb\ni43gt7AwlKhGFcmJawGMTEspyNDIZQoY7aaVJ+OK/I5ZWbhN/ToUaqM6SNku\nFq5r778182Kpgk3B4MpxlufKvLKQDaPzVCopikrnZogV/fWU7cLSqYW9REFd\nAw7iFEo8AnbW+FMHUCcQQLDAlgJqzTlbgXbH/5nR+efulLVg7GiQiZ6oE5PG\n1HUnFQAKCQLctRo+2ZL14xTQHl5/8ZQNTpUWz2L/9KPcVAmw86F+OyqkGdSV\nQDWbBdmPNuxU+TKjjo0hNUOnakp1SHeXmgAhIe8qMX3rxBI/u/gorSEHDxKE\nWeyiDxfJO64uhqeEljnbBnVncGGYnRXc1Q0b5KdeCVXry9MMBh0X8iwdw2Ow\nkUzE\r\n=upKP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"896f8e45effbe3c44209b4542bcd3d10a7f8421b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.ec8f8465f.0","@material/rtl":"11.0.0-canary.ec8f8465f.0","@material/base":"11.0.0-canary.ec8f8465f.0","@material/theme":"11.0.0-canary.ec8f8465f.0","@material/animation":"11.0.0-canary.ec8f8465f.0","@material/typography":"11.0.0-canary.ec8f8465f.0","@material/feature-targeting":"11.0.0-canary.ec8f8465f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.ec8f8465f.0_1616103852264_0.92925758436333","host":"s3://npm-registry-packages"}},"11.0.0-canary.da38969ec.0":{"name":"@material/floating-label","version":"11.0.0-canary.da38969ec.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.da38969ec.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"eac9835cd4efd6d188626b1036366ad5fa417f58","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.da38969ec.0.tgz","fileCount":34,"integrity":"sha512-7gn9Hkaa+C8uHNv4b5Z3T1dURRH9AkDNUPtOhWqLIs789LSzpiqPeWQ2W8YmpyP0X1yy513YYgce/WMmT5sIfQ==","signatures":[{"sig":"MEYCIQDEi0+qY+st+XYg6v9pXYmkUH+EzhbEC2UwHa2xXqF/QQIhAKWYnB3qmc+C7HnXQ7RJ5/6zla7Fs4kC4fNwHWj1SzqV","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgU9GMCRA9TVsSAnZWagAA3AQP/iQ6CO7NnqNq2pK3aEiA\naS42njJFLZJ5SVK7h4cCUXkYxf4akaaX3xGLAUFU7L695Kv7JYWZ33VFRTwY\nGYpzhByJJgi5076ZX7SvsdbNDEcwrq7YvY8avdxhkEylLdjVDYVVx7jRYTRq\nT5typKL141Jplh6eyRlOvEXTnPCGY/Z1GR5p2tb4+oIOalPPWhigBBpLpWy5\nS2+JBwO7z1HEye4iZhiH2RIT7YSL65t9vvTQ2GDe4aUIxpHBf6DYuenzVmDC\nvZEm4yyVO562UYwiHfHSfIrMVBNDtaXwH4kZecJBLyK0mtviESWrxTXdi1Za\nQOP1TwivYzrujMCzKAz0IjIdxXrPpYl4Jf+RRlI2N/SAOpEFKmLePJ3VSxT4\nuWgBRvsiAUtrVHB+K0ui0LMok/oSHVxQ8UDVNScw4CzGEFQlrOgYnB4DClAJ\nyVUankTEemXvXTypSXJA1HbVpmptagRNLCs5CpLK99tz4Pm4dQ3I3m6z9iEW\ntfxwSCXv/Pbr7Q1FuRhntPUKRQIHKPZ/aHbgbmQOg0/+r2sUsqAPLYIy+2KT\ns9IQ6lJCAfk5DnCWX+Ts1kUn9YST/TW18NXkzXBn+zzW5/YY8X/aV/m/Ou9x\ntHrNMQkD2Gtgi9J22LDyhK8gXOr5QwkLcSlmKCSRlkMkwRpSPCxOzrfD1gAw\nlKLI\r\n=tCtK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b43d112facdf74c62e02576a918d522587133fa9","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.da38969ec.0","@material/rtl":"11.0.0-canary.da38969ec.0","@material/base":"11.0.0-canary.da38969ec.0","@material/theme":"11.0.0-canary.da38969ec.0","@material/animation":"11.0.0-canary.da38969ec.0","@material/typography":"11.0.0-canary.da38969ec.0","@material/feature-targeting":"11.0.0-canary.da38969ec.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.da38969ec.0_1616105868137_0.17580940649536303","host":"s3://npm-registry-packages"}},"11.0.0-canary.f5246264d.0":{"name":"@material/floating-label","version":"11.0.0-canary.f5246264d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.f5246264d.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"41cee25eed186396b0aec254039b7879451a79fa","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.f5246264d.0.tgz","fileCount":34,"integrity":"sha512-R7bl8x/NBFkGlsNpCDHrH06RytidFHtrpqjbJnCWJxCKbZK1m7mGZN3dcnPeH5UqJSXKUlDt1bSnF01Kd8gLYg==","signatures":[{"sig":"MEUCIFLqXz8rwvt/NAU0Dyo6mWyAfvKgLq0GB/BPmKSV+f5RAiEAzFayZP6c1jzIqt1yeIn4eC4fsV6mmIM2yY6lM6X05fo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgU/JkCRA9TVsSAnZWagAA614P+gO+573jetAS8WiCZCQZ\n7Ko8wzACR1Z1e1xlBucb5Q1lbhFhpWFbHp7y3KGJAracKbCThLNlqqcjwybB\n9qqA6SQ2XrhOB3Lwv2cv4v81MN1tfQlwyTda0vbNea0hUrXQfmw1QixMR3VL\niMjXrma5U6bCsW6uP6yBbdRfVtucS2FtvcAefnrLKjbORJ6JQvcRDf0GBsNM\ni9vBCR+flKOfRRG/60/A+R1gUTACyy5RFYeQu5Xq0MsXHbSz0q1j26LBn2EU\nAKfezccb9TMxExwo/rVYcBhz2lZ2lZZNArsvXPDkBUw+nSVUmrg446xeRuuF\nRe1llYxKgZCu7LFieBugFniPUEy3rbdEwF3BP/jmhbU5xncWYgnTu4OwSofW\nqBk4cCH+H7DVpmsfzBYFeRUJr8QT2vUaSTatFjeCm5F3Tha7T4gmA8M/NpR+\nVCN2wpmTd7T6/ir8Py0eG5Z4kLDXXpQwnhIn7HPPHUE/EdPoBE1maZnqgEJs\nTgr81ccwRpGz205hHC5jbjVcQnTxP4ZjXpxa5A7HhnjvF9mx756dtyC9zYpg\naFcRuHzLhmxGVuepcu4/hJmYjF1Pj4R5U4oVTP1ApUo+B/mb3r28Dk//jYkQ\nWTdSmaTiCBZ8WyarmtRDTC02sEcw5n1Hk+Q+Z2KIlo1CD+eioO95256NIzDH\nw0YO\r\n=gPt7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e5bc1717405750210bb9d7e3572f0cd36c9bc0cb","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.f5246264d.0","@material/rtl":"11.0.0-canary.f5246264d.0","@material/base":"11.0.0-canary.f5246264d.0","@material/theme":"11.0.0-canary.f5246264d.0","@material/animation":"11.0.0-canary.f5246264d.0","@material/typography":"11.0.0-canary.f5246264d.0","@material/feature-targeting":"11.0.0-canary.f5246264d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.f5246264d.0_1616114275911_0.9248572880790946","host":"s3://npm-registry-packages"}},"11.0.0-canary.03d34bbad.0":{"name":"@material/floating-label","version":"11.0.0-canary.03d34bbad.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.03d34bbad.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"570fc73fd1dc7c8c616d5fa6f7f969bd710e514a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.03d34bbad.0.tgz","fileCount":34,"integrity":"sha512-x/LbbVq4K3GvobF6ThRFi9frIKukUrz3W+GH72ULMZwtOipEM978uqO0TXKnP/mIQFqvQQjXrRBOi0O7X7hP3w==","signatures":[{"sig":"MEYCIQDQ5BMMc8pswXZpv3bTO/L1ECnLp9Jrtm0XMKbX5NCPEQIhAI4iNVDdnq/aPAaEJC5htl+NAMuBg9HcToI1XKztK2HP","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgU/V+CRA9TVsSAnZWagAAGXAP/0Iorzpp6gX8L0TTqYwC\nj++e7LFxHR3mWlIn+JZg0oVpLfEr3isO24cFhknTs4pVXNt8IrH2c4nrEsJJ\nhzA9KCCYP+SsdR9wppPEtNorYdTVDcvJVghrTLR2d/dDyxS0s1H4oXRKl2Yn\nMYrwjTg4QsmuOplMQfnOSQWNt2hcT7gb32N04ApQbz6NOS5YsEP4QXLoxB8a\n+mxTIfA8+fVfMYz/beTiJ60ZR0os2OlXYamh4GLIrJw2jbFne+sxaX123YGa\nq0ahiJQGTHebfYOub+uN+tDSH6hZ03JCtO4wtTmS9F7qZoluZ8CQAXst/4YN\n1gvbUaUbGmdSfHiaBAkbZN0CWVzVQP6uFyv7oNsE+VCxuk0kWQEyvZH3752u\nQmalQLB++/E/eNkgWWOiPHoSMrAYRUpkBCE3TTL4IALHB5Y/V0m+UdXppL1h\niIRLrXV/h7Wz/5YYIMJcX4fXqrd+1xrC532MM+g69Hav25Pe4iiy7qywKTHi\newjVyr6z6+DW/hZHT+UllTXIaLsBF1Gqj3obPfQRxPWU87vi1ufOtdpYDNbw\nIYoarMD8J5MkmKmBpNPu5A+7Uz08QZS1ZjQwRkm2DNRzDTX95U9csJYzRhXn\nXAEm2OhLiUvwVwVYArmU2N2tVscrWuKUhnkAm0blE0v8BBUMYFepbMdYeZng\nGCHe\r\n=VwQP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"650c89999524e7131f5808d28c8ea2fa15db0c86","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.03d34bbad.0","@material/rtl":"11.0.0-canary.03d34bbad.0","@material/base":"11.0.0-canary.03d34bbad.0","@material/theme":"11.0.0-canary.03d34bbad.0","@material/animation":"11.0.0-canary.03d34bbad.0","@material/typography":"11.0.0-canary.03d34bbad.0","@material/feature-targeting":"11.0.0-canary.03d34bbad.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.03d34bbad.0_1616115070282_0.4462766993092815","host":"s3://npm-registry-packages"}},"11.0.0-canary.cbc57c600.0":{"name":"@material/floating-label","version":"11.0.0-canary.cbc57c600.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.cbc57c600.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"25f8bbd298a7119731f9bf7583dc136c695f0006","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.cbc57c600.0.tgz","fileCount":34,"integrity":"sha512-7dRt3kjkrHURrF8dscWuJHFzCCDpUSq+1dPnvjfoBC7RTdp30M1AKDY4VvZYeCqrvdGsSoq7mvs9t8v25zMmXQ==","signatures":[{"sig":"MEQCIHDN4PNkcdnO3t+hY3MzKpN4LddtbShfWMF3JaXCP7atAiAI0MMPql7TBd6dad+NQRU/xeHTTgsT/Jpukx164triLw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgU/d9CRA9TVsSAnZWagAA3KIP/AlCA/UgjS6Zawc3eCIC\nkNyw6QvgfUCuO0x+MzAtpyDXjyqUKIfL1wkp3mvmOoLpPVDH3vQan941Face\nUhiyelIuw9VVc+AcBRDgy0X+2dgQgAJn4NhTwe1S/2U9xoR3+V3BDn8tG7jD\niqc94IsrcKb1Avocj5YIOR+gKC1RQUc55TEO9IAwl9RK2WP4Pxo6ZzsVF+AZ\nHOt02G55MTf12I12J+vlZ8yur3D0Il/Kd/aESSsDzEX7YJ40ufOLKi9qIvhc\nsbiC5s5ugRnmYL49o4nw+8HRFoL/kYDqk0o6q/ujWy6bCHDp4IJbMb/aIS4P\ndwCRzQ/pYuA9oNzkCdP+Yh/5t5E9hQWyYNKVuG3CqXTEcTXDS6Uq3Ct0VJn8\nnroHlYwuvX0mOKyN2odh8QPdzh4gLZPPvRDyYua4vRAQ3LyMrNrvPRWo0Jpq\nUEpeAuVxDUFOwmav/FDIYM7jgktxXloukiuFSx/Bhb2fpn1ohkLuNXoLm7sd\nDDJm1V++d//wLG73EqkX74e8ae4Q4c/zsviT0wsF+qbmhTZTLxUmdE+8eeGu\nUio3WibRZ/YZ+W54bktRMUqJq/X/BVoGXPnmuzs1RrotDQ3H7DZlMojLCQd0\nnMLUOvR1t8VU7NLd96okw1iqmYtqciQumqF0p/+Sdu1n7oZsGvJ7kJTqF+6W\nvWcU\r\n=DFAQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c16ee9654e2ac3913ee3140dbc31e34bbc443c00","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.cbc57c600.0","@material/rtl":"11.0.0-canary.cbc57c600.0","@material/base":"11.0.0-canary.cbc57c600.0","@material/theme":"11.0.0-canary.cbc57c600.0","@material/animation":"11.0.0-canary.cbc57c600.0","@material/typography":"11.0.0-canary.cbc57c600.0","@material/feature-targeting":"11.0.0-canary.cbc57c600.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.cbc57c600.0_1616115580939_0.8890153062472044","host":"s3://npm-registry-packages"}},"11.0.0-canary.d6c5bcf37.0":{"name":"@material/floating-label","version":"11.0.0-canary.d6c5bcf37.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.d6c5bcf37.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3eed80cce438813ab84cf2678f8822280bfbf731","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.d6c5bcf37.0.tgz","fileCount":34,"integrity":"sha512-Z8vKQPrkBSqWcA5YDwX7X7efgylW0CIScVqiWy2mYyX6lN7z46Ktbvk4t6eD6nGYh/ZLOYqfCpT3jZGTHhOCnQ==","signatures":[{"sig":"MEUCIHCbqNmF14FfqTGTKCWzPUqYCQZew8nrMo1ngj7q8a7VAiEAhoI2oTClVzdRWv0QZjss32Kp9ngHrGJB/L8oGYpIkL8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgU/pyCRA9TVsSAnZWagAAitEP/3BkhKzrzS74PcfVLWPt\nYBKIVaMZhfbE8xpbMvSi+7HfKtFSpoMoaN1tuNjmcgHIKddwjibzhmuXyNSj\nroRMecSFWhxaU9domJTwW0PA+E13Q6pzY0H3d7RP06Yvjp0ryw1eJMNVqkaU\nRHUrepVe/4gxwHM1902xBNbNK0QBP3wppM2k15PY8hqKH9XC64fsSEwRmStn\nfb0DGNoUetjMz1kmbaDK6jHJl4+6qk87+WhleE1LrBw2UkkWdO45FwCaao5H\nhjXf7VW353PfVU8+zEL0f/KyXUje2m1j/1WIfeWGT8d9YzKQneIJn2YEO6LS\njDU3RbkQSV8b8q/l568Z13ilStf1lqsriD8wtk7+/jC16U/HpYaueR9i7E22\nGBXbPWth9REBACV3XMuoPq4RwntoE2N4koOZso4oq8YsOGs5et1b6XRhql/0\nLKwkuOGCpLmMtbBGBdWTHl+n+ilXb+OtedCSwq2wocOqRHxnyrTQhdn5uQTp\nEWBrydLLbGhc9g5XFa4nKdXxU+Xp5WIcpnOS1OoZ9NuFdFFGlYON85Ba1uUX\nW8IG3fjYXP6ikEeBrr9otbhzj8HoanvwnJL1G2TEGX0y8D5sNv05iPaPU2hb\nQLxcDlOvpVkkYFbPDrOipXDN/911QrYXz+uVL+rfMt/K8MhHFMeo8xBk+K9z\nLLu/\r\n=rEat\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7ed31c18c565964157fdadec7c7876ba58c6dfff","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.d6c5bcf37.0","@material/rtl":"11.0.0-canary.d6c5bcf37.0","@material/base":"11.0.0-canary.d6c5bcf37.0","@material/theme":"11.0.0-canary.d6c5bcf37.0","@material/animation":"11.0.0-canary.d6c5bcf37.0","@material/typography":"11.0.0-canary.d6c5bcf37.0","@material/feature-targeting":"11.0.0-canary.d6c5bcf37.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.d6c5bcf37.0_1616116337685_0.9618109632684062","host":"s3://npm-registry-packages"}},"11.0.0-canary.fefc668d7.0":{"name":"@material/floating-label","version":"11.0.0-canary.fefc668d7.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.fefc668d7.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6d01676e2e580792a17285d18eee30b0c03879fd","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.fefc668d7.0.tgz","fileCount":34,"integrity":"sha512-9C/Tws/Aa9pOpsvxlz7pXR0zCWVruheH/avvUfV7j/BSFYQ/+fFlwOrw1E559l2Q89h2RU8Ll50s/uZaR66t5A==","signatures":[{"sig":"MEQCIDDrRO59YLXZuucFk3VDIxv2EZTfzCS8ZH12WAI8bgzvAiAwO5Kasw47hOLiD/vLN6UN+Z/MZcK/d2Ah9pIPUUg2zw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgU/95CRA9TVsSAnZWagAAYW4P+weOxzTveQp/vR/pFdkG\nWmFZKSItZldLXmoCYz97dsuIWqDaqw2n8PUuecTRPOdnQAfBvMqOzZWkQju3\njwEUSWUrZh5kRCx8SDtNmet3f+g2eQVxM0Dyb7OPr9K1uHjvwsdUu9flRM1y\nYK9AOZSnye1K/JqPQvgclnGcifum1oqP9vOxSkJngSQy/dyzv0xkGN3Ej6Q7\ngtqSvP0Ob9GM7S77zR7LCqNVkwkZWUJuZUKJj+UxV1EEQlPhizAAzxi26J8w\npbYfcYE2o13POivz15eMr2a/eJHDIdhDpCAiOwK0qAYe1d4El/BhSOZ7GfjF\nvSivQQATNjLdfXds8G9SFjdwE8Kpz+YBHgCS/9nYp8PZcU+kAYieyQ7EV9sc\nBNpUYPjXMthJJo6ZEogES4b65u+iiqigxQ/93Jw9QFYbFj1vZRufrLafU0pL\nPBtOuXrCaX34uoHya06caGtt+iT+J0GE41BwqQtl/6BJvEggK73gaBhOjjw8\nqhwaC550HE7ksgWaG9MDSgKVr+VNEH4UA5ylMPwLLFxkZg35S1ikcNjV2vW+\nPl87zWXYjeS83rWHTSNnzFLdnYXQqszBn+b7WusVl+ynlj+JBkHlwmug/p7y\nHVxLOvc50IBe5fp3i71qOSlXuXPDVjq5IPMYFamEXBV9vIGd0jhQ5jNe9bKo\nAulB\r\n=fm82\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7c976c590b16e8f3a000dcf5cf2b4daf6269aa21","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.fefc668d7.0","@material/rtl":"11.0.0-canary.fefc668d7.0","@material/base":"11.0.0-canary.fefc668d7.0","@material/theme":"11.0.0-canary.fefc668d7.0","@material/animation":"11.0.0-canary.fefc668d7.0","@material/typography":"11.0.0-canary.fefc668d7.0","@material/feature-targeting":"11.0.0-canary.fefc668d7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.fefc668d7.0_1616117625016_0.26838830278318015","host":"s3://npm-registry-packages"}},"11.0.0-canary.faa7d3226.0":{"name":"@material/floating-label","version":"11.0.0-canary.faa7d3226.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.faa7d3226.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"77b2f31f125eee1d499823335a6be9ffc7ea1d9d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.faa7d3226.0.tgz","fileCount":34,"integrity":"sha512-K++JS/MjsI9suMXoyqcM9Gctm6QMRX7N/e7ROtFopZqnZEKBCAyNphvc0m4LOaAgCEqFI7f2mK2eBLZGC7kU/w==","signatures":[{"sig":"MEUCIFa6RJq5TSLqXl1G601G5VCblcsi+eh9em1f6dSkgm+dAiEA96/iE+6Y65YucYnNLQqjWnYAYTVyb5DQFyas9CQXyCQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgVOLgCRA9TVsSAnZWagAAU9EP+wbwui3CZH0/ja2igfBH\nUgACyiVJffYDJZOYj8BEcgys3BG10vu5ZVXDbW58GE6j9gmkraxVA+B3Mp7g\nuToquuvlYxl5o5kE7Jvkr73/vNiI6bKDozS2Z87WMc9ukkTti1BXQkdtBZJY\nc6g76SxP0ZFdfgd8yvsvs0XdsYmblxGAA6+Zhn5b+Ycfbv+Ko+udBp8QkLec\n5uYMV/tm4aRYtfmPJFjstA9yX+ITuDMZaqpS/7LDQaAajZbH05SWAhu51sO6\nYf6OcF/sLMLLyDDrHIZvP5SQkL7LevjqpvgX5UDatp24SEhwxpAH+oAE7zhj\ny363QSXNIutU6E95Url4794nWGq+hk0qXhLNY681WejDgNaXFlKbvfnLEosg\n3tRFDHIZmqIBNC9L/Rn1ceROhCTAgjPHAjFzzdmX3bRtRBwk3JqMtABNmY9z\nB0XGUM1oo8/z6Q1OYOBco36REejZJsMUsVyBEFBwUKHw/vSc/ZoynkNxZM2a\nSOL2yyWLz1BwkSyjgYtJK423vUwMd0poAii95xUkQrz5boRPgflE4rmdCetq\nn+4yalm2iLiWwTCBUKEI1gMJlSeH9WYZG8L6K0HdeFHLJo8HQ93brmISpkUl\nE7wPMc0PbMYAaS+jUU8muI0c6e0Dg1qbP6T7tn/TaStu8lbrDX5rSFjOQsJa\nKJtf\r\n=qknu\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c6038c8b2af85b70f2434939a69416e1593d5a36","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.faa7d3226.0","@material/rtl":"11.0.0-canary.faa7d3226.0","@material/base":"11.0.0-canary.faa7d3226.0","@material/theme":"11.0.0-canary.faa7d3226.0","@material/animation":"11.0.0-canary.faa7d3226.0","@material/typography":"11.0.0-canary.faa7d3226.0","@material/feature-targeting":"11.0.0-canary.faa7d3226.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.faa7d3226.0_1616175839175_0.0544885261900927","host":"s3://npm-registry-packages"}},"11.0.0-canary.c60449bc8.0":{"name":"@material/floating-label","version":"11.0.0-canary.c60449bc8.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.c60449bc8.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d35ca5c4ebca756cc10ddb7c1b301dd377da8589","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.c60449bc8.0.tgz","fileCount":34,"integrity":"sha512-/HmFwvSUc1ACZ5241vxf7fuz3iC4ztG66y+ExR45DQb+i8mfPLl6/C7zu5TJTtnhNcNhGy0uzhw6QESFPdJqew==","signatures":[{"sig":"MEYCIQCRWwZxe2uMYbVpxY7wyPvcyyY5uzHLdJOcrQIUQysJTQIhAJwTH5FU7ZQBNtfIGSkZSZaGvPp7/n8GNxGV+44FsAq9","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgVOfRCRA9TVsSAnZWagAAckwP/iHiIgzSjlo+TpsTV3g7\nsu6/q/Hf7JG9dzZakDs/zb7VhH/RlMzsKo8kx7IWC7u4ZjtQydJTpN5KgFrh\ncF8W7XCslT9IOb+WeYP9TZgt4eMGp7OQqatBEMDsiRFyLA0HM87biIa+XPLr\nelfgsjw19czAuMdu+vUJTB3UrP7dppE5mw5bKYNC5rqFdQmUixbkFlCwmuMv\nnD4snPx5+SoG+0rd+PhQAhUEJ4oVqKOPH2+jSC3ISGzgTcF3EvjFI8oBxezx\nT5d1UhqUjNEN8omK+117YHeYb/xt+x9Epa0ZZ8zHZNzu16QAGHNvY8Ot/nqu\njaxC+acKAcHPem4ueygHBWtdSRyI4dZviOmiOl1C+Tc4tTzTiOhguiDDNlja\nFlJzu0779tKnYTZrAPA1POLPaUbzhHnTn2z4O4xK0hmgBEAZ9EQ7Fg7VbTzd\n6WTJ5GR8F3p6HOtaUv+IZsCaeVkgKQXcPITXJE7GAyOWK3yrNvmKxCrmMRhv\n/DgMVgZm0XJzKMGm+BdKvabThRx/714ubkRU9P7ZKuCEtuMEFVe1EmxvJcqv\n/6nusGEq5vUF704qt4tCmjUxGJzC+CXA52p6fPfzXgHZroHee7BkLBxVMgm7\nm+i4s1t7fGJ6MV2Z13IQyT+XoOmKAIn9escOmvtSgRNcAQPpbxZU0JGH+gu4\nvdmT\r\n=0RZu\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"874083f8b4dbf457158a7eaf9924ce1143ef6fa0","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.c60449bc8.0","@material/rtl":"11.0.0-canary.c60449bc8.0","@material/base":"11.0.0-canary.c60449bc8.0","@material/theme":"11.0.0-canary.c60449bc8.0","@material/animation":"11.0.0-canary.c60449bc8.0","@material/typography":"11.0.0-canary.c60449bc8.0","@material/feature-targeting":"11.0.0-canary.c60449bc8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.c60449bc8.0_1616177105219_0.9633292589131959","host":"s3://npm-registry-packages"}},"11.0.0-canary.5f0fc444a.0":{"name":"@material/floating-label","version":"11.0.0-canary.5f0fc444a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.5f0fc444a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"825d55c5a9a38a7c8bad08e8be3f6e12b35e2139","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.5f0fc444a.0.tgz","fileCount":34,"integrity":"sha512-fz77AXAyArSTYYG3owAti/0aq8e4+dX3lZo41lPgGtMXs0/jQSZF3bP7MjPCaO29ToV/myZytZ4B0GgYXnWU5g==","signatures":[{"sig":"MEUCIQCsBKSF0B6uqGN9KVgZF+Aa9/8CvLdCuEe4Q3103lgYTgIgbe+jSDWKWsSINzfsizLMqKmAIK4oA1UFdJ2eTpP60ZA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgVO90CRA9TVsSAnZWagAAGYgP/ibatGZUbB++7ARthfzZ\nRfSZtddPxcU7lk43bG9/xy05cEthpyWQ/uxDY1vNocEfT6hF2dJLd4n4kAD2\nzAM9joButuMic7wxIjRDq+E+EMuPK7/x0k5hTYPMoNvzin4Q6gd6G+DriAmf\nXsxvIz0OIHalyVrqhxSk61yffWBWB6Hve0NWgsejucxgHOavWPjf3A4Fn8iM\npxI+0jWoUxbrD0aToM2BIN7+TTRVqHxXO5VJIZDhJDPAUpX1E4SXrqeHWZDf\ngntw8baVa2tXKxXgzRIOCAkv1UuqVrkLHkqnjH/VDaoerh3/V+umUE3rIx+W\n0j+f5Iimejd/3xUACnfHv66DyT2EjA2m9grddVevcoThmz7oh9KNBXWLSSSb\nSnCERYVt2MKsild69p4r+NNSMPQuyE6JRBwnhn3ig2bsBpCsKM+nbzC/pVmi\nOtABy28P3qOWW1dwOHZluD3Y36k13uA4fCKjfkcdYH8+l5uhKOVm45IrSGhz\n6xQgEvXkP56OPsLww8bQHQM0A64cfqrn2O+Eu90CWbUdbVaJV/2jGahgVg/e\nYt+o8RB45SUaKU6QFFdisk5NoxFN1PWNc495JK7V3hjnzIkJwgOwt39ndqLu\n/4hQMzZn4YmGlh5K9/btP0UIE2fQFd9R6isAy3FigMJzHgdPN2E2bGT1u2SN\n7gj4\r\n=DN0+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"122f31622300f5877c850a516d74f7c692d0718e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.5f0fc444a.0","@material/rtl":"11.0.0-canary.5f0fc444a.0","@material/base":"11.0.0-canary.5f0fc444a.0","@material/theme":"11.0.0-canary.5f0fc444a.0","@material/animation":"11.0.0-canary.5f0fc444a.0","@material/typography":"11.0.0-canary.5f0fc444a.0","@material/feature-targeting":"11.0.0-canary.5f0fc444a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.5f0fc444a.0_1616179059822_0.23859453490653348","host":"s3://npm-registry-packages"}},"11.0.0-canary.4567a750d.0":{"name":"@material/floating-label","version":"11.0.0-canary.4567a750d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.4567a750d.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"55d41f11415a443b18164775adcad4953e16a9f6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.4567a750d.0.tgz","fileCount":34,"integrity":"sha512-pMCnhOjb32xwJ/IYDXbQPSaeI7g11LYq5UHBERYRcb6613HzLfg0kxJWS7bEX/1w5Jxqf+xVCd4kyoqKnCU7OQ==","signatures":[{"sig":"MEQCIGQbTl8voSJ0TxEHLYzfVJ/ktNSItZoV91fkmoV+aZRoAiAGC1ml475O+G4M4oFDGR1uxCmHD3DsJOeppwLAdiO2pA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgVVjwCRA9TVsSAnZWagAAafoQAIDE4n4TGyFI3qTgfK79\nj6otLBucDWuB91ezPuWMzi/1I13XtO5epUU9plCs0ap3ZzeNqrHl/Rgm1x+v\n1r+mSj1fgxoajfCL0UkPk143q73E8KHKsFdZmL0eQO5q7ZJ55ePBG1P0JsnL\nPh1H18THjTuoddG6d2/tOCNUv9FQnQv5zo4xI7Sg1wpzOH9Ra8jpFnYojPVD\nYx6FhoLgtShMG4X6NQLuPz5Jtq4iV4Qlif9s+jtsH0+9p8OSKhIFBCawd7gR\ncNKj2cEIuLtjYju5LFQ4CsvJF+9uHmUOosaiGtKb3m0s6Grd4oDEC3EhtZou\nMB+0T5IEzH/Jnc1QzdR7xGlZw8WfuOfR0MHrS9PJtsiodNA3ZAqouOMvf2Bg\nMc5ShqCgmYxcjRiyszcTigLJZZPPmNL3WCOKZwLUNs/Q3PWkyGuao7cDsqEN\nXoihBTzHesY9p29v3BxJZ6SJoF3PVwVm9JZ2wZ4gpeTwkfvx54jg5L7Dicvy\ntzr8TBcJy/k4oa8mtOmaSbkGfyYISDLS8V/EtCYYSZ/ZqpLeb2rVNncIVDfi\nszWfx2BNiyKhc/aKpgoM1Xl5sSMp2sqWsfsdeWobDykDlJF++1Ht0Rmg7ABN\nYkUHlWd+d/x263GiWGyJORzZF+yrSuiqDFbywQYBt851ebJ0V/gBI2CXYuOw\nR3Av\r\n=SEZY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e165b3e1af02e963deb71d6f39a7df6962710c30","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.4567a750d.0","@material/rtl":"11.0.0-canary.4567a750d.0","@material/base":"11.0.0-canary.4567a750d.0","@material/theme":"11.0.0-canary.4567a750d.0","@material/animation":"11.0.0-canary.4567a750d.0","@material/typography":"11.0.0-canary.4567a750d.0","@material/feature-targeting":"11.0.0-canary.4567a750d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.4567a750d.0_1616206063407_0.03671571672474605","host":"s3://npm-registry-packages"}},"11.0.0-canary.0cde52f5a.0":{"name":"@material/floating-label","version":"11.0.0-canary.0cde52f5a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.0cde52f5a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"335c6e5c9b10af862308ae4d8d61ec06f44e0d6b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.0cde52f5a.0.tgz","fileCount":34,"integrity":"sha512-fL57Xyg6YkagPRLhTZxfeeRxc1Nzz4qyW+Z9U35GY+aQoXvvGb01dCPcQS0kIukJkaSUGJOhJ1hSmfcPG8Ssmw==","signatures":[{"sig":"MEUCIQCQsuM/SDxrdAAD1PyD+jpLi7BMxTyMZ4S82CqrHmGWagIgFc5x72Sb1yHx7C8aUkfNIk7yrgy5TJyz063vnIOpXhc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgWTAnCRA9TVsSAnZWagAAmL8QAINPq3Q2ECUlWAtalnn8\nvIrpSUU4Gqi6u3z46vsGfW/1WT1iwJZNthjxplAV8p5kho31bR+Wx9PqtBfa\nnpGsOhLYPc/3A0cmi4gHf+2+juLbr+crzWQHmhGKEzy68VeRyGleM37u0tm7\nOVcVt/vIPvwe74Ue3Euyhv80QL7OgAOeLfi00p38+6VbgyC1LXU+RHLsLH7c\n8toxkTsgDYXe2r1i+xCzpdWyNF2wVXmc6GFcYAKZ6xlX0WC4ZbAAa3ba5lzk\nruDOPpDidzVnHHuZOVjGxeVwR/OjBd1yTir9ESS37mac6TnSnxYIjybwNytu\nAC7Urv62uZ0rS9AWCyWKX303qFIMmSMA4YpMolM6ZCGusNyktO25LKck5Tsi\nEdmgv84Xw4pGgJG9iBuxl03ldedqkSPkgtY7XdtrQQqYGrLZmuDkHwgK0M4b\n/Df2Pp236SFe0V1bu/jIPbkR8IsskTBs+DpISbsSneqsg0Un/93GZo+FiQF1\nSv0pjPoHAHaMBwD5FpaALIlFrYnMOuORPBuVSC+7AGp3a+vjKnsuwJs9BI1O\nDg2E51m4OQtPxd6lZ5O1C+TZQpOW/iY3env9G9fll/E1oN/mP/YGCzMHWEi1\nGkqanZGPIjd2eI8++/iFE95/3wyFw0SkBXG9hVn6CRPlMDsbVBm7uvVBccnG\nCE7L\r\n=uX4L\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"6f6719c5270f569fd2ab44620e89ccd53a31f98c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.0cde52f5a.0","@material/rtl":"11.0.0-canary.0cde52f5a.0","@material/base":"11.0.0-canary.0cde52f5a.0","@material/theme":"11.0.0-canary.0cde52f5a.0","@material/animation":"11.0.0-canary.0cde52f5a.0","@material/typography":"11.0.0-canary.0cde52f5a.0","@material/feature-targeting":"11.0.0-canary.0cde52f5a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.0cde52f5a.0_1616457766878_0.32852338253347146","host":"s3://npm-registry-packages"}},"11.0.0-canary.48f4b67fb.0":{"name":"@material/floating-label","version":"11.0.0-canary.48f4b67fb.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.48f4b67fb.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"31c1a8203ed0a07d9c9cb948d4f75d889a93b7ec","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.48f4b67fb.0.tgz","fileCount":34,"integrity":"sha512-3e4+rrarDt2ZPslPrQJJXy3tgsVF9Co64fGzwNBKSPaMzI1FkHQXsWIL83fzcxmYNUBPD/0HgR9iVXv8UcQ6BQ==","signatures":[{"sig":"MEUCIQCoIzBoeCPGSua456xt8EIwb8QmUvuYXmdOR3Cpv4BQogIgAM3bwujVzHoxy9Ap+2hNZH77ajHlLxJBNMvhEesYMAg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgWkdXCRA9TVsSAnZWagAASjgQAI1nfWoyeCjx5EMF8ut2\nxpJXP4GCrLTKon1hCL1HXz238E+hNbogLfwZs/UkSiS0pv4NrpF6rcXwT8cs\nIDUrQpje59MI5oj7w/MWTS3X/aGemmonOryWhzaiyPK+1Egt+YjDfhUA9hKm\nRcdnIjxTyF8IZ78HnH6e59/YZdA6UwMuLhBTXCq4W+dtnJNcNHxjLTWxOaPv\nTgp2rgSQXTCSkicxCKbyblduNZaz4b1gTGfLHxQ3C0w4BpD506OmMwNNk+N2\nmFq2LB0e+UZeA5AIA9GSilHPd/cz1TgpLmyzb8pNAlJ5hnKj2TpYxN+3CAgM\nZ06ccCQNcZBNhpsyKne9A9RnJkdB6HIv33UJsGTaib5LBaelpNVuhMC+2LR6\nmZapT7BOgmsyiRALbAYRs1wr909oVCcdeKzm/OmaSdnDuI5G0qTLxRMeLTiF\nkIrZBuxH7tB/Xzmz/jGlyYNuZdYzz4UnTcxFlBHMinatBSORawnF6KCkXsfz\nN49EQUxcOo0uhs8EH3CS5wo1e+aZald6SM/q0ppmT8V+oxtzyaPOENpVkbh4\nrU92HnCJMvXrhnyF6g1swTMeNThuastXGNQO2Owxsi6c4qnfhZXRu1Jbs1V3\ncYLBiTSgEszSjy1fNcvApOIT+K+mzhKyBpQdaerwnS4Cm3ap1Mkxq+EeBaSP\nheij\r\n=bC9z\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f83669b240feaba73206d330f10c80a9aa31c1f7","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.48f4b67fb.0","@material/rtl":"11.0.0-canary.48f4b67fb.0","@material/base":"11.0.0-canary.48f4b67fb.0","@material/theme":"11.0.0-canary.48f4b67fb.0","@material/animation":"11.0.0-canary.48f4b67fb.0","@material/typography":"11.0.0-canary.48f4b67fb.0","@material/feature-targeting":"11.0.0-canary.48f4b67fb.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.48f4b67fb.0_1616529238817_0.3472343503465287","host":"s3://npm-registry-packages"}},"11.0.0-canary.0b8cff734.0":{"name":"@material/floating-label","version":"11.0.0-canary.0b8cff734.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.0b8cff734.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"10985019e809a0d922d9628ab0ae84302ffb50e2","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.0b8cff734.0.tgz","fileCount":34,"integrity":"sha512-P6RR6o6dK+QAxnCNjRZrISoaEv4/4Ar36pw1abryvZikaL1qdsozicL5iDdtRGrxFdeWuAivM4pq0V6gRORrtw==","signatures":[{"sig":"MEYCIQCRN8LDn3jD4h6wmUXIhlf+Xvo14s6ZasVq9DrHQr01xAIhAJXR3q7T75Mz4N3DtBGcuQ2xikN+AKBH8dPi2nlRkcvT","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgWknUCRA9TVsSAnZWagAAy/QP/iHX1C8feRNa/tjKJlpI\nIW7ecTgb71uNR+jlQzL851gIa9NY6TJOxOGMLP/d3Mh9lsBEAY/6cspIfAzQ\nIcB26Fg+arXmBE6K656Nkigv08QTt9d7fXK/gxuSIMJQR74nQJJYAzGBZyFL\nishHD429o+2az/nK6/CSDQ/JEm0c5nQ+Zivw60Yo1vvZ0QhiTEkNsyBiexvQ\ncsXih/sTqHB0TsCIVq+lN5yzbUXLH5pndblSz1U39m/7AHJ2amYu4WfOUVqA\ntglEZWNG3ZBVSJoCOQ61UQ+0DaFWM+hYeeEc/akr4xTvdZCPHB9nuo1kd+fE\n/ZYWE8B9B94QezQOTc1zV0XwC7mRh4r/Ulf7Z2/waOT+iEiUiO9cxvNHgVpB\nfL8k09HJgnYvYZ/D2rpz7+fY69GnMVBceGJq/uqKctZ4fvVBpW6zHj+VsdX6\nfcNbbs9C2EG/Dh4HkO1fDxzo99a05s5zRVV8Cd6Mo0FgTmx5zCG+dVRVUAwK\nPYjFs7DHMf6S+KI+p5KCRGbO9Qu3LQEl8secKsu7eJKYN2BsfJ0BmuIONY4o\nm5V/h5q9rqlPYL/HBTEDieztwf+aRsIugjZQ0tCVhA4Oz7PxExEA4HE4EBmM\nsOqpUP1npwSvErwMzPvWWfKn67wbEC/Te6kbAcQ3rIXbQktsC0crSUFv37EY\nQafV\r\n=ykAb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"0371cb1671557f9e1d8a3bee3ffce11bdea058d8","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.0b8cff734.0","@material/rtl":"11.0.0-canary.0b8cff734.0","@material/base":"11.0.0-canary.0b8cff734.0","@material/theme":"11.0.0-canary.0b8cff734.0","@material/animation":"11.0.0-canary.0b8cff734.0","@material/typography":"11.0.0-canary.0b8cff734.0","@material/feature-targeting":"11.0.0-canary.0b8cff734.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.0b8cff734.0_1616529875925_0.43094881897376447","host":"s3://npm-registry-packages"}},"11.0.0-canary.8943b991f.0":{"name":"@material/floating-label","version":"11.0.0-canary.8943b991f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.8943b991f.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"880ec402888d4cbb4995978cab1d1803649ed1e7","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.8943b991f.0.tgz","fileCount":34,"integrity":"sha512-9OhfMkTreSdNb8CQQj/TEpatssX1jbuePNWNZ5RrU1VFrpj/myCdZ11ravceb0iTzAQLFwujnmXdO1od4xgpUg==","signatures":[{"sig":"MEUCIEURVBjeW6AdtSeWZ0S4Rkg7WN6Qi5GNgXA6D/y5b2cpAiEAylgjiF8OP5O7GUL38RPIw9FAgdHNwtqjoSqx37+qk1o=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgWk+wCRA9TVsSAnZWagAAPZwP/RZeI6SxL6i6CWU6psjS\nGJYjbfnSmXLq6MyANkm1uhb11+BDg70KQE0u6HSlLwTifr4kybzoDtLucY5I\nKepfXaYcp2FmVw8fBZTz7+W4oPA7fAS5ZkfDHZenH1tkW0OfmQtA1pX6W0LH\np1dzvgAmF2uZtLH/ASnbNCuGfVFtkjlwXEPY53W6B8TTpau98tMDlJ81sgWS\nbebN3LvohCqLiZubbI9fNN00DvZ8Yiu9+d7+liEp906nzixhJJ1ifdEPEYmS\nh/HZ0tGew3Khm0jDWxbFmLUG3001iVKdy/QdO9640k2MtklDVJDMYnI7uetA\nU5nOIW3l0YBiI3Uz0089LASpmJuAivwDni3FmVUGvpdLKQwNhf5eBLR73gnu\ngdObGmt63ZTM4kjOMJwqgTLExOij134pseJbFqcquFv0IBYoALozZ9lYRhBR\n+1GR1OdF8woZFkBcy4TDWn9uwv9Q/4apxfFICahqHWjUa4SaXrYhVtn9NLVF\nj/VMs+ac4jGnp3vPHCW5e+kKt3kulz/YVFtqJ1FyFdQiHcoRWeSADG6EPPTx\nNNi/w+u5/OrXGYMINhuw8+yZRcReZjfIGtxIcXaa3D2Y+eML59IxUQx+cGYl\nw5I31onRX6w8Q0eCiYr+0ZIIRzLa9kz1gbBKhfjvInBdfu+/pgygGma2mwMI\nn04m\r\n=1lQh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"85cb2528143c5117974441e499367a5fc252b745","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.8943b991f.0","@material/rtl":"11.0.0-canary.8943b991f.0","@material/base":"11.0.0-canary.8943b991f.0","@material/theme":"11.0.0-canary.8943b991f.0","@material/animation":"11.0.0-canary.8943b991f.0","@material/typography":"11.0.0-canary.8943b991f.0","@material/feature-targeting":"11.0.0-canary.8943b991f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.8943b991f.0_1616531376301_0.038562044282328456","host":"s3://npm-registry-packages"}},"11.0.0-canary.3955d8d3d.0":{"name":"@material/floating-label","version":"11.0.0-canary.3955d8d3d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.3955d8d3d.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"63e8edf0f765a94730ace9a5ace0832005c7888d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.3955d8d3d.0.tgz","fileCount":34,"integrity":"sha512-WmudhTvQjH10pw2uQgUB6mFdu1Jag7wIQRfITKaRayGgImG+gWA4SAIzQxaxv74fKdwfKJTw+wvLlJ0vtOZf5w==","signatures":[{"sig":"MEQCIAYpqMKKvRIDESDfHpY00NXP2DpxY92ZN4jrZccYvq7JAiBGMZRCMme0S1XF7TxQaN/t00GcK1pHv0uxKfGm3bkEDw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgW5ACCRA9TVsSAnZWagAAT0UP/iATpe3JBmA8Mg2KNCjc\nuxTVgVcffHpj41CxewRtgNzmQ8DxDzzoaRnix7vewixk2leHT+tVsDIIx/LE\nRbi25qivbIUaMUBR9wK7IeQZUR7nSByM1SkhAGkqZCtQA8BPyRePO58o+Lrw\nuNQv6aau3phSkiOJ2qxsM9cmWsVmPNQZCrbyNTe51ZyrUKcwdpGCzb5Kiol2\ngVVbqaBlNoAHcS/qqGsx6vcEsHS7oZokaRuJaMpM1eUvyz/PeNiv3irCDYxD\n1nFwDxUH4Ogk+oOYoX8coUd/nvkVi4cFdlA4O2CK5MQnKdkKJ2viknpA/1dd\nIj+hANClxIm7tJdihZ73ANuGATzsIezL6aeTuHG8bTB8KL6H/0a6tPVToidX\nHgPyuyhmqKTqJA26yA0tNjJF6JHNad8/lax1DgL08VnVmbUybhR1uzMyd0Sa\ngDu0VI3+7moWvP6pds3I3Rxdg9TQo2MhiwK80N/Y1Zo3Bo9BtIlwvqw6+l6B\ne6MVUpTxQ11AzvwO5eIQHsuielIBDTZd2obtGhiG6h5eEF3MPk9spOOuhVi0\nZzQz67WJbkGZVzkQlY/m7CUEHp8qHVVvoZeo0JZHOgiSYReL6QitPGoqQLyt\nxVqrz02jmM06RqKexlriBgxTlC4HYdGqDLdKlU0XSbuWY9Wq3ZRpaN2FSPcn\nAqVC\r\n=T//1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2679d736975b17823079a52aad1e329d8c2a3b71","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.3955d8d3d.0","@material/rtl":"11.0.0-canary.3955d8d3d.0","@material/base":"11.0.0-canary.3955d8d3d.0","@material/theme":"11.0.0-canary.3955d8d3d.0","@material/animation":"11.0.0-canary.3955d8d3d.0","@material/typography":"11.0.0-canary.3955d8d3d.0","@material/feature-targeting":"11.0.0-canary.3955d8d3d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.3955d8d3d.0_1616613378279_0.21715741908515507","host":"s3://npm-registry-packages"}},"11.0.0-canary.23ea2d85e.0":{"name":"@material/floating-label","version":"11.0.0-canary.23ea2d85e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.23ea2d85e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"85e5a45bc5ed201c5ccccf7b00facc2cecb666d1","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.23ea2d85e.0.tgz","fileCount":34,"integrity":"sha512-OQFq184u442Iu33bYxKcghl5pOT+VQn520Jc9QtqNGtp7szaOlCdEvwIskNvJeR1s9zeRftpN8YN1BqceXSj5Q==","signatures":[{"sig":"MEQCIAVWLcUKpEax/claQyU0i2Z37h843mu1fqZtxR/vJlneAiBeljEJitj5s83CDegJYYohwUwlHf8M50aM0siN8Czq9w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXMk4CRA9TVsSAnZWagAAfD8P/1xN0Lw/TR9oG91RPcnS\n/Mrg25Q5EpzadwOimVugF3IWaqwxrLIqAaQL6+JbtQPbdunoyjM22W7MJnUz\nPl7GBIzjhIEJbS0TBXth9xqVPj+gY7bvmxVz8I0lwUZvRr4toJ928OlpSI8V\nFxNRffMue6Cd42z26OIhx2DW3qnMCuvudwMJI8oNmO2XVfCop4DrZYRduCn5\n9qHTkhqcXtC0wvOQG1z10qUJMMFJcXo3cBRyg732kNaMRFzgzEP+Slpuuwq9\nfddehfbk78TrvWzvxoQ9XXptuxMJuKRO4SuzVENW0JzHnutfH+5OM1MUL3R5\numJHOCeTSgvmJ4t1/g9rWtoTwD745B2skhH5EpaTtrrqzFR6tNff3BI+trmB\nmFxv079vHPF78mPNDeDAcFSGExVV0cVPYjQ4h4CtLRS02wv5FSERiGYOz0z0\nQT6MuKMrerDiFbkh/H3QB32h901ZHGiJu3+9aEtoM7YSSZnT/MWgyeA7sNod\nHjlkhPfM6OJjrg8nTk6SDfGflDGIIRlQjCMNvgFB6bDj7YELj9A22ZhU8Idd\nAZEWM6jmNC7yGQl+aGhstTMRrA0mdBOOWBNt9Z+dc/ILxtm97G+g47ha19NX\nNhOTNSNpeKSxKCz9vyJzEtk4UBpc6SN95NPb9ZwRBgIC4W5VNlZp41p+zcD5\nbiSe\r\n=KIgG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"705a9cbab9462d9e300da18c26d7992aec452ff4","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.23ea2d85e.0","@material/rtl":"11.0.0-canary.23ea2d85e.0","@material/base":"11.0.0-canary.23ea2d85e.0","@material/theme":"11.0.0-canary.23ea2d85e.0","@material/animation":"11.0.0-canary.23ea2d85e.0","@material/typography":"11.0.0-canary.23ea2d85e.0","@material/feature-targeting":"11.0.0-canary.23ea2d85e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.23ea2d85e.0_1616693559938_0.8002891353016737","host":"s3://npm-registry-packages"}},"11.0.0-canary.e3ec22f45.0":{"name":"@material/floating-label","version":"11.0.0-canary.e3ec22f45.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.e3ec22f45.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"699c928b100a35a102ed03721ad144ba21261042","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.e3ec22f45.0.tgz","fileCount":34,"integrity":"sha512-G4mPyRBEp1dkAUm1ywzT/MSEFgL780QXmMPScogyLLB6o5BuIVEvf2cn2CzgJh01nUoc9Quulkc5IIBXyMDgwA==","signatures":[{"sig":"MEYCIQCIE7X+KisUD3G/Rmc8oDRyci5xsRkp8kNZeTfHMcOZrQIhAP+aa+aTcFMj4kKv0lhlpR78zswK3qnXEI9NQ6fb1zmJ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232781,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXM7QCRA9TVsSAnZWagAAfBEQAJQ/LVL+iPZgnYe+hCs4\np7aV+ojZaxFOyawq/iq9gCFumiJoVSuuKirCd2CRuImPBwAlD2KsLoVEnW7W\nRwlZ3rlfSUZ651z9ctTA+LQQfV3cZxefC58fiiXonCMau0sRiUN/8EaSvCmM\nG/+Qnbnnx8QimAlqJe8fC/tJYxmxTOn69JTiFWE0itNiv+acoqYwaAibm5rA\n1UmVIbiPJL98L+ARGxuvNGEz/xCs7eR6N751AvkA1RoPrfmTYRs81np2fe++\njLYigdCjKV44DncHjIRuogQeV/8pMMtW5Wfyihy0VXSifoanO9PDE3dCq/U8\n1sSJSSZ1gqFSGfEYh8K6jKP4hjP+lSqPMsDurcSfAL7DKFOb9q93eh47TAtH\nNglIluVr/Pcg6HgDLloAZ68Yk5jF29hx2FIbHbYrD5JpzMSqrQ2ZyOLpgVQ1\nuaf1XayA7y+7rD3Uqx0lBk7BXaONtvIrHJ2K8BGnkBkk58/q6JJsa6MRZD28\npeW8rcJtoelZwsMOQrZq0AxXClQqaAVFD2+7Dm/BEFK00RCfTLCpOgUQie6d\npkq3JZ9lFKg8AzRySocLh9o8Bjep58TeXylgR5TaiJzPw+QQ0IdyYTPQ0mmA\nJN154QAWu5dgPdNwyrHd42oYMf83tNkQRa9d7GjCP9YFgQ07kLq90q97JQ24\nNgZf\r\n=4D3n\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2827fdf50a2ab264554f8f307d61fddbab82c5cc","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.e3ec22f45.0","@material/rtl":"11.0.0-canary.e3ec22f45.0","@material/base":"11.0.0-canary.e3ec22f45.0","@material/theme":"11.0.0-canary.e3ec22f45.0","@material/animation":"11.0.0-canary.e3ec22f45.0","@material/typography":"11.0.0-canary.e3ec22f45.0","@material/feature-targeting":"11.0.0-canary.e3ec22f45.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.e3ec22f45.0_1616694991926_0.791142290127042","host":"s3://npm-registry-packages"}},"11.0.0-canary.4ceb42220.0":{"name":"@material/floating-label","version":"11.0.0-canary.4ceb42220.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.4ceb42220.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7880250a9b844f4952ab97f4f3a53a723d7646fc","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.4ceb42220.0.tgz","fileCount":34,"integrity":"sha512-wYwKgZe9Pr6GvwUT8NYgDo46MAAP3k4xSITMe9nmFzJB7QceKuL3RNKDzEXGmOu95UWtqa8u3pUT2NGWneunsw==","signatures":[{"sig":"MEUCIQD3cYFrT2gvDzViWG0zt1i0w5DPWwnZsIKpn0hem4ALQwIgAhtqBLk0MAx/jLq6O6nBKushc+YxyZcUVen7+OR5nco=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232781,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXZPlCRA9TVsSAnZWagAA4oMP/Roe7m00gSrFYAHsr0Kb\nQA1buo6Jt7Z9xJRLoy9q9jhEGiuC5K3IUfT38zmRiUP6iRBwgrlIY0I2E/ww\nOT1KYT7t7XdmOQ+tIvmrD1nYCk05XMID2+6nN1Y+6fmmH+hSKi61Kt0rMc7q\nx6PulAfym6kKi9uUr79gbgB8BnhnY6vkXTseZdDX7EDf5AwqPnj0HVPl5Qfp\nU+DSbpPH4tWFIDoTJgjo67KuQzMnFzWCToDW5X9M4hHH1RaODG3d8E2WBUNj\nLUcXpI79JYIwiOdokrO1zNoVus9YkzvxuOpom2EnwkSQMF3R0YyMAFltf2PY\nIFKJpXqghhN4OO350BHR0DthUgaFnUC1GGH1Fy4vCAwRMBBasVAowM4wD6uh\nQVayHWEpYgRhUcIOAV62uFgI9OoJsJZyZLr8nQ7/XfqYnYjPDyNAePbXs0xg\nZHn76wJqDGosmEoRN6rAUSrrzn4ZlnkjrrS5/YnNG7zSaFpLnH9Y/YP2ksie\n3BgnBcYhWQS5Cjhh8TkuC1cMsM7dkJtfnOZ9zu+T9hh+ZehfznNhgbgArdlw\nd+fXk2evkh85i+wYUKC0v5GwjVFolCNfz8ktirFshlgbEycJyhXyfwantsgo\n3+TGEmqYA8J3WTxjDFa7e50ENbJuyHYZtoKGaeHBSIETBfTDx1A3PtZ+Qxvk\nmhsY\r\n=4LTw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"75fb611f33737c857d1b59245ff5a31676d7f3ee","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.4ceb42220.0","@material/rtl":"11.0.0-canary.4ceb42220.0","@material/base":"11.0.0-canary.4ceb42220.0","@material/theme":"11.0.0-canary.4ceb42220.0","@material/animation":"11.0.0-canary.4ceb42220.0","@material/typography":"11.0.0-canary.4ceb42220.0","@material/feature-targeting":"11.0.0-canary.4ceb42220.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.4ceb42220.0_1616745445130_0.2800339462418808","host":"s3://npm-registry-packages"}},"11.0.0-canary.dc9c84023.0":{"name":"@material/floating-label","version":"11.0.0-canary.dc9c84023.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.dc9c84023.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"90211e3eb64a38a29f9482e66a2d33832d0f7eb2","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.dc9c84023.0.tgz","fileCount":34,"integrity":"sha512-M4nHe2a7rRRzsnoazi/ZH6vSmN4UOe6D1MCLdhYZiYMlRfx3XsVfuouN4P/EhjhBEwuD3LFeDQ8zeXmqWhA41A==","signatures":[{"sig":"MEUCIDcdy7xCEJIj/SLTVEkQo1e0VpG5fNQd7SVQQ0FzUUWqAiEA6mqq6W19bFaS2S1vvaT3eonxfpaa+NPNfAryz078Bqk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232781,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgY2R2CRA9TVsSAnZWagAAjE4QAIgzh7tcGRy7SgwOqTx+\nGS4IS3S8xwBbK5XCcfq7YhZ4gz/yUcM3yocMdUYDMYtWHNrElq/0fsjhhgsL\nKhgYzcrQ6O4k96klJWy0KDcSRnT2iNr9HxT35uEf3nL+z4Jei5JxqXY4FX6B\nmCCnk29Ieu8+bW6nFgt0ypDWWbEDd8oEr0ldCAJ1fRjKMTWgKITlxezeUjrj\nUlTFLZLwd2EjBNA0B8/yd0Jh6SF0Wb2qj3VTC2Y+kd/olLHVgompgFbbevuE\nN1GilvdfY1x/WhVlRVrZITbsv+YJQ455RD8BvTL40K5EPfG2WQYx+e9ZHGuz\nVG672HoyvbF+c/Vd6WUlmioBbMI9eXTeSg4YA+4bLjnX/ipr/Dks0rn6KDuw\ncwoo9wKkO9qw4V10xbHgDaBp2K6jL3WggdEgiyAWSRnkjsZaXYViF7vc52YT\n0Lmo58c3FRC17487OhoErM7jcHz2YXXjBCwv2wF6kslzHl7gxu+HOx8Yda+f\nKyWZ/+N7dwjr1VY1mrS81hjltFn+uv5pQj50v2udLm6xB3jY0NmvcvkZG4Xf\nMmUVUwmrQVqKnGOLzz5MeYDKeusAXBAXQcsEyJBljk70PCCTsbTzxH6NPJ17\n/qR2sMZuJtyyxDIHDFnC8RlUL8/1XHpuiVIOhWbLake8DAm37+ycuStB2E62\noo+4\r\n=KNUH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d7f7ddbc4309b6a8ce5cca3772255dcc6acdc701","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.dc9c84023.0","@material/rtl":"11.0.0-canary.dc9c84023.0","@material/base":"11.0.0-canary.dc9c84023.0","@material/theme":"11.0.0-canary.dc9c84023.0","@material/animation":"11.0.0-canary.dc9c84023.0","@material/typography":"11.0.0-canary.dc9c84023.0","@material/feature-targeting":"11.0.0-canary.dc9c84023.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.dc9c84023.0_1617126518112_0.2280872798116964","host":"s3://npm-registry-packages"}},"11.0.0-canary.56fc26962.0":{"name":"@material/floating-label","version":"11.0.0-canary.56fc26962.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.56fc26962.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"54e738f4d12d0c25c5cb27e12ef37e692546743e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.56fc26962.0.tgz","fileCount":34,"integrity":"sha512-udldYeV6iiB3E1VcHLhLHReM4P7K7xFLtgNk2GSaFFjzLm+9L6LttqszOoV661jreJBVmZ/07OzEsdNa0/uv0w==","signatures":[{"sig":"MEYCIQC6VZacw4zvDfcNqTbWQCSgKeX0Tx/JaibNDiXlejUFmAIhALdu+ZQjgh7ggOV7v1ZjggqMIV99e5s+wklzI1Y6OkVH","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232781,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgY8BjCRA9TVsSAnZWagAAAUQP/RUUOAAncU/+JBCvYlOT\nsdyqT3RIyN2oUjl77g1v0BsgFSEnqgrxvHTjzvTY29/Vm9kzT/Z9Qal/W2Ej\nGy7OHv+FOkzju8gaCBcAvCh19eSSJZBKlw3Soj+F7ew9eThm27eJmdAECn6E\nZEpNrD8lkVLMt8bEYsLwqQho+xLm/JErUiF8sQOSWhMe8TmvNU6oarrZEqBv\noC/deaDbfIirIeWAPWU5uH+bCFfNzsh9FrHR7Yhqbz8G2A2g8p7u6hmxR+49\nFxVTRYL7L9ZBDDbmn/6UpInmpRySgvDsKSnr515iVfueerxcvde/yWTaozEE\n4gL/mZYo7HxT5hCH0sH003Krq7ijpcE+3cZakus8VEzD8m561RES1EUMzl2g\n8cFQvGKTUQd9dBsLzJV5H+fwtaaruV4pUhUSahj2DS2/TrQM4wSI5vmzR3pt\ni2DnRoatkliQ4MKpUcd816jBOrZbShtuf50uDzPQ/MldBJFcyDbpZcm3Y/xB\nb/ho/FS+JV2vwiKmI+DxpXm8jzxcVJ6J81GYlUDgbVpKIqYw6gjhdV6Mc9B6\ntIsBWxirXPsWo1jXddG1uugbElWweWt3kblwJ0oKlpJLudOj8so3f+l9iU/3\nd/gu9tBJ1IZs4pNUygrRWwdVIkGzz8sSuakW2luFS9UOWGKXyzIY3Ktsimay\nY/rL\r\n=LTq7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"dfdb8792d4ee8bddc61386ac6a8e7e216c1681a3","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.56fc26962.0","@material/rtl":"11.0.0-canary.56fc26962.0","@material/base":"11.0.0-canary.56fc26962.0","@material/theme":"11.0.0-canary.56fc26962.0","@material/animation":"11.0.0-canary.56fc26962.0","@material/typography":"11.0.0-canary.56fc26962.0","@material/feature-targeting":"11.0.0-canary.56fc26962.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.56fc26962.0_1617150051076_0.7140822396257009","host":"s3://npm-registry-packages"}},"11.0.0-canary.bc318250e.0":{"name":"@material/floating-label","version":"11.0.0-canary.bc318250e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.bc318250e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"478da23b8483ba84ed9d08bbce904d1223e0e8b3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.bc318250e.0.tgz","fileCount":34,"integrity":"sha512-dPRuWZ5pvdwErl4hVSnk4TJSQhf6f7ARPGYuiEVrok7u6+EmE+4c379MmwRp1j1UnWjExq7AdTzpLzNHzpSw/w==","signatures":[{"sig":"MEUCIQCdTHR1VsdhtXGZLdiSwXbrUbv5MyORDFNM9xi2zosCfwIgB6TXeXf7gP2NuINtJHkiXL6xMdCOC+8dh5SOCR4iN+E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232781,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgY9F1CRA9TVsSAnZWagAAW/UP/1sOetoDdM2TMBMMYMy0\n4SREYocmVCMFiR5bGS+U+zws7F9VT1syfHz+NAAzOXWT6gfoJgswbVWMrCPm\nXWf0wGboZA6XbCrUqCYUdwaCUpavGdiBBW0u4W/qJocXOA0a/wrY0TkydKMP\ny4gXy/JtxIx3eCYB4NNNVwYgjimpE1j2EIQ873FthhBqpdPbDF4h8w6vRwcN\nY50vYYJi870IDL+GubXN5IbkzqEd3UtSvAaTRJMzYTHuvBxkcvkm+w0Ba1ub\nCj0FaBarw5wbFodGACmfxomyDWdb5aflPCOdhVz887kSxdm72N8YMXzd1V7G\nCzZEqh7xZCItFNDXqpoZYxXpnbiVnvfL6TNnufvoJPELWb++ETetQyfl5xiN\nKBnVz06uXJPsjiE6Pj0n82Nk8sGTDaZTOhP9bpHd1nVnVf5MIw+23Tmm/W/O\nhRxlJlEQJ/Ujv/+Xit4TPxMyl5BaEQHtDJcNDxxnbkevY+0i/fHtTHCCF4xH\nydOgsajWu5p74mT46BOV5hbmOdYHckS9Pz7pYxvCE+ZssGG5WCdpJ2xnXObB\n1furSiCT9c17m5nvMgyvYorkZH+LQlFQ9HGIRgynoM46KCqeP0lBqRBkwVW9\nlDURYkaj2AWOCKxAM7e+bHReAnRPyo/ilftGwATYxWsJbr/8ALTFarRUzZwU\ngp1/\r\n=zhmZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1de1daa9e4e0ee7a779d524a027b9e7566841b56","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.bc318250e.0","@material/rtl":"11.0.0-canary.bc318250e.0","@material/base":"11.0.0-canary.bc318250e.0","@material/theme":"11.0.0-canary.bc318250e.0","@material/animation":"11.0.0-canary.bc318250e.0","@material/typography":"11.0.0-canary.bc318250e.0","@material/feature-targeting":"11.0.0-canary.bc318250e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.bc318250e.0_1617154420893_0.35664935556808897","host":"s3://npm-registry-packages"}},"11.0.0-canary.edaee19aa.0":{"name":"@material/floating-label","version":"11.0.0-canary.edaee19aa.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.edaee19aa.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1030bd9b581659b41183dac069b525b7c957f9be","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.edaee19aa.0.tgz","fileCount":34,"integrity":"sha512-54VWsMWaDWhODK71X+TAQ5v4Cw2HoiAyhR2wdofCFzPHev3DTwAujcCpXqyV2F7S/msUHea8vTPkvW8q1GIrlg==","signatures":[{"sig":"MEQCIAYGckaA04QzXwTUJIapE0/I7ZaewvZmZEqlXNoSeNCsAiBKWdzi2sEkzyJvULaDKIpl9kvPJx2N5pvMLCTvXkzkGA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232781,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgY9pYCRA9TVsSAnZWagAAW5IP/1KeySE3bus0h5Wo4Zvm\nEsg05zACRYSLEOyCmH30XKmM2kGt2VLGDD+uLagD8YU6cGZOSI8klpQo99Xe\nPT7bhSn5FaXSz4WsqAvzVPx46unDxFelynruatKKuS4dVQOt15Ms104upROd\n6Regkq0fP9yFo2aLieApXBIL31+HsCTsolyX83EqEW76TEDH5ENYUiSTMDip\nMPOaVwEof4Wyst2ovXtMVMplRp6lExSy9UF8lQFIp54KAxQWr3iCQK+DNcLH\nGAqUgnwT+ZMP6Qn0prBdbTvxB9iybw3rBXSPlpc7XBKwiXMETPdsN2fMwH+Z\nJwB+9uPxr96LboZKtPQAT13/HqsfDWVFlhAnXidt7cYNOnmQL67Q07ofQ7kG\nIQOvTS2/fIsUs1WmbqWcVHfz6J0B9N0/bju3uGhsoJZtWqQDHtyANMtsH3As\nrOBICss0nOp/WBgYFOi1dplVaJsatZorVIEOnQ/wHHd2MAUaLEzaY5h/hZiZ\nSq7EoCBSqZd661w3ehXyDOVj85s6324GZGCW7gbojQ0qasZ/qnO1HbW1fRfx\nHggrJqjPp+VULl+P3R/UJMiMle7CFOixVyQO2NIM+sF9b+7R+FtQu/jUvRlB\nMEXCOd+q50LbfXD99yfoSVw/gKMMuw970+pd+1s9u0YS5+KPB8pFllMJrHei\npsoh\r\n=kaUJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e2249b4be4cc5bba6887f28ddb9a3b9cc8ee09de","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.edaee19aa.0","@material/rtl":"11.0.0-canary.edaee19aa.0","@material/base":"11.0.0-canary.edaee19aa.0","@material/theme":"11.0.0-canary.edaee19aa.0","@material/animation":"11.0.0-canary.edaee19aa.0","@material/typography":"11.0.0-canary.edaee19aa.0","@material/feature-targeting":"11.0.0-canary.edaee19aa.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.edaee19aa.0_1617156696285_0.6192440829818902","host":"s3://npm-registry-packages"}},"11.0.0-canary.24609b822.0":{"name":"@material/floating-label","version":"11.0.0-canary.24609b822.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.24609b822.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"89564a5658bd48eb89cceaaaca8b20f59dc90b7a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.24609b822.0.tgz","fileCount":34,"integrity":"sha512-2Dl0ff5nOQ16KhQnqQXC0cfkMSh/eBXWeEPh52CSF+Qkl4gtOZrN/A5MkWXsoLbb2nQjtztCcmqTRWZSsbvtRQ==","signatures":[{"sig":"MEUCIGwfP4U76b5OH7rSJlBp0sU5sQAqeT8q7RS+pNZ4yuPBAiEA+DIjTHZqf+BmQBWOrjBihkXrsmq0B5F+0EI/GtZ16sw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232781,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZOIjCRA9TVsSAnZWagAAOx0P/2owGU5XhN3k/WN9Ysuf\nYCcLhtEj50FJ4/eZr1Wi/TvwVOQQOfRgfnHdPfV4c2kmVlofURUEhTGRWjTt\nJpMj2bmlsvI9QZEh9mRgqCob1o1o1A8z8XmpX9z67n4b+xxCUqqfgye3YpIS\nWOwm+5A7AH4lbW2Ga9aWANZjORgld+VQy3Hui5pus0a57HDuXHxM9YVHWRDy\n/IA6WxQLslINToPFww2qXRNh1Qs+zwfm88nNwztu02iVk0cWpz8OfJWAQNlz\n7eD53l7rmR/I8iZjyPcNspz2q3uEIHdZbbrJ1FjDuQ587EyJQJNVeSONr22M\n03OVc60cy230RAV2H+9SeMQn6rPpZgClqD8KC0c+59NiBTWe/GnFRNhsFzUv\nz5z5wkOpNMLlwf/40/B84mpx5akm4BZhgLH8Ym7cbIG2ymM5wvBqgRMixjzR\nL6XYbpx4iRHE+mrdRqgaMOoPLm9nzg/wSiMNc21C0wHDLtkPFGMUqFC6+Yua\nFJB1FvGLlXYeklzKOKrqfr5srBC73rVax9KxEilRlODgTnDh2nKEqOKLyJJs\nfGKAdq7HuPBRxiBXb8eEAi4L+I58Jqgv9QR3GL3yeaF4khGfIbqn43orzAEC\nwdIfnA58mUonGYg2CsgzHQX23zp8aAf6DXly8wvH2ex86UGSJP/Ku2P6vcz4\nHe3V\r\n=eh4c\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"50b495134dae6937c2262389aba694d7664f78c9","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.24609b822.0","@material/rtl":"11.0.0-canary.24609b822.0","@material/base":"11.0.0-canary.24609b822.0","@material/theme":"11.0.0-canary.24609b822.0","@material/animation":"11.0.0-canary.24609b822.0","@material/typography":"11.0.0-canary.24609b822.0","@material/feature-targeting":"11.0.0-canary.24609b822.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.24609b822.0_1617224227211_0.45799103662576646","host":"s3://npm-registry-packages"}},"11.0.0-canary.b6cddc2b7.0":{"name":"@material/floating-label","version":"11.0.0-canary.b6cddc2b7.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.b6cddc2b7.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"edbdbf5b666df0e99740f1fb5d8aa5067d5ddf1f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.b6cddc2b7.0.tgz","fileCount":34,"integrity":"sha512-HI7yI+lT4Yhi2ohRmG2n9flet6HW7jBQX2IXv2ugAQIaPn+1wLs8kpGqc1YTOaV9W2UwAryalbQ/qkiryjGqBg==","signatures":[{"sig":"MEYCIQC79y6wtikOqAZRJoUCLUWGC7UBAh2VM1oNqCLr/PxTMAIhAKCiQh3gl8iVllLCdrvmynSmcKee7XXpbyv/mkuULhAv","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232781,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZeEpCRA9TVsSAnZWagAAyeMP/3WzDGJ6wkT94LOrcwsP\nlBOoNMtlzzwdcGwdWOc4zSRKbeeegVkjLiIsxMTyQeUQCG33J2a7ribJKK+Y\nxCoE6wkWaeyN0NdWY3S3uXOt7c/TnvPH1SoU48sbr8J1ImJxUe9tEdsTaQmx\n7+e8IGtXs1NFY6qnb2qpkx6jcs+RQjCedeG/0LVgdSFOo8ad//B+AjhGx3hA\nSNltz0BkoG++5Z4ncR1EIzPxoFwY7O36HezCXZVjIghZVFODvA6kkIg8szX5\nCimDexGoSzOwgSWI6K3JCNfbRttOthETCaC/JpSe1DDJCDYTWcDdgLC5TDrc\n9BrjLiBa51yEjVAh09UCjwIgth+4SnRu3QvSi+P8l2cQMjl79I21FPKmfet5\n6QCcUVRz+hGOL05pDbvfdHBodJQtCkkOJ/sVLZ3pEkcDzPb6MI5TH9cfyrZk\n6H8AJHy48JYQdc7YNK/fdn5X78ATrTOsSFBJOYt1tbQncRmjzYx5DVeeobX8\n/uPvQuSxOjN3IWey+TdOtqeja3SoGWQaYiN+aEpnQB+XTWrBs601NFaUJHUy\nOfbh66Puzuvbx/JodMbY+mzNzswSCvyP7e32z2d1xQW4rFBnJPNr53UNDS0B\neXcn1J5H955B7PxedIpvynZyu/MPNEZZ7rLZ/rsIpiX1elQ3LR3iGxgHzHIL\nSkxs\r\n=xfYn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"dbd92fa1a28a9b31a1e4eb476b15f4cff38986b8","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.b6cddc2b7.0","@material/rtl":"11.0.0-canary.b6cddc2b7.0","@material/base":"11.0.0-canary.b6cddc2b7.0","@material/theme":"11.0.0-canary.b6cddc2b7.0","@material/animation":"11.0.0-canary.b6cddc2b7.0","@material/typography":"11.0.0-canary.b6cddc2b7.0","@material/feature-targeting":"11.0.0-canary.b6cddc2b7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.b6cddc2b7.0_1617289512986_0.7078195711339486","host":"s3://npm-registry-packages"}},"11.0.0-canary.94937c78c.0":{"name":"@material/floating-label","version":"11.0.0-canary.94937c78c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.94937c78c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"74b831b5ada20b373f85a5771f20cf1aaad00a56","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.94937c78c.0.tgz","fileCount":34,"integrity":"sha512-OXNnyHyWOcY2zohPO08Q/bo2ZGh0sUqFW0EbDkpgsat2sKDcIO8f6AdNQfbYCFGENwa6QT9uAQUnuf1BpHdXKA==","signatures":[{"sig":"MEUCIE1Vh6sQyZaO9kEBD+UHalf91aCDTiWtNSnVym98NbwiAiEA0+C5QeXkHRJ5//kKi/DW4hD+dRmECQ/12bZjP+nzLH4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232781,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZjSECRA9TVsSAnZWagAAKaQQAJx8kNHfj8aCAE3bW8GF\ncPwkfV8ZLZeyFtYClGGxqXnQVG000KU9WJJ8AWxdNpBCeqCZ0xRFLtLJGV2K\nvJMCOzIrWux2d71Y+m4QQfeICA1LWgGP4mNKAb4B/IzrRlJPJyEU/MjgLhxb\nJ1lteYYezREkSh2o6qKRPwOMAadMnFkFt3UWeTKoWWprZZgBBR9aWtegxtDy\nW2Aq+6Tf4vSLr+QKqgKhFBtWI8DwBUGvX+qd5JTp5kEGSIItad36GNSZvoLz\nNay/GyiDQAJG+elyniZGjrPWrKX4OeEZMmMApAqTmRFMJ3eTolECtA6JgR0J\niRt88r/ikMdV1rWipo0jGwd8unTxn3ASnev81S14R4b1UezETj5Iv4j2WEYq\n134Z1F7txO8A67tFBRb3ms0P9hxd6KKXP0EBT4AzndnNAHe/ZgrzdudyUkxZ\n97vVW5OWmlempVXhHlxoySzHCo5xI6HpurND6H1m2AbYy3eQbvW7wgZePKg4\nFgBaCJTkcHfPgMkTquUK/rBO3rprYJiNVrvUqU7Pl27epesx/v4tLHVZFXwM\nb9S8ctK8LOVyZQcyCsHq9Vj+ZED+G3BWn6NovapD1zHDleUqcU2ZkxqNUh7H\nZWl2ALvdT4IHJMrlpSGtjCwuzhLeTNZMc3e5gvGVStv9oKNv1o9Hr+wdGNs8\nKlOf\r\n=0jcm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ada608c773d2657680fffa3be444debd83967f00","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.94937c78c.0","@material/rtl":"11.0.0-canary.94937c78c.0","@material/base":"11.0.0-canary.94937c78c.0","@material/theme":"11.0.0-canary.94937c78c.0","@material/animation":"11.0.0-canary.94937c78c.0","@material/typography":"11.0.0-canary.94937c78c.0","@material/feature-targeting":"11.0.0-canary.94937c78c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.94937c78c.0_1617310852248_0.8407025813003655","host":"s3://npm-registry-packages"}},"11.0.0-canary.e7202cb57.0":{"name":"@material/floating-label","version":"11.0.0-canary.e7202cb57.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.e7202cb57.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a73d2c6c9e6a60d85f3c4a1c4cf95eb3cab600bf","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.e7202cb57.0.tgz","fileCount":34,"integrity":"sha512-c4lp5/ohULgRAv9DGEwpGPQ4p+rEc+XwVs7tgLNSHYNgO4CeR1S9/XxUlmTe0xoW66pmnSQ94UB+Za/Xgu4QsA==","signatures":[{"sig":"MEUCIQCOTQOJoG6e5i2QE7O8gtJALo9J+TuY+YOO5w6i++FKmQIgb1gNw1mll0sHohjIFFB0RIqVRBvFjgpqEk4edadBmKY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232781,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZk14CRA9TVsSAnZWagAAUxwP/ib4aZ49Qkx5u3br+GWh\nRiwmmG4XTWvcHer23jw6MnjVB6F+jV0eRgfE/oWudQF3IQtO4TbBqWx/k5dA\noYvRwMtElXPgU4fcmi2dN1KJ0EGwXylqmlwIstMyWxPwAew5zQVl0PDNriwz\nXGoGVnxV3pT6F8AI/tGQ6qd9/ofk0xfrcOTzbBVyoMHBsFK4pzeKumGSowq2\nB83jiRffI09ovJZdGxusl4oDVRP+m+2wIzP7dz3xNree1unH3hsJXA4PfOg2\npgo+DncT9h0wowhBtJ72eM39yus19kzy++CLgrOmxoU1n3jnFUQwrD0xxce5\n34YhYZazz33PcDiFjDu9ILGW7QCx/+i4dKY6uaZBC8DR4F8z+UCOC41eIE+W\nwD2JBrXmFZSP2GS91XEP8KoVYWrHfAg6JJCYNKly9ErSqkOebPxef7h97Pti\nMeJL6R80I2jxdZ43lz1EJo+rEbVVqvMCKSDCKVTUmFsxfYwYlACYoOugHICm\nGY1BaJgsvd/ueZ7U19ysFqBU37pd/bFeax84elyX/9WsjEE43hj6fFPBlGL9\nnutWtRJ2D6XXKxmDCDQ2PQUZnjfF2NviSl+EuJM6fo4gYy5lDevV9vIaVDf/\nhqOZ1JuIFl5OvubypgdMGYDLDPX0z3DP1ijIlHyz2bWZICdkzTdYH3olpWHW\n7KR4\r\n=g8SG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"113d79c2879cb1503ff12c8064eeb38ada16b472","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.e7202cb57.0","@material/rtl":"11.0.0-canary.e7202cb57.0","@material/base":"11.0.0-canary.e7202cb57.0","@material/theme":"11.0.0-canary.e7202cb57.0","@material/animation":"11.0.0-canary.e7202cb57.0","@material/typography":"11.0.0-canary.e7202cb57.0","@material/feature-targeting":"11.0.0-canary.e7202cb57.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.e7202cb57.0_1617317240464_0.9083449776289276","host":"s3://npm-registry-packages"}},"11.0.0-canary.1f636b205.0":{"name":"@material/floating-label","version":"11.0.0-canary.1f636b205.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.1f636b205.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c85f16619bcec0820d3d53c27d0a9d40850e4aee","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.1f636b205.0.tgz","fileCount":34,"integrity":"sha512-daE3fRs1xsWWwhvQ/iZSmX3fIpfOqEm60Mvn8F5IRe5ekyrAM9ltW1ly11ejuJg6VkccVhmB2NTfVHz0pU6jzg==","signatures":[{"sig":"MEUCIGsWMCstwwVN/lkG+owJvK0LVg76GQYhYGmkWwhC+I/UAiEA1hWW02DMNbnQLOV1hVQcSp3u19u2PjLg2ShO82aEtcg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232781,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZ5l7CRA9TVsSAnZWagAAhIYP/Ak/UuFubIDR3bHBKcL1\nE6kvFAJCVHPS7okIO0/pcilG73IYD+dJgymSNYIhaeLYwbN8ZlZUU6Xvv//B\nRLQ8cP7vrgYLhIuYINxzAZiIOKOy0/OmTUzND9VFcpUnPkWavNkrY7+xEjds\nPWOM/YuNuaharykxxW2dPY85l0G8sloEwIf3h5f9MS8kafNOxcQgLi9o0gQC\nTMYHSlZaUB0alRmEqtArEc7OJQ8v5BzaQfJ3TQls1F+IU3eBF7kE5poPTCKA\nOxiC4tY3g+bV4Ah3KLYt/My1fQ12NPIPFHCO6TCJKuVrGDgCgiE+uk3pzpB2\nY7ZT2plxIGi2IbFIy1QpQdcLat/Gjt4UjpmF+JkX0J8SCMYZMPpL2oiuqZqa\nLqAWsLccb0dyAI1SVif7qMXiHKy4WdWbkFDbC0jmFkSnZvoJd97H2yzwfarY\n2s0lhg0Onm/MZaBvCPQY8TJ4FAihKYVW/rMi2uPZne6LCOoSpkXExzF8oDfz\n+u07U9xA4vo/DWOq2K8vGsZmD56pKS1HwGWMXB1zPmvWuKHVXANVDX0t+7ID\n69tQTrjettWD6Sf0F8EqPhvPjU94CoIRcXX6PVRSqCB/04SWM+hpbEfd/4k9\nnClTK8vCg3T0oiM5pMSvAHFYbM/kSeEPuky8FYJEmocOYQMWntqMXnxct1Th\nG9g2\r\n=VNTP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a523c6467be13e8aeead7e4e2e5f20c418871bb2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.1f636b205.0","@material/rtl":"11.0.0-canary.1f636b205.0","@material/base":"11.0.0-canary.1f636b205.0","@material/theme":"11.0.0-canary.1f636b205.0","@material/animation":"11.0.0-canary.1f636b205.0","@material/typography":"11.0.0-canary.1f636b205.0","@material/feature-targeting":"11.0.0-canary.1f636b205.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.1f636b205.0_1617402234796_0.7579205218165674","host":"s3://npm-registry-packages"}},"11.0.0-canary.94f50b260.0":{"name":"@material/floating-label","version":"11.0.0-canary.94f50b260.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.94f50b260.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c20cc7736086551a69e6c71658c0e80e1af65ad9","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.94f50b260.0.tgz","fileCount":34,"integrity":"sha512-betXBpJo8ulyDmla+O99jTSaoiV4XJT2H81Uur+uWLwx7Ke/Q4/RRtXeHXyk0TALrFwx1DvlE3jozIXMXecs+w==","signatures":[{"sig":"MEUCIAjq/glUTKx0F5L2UiAxM/QhdhS+JcNpHKrPT77oxR7hAiEAmrzj1Voewh3HZkTFzryrgReBXT/ptvP/siM9S2QuqEQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232781,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgayclCRA9TVsSAnZWagAAgn8QAI9XbNePslzHc5byHiO3\n1HSFdlkmVMdVsqQhFJ+G+r6/av/HsOOfjCI9XLQl++b7ZMMnvA9w06A0h8HY\nBcLlUmIJYIw7EJryomdzyuZyZRGYUykXpdieqVsjs1BxKuuSonb1aGTAS4Jv\ndc8Cc0gD2wmFGzBK5hftm/knPnJXVf8ION4Y0QEY5MS4uz4ZVKU14HrMwmy5\nPs9Lkt77Art+UAMWHSOGOZ6A7ERZxw7Q4+c0pfK/w7zXLbQqThRPd0ptKPpJ\nPrkIbpmo+Ne7H5S56S5BUND5FmPpRkXx7O8u+A0vt8SmpRGYezxruuBXrCKA\nZ0jzAfPWO4JI3sQZdpZ7EYlSLzoAJ/F07zn89kCQCmsPhTn8Qj1Wv9JnBHgT\nJHOFVYkiicqPajPPcG4UyQWsjXjE90ekU+AV9gBjQYZdB53h3kbFEF//kIEJ\nE4IVIPp318JIfl7px4VtP2zZFSSuf/6CifpMUSKD21u+8Ejy2Z2xjK8F5/h5\nxPPqpBsV9RX6tFCCu8fNUpbHg5sEfY+hZUJJQjHIN8SN7dYDDkE/9lgINAdc\n8Y1VBKMxj9dPe8Lx2gEF1Xe9TUape+8J6/1sg7feznjh2pkELOOGN6cBPzWJ\nzXWdfLQqz5O3xqqcT1iJFoc+K602EBkTA0b05x+pN/N9aw2ZKMslJrGIAa/m\nj5uM\r\n=vyfZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b5f84c677cd669d6958748a69435b56ebb640bc6","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.94f50b260.0","@material/rtl":"11.0.0-canary.94f50b260.0","@material/base":"11.0.0-canary.94f50b260.0","@material/theme":"11.0.0-canary.94f50b260.0","@material/animation":"11.0.0-canary.94f50b260.0","@material/typography":"11.0.0-canary.94f50b260.0","@material/feature-targeting":"11.0.0-canary.94f50b260.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.94f50b260.0_1617635108646_0.8033277537736365","host":"s3://npm-registry-packages"}},"11.0.0-canary.a4009b80a.0":{"name":"@material/floating-label","version":"11.0.0-canary.a4009b80a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.a4009b80a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6a99f3872a6d44e6c7388b050690caa8c32eb534","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.a4009b80a.0.tgz","fileCount":34,"integrity":"sha512-b6uEQc6X1Vdo7S++TA2darPca4lPbEVAMbF3AIKsejywvNKoOKR/K4JV48lDUbgCEX38qquJtxbX848dGcKC5Q==","signatures":[{"sig":"MEUCIARLXmjN/gpk2CTOQmwurkvqnu3oZLD+IOrWeFFCVC8KAiEA2YJiV1s1ufH1gt1JbxB8dJaV8wngnE9x13uoyiV3P7I=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232781,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJga4iDCRA9TVsSAnZWagAA7r4P/iUw9TAczpph34hgvnsy\nV3/8AUfe73kj2O2CCKr2NkgYKXwQwiTydDxMDH5S6Vv9nJTz93On1mKKT/Nt\nVP+vUbMoiAf5x4bu3goIv+nHpZcw4K3DEkE95yhq3Seu/uhIe/11GI2ajQDJ\nSHploigkM0VAQVSOAK2aGLwbUOX2xiOlc3Y7ISUrWqOyefAhn/X6s8K5XKgL\nBTxT4bwb+W5KPdzSmbV+RYI/P5jzEsUvku0Xi7Ow99/Lcn9j91ItHUMtprOL\n9GsI6lfN3ruVyQ+nVvPVYWYhkGS3QQWlnW4edJAaMAzbiqKKaKurOaPbMg+o\nHJX99towJIyoQDnStonhcWOXseRruq59hsbnALXkzfkaRNRm8cZE2HU9nI02\nCN2B4X4/KdtHPSNaNw9ZITy7g3Y2xda32f8JJMzMhJUmZ7KjVa0hADXcIrRk\nb1/5Hwv5GZk+hpG7KpWC6dz74C2RdgTH7z896ekUHeqlmYfRKtD610O5/5Ja\nlkLwd784F0phc5/VurmnhEPzErokyOL2qHObvbTV2o/f9wiiFLVX/BgSnGSD\njxT/CAWuOrTLG64Ol3LyD9G/cejVFBkWVOzaitBxQPGuVvRDNPm73KJZyh6V\ndruzBEsKmmoUc+WBqrDtLqAEtDSw+1mGVysVwj3DcnfwlCWnfgaohQAfAznd\nlfWx\r\n=HFgG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"35eef76af32a43b61b6a0fb725dbb83cfa5d3421","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.a4009b80a.0","@material/rtl":"11.0.0-canary.a4009b80a.0","@material/base":"11.0.0-canary.a4009b80a.0","@material/theme":"11.0.0-canary.a4009b80a.0","@material/animation":"11.0.0-canary.a4009b80a.0","@material/typography":"11.0.0-canary.a4009b80a.0","@material/feature-targeting":"11.0.0-canary.a4009b80a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.a4009b80a.0_1617660034682_0.8264367864263984","host":"s3://npm-registry-packages"}},"11.0.0-canary.15604bd0d.0":{"name":"@material/floating-label","version":"11.0.0-canary.15604bd0d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.15604bd0d.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4dacb67ed4aff8505d91b4323577e8c7ac09cc7f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.15604bd0d.0.tgz","fileCount":34,"integrity":"sha512-FA5YLQWf2YXWMioi9wXXnT8nY05PqtwB/8hV25Fq5g0WLKz3zmzWWpBJttCbfW2NT+x/luVrwlI2CBXmIGFDww==","signatures":[{"sig":"MEQCIFcwAtfPJ/isArm364fPXBMyR+f4qZ9lCJymNBwoPeBXAiAx1EStXKV50MZk2iuPoTIejiTVBsUH5R3Ikw9+TTauEg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232781,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJga5JLCRA9TVsSAnZWagAAkcAP/05HnSfeapz6tIeEHFV6\n9xzB/XR46HMJdNTJxZyNNDqAhMRiWdGc9Rj+1i0wrbPPhr/8FuUW2qZXEFcV\nxmCaFOW8tBmcnEXU6UhGW3OwDLPM/Smz9Kw18qq7TKqWLKpQuF5VyVx4CeTx\nws8Q0v5S7Dt9gmzeGpWxaZL0RHq+q4MELZHTFQ2XVD8FXcgGa5AwdgyllXfp\nJMPPsao6UoC14h8pDOZFicDKJVbMJJ06XD2tZLWENbHB8Uyoh9IYuYMzCpUT\nJoA/ozKboMGgwf/RQeCROcBDpq79gMgtfQxhoR/DJluh1E871SJyTR6kq5cI\ncsvd7kXf3DHxDlEDKO7f4I4KW9sfTueQJiZzNRRFkI6h66zXZ8P8M9DjayJ6\n9blPaffXdmusy2qMyz4i9j1JQ1yvgebcNHxiOs8PorA8H6rlJKCsJp6r/0g2\nmhZEeotcQf54lZV0/qIwbP8MWsZlIeWBHDRNxHzw7g6bdN6EFQXvAED7fjaM\ncgwFxfcWSYmvGXbCsU13t/gGlVoKJFiq1w4LS8B2GtQ8zDGig/splrkxTcMe\nXz9C22yesfzdXASKtQ00V83TmjIS41vkM5oKdk15yFcfCg6Ri2ecJb5ljOfB\nOsXyrtjmuUIC9gwmrBX3+W6n6tMEo0WwBx8C8Yx6tM+yVsQj3cOgAZjwoWho\nY4F0\r\n=TmeY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ea3949c02ab8da1a812a2127f1fbc7e7a3c98532","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.15604bd0d.0","@material/rtl":"11.0.0-canary.15604bd0d.0","@material/base":"11.0.0-canary.15604bd0d.0","@material/theme":"11.0.0-canary.15604bd0d.0","@material/animation":"11.0.0-canary.15604bd0d.0","@material/typography":"11.0.0-canary.15604bd0d.0","@material/feature-targeting":"11.0.0-canary.15604bd0d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.15604bd0d.0_1617662539483_0.7749888690352165","host":"s3://npm-registry-packages"}},"11.0.0-canary.76da7876c.0":{"name":"@material/floating-label","version":"11.0.0-canary.76da7876c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.76da7876c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"31263152040ed9d0f9b106b177013de8e67653fb","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.76da7876c.0.tgz","fileCount":34,"integrity":"sha512-wgVJvDVYddYj1H5xIY7mojnFYmyx9hUKYa3iTHe6DhBeIa/W2ZpVnQX1s+XJ+BV+69+JNPYVgZkuiv92dW2YWA==","signatures":[{"sig":"MEQCIGJ+haVNgbSDpqCusC6BjrC6bsamM06FTuWrhaXJbZm5AiBMTmOGG487mn4WGc60NTBSRmYmTytaxF9C942QtDsplg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232781,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbQ6MCRA9TVsSAnZWagAAwH8P/iWzaTCNRJkha8WugJ5p\nX+EqEdidQxrmcyud7HZfCJvG3XTUxVigOhMhyYQgyITNNvkDGaB1vbHNJ4qJ\nnvIarsI2R8ANwC3/xEEVMvlQ43SiboQVcFoHAYXFHfkR+dAkLTGgdkJS2XRy\nX+glqBoWOurrN8AmZEQQElKmG0f5c2ItqTGN4Bns1i4/+3rpO+6Un/dIVPqc\nYdNJDl8QFb9e5Zobz2VEA0teSC9r3GfiV+E/No+itSEfXutZ3gxdQXslc1lF\nwSwla1laPU5ezEpXy1do1VWUB6wWXZArDrxPPS41N8+Zmmgue43j96xDWZHh\ngjOIDq0tnnmyl+6NPtvvvD/UUjJwcGBJ5DQrKiOQNnKZ+aTsZVwHWIR4QwDg\nHugXcGxSo8abHHf2Kfnvfmdk4qQ9Z6odOm9h/a3vXza+k4Sabgaeb0L2oTEd\nFFLGT05tconXPyYJcNclkW/gfCBRUgkDro8g1xYsqP3bNIS9tJAg14G7aD8+\n32d0IfzmlFJo45ZdJrFyCm12eiuaCUMBRr0Cmr1pSDoMwnj2DNaZBdFWODRC\nrEGQMjkRRXrzopDeeOe6lyvPQ7uUzIYsMsbknaDbXiNEIgnbHRf7ZVjL4ZIv\n7vxukmRL1Y7S3p837LcCDBp55/7mWh+GK2U7tJSDvAyOnuPVxjhA7j953pr2\nF8Xx\r\n=EDEL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"4bace63831a45c0c9e6f786768b2aad0d79087f1","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.76da7876c.0","@material/rtl":"11.0.0-canary.76da7876c.0","@material/base":"11.0.0-canary.76da7876c.0","@material/theme":"11.0.0-canary.76da7876c.0","@material/animation":"11.0.0-canary.76da7876c.0","@material/typography":"11.0.0-canary.76da7876c.0","@material/feature-targeting":"11.0.0-canary.76da7876c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.76da7876c.0_1617759884390_0.6268966286564717","host":"s3://npm-registry-packages"}},"11.0.0-canary.6bcb6cbd2.0":{"name":"@material/floating-label","version":"11.0.0-canary.6bcb6cbd2.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.6bcb6cbd2.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6adeb58dc1efee324c8db13b88f187ff7ca2b725","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.6bcb6cbd2.0.tgz","fileCount":34,"integrity":"sha512-0SNpMK/1j+OXG3LoxnV0yQCuXwk9wlq2adMfuTU+3ltHJEvVLLMQoyLoJmfx5Nll2beNXuJPQK9PVjgPcN/x3A==","signatures":[{"sig":"MEUCIQDk9jxpo59pFgP6Ato+dYUNmPvYwCnWhB8V4dELvLmmqAIgcNiEFQkoYqKEhKRFogUTazZmuq8qJHN+pYSld6uWJoo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232781,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbf/CCRA9TVsSAnZWagAA0xoP/jstagBdqaglVILMWdxV\nQvNMYOA459nMTTvUq9BUtsVqRE1Q/5vWuOGG8Y/4B1RlsAmRqvZicQOzxTbD\nkV1BB0StHDKn7mP6CFw7WBT1r8AchoDtECk1CULperQi9puKDoTHNrhoQTK2\n5+S41y0uZe4c+IHvppF/LCRv4xY3+nJFnJ0OvzM5nXYqa0f53r0Ed3P6t3R8\n3hqYzVwn30uYiqr0t10qOvfw9GQgHleK/QQFJAMlBEEJepmsMUbiqmazp80O\n+/46M0l1Ns1CtrhfVcioTSff2jK+QTMN7IjsuipSkbosZ5VH6wjj0mUmm+/6\nkKz/lOwWfrcly6q+A1FBmRxZIjtNNx2LFEdq3J8PjePFvk6Yucpc+mB3oXCk\nW0Jc+wJve+SyJpA9C9A1u5whCTJSCgPKrB80FRIIrqSR5FQ5dy+Eqq4v4ugt\nL9KilsUYOhjtWgWJaAocjWVkc81QFsG76W4FnMOWs79pIqHO4ST2/gMsS2kN\nfLZjb52HWQJOG7ZPs3XkeZOS87Ef1OWl2081LJ5D3+xhfnPVoEFgY4Ve/U88\nP1ccYFZ9vCqEE6THxEt5WIUJ54FkkfJs/yb1eFuE1NpXmKskz4t2D3qZq/y6\nZPQc8Yp9Vr1Sm4N7zi47/2rjWmpp98AG/SLJ6WdlsjiF4FRxlLd3RzWo3rLb\nhIqt\r\n=tfEG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f3ec57093899a7f082bd51cae05b398c31619392","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.6bcb6cbd2.0","@material/rtl":"11.0.0-canary.6bcb6cbd2.0","@material/base":"11.0.0-canary.6bcb6cbd2.0","@material/theme":"11.0.0-canary.6bcb6cbd2.0","@material/animation":"11.0.0-canary.6bcb6cbd2.0","@material/typography":"11.0.0-canary.6bcb6cbd2.0","@material/feature-targeting":"11.0.0-canary.6bcb6cbd2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.6bcb6cbd2.0_1617821633362_0.8348210724261558","host":"s3://npm-registry-packages"}},"11.0.0-canary.c91e8d141.0":{"name":"@material/floating-label","version":"11.0.0-canary.c91e8d141.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.c91e8d141.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"30a8e312466faeb1c073c8baccc8e119d04ebacb","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.c91e8d141.0.tgz","fileCount":34,"integrity":"sha512-4IWnKJTuM1eLpVh2sGPn8N78AaAT8k+RwRXLKgyiJhw4eF4dZwT9wcRTcJ8syvqEWerPBDNE307ZP1E+zRUPLw==","signatures":[{"sig":"MEQCIFY0dqb53kVrq2tbhTVoWQ2ZUO3gXtDzbd7p0mGuTPT8AiAdxVvg8bk0zhtxrp3Z6GUtXB7qyKkAL9hu9lpfzmoBww==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232781,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbgCtCRA9TVsSAnZWagAAXjQP/jS0rLPS/M7GP+bz2mdb\nzJ07hv02Tgg8jRJ8Sd0FQV9P1qld8iD+Q+uwVpdTA5IK+9qQT6H2/yP54UIl\nJTHeuiekdp+Ub8RpWKYMltEHCddIZEKz13EM4T1mLLqKldTIruFIZ3sB/15q\nAuVb58rc1GesfHR949Yz571O64oBFPZuUX3E1wO55YX7WPsDrLWYchricQrZ\nVZbL1qd5I61Qt/WtngBGJvmSMY9tQB07E1zsUulC7pt6EIhVkhLyFvk/x1yZ\n/h6ZviBIrMxeIDuzelWII1FmohmFLumi0LTpFVslJ82o/7Pm6X/1rFzq+bbf\n/GRW/hzDE8W0ubtA4wnclXOPmDvd7VgdcY73zOiXe7twDuCk9RtB/CxBbzhg\ngM8gH6z5CO+rJ75QYhrsliLqOE5G67r30pCdAI+l2f+koJKYgpNAVzNcSKwC\n5JqSGl0i6HrZyL59cQvq8B624rbN585KjJcLea6V3HrGbQoc5srA0CX1zrE+\nteKWVY0yj8iIM+YqcHsI3dExqazs4F7lD/9O/wlW86IioCTIl8ZII0gk9zFE\nfe4jQrt6W+t+FWt6uT2svjBMxkDqIgyQjgVx5gcb/U9utjY+dNpTjWHmpZRX\nYF7SdUXNCWnTuibI/L1fN/zC+jlnlxnxpYJCBgZ43MuYsj6hnasBIeSVvLxH\n2GHO\r\n=LQc5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b13009a2b12843e6eefaa0c3ae66fc519af7bb29","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.c91e8d141.0","@material/rtl":"11.0.0-canary.c91e8d141.0","@material/base":"11.0.0-canary.c91e8d141.0","@material/theme":"11.0.0-canary.c91e8d141.0","@material/animation":"11.0.0-canary.c91e8d141.0","@material/typography":"11.0.0-canary.c91e8d141.0","@material/feature-targeting":"11.0.0-canary.c91e8d141.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.c91e8d141.0_1617821869440_0.4154416004575323","host":"s3://npm-registry-packages"}},"11.0.0-canary.f77c50860.0":{"name":"@material/floating-label","version":"11.0.0-canary.f77c50860.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.f77c50860.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1dd08ebbeb2f84bf30466cf2dbf57cc2221e45cf","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.f77c50860.0.tgz","fileCount":34,"integrity":"sha512-tliVF4+8i1baHJtKaPGy2xPP0vmKEwQlMn+0uP0L31rpG4kVb4tN6BSoblazo+3c1VSV84Zv+djSmY7PbT+6wg==","signatures":[{"sig":"MEUCIQDrzJZpv8em/CGf6UYuiLEzoGz5J0gylWvA9HHAQVYWdQIgEN9hbcGyPBFpEA0fASWffbFAUmMG9ny4QrrQPkNpmew=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232781,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbyLOCRA9TVsSAnZWagAA9HgP/A8x70lnq8mA0xpGgYUT\nwqv1QeSMnudsaS3YJmQ2Tjq0Dr2h5b0rIk+VVVdXpawMkyJvlRn0iXpYY0QI\nwx7hO+m8UkvkmhttuYuMEPBZyeVgYh0G3qroy2A9eynOXQbeXuoTvmSv1cof\nQDC6KRvotf2MFFbfCzZipKhaq1EaQe+cX5R9miydGmV+CjHEAf20sQOvLm/X\n0ve1mxlyFKzjU952dog+x+KNi4DhJAQxCrbp4BlRSJFUzHwuGoykkWSM7rGw\n3TNQuJl76GID7K5C/vcmKCNfYx80OqFnU3gzEhl/+WWGKIHUTj8lc+IYx58X\nNThT1fb1y/F6w/bLS1IWiUe1b7/4a6NU2D92Mp+nL+RhT7cI9ILhEvYLAaF/\nfCcYrHg05N2pZTkTAzTY4cpZbW+EqVlUWI/68Rlz2jaDxJfHMFs5I0dARsvn\nuN0GHJFnjwxY6UeZrk/niDPbgWIcm6e9eoi+m/V9lqbyndPG8DDJ58GGEW8T\n0QH+GWLCCgHWTdPjD1tbsxuiktRl5kE5Z5L9IUmLjAfSqr99Z+wlGEaMT4KD\n7ybjLyg2ExAQU/xtiqGxvdcAgIgvbM7j4k4V5Z/b2sy/32yCwNWESNMqKqZ/\nBgstmEXCy2LoZ1Db9EqVifY/ep+tomUkD9FY94KL56zqIKi+E2gG+l1qvRlm\npMsg\r\n=dd0u\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d35db9665d4a8a4f385b134c9c1a23bda8668fa2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.f77c50860.0","@material/rtl":"11.0.0-canary.f77c50860.0","@material/base":"11.0.0-canary.f77c50860.0","@material/theme":"11.0.0-canary.f77c50860.0","@material/animation":"11.0.0-canary.f77c50860.0","@material/typography":"11.0.0-canary.f77c50860.0","@material/feature-targeting":"11.0.0-canary.f77c50860.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.f77c50860.0_1617896142222_0.9384551719195788","host":"s3://npm-registry-packages"}},"11.0.0-canary.367d88bdb.0":{"name":"@material/floating-label","version":"11.0.0-canary.367d88bdb.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.367d88bdb.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"8f032c799f6f69bed28cd7c12e5338a2fdd56ba7","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.367d88bdb.0.tgz","fileCount":34,"integrity":"sha512-w+P66AspjiGocWJTy5741D1WUvaZhkr+14OyDlgpwFae+t4EMzM3yb/f4RrbQLe1r0KqXVSpSlRk/wOJQ9pHew==","signatures":[{"sig":"MEYCIQCzgnM6M5ErM7Je8+OgkwIiGlqKhfWoBXgOJRZFM3uI7QIhAMEyA5CF2PXovZRVfeax9JZaDgOPEmtihAobwKum+Lzb","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232781,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbzGOCRA9TVsSAnZWagAAheMP/jdNas6ElImzE7wsE2mf\n0dBnqeBVmZEqeop4UkoO6T/Zc9dPYZA8JW2mhCGvmKlAWkbm/OpubV2fjj36\nk57VyTJH6TdzN1gcXTeP+iPNKcZQp4fywalLml5j6DGssJciOwVWwM4Qa2fL\n212QHaaAqCsCo/1s4zZZvj/EsC3iq0Skwzq+v0zq5+GQ23oVpdbml+JsIjv8\nt3te3l/9HfygUeA+jYGzya8LT+wo95b8/czza8Om8jnnKPVxVbi1Zxxuqger\nFZLGXEZ2vbsYrSAhViP5YdmnvewUl2EAzYatjdFSKze6Atzfi5o3Q8yFZOn2\nvPeLxO9qDJkCHlbF7M6CYzSRz5LPqpoq0aUlLeMvadMcfKD7C6dte3xsJSwM\nERTgaPVXMjNdu8QNp/c2bTm2KOWCCL5A9Snt0XxIg3DHHfjyoVpYd2iWsvbR\nqn/I47c+kIEICyX0nXmHfHmRfVDllv0/k5bT1d5k6Rhh/TtdOWGsWn6349As\n+763qWQo0oXs8MvjxTK0ktHno56mibIgZXpyX+TylEIw3Ro2q93PdzqNx8jF\nNelC+9Spw8vqGlmUd9oRSLeH4LNUJepVormyS5r+kjnIa6uZChue7ShE1eSD\nIpwA0d9CO2OO602THWbC/gVPkWa3P2d9efveua3LR5/d2WQpzkWDvfuJPezN\nBQ2a\r\n=+icw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ba9cee87fe351c7e76ccb32f2572bf3ca91e88d7","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.367d88bdb.0","@material/rtl":"11.0.0-canary.367d88bdb.0","@material/base":"11.0.0-canary.367d88bdb.0","@material/theme":"11.0.0-canary.367d88bdb.0","@material/animation":"11.0.0-canary.367d88bdb.0","@material/typography":"11.0.0-canary.367d88bdb.0","@material/feature-targeting":"11.0.0-canary.367d88bdb.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.367d88bdb.0_1617899918223_0.4428360990293414","host":"s3://npm-registry-packages"}},"11.0.0-canary.0ec437d3b.0":{"name":"@material/floating-label","version":"11.0.0-canary.0ec437d3b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.0ec437d3b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6ab3ac3c8482eea3e896c169031a1c6081b09606","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.0ec437d3b.0.tgz","fileCount":34,"integrity":"sha512-m1cNMxKBN5Za0ZVA3Jplcts8ZuwlgePs41Or0G+Zho4YnPIN9MXPa8qRPNRtjfzwwgKFwSv1P5h3dlafRWC3tg==","signatures":[{"sig":"MEQCIGbCvwdVhPG8H4B3ocILE3wSih5h1L4LPTM62AFA4MmhAiAtYS26a8WKlX9TfypYxla9lsaOcnd1Mi07EIea+Gitsg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232781,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgb1r8CRA9TVsSAnZWagAAdOcP/0UodE5eZXVEhGX90DDm\ntEZbHsCxmxDAmswQgO0rdZ0Dq6XueBEgj2M4b21F0WntWVh02/6ieI3SXmBG\nPzJelhtjtwwqlPjpiR9dhqaKwPxt0rcDG+F0DkCYEzopzwMbWMZ1bzjdj2Vk\ngk/tOngblsLV9jRtnQqa1PpZiRQLLvP7lOGxAJSuKy0YTgXsjHhuDxbehrS8\ng2FWTrtW2jEgN3zoOSnwftM+FjXTZGE4MbxbQPYDrUnVBZDjN2VQwsqk1kOX\nYhMFeV54AASkKYQ+IC4ifHOjFCnilsRWB4NXkXN4o4bcf5QjT0c7y8OjK48n\nHeAjbZO+vOJgb7/TA+C42EH7ie0j/yindUE3yBN/Oh9tYIPLhPAxZBgGIEEK\naolfGHc7Xs9uHt9sskyoiyoRceUsrQP/oi5lB4Bjq6PJpP/m8XC8S/MPSDgo\n8Xp/rG+hncuH6jcKiOJj96kB+IGf+3+dTemB9S8RvJoz/hCe/WJst570kRLo\nx0ULFTnzdXUt8VxiMKU7pKE3Rvb1gywCGI26II46f7Fr7RCZU48u5KkBYsqq\nwkH0c9lCPRZ6s1XVFeQ1J5mtThRo3NMs+MNXwPBu2Wv/+Bq9fLN17mnF3WJI\nIAhsAWxDR6SjEwSlLvAY7RvFsW8olID7K7//cH6cpIbbNvRLr10+4cx6wbzX\nBSUN\r\n=F3td\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"50ed2429a570432fef9747a954d7c31d2dd11f0a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.0ec437d3b.0","@material/rtl":"11.0.0-canary.0ec437d3b.0","@material/base":"11.0.0-canary.0ec437d3b.0","@material/theme":"11.0.0-canary.0ec437d3b.0","@material/animation":"11.0.0-canary.0ec437d3b.0","@material/typography":"11.0.0-canary.0ec437d3b.0","@material/feature-targeting":"11.0.0-canary.0ec437d3b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.0ec437d3b.0_1617910524485_0.2166012875536214","host":"s3://npm-registry-packages"}},"11.0.0-canary.b2fa996a1.0":{"name":"@material/floating-label","version":"11.0.0-canary.b2fa996a1.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.b2fa996a1.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b6a0d22b38e95f3882584a122b857c77f2b2eda0","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.b2fa996a1.0.tgz","fileCount":34,"integrity":"sha512-ShhHVTmCTzAJnQYiKU1AhmxE8iCEh6Lfa1Fd6CjnyGLGMGO/iNLTRbDCsYOCjaotsMrVqGAYR3LkVZHUffQw9w==","signatures":[{"sig":"MEYCIQDSZrN0H7qTIxk+yzjtc5tiUIk7c4rqOGuXkWYc08orvwIhAPSKCkADFushcCw/VvsGtrcdzausG37JDiZePF/URjSW","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232781,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcG6LCRA9TVsSAnZWagAAqPUP/2kffKBZrRbvF7/wgshu\nWxoOFwAA9t5RSng5615HEFVwGjzQOIs4Drr5iRForyLEq0BwmWQnlb8667M3\nTwHrWHRATdJ/fin8zDgYC8bY0gSCgS62pBqh9if9N9jjvCD0iTlJpEPj8Lye\n23aforc3Kz5VAQ1dwhWAw623eSV/kL0UPEYZDbW+mxYErxEfXtLID1dRZrBg\ncZWF1VVtMHvjuSTBRkqHmtTEtK0pAE3CKguReCpGdj7p0O73AlqliYT9/8YI\nQ1wqcJ959dBw7bWNVRIcSGxCVKWEKubWlcd6T2vAxDkDUAetf9zKlGLNUao5\n1P0vpsbKFzhGA987seyhjquqXXq/IYs9nT0GCpP6yc3als0r403FYu/iiC2g\njWdL1MOeA72tx3SVYGqvzX3QbDH+F+gZViyhbgn/mMqKI8XgKZ6xZ3ICwpIs\nrHug61+J+YrriK7r3gQDe6mk2KQ5maE+aQkD3nt8C1lMjhCtWhaxMHz9w+PY\n22eUaSyYNh+ZWLnZsalPzFedG2/3eKGl70IxlkTpwOZnef+lG3KKgsdtm5gb\nem1RWgmhNCopU334Ok9x1YCLfXR/8aH4lSgG82CLMNPrnoGxXHPJVvdEcQdS\n//y0HGoFMdzvVltdwqGVLDyPZdAHnSWOwXPRWEvTh/tmJRMAvIVymhmz4vTi\nOIvq\r\n=oFTm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"0b4eb5b2d30d6d9a7b20f57164a2beba3c20d65e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.b2fa996a1.0","@material/rtl":"11.0.0-canary.b2fa996a1.0","@material/base":"11.0.0-canary.b2fa996a1.0","@material/theme":"11.0.0-canary.b2fa996a1.0","@material/animation":"11.0.0-canary.b2fa996a1.0","@material/typography":"11.0.0-canary.b2fa996a1.0","@material/feature-targeting":"11.0.0-canary.b2fa996a1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.b2fa996a1.0_1617981066179_0.08155169271294294","host":"s3://npm-registry-packages"}},"11.0.0-canary.24255c408.0":{"name":"@material/floating-label","version":"11.0.0-canary.24255c408.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.24255c408.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"dd2a967160681e661eb9402571d5564ef31baaa9","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.24255c408.0.tgz","fileCount":34,"integrity":"sha512-5iHfmxh5W34o5CTHwcRGajXymXE338CxYna+Q0Com6WrIJ69yGi72LOMNDZcTeVEQ7BuFdvapF8/zBcQEGUVlg==","signatures":[{"sig":"MEYCIQC7QmKg4M+xWSdhr+G0QYmD6vIErdtKZJ1z/eSKlBm7QAIhANQJuQl6zWjmyDMr9dU1ZpSbLlD480hxYbXaUHe1vlQa","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232781,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcLUuCRA9TVsSAnZWagAA6CUP/3QoOf0pnv0Kqdf+ymjj\nRyn3qL8wBzJNqPaOLOZJiXtfjbd7s+YildcQn6KVwB30IlnhysJxbnvUe5kR\nZDhLfWZEzpD+/P2GbAQ7LfqSmiH4CTWlXQ0unwmTsFw6Uj6oCcVeVpJmM8N0\nF5rfI3wIuqC0jTD7zhi935wM+oX8OA3m2NxsArL5sqQn8k2Vnkc3vh/V7Duu\n/d2J2G4CdPZ9B0973dGO9dx3TXTd6O8SBfghIwin9eCERxSSjVXlf884mSG/\nkSDrShN6XfjcvE/TPtIFwkARQqT6a/zkAD61PS6IuC35AslzWQfi2V9ztLBo\n3a36pYTwt7Zcgygz9kUE3ZhrQr41B5l9gioHX9sV3HKOhAJTCA7rNc3S8zgR\nrb/Rr+V7dYuifIm/E9O+oplxtejsn7ZxCEcFvPioU/RU2iG1m2df57xaL91h\ndzxO7AyPsIiQxyFd96Vif9U25nZQ5e0e5w7FUqXbe9yMwjQ0TgzmCAh/fJqy\nR9+O66mgHKVjARubYCEcELUkV9fIbQGIERfCU1IPnbRZba5ATs6vqAVescWv\nkImO1OQQM5Dig/0+QxeHgTqKjYHlUYN+cUoW2X7SYAFsQ1Ca6f62wfTK3Mzy\n8FU5KyDxfmkSMV1Upnh8C+VrWxauAZVPBIpCKHI49Hcisbz+bV90S+bjNZ5f\n+ra9\r\n=5HRU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5cc224c5482fd736af03872db458f031901bb693","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.24255c408.0","@material/rtl":"11.0.0-canary.24255c408.0","@material/base":"11.0.0-canary.24255c408.0","@material/theme":"11.0.0-canary.24255c408.0","@material/animation":"11.0.0-canary.24255c408.0","@material/typography":"11.0.0-canary.24255c408.0","@material/feature-targeting":"11.0.0-canary.24255c408.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.24255c408.0_1617999147592_0.7396601761101054","host":"s3://npm-registry-packages"}},"11.0.0-canary.7d6a4bb72.0":{"name":"@material/floating-label","version":"11.0.0-canary.7d6a4bb72.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.7d6a4bb72.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"259cab57d45e1a0d423b4213e6f2bad542180eae","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.7d6a4bb72.0.tgz","fileCount":34,"integrity":"sha512-Xp4EqNmQmAE5OlvVr8jMtZPsp2LUztWfzD2I4h4FUO/wE8qpHk04KYplVDDkWyAhorwT3qIavTWvIbu5BAVnFA==","signatures":[{"sig":"MEQCIBXVmLnh+uPTfVRU2Z7tZMCgMU4jwC/GWEEs8fl1T1apAiBLWOjtfcak+1DL4XKO5r19ekcMfQpl2g6mQyhR4topiA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232781,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcNrzCRA9TVsSAnZWagAA29cP/imwUQ46aE4vRiWKZsrn\n97ZeoDzNovYNxGOLlMX/ZOviIdnJT8qtxvUqPzS+yokFKFkuXCg3QlIXWdOs\njjmwQqyEUSRi18gCkowSung2qVUQJe985fZwyleszUOQqpYnAOP8G3pNH8SM\nNJtIRlVuhvd0QQodR8d5QHSv6QX4uZWxxNdqIG+l9wh8ZOThSHJ/lVVhxtBh\ndTzZalwJXtxGeHopmMZT3CJVD7vd1tADz14EgBWQ7uX69wYJWCjGU8hMh94H\ndh3uWJ6K8Z/RdXNM9PGhboFwKsLuOVehN992I7MYchfqDKKodd8NuEV+E5vQ\n9N1FdZIPGooz9OvIjQBx6W5WA6NecA3+UGHgQBqeXUvlMgLtfnh5Cu02q2ge\ncA6q5c3kWzTX4L5fuRa4SQwiyfYgHIsOawR260p9UmsUV48UKR/bFD9phQci\ntUyUm9j7oqwnMvI7MPwTcRB91ofgdlxw74uqB/wl8L9pKB+GgpfYKSYXXro2\nraZXG3fV1JB6Wv6vfQ/2+OYy7rqojmBAvfDCFjoQrQym24zBg5Q3Y932oW63\nlRkDHDYUmIBvIyd5SmWuymRpn2Dt2zNQKu7uEPywmmHwmQpLwmBOL9aSjBX+\n6US5FN0ooA3ryBh9AGnckCIAwdE7ZJfCvh0ZAblkfbmVcAatFNo/WFwSZhRu\nCBnj\r\n=YzZB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1e1f0ea898fe101863062b7a760600cfb1b095e5","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.7d6a4bb72.0","@material/rtl":"11.0.0-canary.7d6a4bb72.0","@material/base":"11.0.0-canary.7d6a4bb72.0","@material/theme":"11.0.0-canary.7d6a4bb72.0","@material/animation":"11.0.0-canary.7d6a4bb72.0","@material/typography":"11.0.0-canary.7d6a4bb72.0","@material/feature-targeting":"11.0.0-canary.7d6a4bb72.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.7d6a4bb72.0_1618008819271_0.9311823516676891","host":"s3://npm-registry-packages"}},"11.0.0-canary.352b295c1.0":{"name":"@material/floating-label","version":"11.0.0-canary.352b295c1.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.352b295c1.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1ffb00727f43203b90983e503082a51bcb285963","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.352b295c1.0.tgz","fileCount":34,"integrity":"sha512-1A97Bkpci59/fmOjq335jDH+DEfzz9bCODxZuPQd7YIuyp0Gbm/JOpmncrP8c1NVx6FTx3x40QWUQ5ZS1pUZmw==","signatures":[{"sig":"MEUCIQDgwkJ9OqTCwNxCOGM2SaUeGNrcg381qYJHzYkpLbOm/gIgIxYb6sXaq0z0ThOUoarVTJIGnCOIGRmdgW4DgBmW294=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232781,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdI5JCRA9TVsSAnZWagAAgXQP/2wQ1i2vRYtChjxzNnnP\n8tKh6XC/iGiC+99/ZOcAndd+LpJovzzm7XSUw/OyDv0oQbfPv08Y6sQhVfE9\n+OeQMiNiMi9fcume5mSXsj/j2g0hth6WZ+tiutxXjzViaRYY+FDc33FOIh60\nNfjiLpVw+NqAFdNvZZ78xZ1d6BROVxXv+nZKlxZBpEyGOiPaBVZkThDsIDvD\nNAplm0MnwtAdmS9EvZkDneV7R6gWHQQ9COhIPluyhNPT9aTR+upYkl7f+EsE\nxUsjCbyRY5JodMsoWsPWel+qeoWhwXiqP1LvOJCMHoe2wr3RrXogGPtHQLKv\n8tC52rXJbow9grkBgp35MHXrhYlryyu3pUajHzYjS32/R7mhAD+tqOI35Ec1\nQJsSisp+3ifSUzCE3DNU+jZUzZOs6BKzGHmFF7FGqjZGVxFGsYSiPnX19RMj\nQ09onezPeIvrSVyq8+EZiDC+F19JMFRwolgMjLPhf1pqqs+D5Hq0Q3kbhnts\nO7eT2OtN/LxjqfZ8iWrRrhqiJDSxXW7UBsp9hVsn3jt5qLMWTkcGiQTl9HyG\n78He6D0ZhdLuoymHTByteA7VVpfsxrF6iOwC6PJbLS9/PTIHSDUPdzBzfqbg\nmJ6O/d64nyTdQA7+3bv5Ah7gYavKgOcbBgvFRNjDflJrSYWKj/LWvPm1pk+d\ndM8W\r\n=rI7Y\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"472a00ecb08e85ff1b602e3bec15d38f2a028f69","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.352b295c1.0","@material/rtl":"11.0.0-canary.352b295c1.0","@material/base":"11.0.0-canary.352b295c1.0","@material/theme":"11.0.0-canary.352b295c1.0","@material/animation":"11.0.0-canary.352b295c1.0","@material/typography":"11.0.0-canary.352b295c1.0","@material/feature-targeting":"11.0.0-canary.352b295c1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.352b295c1.0_1618251337302_0.3005276326738149","host":"s3://npm-registry-packages"}},"11.0.0-canary.ab99b8064.0":{"name":"@material/floating-label","version":"11.0.0-canary.ab99b8064.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.ab99b8064.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"be58bb40e2eabc747bd5edf8019f31343e4da4e9","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.ab99b8064.0.tgz","fileCount":34,"integrity":"sha512-ENYdVpfvURXZRm5djz1ynUkPDDPyeo1V9AXTRwD+8pQB3orOHSd7VjV3V41/0Op25LkE0YmXkLH89j79iKfqiA==","signatures":[{"sig":"MEYCIQCouk9xZYUDzd6jg4J0oRHwzIEv17lHYmmTcgsaRo+kIQIhAIfqJn/UwxKOsaUztJZuhaaL78e+IAvaQRHQ4/0315iW","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":231905,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgda4TCRA9TVsSAnZWagAA8EAQAJlNHWFAhZ7lu+5O53U+\nYhU6rMMOIwgPTJczsTC/uYbtzEofW4Meb+y/eyHmYcklmhvWWUCjPv3VQ4KJ\nfqCJV+jPiuXAaUuj6V5+3HbGPifypxhEDmsZq2Ov50w6Ukwtvng0BYDto+bK\n1nYwprn7jJwZQPFUjUo1fjVBB8TXwASHb3ER/i/eMH3QFUx10rJWzwXxZP8/\nmEfmArkT3CHmj4GOzx3tXT6/2B4oQmJydhTP93fjO2LsNdSdLPL4RhmW0w1I\nKV5D3j/NimKSE4IY3+y8lsM5+79hHHVUKLCEbgVi9vMC82hbTHy1v8MXojkK\nRfv7XSk+iWNXQGYjTBP4jqaiqAoNjaECgP2MdjxwvFLobucIskLWA0KdLdof\ns8W/YO+lY7aANv855+onwxxe8ks0to+7HMe8kwX3Q9mZW8AN4TExnFHcF9Xf\n5ZwDWeby00eoZ82thTWrUMGJRwdEP7N95nqHeIE+8ihvm4GHcLITYFvO6BQH\n5sQHiexln/uYW1U8d65TprIv+hcGNXaoDeRxrogUcOlJf2AdVqobLXVI3IiI\nWXd2z5cP3pNPSuMEw8Q3RmqwXDhyW83VlQox4Gnqp2TXPH/49S08oMymxPJl\nmWs4O4+C+Xjk0r1lMZPtAewIixQ3yEQblRHRphhHuPq7AQaPwYAv4YhnTpjI\nAPyw\r\n=4Fu3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7a67c09690e367ad8ebdba2d551f6432c20ccccd","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.ab99b8064.0","@material/rtl":"11.0.0-canary.ab99b8064.0","@material/base":"11.0.0-canary.ab99b8064.0","@material/theme":"11.0.0-canary.ab99b8064.0","@material/animation":"11.0.0-canary.ab99b8064.0","@material/typography":"11.0.0-canary.ab99b8064.0","@material/feature-targeting":"11.0.0-canary.ab99b8064.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.ab99b8064.0_1618325011457_0.1794402313172312","host":"s3://npm-registry-packages"}},"11.0.0-canary.8f0a11e32.0":{"name":"@material/floating-label","version":"11.0.0-canary.8f0a11e32.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.8f0a11e32.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"acb1503fb6006bda684de91720a645c7b35ad55e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.8f0a11e32.0.tgz","fileCount":34,"integrity":"sha512-q1feJPw22boHZHUDPm3nML1EB9MP/uG/TkmvkP6wXdhRUK+FtMh5midAktO8CKpZEbwx/jQXRm1EhvLhVJZyfw==","signatures":[{"sig":"MEUCIHRgjV49ngOTdiPTWIljvl8weLyaCTqiOMUGNjCeZ7QMAiEAz6VIV91B7Ix89uqJ/TBROoFQ3UPFbtA3d22F1ykMS1I=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232013,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgd0p3CRA9TVsSAnZWagAAUAQP/1cSYJMjX+jZDmH2PHGg\n2HJn9f1DtXIWWbcFn+SEqv4kcabvltt+GGXl3u/Sx/cIf6xKyt2rgtWVofco\n6sI+UvfvZ9wV1CIcqyHU+yQR9lTez8M2L/S3TID8Xp8B2xMm4oakfRv1pjlw\noF5w6UXFs+ml15a/2EsVioj6fR6VOYJTDojuEEKMDuU2Xb5HRqQQKnaccWqu\nDMjNdleM1fRoBOLathwWJ7qok2Owc8ZURrPE5Sugo6ciWmft+7+zyvDkf3qh\n+LrrLah1tvfXvCkHLYpi5t19KBS00pPRDMCO+4nkTUeuig/777nDjYFqN4Oy\nGNVvo7Z7whtJodAcd/k+zDWKP9sCLYHm3jLLYjnow+KoU/P2R8VUqIeRhISQ\nzDayFZnDMmbkyg4+06w9wdQEp6oJV0zleM3NqX1VyiEnzhbiQVqE6g33dsLg\nezl3I3MNde8FK76D5r82qIsnsWUyhEdI8fyBf7NTBvSgrNd5OL7KxaJItKc9\nRwssHxI/UnEehlBRbusH/4W7rgNZ+KELQ6afTK21uoJFmxYMLHwlMmvPOGOP\nqZIoTTB85RaBMismtP43d+to+r4Lwg+Y9ewHDj1Rt0eFl8YCFjbYn8r4lpgq\noWbi9gGUiMo5BxJUHROQ/aufkritKhVpa0pHCRBfcaG2kAttmliY8NL46jy4\nBihK\r\n=cnjZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f09b2c0c350e2f684e84766c95eed5c92b5afb0f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.0","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.8f0a11e32.0","@material/rtl":"11.0.0-canary.8f0a11e32.0","@material/base":"11.0.0-canary.8f0a11e32.0","@material/theme":"11.0.0-canary.8f0a11e32.0","@material/animation":"11.0.0-canary.8f0a11e32.0","@material/typography":"11.0.0-canary.8f0a11e32.0","@material/feature-targeting":"11.0.0-canary.8f0a11e32.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.8f0a11e32.0_1618430582839_0.42269371447203596","host":"s3://npm-registry-packages"}},"11.0.0-canary.f5c6db8fc.0":{"name":"@material/floating-label","version":"11.0.0-canary.f5c6db8fc.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.f5c6db8fc.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1091900312ef059f703e7bd2761e3da3ab87dff0","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.f5c6db8fc.0.tgz","fileCount":34,"integrity":"sha512-uRyw3ULRkU5vUzBGbbShAOuR8G5Nd4xTYoTo5qwDgEHNBZxjAwbrD5DSpNyGcAzxRjGMLN2q80Dby/ToMZxAuQ==","signatures":[{"sig":"MEUCIQCWAz3jYRKo75kFY6LdAi5x2SPqpzP4UP9pHzM6/mnw9QIgP1rB4ny77Vdog9s5KXH2Wzlz7ECHBpbGkus05wm5Qus=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232013,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeIAcCRA9TVsSAnZWagAAE78P/jpyKXM2sAsIqTXfUQ4T\n96ZLU8i9AiQH5ieDpCodZQ5I5wHVzWeXsS9W0TN9I8sV1f40FAstNjCsJRjF\ngDY2ExYbif+LQ4G025eYCPEpDKSXmt8VEMhmA4D0OOm4oz4afUalGCEmCBXr\nhAlUG/JjCcyNlXvX8NK0RJb61flqQbvdlRcFWlxNX/FcuqKxSLyo6QN5IMa1\nfbmZRkFgAEKG95A3FiTbUxm0upfsr/WC8fcDzWPiyHy+/z9uVR3At7bCVQLN\nZA0RkMIXCDlrpj4GKkuEh+47Hsgc4Mr7UGtkhiV09Y9dd7fj97WhllTaZ6O0\nWVG3PjcLJ85SswZRA0OJ9iI+KhZhM+gJ+A0cBkwqqMFudpR2dRbpZvzzd4x6\nOiCqQxCLr1emsMu1dtvsjwqPUcAlUDyT3dnIg8ndPA/Grz4StUMoeozbfx3E\nUwP+S692L5QGjl7EA1EeeDLver+5cdKZvIUPcUGqbCpbLBSsevB9JGPFbCUp\nrJXjqJSzcs/qgXtclUi4yHNVInroinywJx109wH+SR6PrKPtPCVNCU1ryR9q\n6W5XDk6LTKaHsotvDDKMw0vylzS7kpTnz/WuCukgcAoJV0VvplFney4Ytjrs\nmVYjgA+VH3Z7niIoBiRNvwpagrrtCVQsegvST6PY3DBeXkI+LU8Oyya8EgUP\nJZUm\r\n=mrjr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"eddcbd64f4309f4bf5faecb13428405a28774f15","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.f5c6db8fc.0","@material/rtl":"11.0.0-canary.f5c6db8fc.0","@material/base":"11.0.0-canary.f5c6db8fc.0","@material/theme":"11.0.0-canary.f5c6db8fc.0","@material/animation":"11.0.0-canary.f5c6db8fc.0","@material/typography":"11.0.0-canary.f5c6db8fc.0","@material/feature-targeting":"11.0.0-canary.f5c6db8fc.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.f5c6db8fc.0_1618509851486_0.5284822415546564","host":"s3://npm-registry-packages"}},"11.0.0-canary.3793a3143.0":{"name":"@material/floating-label","version":"11.0.0-canary.3793a3143.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.3793a3143.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c45a8bc3a6eed69642c83e7448e1fe1d045c3ba7","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.3793a3143.0.tgz","fileCount":34,"integrity":"sha512-JBsMrFrXrfoximpiUcudpqB2qZ8ylSwQEVTOCCB9p05xQiU98Lt6vzalnep1XpcAj0WDOiE3QFIxHr2iZmqefw==","signatures":[{"sig":"MEQCICAmk5+Tnqp241DstlrAX6ZXB09E/+YoWFZyMp/tGryMAiB+D13++/gCFVhPrced8p40w2BQJIhNitI44SFdplu5fQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232013,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeIZ5CRA9TVsSAnZWagAA8mkP+wRYAeFumK4aBK6MqRHJ\nCioDz95VQ9SFk6F1MW1kxYF2jVdUfuNaoOR97WSLuN3a72sGqLxsDMxhcgGP\nptlnMWRTXF2Q3+GH4Mv4ECggDEZpUR9FEW3VB1GvOER29bLY62TLl5bXxh6z\n6l+kDXs7QcovByGFg5uAqVfsg9fcLoRXWMRh+4V2FvWwDn2+nmUltNW6WJQn\nEGb4oRp1S/9uHka+C76sUTC7QRNup5A8opPVTszuwwNJktdKWeqU+fKFEsbe\nMCfITrBsMDrXUG1QzL/yIeqqsA+diS8WHBQDM02NpdXsS38/hiVqQ9xLMhfP\neVrIFMu6bxJyHhq0MY/J9OYSYaYPIlNCpHo58U+7qNZu9Sx5QYnQZyJrEXP0\nKktZTY9wF+UhAv4lVWYzql+HwuhvVnwrVtu6fUQEtD4nEPf3nBN/rNxMhXF8\nv8gbkiNjaPPHatu2dMJPkd2dNb659foB4Bo0PWLmS0Ay3guTmGnvwrAqxuY6\nfcr8Y2T7INh12tdd3LuMr1fc2YxlB8hP94K953AAJ9qVEuXYigIf3U0KlNpP\n3W6hoT0hNcMqBQEgmswm7dxD0BHTqOC9KpgOfP/zd7aFnKmrkBdDgRrB2xr/\nq/SuuzdcYfH/nw7xhKRiKIkpLmBYMSA10kHJ6AZCxMRK5dHwRTVT/a+HtsXy\nF1IG\r\n=vgPX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3cfbed34975d8f2990425af21414290a96e2240b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.3793a3143.0","@material/rtl":"11.0.0-canary.3793a3143.0","@material/base":"11.0.0-canary.3793a3143.0","@material/theme":"11.0.0-canary.3793a3143.0","@material/animation":"11.0.0-canary.3793a3143.0","@material/typography":"11.0.0-canary.3793a3143.0","@material/feature-targeting":"11.0.0-canary.3793a3143.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.3793a3143.0_1618511481448_0.5832235352034367","host":"s3://npm-registry-packages"}},"11.0.0-canary.bc104bae7.0":{"name":"@material/floating-label","version":"11.0.0-canary.bc104bae7.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0-canary.bc104bae7.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e9a0859ca7ee4654456bcca18ff1dbabebce8aed","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0-canary.bc104bae7.0.tgz","fileCount":34,"integrity":"sha512-3oa4k0N26fvXrMv4Ok9XKpG+/C1QQLC2EeRD/wk54r6smqradusylygrsgIlnGohvfxrjKRN2ErDQgelgYVkew==","signatures":[{"sig":"MEYCIQCRgxWyMz7MHwTRFnVTdNdfOPnU10tkEsWsjBx51oVpXQIhAKD9KcuvZFjjnN3ni1bfgqJ3M9mhpkz2IWXFK7+wrW03","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232013,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeJgDCRA9TVsSAnZWagAAgDQP/A1HhfUFMwc+r343Ps/D\n1HdJBvIVPUrRcAaBtINuOG6EvTDUnYmkr3hY7VSj4k1UwjAtz3Hjvxz60x0J\n/QzjGdXnJly8SNRVtvGz3NsOZRiVZMDymUyVRyya9RfI2fHRh6bQNbvjbV0E\nWFjOv55MPn+L5/lEC2eTLSOFVX98GqJ5NHCapq4h8jvOJW7RU2jWMNuSLBGH\n3Q4khioSvsyr8pRlmWuQCZessE9zNafS13QU3+9QSBlf6bFUxHoxAiV40YPk\nxARxiVVvMNBbD9PTXtJiaPmpqchZfV6eCKYTehqxxI0niftNjw7+jMxKAedN\nODz8/cSc6kgYwJEoJMsFUTkR2Iapszo7ByocwnKXVnL1R3NmQjkH4kgR7P1+\ns2f3iX2SbKd45LdIX7yWgdUObSCUw1EyBqxNm2gPvpd64C3p74en9IezbpbT\nbsUe2bi7BbpB1Cq0ROeBMzGv4XYT40mNiQrZZM8UPT9rCsWZsGLKk7n6/8Pf\nK7xryL6ykJOdEMLUZZEwTTze/LVf9FC5kfpxa8JxlbQ+LYl39DPRqACyJhd0\n6fU0some8MGT3euIAZPzHZ/4c1UrNvEfZua/08qX7Ltit49jNZ3vaMrIRZPY\nwJ9lj3oGZMj3FP1vUjV0LmDUiSmhdc/i3RLprZYcUkjBJxoHn+O0rhLdkgeZ\n91TF\r\n=Bm+k\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"fefd0309d7bea91a430a20913f05f501364f2ece","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"11.0.0-canary.bc104bae7.0","@material/rtl":"11.0.0-canary.bc104bae7.0","@material/base":"11.0.0-canary.bc104bae7.0","@material/theme":"11.0.0-canary.bc104bae7.0","@material/animation":"11.0.0-canary.bc104bae7.0","@material/typography":"11.0.0-canary.bc104bae7.0","@material/feature-targeting":"11.0.0-canary.bc104bae7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0-canary.bc104bae7.0_1618515971490_0.49995407642782785","host":"s3://npm-registry-packages"}},"12.0.0-canary.3f342c3f4.0":{"name":"@material/floating-label","version":"12.0.0-canary.3f342c3f4.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.3f342c3f4.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4d8d34c6651cc64a8586ea60b407e4f3d1e85cef","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.3f342c3f4.0.tgz","fileCount":34,"integrity":"sha512-yyBQvhWsKT0Ps103PbVtf4sRv6/oVk+NogLsp/Hhltxbw5pA4+TYvhfQZKhys86uvwgtkG0EvKooRGky0wlRSQ==","signatures":[{"sig":"MEUCIBXVVyybLaRd6PDt/i1RjgDPOH93v+rYaCz6h9WMlYJhAiEA4S4Udj6H2V8AK+Z5U+ICWieEobeOsRhRUekT67Vi+kw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232013,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeMQcCRA9TVsSAnZWagAA9bsP/jnR1rLND0slyV0fONvB\n1S8MxLe7F173i1/naze6o7Fi3kMUeIoManfWzsCGux6P/n+75/p7dE6m1xWr\nuEnnQqvJhqrn4tgdv3c4mZxOwFksVjnkPcxy9lDk69L9zHTJc74tSns+yLR7\nALXsAfjdlhZOHXT1VzR76wk1BzJph0wExSdPB49oRuGKXuyRz2bb/X6BhW4V\nufx0xgObuc70lfWmleBEqhtA4gg8tszFTSOpazoFX8sGMHct+LQjPkYUooLV\nbH9hMxHXVnfa6qnuw/U3WS+rHkOPp35/8eAF3iHwbIX41RF+fuRSG2pq+PIZ\nwgu8A/+2CzqvQ+rOjJ2SeoRpWw/VJq35aRxMTv5MhkU7aXJ5v3dzxf2ta7aI\nTtOrOrqxmSS+HiCAVRNDO6UPsCuH3BBsNN8m6kLrY2IVPoZDw0iUXl7U/1at\nf8cMBmMkpo0cFnT7P9+YWMiQthei+5DDHSonzXUF5BT9Uk+58snG9V0vc8et\nsQj207xR01MuEI3Kfolw1oVjgH9edROkXJWfq/JFO1gJnfH+/GOLpGJo5GDA\nyi/X9gi+EWrFw7CEurBWnLRp6Ng5OlLOR5Db0akyF267I/NfGQ0R8+fGnKAV\n2YBmeoZTPQ97w3yVov5TRuG0B3T5NsZzoNH5ZkwMs8m3Hdtt9mwLzUq1s76f\nxRIv\r\n=C3Rj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d82c002d3f314f99c3413389c77960016a48bfa7","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.3f342c3f4.0","@material/rtl":"12.0.0-canary.3f342c3f4.0","@material/base":"12.0.0-canary.3f342c3f4.0","@material/theme":"12.0.0-canary.3f342c3f4.0","@material/animation":"12.0.0-canary.3f342c3f4.0","@material/typography":"12.0.0-canary.3f342c3f4.0","@material/feature-targeting":"12.0.0-canary.3f342c3f4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.3f342c3f4.0_1618527259634_0.7112802039443373","host":"s3://npm-registry-packages"}},"11.0.0":{"name":"@material/floating-label","version":"11.0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@11.0.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"54f8d9a24e2385c543ab1d9ce30ff922a6d091ee","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-11.0.0.tgz","fileCount":33,"integrity":"sha512-sY/ijV06cU0y9+1OB122d6z2AuxLzjQgQGVq9dFLoVRL6jhV2HgOxGF/3cvZsgGGsv2liXagkmQ02jBV1ypvgA==","signatures":[{"sig":"MEYCIQD06zqxRYav5w71vhSYq1/FHI9cGqdGr2hJ7jhmM7OqEAIhAIiuJTepnkE+JuW2abxZulGQEPlmJfwtPpGt31ozKZWs","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":231483,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeMUQCRA9TVsSAnZWagAAK0kP/3QdDJ6LdKyhSE16G5qH\nEGHTwRC+IVbhuao8wedQKcjO6zzJjh1f56v8q2S0yAKGBPWZAfWzkcd35VnU\n4hL2Z7dP6mUfrXr5xMmMsqyjcbr1gNvCqASE1vS8vt7z6lTaNgFhwoXHhvnN\nz9khFPbmSJLOmHRchGzxsrXUnkW4vaxSD1sshL0yaIf8NbBbLAI8TCLd5+x7\nMjFmRwnIYYduHLCv49Ko8eIWdEl6uOYZ9VZYfwPpTYSJvXPFGJ75uMU9Vc72\nl411poZzDeZf9D0QKMM4fZffCAyrpFVzeWPukZKaENNLZkcLsR/3kx+05j0e\nW/F9yHuPSoxmxfqV4I6YyQ9ZGcTTCGNP3ltEwcR78eHs9JoXqoPnBeYip7gj\ngqYvfMdKIJZ3DUnMDuK8AwZNH2Xyzxe9GhttQDyCuCnGUTv/Z024zAbyhn/v\nZ6KDRglsNiqf2vBamePZ+DU2FlV+PAoRJB4nUIV+Fdcf21BAZuL825ogSccf\n8apAupyQIUY9lSjPPQRMAG1IW7RQGo/mg5gZwpn1U51Se9XJSx0v/oV2YQOu\ngQUedFGT6L/qq6l0eneh0DR5uiiX8CAEgFFRdUHQhqKROTUPRedGTMKmtaz3\nehcPZOEQc0rqglQtmAO/meXv0MbELkP9edxdLf1yVsp2IOJc2SNzTXbP9ArV\nPIfy\r\n=JnEO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","gitHead":"3f342c3f4715fd3587f327ce4ea6b5dd314c5c55","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"^11.0.0","@material/rtl":"^11.0.0","@material/base":"^11.0.0","@material/theme":"^11.0.0","@material/animation":"^11.0.0","@material/typography":"^11.0.0","@material/feature-targeting":"^11.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/floating-label_11.0.0_1618527504266_0.6311711002106859","host":"s3://npm-registry-packages"}},"12.0.0-canary.2ebfc5374.0":{"name":"@material/floating-label","version":"12.0.0-canary.2ebfc5374.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.2ebfc5374.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"02a9f94ba9c25c3fef3c970369760092d9693223","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.2ebfc5374.0.tgz","fileCount":34,"integrity":"sha512-p9BkBDBoriCNeNNdDxsbUHTsoVUVSMXt0daXCAHUArFaGpg1WbE8oujevxK/DVtQin3t+noy37bIL/0E7dxgfw==","signatures":[{"sig":"MEUCIQDM2GHU2Yfqd96XHjuNeh1oZQFQicXfWh7rM5kD3Ld4xgIgICZq7TfNGidOhvCM4wM9eK01iCt84Tjw4dD/fxPjbgg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232013,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgefdRCRA9TVsSAnZWagAAT7MP/iL72H70D9PowHAzHh5M\n1x4moY1Ni3xOhMB+lg5dxuxiOJS4B7vaT7t3Il4lACyryjJRghOypG20Exb4\nVhG0UwjaNWIUYh8i4GVUnwRF/7QLSJdDxAihET5hPonp2SJuhqulZvzj39K7\n7q7fhTDjCombq/Y150JDHhD1Soeg9La3Ud7oIIA9vngkgDr8dk3O9k4hLf2A\nqd600jyrPF7R+OXY3lcwI/5Bd8prVTEo8gOrYIPJDDMN/1TepF883F7LP2/5\nySL5XwSuWm9CQAJRUIeqHy0+Rop9u1mzKQOHXyMKLXY08Fw++JYdpmYlQ2hb\nNIERLRf8N13eOc570WqoIV8bP0IQovzWMDbhNRVbFHSeHSKLINEF8GwaT1ci\n94E54l73qNxSm9ERNzfzRylkccyRiF/kVU/05A66+tS5Bbk+l1MIo4orJCCz\nEqjij6gJY44eRjeLGVdwHzMFu9PdI+M33CNenwgIRvms01gJCZQoCHYFFGaG\nITnhSQs4K8tsO0ujWg67lfBf3OgnXdWs1WANm+/QOXyD7B0zv8uAyodWVBUy\nYRyWiNSuRO1aBe7DrixzKwcTrfcVLENotMAbwoLgvA4iXVKIFMnPqOMiBcY1\n5LGe/dNnpru2IYwzu90aqOKHt52rR52qXaGHkXueHICdrWGBjoZ4FnrXPJ3k\noKqr\r\n=PGnN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"603bba9493212a7e1b6350d2f12e7488ae1d9594","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.2ebfc5374.0","@material/rtl":"12.0.0-canary.2ebfc5374.0","@material/base":"12.0.0-canary.2ebfc5374.0","@material/theme":"12.0.0-canary.2ebfc5374.0","@material/animation":"12.0.0-canary.2ebfc5374.0","@material/typography":"12.0.0-canary.2ebfc5374.0","@material/feature-targeting":"12.0.0-canary.2ebfc5374.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.2ebfc5374.0_1618605904952_0.7803646639659363","host":"s3://npm-registry-packages"}},"12.0.0-canary.5631828e1.0":{"name":"@material/floating-label","version":"12.0.0-canary.5631828e1.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.5631828e1.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"208e4624206ca0b433fef1f36390991dae601d31","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.5631828e1.0.tgz","fileCount":34,"integrity":"sha512-IlTJVuX11eB11dQO1oyTDwlaxmpHPIzYwp0l1oy/aguhvv9o8SUBp3/X4l05nVXQ5h1waICxGWE6MnSnkrljDw==","signatures":[{"sig":"MEYCIQCNPLlzBwITIahQ0B9aIBWaDzXd6k1wJQyyf/36Mhc2TQIhAINPOEec6woUpN1lsYaJFQMo6295MTwo+gwsQg8XRgHV","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232013,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgepJuCRA9TVsSAnZWagAASOQP/3dIpMuGkO53neiIWwaH\n846fx6VagYxzMRq5PMVMRpiLZB+dwzLB+LaRjHJgrBGMZtzNfNBJMOD7CB/x\nEmqT+/NgYsVxTe86Nmkytg4sMufzE+xbTAdo6bI2DKd8gxwdYr+/nXkEihOe\neCr7ZlRgCrmj+1iBEtQCkogWixDY/4DihtEaj2WhIMqCkk6aWF5aeeqgiRGF\n3xpDYKNqDeqg96kXN+25hMhQOqMpBWWEuVc4AaBNfSzH0in2TmeTQrZolb9K\nWmWMiZSmUGM4izIGESBeTajVq3dztl3qxn7ZAC+XGTHaNNIHZk/L8hLOtRfq\noQmZ0CmzHGLVWMmiczyCItZhL6BGDw2KKo7JRPhDAAWK0p0FKYcaYCaoKCZ+\nGt3azBKViMx1yYGiM/yviE7/kq0f+ccsih6HuC+hPod8flZm5o/utU4Oh9Gv\nCYiyWUeOmZsE2PMqN/TerYoKnWRdGbHSYynIY0us7FioJp+HgymhJeia5wFt\njqiIf+vUPETWirqQe0YHWVoe75mxtn3KIQc4AxcrFxQ0zdcYG71S3Uf9gS/g\nEaZ6BMo1IK17/McOBvJHSz4yTSuIzEjxvQFYCbPNUkTaHrvZwQGb4AMX1IsX\nzdNpQkidosjW0/YtCIalAkdoa+GrAwyQFZ9Nm7xcdMbnB3HHQUNyyEuKJjLj\nY0Dd\r\n=8iQY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"497e1a2527ce0368b4038766ea4893675ced3523","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.5631828e1.0","@material/rtl":"12.0.0-canary.5631828e1.0","@material/base":"12.0.0-canary.5631828e1.0","@material/theme":"12.0.0-canary.5631828e1.0","@material/animation":"12.0.0-canary.5631828e1.0","@material/typography":"12.0.0-canary.5631828e1.0","@material/feature-targeting":"12.0.0-canary.5631828e1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.5631828e1.0_1618645613954_0.20213788362697693","host":"s3://npm-registry-packages"}},"12.0.0-canary.bd685395b.0":{"name":"@material/floating-label","version":"12.0.0-canary.bd685395b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.bd685395b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b7b9b3338a1f5d2e1d589eb13fa7c2c6127c313e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.bd685395b.0.tgz","fileCount":34,"integrity":"sha512-k7XDM7qqJrD7JeDh8370oEYEWTvLZjjBJT5B0qfbUFvefoEz5g8+bc1Q16+di30qeZn6bkKMGrnbKKvfSLTF7A==","signatures":[{"sig":"MEUCIBbmazt9ugBB6n2d+IzsYDZ33nTUo7MisX+HT49fHo5EAiEA++VD6WPEvVmOUqFAk7DhecH7G6LfyWpciJIrXvM4iX4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232013,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfc7TCRA9TVsSAnZWagAA+iMQAKNrEKYiFv1dny8duhvX\nzIohuP0P+7bvw/UBe/MKm2qo5QAb84INf+a8tlOMSFaHpb+WnhFhzxjYu/iw\n3xLbWQ7TQlI0rRKXjmCx3WQqUsg5g91Ta/bResfpx2i9HiZ2C9I9oWKgKXoB\nMk4WJ1VvYwDmlsZAEMyRkO71KA/GjTZT/qAat/CRjyE53eAnpJ7fJC1KzZV3\ntUECjkL/9zgbaEQus7fDpxJim9vKarDSEamHIluHUvnQbcAVkuvGw3tMtQfG\nb9vrfJpj8y0ePJ1EMMXrxAdfG9hz16Jrbs8Ms/7G92bvKlvMgfJEiDBaJ4RT\niN1VKYXBtG70F0xRWZxnqxokyxruExJZlQFkPV6YDalJsnHaVfBeI4izlfBI\nqoFSkNUz22eFVb0Gxg2cS4Xt23I5ZHN6ItNTyz58bA6Gqy6eP+COrs+IBudh\ntZVld602Asuev4Zj1E3j9xtp+gE+uM7YiPXnx3tXu958uJDCiLFvd0JuRlp/\nuMVzI5zOgz42RKePjN3cTbPdZgKi1nj90b0AZVuqkkYuDXvZmerJ8t+zc0T0\nYQWAGbpDxuhWiRD0R817NnyURz4nJxPBUSz3OiimeEYYPF/dXlfJxHfRBxV0\n5REQEVbhWsr/XVPkakfy7BcjDvMoxoHRSdtWpuj1EP/LGi6TsufpeuVQxY7J\n8oNz\r\n=YyG8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"69c7d9ec7c5de65144c3b2a9b283b6baf7af107a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.bd685395b.0","@material/rtl":"12.0.0-canary.bd685395b.0","@material/base":"12.0.0-canary.bd685395b.0","@material/theme":"12.0.0-canary.bd685395b.0","@material/animation":"12.0.0-canary.bd685395b.0","@material/typography":"12.0.0-canary.bd685395b.0","@material/feature-targeting":"12.0.0-canary.bd685395b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.bd685395b.0_1618857683170_0.8677566299184907","host":"s3://npm-registry-packages"}},"12.0.0-canary.b52196498.0":{"name":"@material/floating-label","version":"12.0.0-canary.b52196498.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.b52196498.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a2bad54103fdf5df9561481eb6461da8748eadc6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.b52196498.0.tgz","fileCount":34,"integrity":"sha512-/kWhOK2jcoC/tFv3yzupFCXKcrAcVy69KCcTcqGpdisxfo4oLfUa/Yuv2LLMM3oQbJH3Sk6iygnW3fN4HTcVGw==","signatures":[{"sig":"MEYCIQCjESYfNY22NqkmkkuX9jMKZNTK2UEZKLq5lqHQrjhrFgIhAPGB7pXqKLMJnHU5mKV70AiLdr7u9YIUEevOL55YrCbb","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232013,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfeDCCRA9TVsSAnZWagAAmy4QAJfNqM8f0AP5q+Ru5W7P\nVDAuCcU4eDc/OOEEqfyINvj41KS70vvwWPcsghjv+5NwXKEf7mIyhOmsoFsj\nh/KZhr5IGYYd2ImXyblP87yO4kzgdbVxY+KubG6hiSbxbgXtimq9C5TEc4FS\n68+wQcpkqd6yBgZpHaeGm8qpGLAkB5cnnl6lxYcxw3bTQUjhN6a6oFEwWw0G\nIVlUEDBiZLrsSmzV2kK06BrelighSbcvr+YSSGjqmaYYzu54oNMQ7uXyqQSW\nUF4VCW541hXRNxbKTrKrsas0eWmpaWfZ765o4kpRscUZxJfuvNCtqox97BJ7\nv5AIyT0TTPXVR72TjZafhGMBXkE/q74etrcnU6TJRjnfZOqwU9m8epfVnJg+\nLhEPM20ja8LEyAsLZTipzcrxt1qpx6mcH8ogaI4rMssIqWfUGQIam8Y8uhR+\nTXft0FM+8yNqYitEo2WfjPeKI8vn+WWPBvfr/m6noHqftvwkDz0Pa5FkCm4w\n7VpXBJ3lZEdfQi1B8LkOjl9SI37IKF1nY+LVAYCBozFTqp6OJ8MDTe+szDnq\n+giI5fCrk5+6F4XrzA9pAOQUMQtIj/uVbIJzrfOy75pDB425z8rXMHTZhL73\nYAJ54ECGh5/pinQQTvbbYluREa0fdJC1B86ySR6JQM9u/orvdofc78UUushq\nsTb9\r\n=1Lh9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"953cfdd3bde4c66a4b6b90171d4ee702958ae1c4","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.b52196498.0","@material/rtl":"12.0.0-canary.b52196498.0","@material/base":"12.0.0-canary.b52196498.0","@material/theme":"12.0.0-canary.b52196498.0","@material/animation":"12.0.0-canary.b52196498.0","@material/typography":"12.0.0-canary.b52196498.0","@material/feature-targeting":"12.0.0-canary.b52196498.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.b52196498.0_1618862273829_0.421815662780628","host":"s3://npm-registry-packages"}},"12.0.0-canary.8ba3e298c.0":{"name":"@material/floating-label","version":"12.0.0-canary.8ba3e298c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.8ba3e298c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"0689400417dfa4582332d226127d7c651e88b3f3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.8ba3e298c.0.tgz","fileCount":34,"integrity":"sha512-yzvcooCs0Q7oVR4+OzptoEqEE3KrAj51Hn6AZfJd3agptHJkCkjvy/ZSyJZVI3Rp9SI0W2dnquvy8D6gYxpphA==","signatures":[{"sig":"MEUCIQCdJvlQtp+0SJpnDBH0r4YOTIwgfKBksrrvavfTbQ7uGgIgElkHElwUjrjmY2+/qBVw2gsn7nT574K6Mj0WB2iok0M=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232013,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggDHnCRA9TVsSAnZWagAA8oIP/1BkDQ1Pt3Oc4w55QHof\nxRNyrxYE3yM+baPRm1OaUsbimzTIeLEKUifdvU/KfndhAgSh0o/YCQmSxBpN\nyoodle5/ejcDtg+qtRQMUIjMSJa3s5qXiOkMIXP/2x01WhxxmP2sWu1n63G6\np3liEnQEOpw3r8pSQ9KFQgOqcwpxAmfSJvuoqrRc5m7DvUuoAk5ies5zOuU8\naSxQgD9ejm7Xb7+sORD+EgCOg0aPbobrOQID00W1AJwQBq0QjNC+/QAXWRKW\n8dYoxoalJyA99PMWZ+iRz+FBETrHQRQQvVcsc0LDptGd51eKMGWMNN0Kpck4\nG/70yotFVVlXUBmHvgJ4vq9ZHbs5hJQcK55cz/QYr0bG9IoqhU7ENEVAatbX\nWz4iYp4ZPG81ZbeqLp4gL9w4GNCr0p6IRpDNY9/2S+gE4tMp8zCGWRLi8LiD\nxhzBA/hdAvKBBpXqsJpBmk5FaNuPfDgi7TC+qxnOIa8kztlAVDzFrFaZP/4Y\nKcMFQZvdyev7cCm9hdr99KR+NdOhcmVfnWffEATsewzifloz/e5adlbLGvFt\nlDHlOiCTzWhfsMumB7jIVILEve8XE8YsayoCcMyFqTqkNpk8G2demK81M820\neY9LAfO5Lx36I0kXQ8BDlhgRjC7ll6TGNPvn94/z006BabGGee/oT3uMgcyt\nZRfQ\r\n=O0tO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"206fcb6cb686d5de97867cb4e4005926e2a94501","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.8ba3e298c.0","@material/rtl":"12.0.0-canary.8ba3e298c.0","@material/base":"12.0.0-canary.8ba3e298c.0","@material/theme":"12.0.0-canary.8ba3e298c.0","@material/animation":"12.0.0-canary.8ba3e298c.0","@material/typography":"12.0.0-canary.8ba3e298c.0","@material/feature-targeting":"12.0.0-canary.8ba3e298c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.8ba3e298c.0_1619014118445_0.18015942920238737","host":"s3://npm-registry-packages"}},"12.0.0-canary.c629eab71.0":{"name":"@material/floating-label","version":"12.0.0-canary.c629eab71.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.c629eab71.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3684c8915a16470bad6f7b4680a271cd0066bb99","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.c629eab71.0.tgz","fileCount":34,"integrity":"sha512-cNlU9lt2EYGMK5PUYni2I9AWaLkBSQucNiYTWmwSh/Qt/b56y2vQbqG5pRWa+96Pr9Fx4FxnmJWTE9+WFhfqdg==","signatures":[{"sig":"MEUCIDaWv5to1a9u36hFlqbMc17jVYKrV/KeGYqgh/goJGGyAiEAwJjGtsskROXSDVX/TD4NwLKbjf5VCDCRlUm5Xov86Bg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232013,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggIOdCRA9TVsSAnZWagAAvZUQAIkHQFQM3nrad5J6iBRV\nvzgX6VM3KR3tCkGb5sNwBC59NQF6tiRiAbcP0q5E9wmsIrrnGuGOAh1gLf72\nBJ6dJLCJLg/3He/FRvBDJE/SmioqrPg5nnPhP9+0uywEVmlohLAYcHReCb/f\ncN1z6/7ItKYn02e5XSdZUh1jRkPQ0XLrFu5PB7xr5xT0CxFQNSX6WHqEqHe5\ngHBLubN8BKLN9izpOXnd55WwGlzkk0A/bZ1NJYykMzmpXOHd6PIAP3NXmxus\nrXPTzkiTYd06QDofpgGuxcRh1Yo0Z9Gcb6UH4HscmmaEEmumukFWOYbNmJyJ\nCbV16s6osudeSFXFdKVmjseJZLGyeFOykuwSjlSqV9G68T7sOaDYsBK/wjlJ\nNc7QFP9SFuJsqnfDps8aDlrlbTN/mkr+GVJRVL9WLMhxQXLenM6dECwxaAIO\nkw7TxZMB6FbNlJZNkSJIubjBqeTlzXPSzDXBwno1NRoX6/9oNr1sLuJwLSI5\nxGyIktXG9EMHL6i14ON5aVWT2QqO6RqrDx3FiSnKuzUp1Q+jhUtrG/kOHg3I\neTwPROLsAFpB7Z6hkrkLB+sjIS8fGUZRfbtFFMqOUkqOQHHMUwTIsnGtuYQe\n+tFfAGWS7l4GUhvc9Td4f4DdQc95uLVizpP5pIiIuq+LaX7sZOKRh5TcABuh\n7ElU\r\n=PUim\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"13ae4a821cd20abff4520de3f38c689af7cd0edc","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.c629eab71.0","@material/rtl":"12.0.0-canary.c629eab71.0","@material/base":"12.0.0-canary.c629eab71.0","@material/theme":"12.0.0-canary.c629eab71.0","@material/animation":"12.0.0-canary.c629eab71.0","@material/typography":"12.0.0-canary.c629eab71.0","@material/feature-targeting":"12.0.0-canary.c629eab71.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.c629eab71.0_1619035036831_0.18640469359905265","host":"s3://npm-registry-packages"}},"12.0.0-canary.8ace3b810.0":{"name":"@material/floating-label","version":"12.0.0-canary.8ace3b810.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.8ace3b810.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4d4909e116010e0538e6455cd7caa1a85d9bb74a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.8ace3b810.0.tgz","fileCount":34,"integrity":"sha512-F6VJykzDPzZS2L1g6VDReQko6eAVl8W4w1lUQpeecxVIse+IjKYLjGXUCsUbAj+MibfHwAm/ZsG3UYnzoBPUNg==","signatures":[{"sig":"MEQCICZQHwmUwpTurnW+p87Y2SWo1qhogNoN2FfTf4cyGvwHAiBPthFHG4bwRnsWGC8CqfUEmcJBa4D5R1uZDgsMSR3LZw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232013,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggI0iCRA9TVsSAnZWagAArJsQAJB3quA88aH3JsQEPNyT\nvpKJUCtz3UmsheLmGcgEAI4eQFmaTtk9z9fe1j6wDMO4ChaIZQSeAoaH+/87\n3vKBmWARAI29VWw8jq+pA4KtydhU/HUwqcmXRHOdTd0c8VAlI1DB4Vr2zw9a\n9hYFrjdP4fR60zRBTx8n4Zhb3PsyF+HwvzWPfNSXWPqnyyiJKeHCjcNXFt2t\nDvEZ2r+cPT9bODWaeLK4h/bNjDiWJUBsmZ11QS+HT9ExAgaK1D0E0CWW48mx\nlenDHKLfLfsGkO9GZjjB1x3DYSxPw1tgzzD6hMauX4TA5vXbrzlxTdmhepKb\nCG0xDuhXKRbxlJvxhhi+dd2r4gdIv58LC4OB2FImOkYYXjZPmrtfHNYq0xvV\nFGQHg5mv0CsAu4KJgO3whiecwFcTRunQvwmTYAhh0WTe6iekPPxU0hCqmDZM\ncPPHEgNXsYjL1bM5huazn9Sq6cZrUgoUgcO+SZw5DN9Pm/cxP/RLWHyndWBL\nX8b+17+37+KRUNA7W7C4yxofxUMTUuKiUiqvqn4XX5/AcSwIHJOzo5ELq38A\nBEUeeIO6rY9NxWuc0Owha/KmJoIzivJWnqEZDWCTnfljtKWcmU+m3Jn6T4DV\ngQCwyP6b1TSuNqraSSgXpJphLN5+wHCNoYlqFajLyKMDkhxT0WJ3SmkB3k6c\n9XUL\r\n=ufwx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"622173e8e2308a6104e06bf943b6423381a17e5e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.8ace3b810.0","@material/rtl":"12.0.0-canary.8ace3b810.0","@material/base":"12.0.0-canary.8ace3b810.0","@material/theme":"12.0.0-canary.8ace3b810.0","@material/animation":"12.0.0-canary.8ace3b810.0","@material/typography":"12.0.0-canary.8ace3b810.0","@material/feature-targeting":"12.0.0-canary.8ace3b810.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.8ace3b810.0_1619037473686_0.1288879693082292","host":"s3://npm-registry-packages"}},"12.0.0-canary.70beaf42d.0":{"name":"@material/floating-label","version":"12.0.0-canary.70beaf42d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.70beaf42d.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b67cfb91c5e55fa3e6249ea9db68087c9c6c1540","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.70beaf42d.0.tgz","fileCount":34,"integrity":"sha512-2+YkfDSRiioMZWKzkfD7nzDzY073XcAzH4x/sbf1VvZX1Wbe385PR/z42A4zf98YzGocaQ3JvKmtLZOaxc40ew==","signatures":[{"sig":"MEQCIHaF3/B3Rezo1/Qc3BP7iQA/DrBV6xfmyw2SMiDq39i6AiAdVSCJxCOlkII/ZzDiLOyluabJ7rougoQwu/yWunbb+A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232013,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggI/bCRA9TVsSAnZWagAA2RAP/0rejh8kBkS84GROqDXQ\nq5fQvZMvhhzeCVBDIxZSZC+YvsqKVJqJML3t71dk4z53WHT0wOaz9sCBTQTf\nSWbISNQorrokHjeukFzpFaRlv90wRuktmwgb6ZVtxmN7K+bDiJCq0i1T0T3e\ns127sLQfWSO8P3ZDhx7zofRTe1lx9pDob3cetqNTh7Tkh5fHb3RL2mQ6w2Ze\nJHm8HoNVgO8L0vCJCWNI25fFsEJE27Hgx9mrF9uD6nli3oCTKTjDQ1y84P/M\n2ZELNdM9ulzLQlJ93G7qFBcmLhLvmigWvyT6rbOInMTFFhNqYHGHYNcHQPUJ\nzMkdyL/Aw2kFfF5lS7FfoVjV1L2sDjPPb2fLiw8RtqB2Fo09sZISGOGsp8KV\naYhOtFvEOmOiDgIBvm2yqk8YfwK79elt0VTvy0Pv983X1tidPhFQN6JO3p7U\nOauVAbSjUz+2+T6i5HSR/XS6hcnAP3VGVbrB5dL6EheiR5gyvlArKfZiY8IQ\nFj0WEdujU35XyHG6RaneMK0tkv7ckfjH4HP0PNrJS1yoKlXIlytsuHXUQUR5\nwB1v6iNxJs5K9VGnJHqt/G0XxB5UlhnEo3l/Pae8DSs8uyavk7Vzv44U5Nwh\nuSjsilCFeval3KjCw3bKvGRHk9ONJTlI6FonbDt2HZareGlKBr81Fb2q3tgQ\nSHxt\r\n=9TYA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c5b29092fb8fcd0102b908417d8ed3d61c3448f5","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.70beaf42d.0","@material/rtl":"12.0.0-canary.70beaf42d.0","@material/base":"12.0.0-canary.70beaf42d.0","@material/theme":"12.0.0-canary.70beaf42d.0","@material/animation":"12.0.0-canary.70beaf42d.0","@material/typography":"12.0.0-canary.70beaf42d.0","@material/feature-targeting":"12.0.0-canary.70beaf42d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.70beaf42d.0_1619038170628_0.5633446842965619","host":"s3://npm-registry-packages"}},"12.0.0-canary.cad489689.0":{"name":"@material/floating-label","version":"12.0.0-canary.cad489689.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.cad489689.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"da1fb490d81a5bfbd03d5e2c779104e3b3ae3724","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.cad489689.0.tgz","fileCount":34,"integrity":"sha512-KnDCVVQjgcsWRqZlMHvHGTtJYg32uYos9ueeaA+47srrj+BhHEWQS/x8s/2CRBC70nvFQJN2qSbk9e0eJDH51Q==","signatures":[{"sig":"MEUCIDvEm0xonSyN8OPVZeHstkxfDD9lFWrbaQsZH/y0Shc5AiEA3n6K1u9RRs90iTwVrWMf1P+duau8X0WbBaSi2rboS9s=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232013,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggakhCRA9TVsSAnZWagAAHL8P/iIWE3gCJMpvS+rsaeci\nKhUneptd+j0+zoLWuHdSq6lB5uNoyw6yDx7C1zWHG718fXHP1hBTJjqL6ICh\nfmyhWV/Ld/yLMUlYeSh9aGZEQNAGV4vEPxRpw6JMsM9eISbyzzJTAS8+LfF7\neaquUSqnPj4XcGsE/whxIv24rRufcwGObRn/eX0oeuL4VWLIKKPsmEEDmWFe\nVPgsuFyXBkwBO6sgl8UrSlFKAC2ix5G1mOrnGWN9av0tNVgDdAbX7PgLVqZI\n/zVh7L7Q6ofsnDMY0SnX8Uebzgtj61x1djrJ9Mog17zbM9D3dl4f3cC331VG\n9yMcOu3XjFODNokcbadnCHFgjwHbCqfEUFDJj33FS1Ikm7vS1N7CK9bC2Gsi\nPXdPVdwJw+F52fHLrXqbUkzVfn7JguCHXLv0uYVsYHRcHUSylmw3cbSIgNrs\neoMlxoz7y8f6EvFnDUrevmOKK4G57WPbrGgqkAcAs87lNSNN3FFh1BWBsLlG\nRVsRArXTPWjsBpE+57F5Ksge+k4XvXG0OEwjUzOTwbmwLk13ok5265M+D4dg\nQnoL9NTY+Fo6C8teZqIKTbxrheiAGIjIVLZCJgFauXvccKMEZau9JrV4Ginp\nzEGnCEK92RvP2Ftgxx5OZ7qeRDltQFZj4ZglZFMI+Yla62J0OyQ6ifQXh0Xw\nyqck\r\n=jVXc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3e5c20e059b33965b63d0073bed7e300c57d5781","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.cad489689.0","@material/rtl":"12.0.0-canary.cad489689.0","@material/base":"12.0.0-canary.cad489689.0","@material/theme":"12.0.0-canary.cad489689.0","@material/animation":"12.0.0-canary.cad489689.0","@material/typography":"12.0.0-canary.cad489689.0","@material/feature-targeting":"12.0.0-canary.cad489689.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.cad489689.0_1619110176600_0.031497442729132574","host":"s3://npm-registry-packages"}},"12.0.0-canary.d928692b5.0":{"name":"@material/floating-label","version":"12.0.0-canary.d928692b5.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.d928692b5.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ba0ae612e7504371eb2f6d59d90b1207827b2ee7","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.d928692b5.0.tgz","fileCount":34,"integrity":"sha512-dmHBmPHsqRg+CziPs2PzrE4OghzlFulcLWGR683woxXTGoIZ/QCoeMZfxKPaWuhbbx42i6sW6xmCWGybH2jlxg==","signatures":[{"sig":"MEYCIQDoYYYqE5SyFuyZFm1vU9dq5pzgoxnH9cVfBZgFaBLPZgIhAOu7xI/6H10ellWv7PS9j1moeJKo3l2dhJHhJ4FImydU","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232013,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggwUmCRA9TVsSAnZWagAAFTwP/jFc6iw4LonoNdk2+41b\nMQ9q/6ypyu+5IitqRo7AjAn+0dnYjLQApT1Km3kBjI/abeuEhTbNb6GekLkL\nJNsP4xWIKWvGJmtYEQoB3iAfq+gX4ILrpeBtnNb3xPY6wic7lUsakV95M+/8\nmGr9VpDrCrdPeeVV/8tyXFqHJ6qhH6TUf8WQaWriGLOsc0+QvEVlz0BIxz+G\nGpqwHXz6GFW70jLxjajVRG+66Ord780TQwlOtKrY5l69CYTZ9lhZ3vPNgOqb\nKWjmjZzkSnuVPWDKTnpNAzPJaPqLReiwko+FaCsqiBnLxVR2QGsFBLfBMcV0\nwEuDewmmcA9qEfaUgOeNoQ900e5wJBYUW8r7S3XiWes1GaSBbFiz5tdDEPRl\nAyaDuziA3dKv318rz4YXpLMN27gJUbgSe2yYHL6wMbKaflX6Tw5p8Kbh8TCp\n5qerSLYPQNYqrSyKijpFlS5Msz6w+PnL7bTwFhtH9DUYFhgZ7k/knrKcQaD+\n8PNZwMRjAM2scU6XQ2wWIt9vFajT2PM78E7b4xAaifJE5SyNaROGgVBFCu1m\ntlFdAUp5eafTdl7RmkIZrXHtnv5pZDi2+oQnIy+nOAnLg35o+Zn8dqjWvPkl\nDst6BUXuqLxjAt7EldNvEm6A0/yuV1gy3PL4Ta5TGq1rKu13kWWGJoQbHkQV\nmuZ2\r\n=YMFm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ced6a0237d36ed84c4d277fc25a11d9453108e12","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.d928692b5.0","@material/rtl":"12.0.0-canary.d928692b5.0","@material/base":"12.0.0-canary.d928692b5.0","@material/theme":"12.0.0-canary.d928692b5.0","@material/animation":"12.0.0-canary.d928692b5.0","@material/typography":"12.0.0-canary.d928692b5.0","@material/feature-targeting":"12.0.0-canary.d928692b5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.d928692b5.0_1619199269518_0.7869620141792684","host":"s3://npm-registry-packages"}},"12.0.0-canary.8f68de8f3.0":{"name":"@material/floating-label","version":"12.0.0-canary.8f68de8f3.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.8f68de8f3.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"bfdc35307bab9681a04b100672a6cc67179bd77e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.8f68de8f3.0.tgz","fileCount":34,"integrity":"sha512-SSmFYmYQh7v0GPkS760aF4b0MVm/4BCAO8DRdgofuHq1QnKVLiSY7GcdqNvDReSIWVMZrGa2/ywxA9yFqbkXxg==","signatures":[{"sig":"MEUCIQCjMF6/sdif6EoHWJc2vsKKIVX1K6GMIfvi65phm99ruQIgdsTIcT5azmQCbKMX8VWjfqHeqhXCuvxleeMcaVftqyQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232013,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggw49CRA9TVsSAnZWagAARfUP/1z+SipWPWjeBeZ3njMe\nzempgmw9wwJ6kWwWXcO0tzORVoQeiwHolqNYssfzf+rxhGfHfixZuB/HzY1Q\n2r/zPfZwKhBFBMo5ABXgjXpEHmLpDL426iCkFASK8S4oPTA8JNdZ1XfnLhHq\nWERlZu5gIvad4rTtaXABhx6VfbGVEkt9xIWPfc3agC/B0fPXdTKl1roHg861\nYOZGl/Jg0857fU09cVrUUcQPnqiXJ39MvpdgTReUCTWlaz0pV7VCGNB8twHL\nN0aynlW1gBgwJOhGDZs6uXsN+LmRqadIuzh0dlz2qwroStrj8rc31pPO0opQ\nh/SkvxOyXZRNHYtYNJtKHI2jSs+FaSEqH3Ri/PW/MXEStLh7oOHv5OdueHz1\nhutXm0b49CzPJqLZ6MYS8a92BwCwf8g0c4mHg3r0fmz4gZ6XStkC22GMHON8\nHERubpgNbEC0pThdl1paq3QYYwi1a1VY4J6eJo/YDE2Gqt7VXBCnDcjJNMM7\nPtCBf9m2rGxp78R16n17xCCMOvPAR42yMFolClqQKqzG7JdaVh4Npskz7xRZ\n0Lbxa1YWsKMRwaVn1NvMUYOxxLif6BFCXCyoiFqwx9/8Zt9spdBJBKvw23dG\nZpDv3AZmLzHNgIiZhTrrA0PmjTCAuOJyk3K1ClZtNbRqx7osdmN9unourZqT\njudr\r\n=Mzzh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5bf06e910f57a544c428d7559d72d5fc2a5f30e9","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.8f68de8f3.0","@material/rtl":"12.0.0-canary.8f68de8f3.0","@material/base":"12.0.0-canary.8f68de8f3.0","@material/theme":"12.0.0-canary.8f68de8f3.0","@material/animation":"12.0.0-canary.8f68de8f3.0","@material/typography":"12.0.0-canary.8f68de8f3.0","@material/feature-targeting":"12.0.0-canary.8f68de8f3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.8f68de8f3.0_1619201596723_0.35422265800023145","host":"s3://npm-registry-packages"}},"12.0.0-canary.05753cf77.0":{"name":"@material/floating-label","version":"12.0.0-canary.05753cf77.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.05753cf77.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"edc9c9e150df205dbb77292376117f85fffe12c4","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.05753cf77.0.tgz","fileCount":34,"integrity":"sha512-YbL5dBj1zG4yYbZJrfz32U6Odpd8MeXpg4E1bXyqKM2AwnGnVYiE/FTcK+vG15bdtZ6ZsVkp4etqleExIEukxw==","signatures":[{"sig":"MEQCIGfStZKCzyq8P6f3ZFrcdFt7vScmgzMnBplRShZOQlSCAiB/FGdC4dR6Jk8aiJpKqEVZVU/Tm/UZ6GaZ1/7JhRKQ3w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232013,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgg1uQCRA9TVsSAnZWagAAn94P+gK99uiIrKp+jaAXKHWv\nwXxuyMGLm9P+GHKwWRbmfoYGHX0+Ccp5GwheVgKnsKOQmJ+64xFcl5N5ZoNV\n9MjYVuMecyIL/pZ6FDTHslLgHdnnHOkDW1y9FL3vd1BHido3z9qLvdkH3tuU\nZUiOOKsCWyc4s9JzML84cVnT3kVnwnDb2of2ka8sdB+I4PeNSwaz/xr8LHcY\ncGdvNAEu9oHTFz1aZkHV4CL9mne6e6biL8zCQnEtaXuEj+fVeBw/xz7Iq8dp\nU1InAdIMNGffvB88lept1E6FdLcpEBP1XORXTszx1AhTT2f3BD56SokUmHoY\nrBnBVAj9oppnFccZqF6wAcWI2QxnQvaouIzoLRYq28JERw1SYLJ9ujx1JvHl\nHAeCvu+N91RKu/oslS45BVWO/TnzzupXS/czXSHH6gLq9UXSah8FrWIHYC5A\nouxGgRC5wBeVsed73nbsAT7ESsW+HbbBo8N8Syx/1IFFORJdaUEqZgOldHLV\n3YuUZ4nfE6pmtGBqAA2wuyxppi4SKScpXdY5bjgn72th4HBRJW08dr9Brl9s\nNDFFKAuy0CdmbcUL2Dd++MdmdByBpxLnTz9ztt2fxdzkybhd9AklmU+0zWo5\n+dUHCpwmbyIc0Xq/Vl3U/+lMBTLJ6QItv6wsBVnhwrfTGdQHla5IgudS/hTr\nzMcZ\r\n=/8W9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3557c74d7c4f9400f0a8d2c88bc2610c1d600199","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.05753cf77.0","@material/rtl":"12.0.0-canary.05753cf77.0","@material/base":"12.0.0-canary.05753cf77.0","@material/theme":"12.0.0-canary.05753cf77.0","@material/animation":"12.0.0-canary.05753cf77.0","@material/typography":"12.0.0-canary.05753cf77.0","@material/feature-targeting":"12.0.0-canary.05753cf77.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.05753cf77.0_1619221392428_0.03201431109128139","host":"s3://npm-registry-packages"}},"12.0.0-canary.ef43e6d96.0":{"name":"@material/floating-label","version":"12.0.0-canary.ef43e6d96.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.ef43e6d96.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d7db1da477795a8d8fe0059f2f477c8d10346266","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.ef43e6d96.0.tgz","fileCount":34,"integrity":"sha512-Jmz79L1ynFNL6OWeXqSYOlpdSmr37ysfX05iaJ804XfzXcJVEw+xzTpZbt3b/k6SeUG819O0r7NGbHBWPUFhhw==","signatures":[{"sig":"MEUCIQDgcLS9ijv4G971M4qYoJ3Y8C7aPLZdYbIxIqS9/HzZ/AIgLz3LY6oxkwJJCE3DqKn4PnTCqrg3OOc+xjtFxttOd48=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232013,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgg10OCRA9TVsSAnZWagAAdicP/A4DshgPbcWg2/R4T4Fb\nQYmSldHS30duHEBoIn/kq/q+DyEsAwWDvWOxu++34QchnLlJfz3+O+4mTgI7\nMvE/ZSU19Xm82+S1mljhW6wk2BwPuob+1t6lz9zIyUaot4Cn2c7ClKEDCBeF\nZRn+6SxvVFqlnEVOw5be8vA7cMbkQo0dMybunCCB0G3St3jqjtjPizToIVON\nc833UwmwtqKGLE5jmBvVhNHXEmrON+XUgb0enDuBTQDGZJSlAESl4ClvfPEg\ntMmFzJQ1TNezKPv6trMPxyYR1jMEuo4EaztU3txRwlmYL8AD9NG5wH1ZWjG8\ndpVtwYxv0FEZ2DgGmjqGCpcxPI0YD3itc0dy58fefEeCc7MDp9vkq9xMPTfh\n1PaU/FI8znc4jB1/A+v7jeWhcGeLKDKc6B8y3T8UXLQBC3WntdCje1S29RN4\nawP4LQmdimuRJJi1VJZiuNYSr7QQq9hWsxBkSV+VhEF6AqX/oBvuBJd1puVO\nEiu3+jpYSj7oIG+gOL4d9M0O4BLvLKijYRKD52vtaikKRfraUT9vQFYFYbMd\nP7um6XOU7r8LnNV5n7JnqgntawYaE610Df0XrBn5oPVbBlGZXZSotCDI3VQR\nDrclJzfk8IjN68z8dF8J88SiCoLSVX0+QdY/hwNGJdQDKX4FlLbNy5g1z0WL\nqiHK\r\n=UBIu\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"bf61e37f943b49cb1c3287501ad6fc31f8c88687","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.ef43e6d96.0","@material/rtl":"12.0.0-canary.ef43e6d96.0","@material/base":"12.0.0-canary.ef43e6d96.0","@material/theme":"12.0.0-canary.ef43e6d96.0","@material/animation":"12.0.0-canary.ef43e6d96.0","@material/typography":"12.0.0-canary.ef43e6d96.0","@material/feature-targeting":"12.0.0-canary.ef43e6d96.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.ef43e6d96.0_1619221774465_0.022700623257141395","host":"s3://npm-registry-packages"}},"12.0.0-canary.197f64fa2.0":{"name":"@material/floating-label","version":"12.0.0-canary.197f64fa2.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.197f64fa2.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9dc76765754143add1eae1a0900dda37406ce0f8","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.197f64fa2.0.tgz","fileCount":34,"integrity":"sha512-ojl6nkjsQSZ4js1bKfvEr1SxdfhiQ2ux3F0ZOMb7oY1KPxAaYs5l7PoNfos8uQJWv0BFE4aoQfLu88/9DMN+ZQ==","signatures":[{"sig":"MEUCIFF4yazZzoRxdc1EC5gKh+nufLBC6I4Xyp/nfOdNB4caAiEApPPyWowYAE5u3DcHV3Qi1/CsALtp0OPeqtzZpFpxnWE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232013,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJghvPiCRA9TVsSAnZWagAAYEAP/2x+sJ+nZu4mvpuFMn9T\nVWvSz0tDApoAzYnuQyKQ33QgayhNKRazOWpphKp9IxD/TXdj4M27n6+CO00I\nyukVuAkI41b9tIDvfN0y2qoDxdPFrKhhVbpL4aCJ7bDS6CYIxvW4reho9T7s\nd6V2429bo5uae+B9t23avMITAvXBFaQdzQaBivny8Kg9HTUdVuhscPiIm+jj\n+Cp2EyNmQPDCUs8vtf+QjNIWZKl6iXOIwp7Q+TWnkhsNqFoXFEE4D+IdyepH\nbUtCeSmAQ//fFjk3X4ELuqukzRbjhzCdAQqVN0G3oW4OJAAFgtqwW8qgVio9\nFBooF4GKOFBcMPHpM3fsCgA7qbcv9x5jfPsoQ9HcNHZ+HUxzCfOeqvuiYWro\nufocdYvYwcTHGumx+HRCxFiukxG5tkJv83y/fr8dQjFnWupwOYhIy9VafMyO\nOkKhOwcZ7YUjvzXat5H0INM6EWLMwWCneeVKLUERnn1FwRKc0anx+LCt3DiC\nsnDuN/cVYye7I9kIakjjJBX326Szm+IBVG3zeZlGVcnGo97jILzLj07ECr4h\nsHoi1zwoy9ED9PdgKiXOvq433FVz6c4vt6vYKnu4uxVlwW6WYctNNeqRZ8TL\nK3UXPZla5yiVgcyjcVzG1hafzFyBCtTEwQqL7KQS2u2WE/5DhFz0HJkUL/c9\nztns\r\n=mTyJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8ddcd6186c353b0d99439cebca29eb95eebc705d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.197f64fa2.0","@material/rtl":"12.0.0-canary.197f64fa2.0","@material/base":"12.0.0-canary.197f64fa2.0","@material/theme":"12.0.0-canary.197f64fa2.0","@material/animation":"12.0.0-canary.197f64fa2.0","@material/typography":"12.0.0-canary.197f64fa2.0","@material/feature-targeting":"12.0.0-canary.197f64fa2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.197f64fa2.0_1619456994316_0.1498773740405246","host":"s3://npm-registry-packages"}},"12.0.0-canary.55ad2d7d8.0":{"name":"@material/floating-label","version":"12.0.0-canary.55ad2d7d8.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.55ad2d7d8.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"84603552d8e01c54412919b0ef3d9ea09d600bfa","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.55ad2d7d8.0.tgz","fileCount":34,"integrity":"sha512-jiyrZASY7k0YdqcElGUidszidrjQ+CJ+7mqCW7Czk/FSwbQRnJSCIaCVriZw8MmQl3RjqtwK2Nz5O0adH+FpvQ==","signatures":[{"sig":"MEYCIQCmFcfJpdtQkS3oCKPD6o0bGPe2lzEfI6yvhgKntaca3AIhAMR/zfyucMn7fzrdqZGV+8FRk6C9lzdmkeuuQRrb4Gti","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232013,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgh2a8CRA9TVsSAnZWagAAe4QP/iPKVpWLNVvcNCTwHFru\nVYChLPCa462DQEay50059NRAAZMSo8vLzNyfrLXnM1Q7Fsj0p8fnBjErQ6xM\nS/SrFHtlroPb57DDBH0jUJIfVVZWl8gjUl9ClqiygbFm6a0KthvE/Y0mHr4Q\n1LD9eFktnM6CH/m6kZUV8mIspIZMDCeg8Bbx1MXTH8xfI2Hje6YWrv1d/51y\nlTyiOC61HVTn5MmSnUZu8wY2pUknArv4tHEqyonn+mOhEa4LzJZDCTzDQ2Ev\nQ8C1PoKchf864pFHuaLqUzJjYPwOphJ21zi2lMOJ8VqpDTAEVvg2/lKibE+I\nKYiq8L+fjY3OVH7UMYNB0b/YJwhYVhQqtX5/sZzMlpv1fnmTggxmof6nwuYj\nChAk00mY2xxQZXU6yGGIQRwc1lJ3rt3cHvCrHyFqvK4rIezT/72wVloIoq5j\nPl4SozLT4vtiZfAgVZp8i6ak0fG/HvVC7ac0f5/odm+MsAhCpavXIWV1vI1r\nUYMiIg8NJQLvc3xeAY2BwzTvLTBI7/1XXnzf9mL7kTm+trDtNk1rR2GLYR5t\n/M6NOcA2BV+wQQ0kBGbh6/isNFd3XZ15v6gvhQIIWgyviM+01NlgD/AOhBEr\nfWyGFCF4fn6tRJr4agL+P1usl1EGVm9LdyqUK3KBrA2YWwhVZ/p5DiZ/BbGy\nyhsO\r\n=1/u9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ed8a5f8b1756d56e3973815a51d6fc7e51c366ab","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.55ad2d7d8.0","@material/rtl":"12.0.0-canary.55ad2d7d8.0","@material/base":"12.0.0-canary.55ad2d7d8.0","@material/theme":"12.0.0-canary.55ad2d7d8.0","@material/animation":"12.0.0-canary.55ad2d7d8.0","@material/typography":"12.0.0-canary.55ad2d7d8.0","@material/feature-targeting":"12.0.0-canary.55ad2d7d8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.55ad2d7d8.0_1619486396145_0.7082066810899781","host":"s3://npm-registry-packages"}},"12.0.0-canary.ec4ac5234.0":{"name":"@material/floating-label","version":"12.0.0-canary.ec4ac5234.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.ec4ac5234.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"eeebe73071eb65677e5fb48356bfb0d05b3fe9d4","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.ec4ac5234.0.tgz","fileCount":34,"integrity":"sha512-PE/GAZywo2tBn7cnLcv2q2oIG21yRc90og1SkMhTkHh7IQKyKtWcls7WyAiY5N5TsyxrmHVjgocyJ91YkzwBSg==","signatures":[{"sig":"MEQCIFetPnoPUrBKNKs2ZH7AkGyERtJQoYe29y73MkYFGZsPAiA3oUWGpXoKhiJX0IQBc5i5U4UKA9qpHoL6z5mrd/9EKA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232791,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgh8QxCRA9TVsSAnZWagAAhToP/igtdQXq/r3AZ9CufWyX\nEHwanKGEso/IBVcz9OJoj3YJaF6+Bypz+38YV9B/VtTTuyrwes3rP7MV4EyN\nW66i15ydnArwnrxrOhMAWHJdsRRtNsSaTAjjrYytKQaS9ZduT0V+IXgtiarn\nEhVkdoI3f36HKlwLoiadt0h0MaQubuGksMxUMFO5xjl7zQ8vy6c4vg0Q9phZ\npqFV2cPod8S1vB+k845ddLR7VTXX3KhCI/hBYs4VjPgP5/irrmSHmfs57iOz\nxrSFfKba8d7Y5ozPllCf67ouhAhBhTeH4iutQLDFI9czXVnrisweb6/+PPOb\nVF8LZnPk+cfvjE8WJUgplnTL/KFvpFIc3CijFmpY85Rzi1+oCP6izrBlbdEc\nLbt1WuW9JWD25uXUwxeE7uSFTWGf25ay28r98zFEwH4NIa6CXQamJXU6/LiO\nYS+BqeoUmikP2TarPNzr0GoRmNg12HZ5YpX4yVNOZesKKeHdn+YcFrnTvA33\n2+5tMzdiICCsOVQXc+lIcIweMrN+NsAA1GEJmrfuqzSHZ3gYeLtvrvFn49zE\ne7yCO2zhaKJoUKjpaJDm4IDK8Qkk+dUMc0F46blLDKWDeWb4LS9CBTWrJ09n\noPK6G+jXvU1RoDmzM07Y1KMvIY/w0jTYTdswB3LLEPkQNCZqtsx4rTZQ+F/1\n+7TD\r\n=6TxI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b189e0be8deb45b4e94790f21c377c3884f551b7","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.ec4ac5234.0","@material/rtl":"12.0.0-canary.ec4ac5234.0","@material/base":"12.0.0-canary.ec4ac5234.0","@material/theme":"12.0.0-canary.ec4ac5234.0","@material/animation":"12.0.0-canary.ec4ac5234.0","@material/typography":"12.0.0-canary.ec4ac5234.0","@material/feature-targeting":"12.0.0-canary.ec4ac5234.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.ec4ac5234.0_1619510321371_0.20205586364730155","host":"s3://npm-registry-packages"}},"12.0.0-canary.b0579acdb.0":{"name":"@material/floating-label","version":"12.0.0-canary.b0579acdb.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.b0579acdb.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"997c1456d98d8a58528f846801ac238fe29eee16","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.b0579acdb.0.tgz","fileCount":34,"integrity":"sha512-Rgla8I59dD+iVBkG1LMWVAuTrPo6gmEVuF6wwdsvYaPoQLM4TlFKMdaptFdSQhr/s2V4JuQ67/vPB4765E3a4Q==","signatures":[{"sig":"MEUCIGZZEX1+yID61Ryp9mkQ100UufwHMOvNMNGr+bk5FO6QAiEAhs2E1XVMclJRBBUyJpdfL7MR4Zyx4VwRry3ysTXp2R0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232791,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgh80LCRA9TVsSAnZWagAAZT8QAJKuK+6iBGvlJs4MBAKC\nrtTYZoe1REubwquZks0CIyKPcswlxf1nlEqp7EhJZKHsrN1BqlshEclQSai6\nn8ZHFk4HM/HPs4PC0hvpj9Ta0JVoh8CFiTfZ5rbg8ojktBIlK9SLt9YCNJYw\nGxgBStAExd1GEMdQPGmYPQTous0JwOM3xdH7CkGSZ+FoQSoMfHVencVQXwvy\nHWFoQtEXfck/pxYdk0f/SrVyvBUFG/8vntSJfevseZAwTElbb/lbhmb6r4Um\n5OVjWqCP98G9bKMVn8GvmeNseh8zm+eZw8gE3m18+H63wFoTvLNJpXBOyRs3\nyRvS58Qfhl0KT3IkKkluawNUCVO3Jcj/FnUrDj6TuPf5KsRtGPItUeE79Czr\ntsujleRY09FFH3xcgfO3INS4Vh++jbJk2YxhFqZay+t4qx2zWEsWGo2uBIgQ\nEjGToAY1zPnIZtciHF5xu8h0gn2L2DHt8h0erJXtk5vV7D+tplpMtHWAYOxt\ntLilpYSo/h6Sv1jR/6CtoMMXQd/HEhCAR/zwSQ2fmOyZwQQEAM2L7Ty+Yevl\npGXJfN7aYTakc+79eXyhgKJlzkRPctC9+5+hOhInj9/EIQGUJUDy8IoGDJmj\n2RVJsimdL/9vzDQXBRB0spLTbOCHrJfFOKlLboYvrjPwiJOm+kgbL5CwLFEv\nvpFz\r\n=srrM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d1f704610766e7d0c46b8a40beb1848121809a41","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.b0579acdb.0","@material/rtl":"12.0.0-canary.b0579acdb.0","@material/base":"12.0.0-canary.b0579acdb.0","@material/theme":"12.0.0-canary.b0579acdb.0","@material/animation":"12.0.0-canary.b0579acdb.0","@material/typography":"12.0.0-canary.b0579acdb.0","@material/feature-targeting":"12.0.0-canary.b0579acdb.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.b0579acdb.0_1619512586504_0.13479082229375572","host":"s3://npm-registry-packages"}},"12.0.0-canary.81e2d4ff3.0":{"name":"@material/floating-label","version":"12.0.0-canary.81e2d4ff3.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.81e2d4ff3.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"05ae022ccc175e94bfd04953dc02cd1421607b52","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.81e2d4ff3.0.tgz","fileCount":34,"integrity":"sha512-NVfElZBOMXzTGwI72ej27r2uF/zsGTE/+MiY0+2c5At5y2mgLZklm7SyHWELc1mXv1gnx0v8lq/i3c6i5f/CPQ==","signatures":[{"sig":"MEUCIAG5fpgi09Kc4pDgK7YxLdNJ4Evwq2NHP3AI+r+tIPMdAiEAm3eR7YGTdCi0GYo3OMREOHCmN8vW0b8XnBV0VkAn+Ok=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232791,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgiHrMCRA9TVsSAnZWagAAVf4P/jUwK9MO4Spi7kK5cv3u\n9zuNI8XOcz5eZWQdfAGLB3DNoPcmjFYi3w5V4klb/MLoLixnWo+6Aq1ne+US\ndiOdjjOPnsFaHDVJKTVUN2GpbUbA5sGRqSKg3RfZYdwO6A0QAdmLUDbOKgdA\ntIfvNzaWfhvHp6pgkPBBisTZLoRGco2m4POSvxDclzBymmJe1Je6heov1uWm\nMUTSlz4CGerTDZl27s2vVHxpHt8Wj1I2mJ2hWGCfL5ykdz1/eH4DvVoi6PQE\nDtoVr97dddEl8zChAMcFdxyDf2Yru14JHspw1nQjIoQeRP3EAB64QjV0P39J\nVlJBo5MRYQrZl6h8xv46PSga8iDZmXWvVX2JEg27J3zGxMtNBA3UTFk5cFt+\nTDf6I8taSzbHi9JnMtFUYmUis+CmI3rLC2L8Exz5GFcNYlWX132zTNILb8sI\nv0P/Iprn2dhWux14gDrAn+mDmv88i/HJsNnxM6PFJF9P4Y78NANKkkWuWsJ9\nue11X2JEWz65kv8XWB99R6rOZCCUgb5/5K0wky5ttufNQ7nc3RFKJxot5PuO\nA+Wk9z6QXzQFsxxjjJK2/rIS4Jkvpu2iBfJL9E/SbFD51MHLosXtP2cGIkgE\nsWP5Chg9OSHpI1lYZQRXwhRxoXCGA2gtdgjIS/cNbyRuXtL8lk/RUb9mgwh+\ng7/9\r\n=oN08\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f55512ab74610e3f3cd0db70822ad9b52b9cfefa","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.81e2d4ff3.0","@material/rtl":"12.0.0-canary.81e2d4ff3.0","@material/base":"12.0.0-canary.81e2d4ff3.0","@material/theme":"12.0.0-canary.81e2d4ff3.0","@material/animation":"12.0.0-canary.81e2d4ff3.0","@material/typography":"12.0.0-canary.81e2d4ff3.0","@material/feature-targeting":"12.0.0-canary.81e2d4ff3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.81e2d4ff3.0_1619557068036_0.5142731553859761","host":"s3://npm-registry-packages"}},"12.0.0-canary.c8edee52c.0":{"name":"@material/floating-label","version":"12.0.0-canary.c8edee52c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.c8edee52c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d96df36156816acb6626a9800fa2a518b84399d4","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.c8edee52c.0.tgz","fileCount":34,"integrity":"sha512-hnr92YvVugtDH/bNvNResrbEXZaH8bFx9dYSvz3juy+qVj1jAbAZnMAh6vcxN7cTXlBi00/WUiQp2ceNeripew==","signatures":[{"sig":"MEUCIEQLYIkwi4cXRoaCESyqfhvwPYrDqF/JQMs84CApRU2AAiEA1EjCyT41pJZy5qRqVW5E/KYrRyaqKYAExFROABdiyHY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":232791,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgiIYoCRA9TVsSAnZWagAA9nIP/2NGyzUw5KHi3lYbPd3I\nlWM8n73opQ+QaMDLaX20VvPlpIRO2Wpn4kw84H24mdB/CWYvUAWp5Py/a5AY\nSmFvyNe/pCbbeiTZ/qsDxmIQZK87sK8eSLRJ+FLPSEyAIjScHNQ8D2RuKJbX\n839eY/VTxFsVxtqxiKMF61SjyhYTFQpHmdfYIo/yWJmTeWMw+v/UzA4H6Fum\nH7SS8B2vQewQI7T0SeQ3fmtKplD+MU31vJ2PVIEzK2/fRwwHtjQtmaZD5oW5\nk979NsdfXK6f7+w6vi6b11L2r50LipnItmLXZKJKNFeMruiCbwU8uaXhvCU3\nB8NjvWZg8CfVH+OIQHYEM/3MB9wXw6GU50ykCDCci+1h5bUZrCE9OqqXXZe+\nb12Hnd6FonH6XXGCeGej2tQf83v7XxV42zEnh7fij8v2CxAP+8rIWfOEAy0/\nZFhyXH3t4hhqhulvrCSZFTFLMFXA2qyJHq8wbYkV65Ku0HEFQ1OkGaP526jZ\nWx9qy3JA1bTzl3q/KfNRd03lQoU+psbJzY6rAfQD0L5od9Q5SeOZPi4YOIZ/\nxmVUCULT09/EziDZDE0gB3nqZJ3tCOMNWCXcuTIdEobrfA7XpLJJ5HF0TeSx\nowlcRP2Fe8Kr8EJRUPXRVi2Tuv97zKmjg07r19XQ9SJKqYyVXVcA5t1tD7ua\ndx32\r\n=Pxc9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e8c7902721c81225e1c8b750094cbe6ac4666a0a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.c8edee52c.0","@material/rtl":"12.0.0-canary.c8edee52c.0","@material/base":"12.0.0-canary.c8edee52c.0","@material/theme":"12.0.0-canary.c8edee52c.0","@material/animation":"12.0.0-canary.c8edee52c.0","@material/typography":"12.0.0-canary.c8edee52c.0","@material/feature-targeting":"12.0.0-canary.c8edee52c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.c8edee52c.0_1619559976047_0.8600910111353117","host":"s3://npm-registry-packages"}},"12.0.0-canary.f5b6110d6.0":{"name":"@material/floating-label","version":"12.0.0-canary.f5b6110d6.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.f5b6110d6.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"bf8fa3997d487b99612f650ff5add4851c35f942","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.f5b6110d6.0.tgz","fileCount":34,"integrity":"sha512-ZsYrqyaow3LfiCa02mkfo/15iZ/ImngbFDO3HvamFAn86IxCQSDOGU5SaV/nlirZBt9mLat3ZJre3cPVjeSYhQ==","signatures":[{"sig":"MEYCIQDaicipNMx/5sMqzYP/Qtx7adQT10taZqIjo0xpT2/fzgIhAJI+EAPdlA1X4HjYnnCTd8LaU2OcDzAWmOJw/ibARS9k","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233250,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgiIsoCRA9TVsSAnZWagAAFUcP/3jLm6Ei/CXZkO4TTUZV\nr20HvC1ieTHzTNnyTQGRKArwxyNNRDTvqKF72rP9/DaA+QvZP7m6+xVoYJLV\n8cRNxYP2v5xf9mHzmSUeDtxGnMJQLJRiZQRg9YBZPpDzS4Kljaq8tBMHdWB4\nAeLMd9NPJX5+2GlR58+nVytTCoM3lrzlLwzAx9/UTU8tZVPByz4AFyPdopfK\n09atlAtoeuQH5o8qlzv0R0DjAYMk+DuiUpl2O9ZIEemp8bdJ1sK/QMXpetgg\nJ13ta2D2wqbhRnYC7S3YHZKB342GJ1DvKb8TVVRgVU4hy+rwYVYWxBB6Asqa\nUOobCUjEYZGRyFNOKpS2BMuhPROLas8Bt4SFkVS48NiIfD/V8axSU9Hbw1pV\ngCRtDwSjlf1kms4Ev11rK3bDEoE7gcS6/38yRNF2wXI4fJa+7HMEsrNZ4ykY\nb4+HSBWbOCzCD/5USwg+JHtSPr8T5fkgqWDwaaA6gswUwWdzBMSS35Q7R1R8\njnDM/m3McVS7D2StSiXETfY0jla0b6ytER9OG64ccosDYL3RGRDycXDq5oKL\nitL+nlvlbuh8OKVe4+7UBw+hfL9iu/UQsjAnUOLsqnccQRYFFU95h/Bo2XuG\nMlk7mW3mWTa3ZYMI3RhufKYLaTQ2NcMWINmyFb+ACsp/sinEf8fh3XKnqy8o\nqyGF\r\n=FsTT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c7be6486c9ad6826105a70187add5afee2a6b50a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.f5b6110d6.0","@material/rtl":"12.0.0-canary.f5b6110d6.0","@material/base":"12.0.0-canary.f5b6110d6.0","@material/theme":"12.0.0-canary.f5b6110d6.0","@material/animation":"12.0.0-canary.f5b6110d6.0","@material/typography":"12.0.0-canary.f5b6110d6.0","@material/feature-targeting":"12.0.0-canary.f5b6110d6.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.f5b6110d6.0_1619561256246_0.9636265498881802","host":"s3://npm-registry-packages"}},"12.0.0-canary.cee9b9e22.0":{"name":"@material/floating-label","version":"12.0.0-canary.cee9b9e22.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.cee9b9e22.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f9071dcb010c482ad8c44fcda8d9148b4bcb5f17","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.cee9b9e22.0.tgz","fileCount":34,"integrity":"sha512-EAFXWDbX2LC9d+/gVwn5TYTDkQfkPItM1H8+AzvKk+1rybjr5Qx/kQJ1zTAkE1Ulk9Wrp1MIkw01XMs8vzU3EQ==","signatures":[{"sig":"MEUCIC8rvSc5Bsek6WAwGlpbySPwtd6KrzFPvVu+hvdY7FFlAiEAyWmBGCgmNLNvzPs+e0Zny1YU38Yhv+xnd98XNbS3cKU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233250,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgiKiLCRA9TVsSAnZWagAAUi0P/12YmSG/QT0/84xUEGaP\nI1zmhFSjayb8dMHg+GARrbuB0ocAhRAAf0aKAj62URwaH2E26BSf0feSokMS\njviHlvTbYp+TGtcbTesYFijENSupOJXaefO/v2XUdQwybACPzqBfr15dVTqA\nCLQRxXzAeLdROWe+4p0WtLWHNL7dcVmH7cORy8hn+cYQeNce8p/hDYoml87U\nXtbo7PODeVrQIpwexa+2U3nnUyADmFXr4uwZYDgjdbRpt6nte17anOXNYmLw\nKFHMQvsGgOyTS8V1Z7G32h0OA9SHYmyVW/gTyw9NHF4yglYgpwz05/dRcWch\n8zaljC70ebCaQyOQNLyob4LUvBGOezCjQaEqqHW4X4FczAVkP9Co2j4dpmH/\nyfULd8LN3thAZIdZkFD8BkXJivAJMoWWuTueBmrhzDPxqnQEbsJpZOhfKRO7\n1lWfGgHj0UV1qCAIlTM4+wqZIFFGmoFjLI16ch1mWKcC8EkF/7AeJ1Osi5Dl\nvLUsAxhTbuEZ3bPvqNSxpU0VzAU/VtBkaQy1fvgRJMPq46QXPofRf5f61bgv\nkb1+cbSEUjEew6p/Hd1SvfHSV4cnCTOSw8UJq8XChk4TAP7hkEUPDMf8mtyW\nzD16xQSOsX/s7pZx2NYPZSE2uH9dm/sj2r/mB/VEs46dOySd3q853QBMCBIq\n1hW0\r\n=0imq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b0c779970f0809be4565910c1abadeed4dab0377","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.cee9b9e22.0","@material/rtl":"12.0.0-canary.cee9b9e22.0","@material/base":"12.0.0-canary.cee9b9e22.0","@material/theme":"12.0.0-canary.cee9b9e22.0","@material/animation":"12.0.0-canary.cee9b9e22.0","@material/typography":"12.0.0-canary.cee9b9e22.0","@material/feature-targeting":"12.0.0-canary.cee9b9e22.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.cee9b9e22.0_1619568779424_0.7915481813880632","host":"s3://npm-registry-packages"}},"12.0.0-canary.96e83fca7.0":{"name":"@material/floating-label","version":"12.0.0-canary.96e83fca7.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.96e83fca7.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"276df05e9f04fb6f6cdbfcba90ceb15300e11420","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.96e83fca7.0.tgz","fileCount":34,"integrity":"sha512-l9rbExyBka9JRYZiANzCmbRp6LPu7VFhhM3QX48tV2xA4fbLBT212CFBT/fIF4eyhlfeRCPaRuw6NcGP40iJmA==","signatures":[{"sig":"MEUCIDcqIxnV6IJCl6RKbUfIXX37jWdNBwuLhubMtNPQiwi0AiEAxu0SwfBN7Aj39GII17CVd252EaQljjShsRQZ7gj0cLI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233250,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgiMzfCRA9TVsSAnZWagAAD2AP/1cNIw9mFrQKWSt92lTF\nSRoo0Dc3zlPahAQj93FMTGfAw0STyCYjULTMRNA6mFabkTdwE+bw11VJqsFn\nC9WBYzX1I+sGT7yXuS4ccbxvv8xd4b01Zuq1bntu+zUThZjNE1nYcJcTrwWv\n8S5AW2keDYsIlAGRz/yiY/uuHv773edshaPxUuKQGK/8VvwF4yu7kg7sPZjv\nG6AGAjMF3eINOpKvx8KNclVDynpw+Np42Zlv4J316ZI+TyCuLlT5gYKyNLM8\nR3zDnMCQ6gHy4t7Nz1Qlza6ToWhgymz10fV/4foKgVozo9SCwki5v5qg4YIJ\noRklbu86t/9vShssQI8mZTfkwt+V3QaDXPWM77mgtsDWRJDyjkYKTdcPlrgE\n7kf8RJ9w4FPnYtvTWCcdFb4SEe9lcyTglUkWCXonhroIn//1IC/gdcRR0GxR\nFhBX32pJSsJOrk2/cDj6EIYumso1JC7d+IkDBRk187Ms3eYcS6g1YE2I/6HR\ndf3UlYTm5AFK9yHmoecA3U8iMpoIhb2ZRsnU3Wl8mvyDJ2ERHXfvVmVHIm1a\nYqMayxSkDCk5ULxqAgO0G/PIQOs3CjkNePjiZ1z7tgCxqgp4zatj0PbR3B84\nSdeKPuDhuqPJ9fvMxWwG3308KHaawIimcb5bpaww6M8ts1iATdWmHkPf0DBF\n5z6Z\r\n=AsLC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"377f0025088676d544c1393884e5f27e96143f16","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.96e83fca7.0","@material/rtl":"12.0.0-canary.96e83fca7.0","@material/base":"12.0.0-canary.96e83fca7.0","@material/theme":"12.0.0-canary.96e83fca7.0","@material/animation":"12.0.0-canary.96e83fca7.0","@material/typography":"12.0.0-canary.96e83fca7.0","@material/feature-targeting":"12.0.0-canary.96e83fca7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.96e83fca7.0_1619578079276_0.009664799829808723","host":"s3://npm-registry-packages"}},"12.0.0-canary.4c497bd19.0":{"name":"@material/floating-label","version":"12.0.0-canary.4c497bd19.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.4c497bd19.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2e63759173bc4c2e023339980b4ab14466f8e800","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.4c497bd19.0.tgz","fileCount":34,"integrity":"sha512-tOswptOLT4KgsmDp/HCMpFbtMzHbyDcG9c9ERsXlCoU59oaPOLcHZ+1lMtgItZyWz5M8wEn85YVTl6rsAMmBOQ==","signatures":[{"sig":"MEUCIAYxmD75AgLaNj7PZ4HDf/Dyamz6DzvRwSeckietCeHaAiEAisDp3DRvOKaDUxEAxv6oM7TFOCyKfCP9a2hQH74pGCc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233250,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgiaEmCRA9TVsSAnZWagAAfuYP/25kiaNt3sU1ukrBoWx3\nPbnQM5lsT8I1u/vMGgRHRLky02hCOdFdYnEbVhpUPLwlqg5VTe85PxmmO1JV\nzFKGxfAA7WhDluXwMJ0kp1gZlFNfJTKdFcs0OrMFT745sYZQ3Tp14Qrkomxf\nYzxrQbifsbR6yyFM+i7MA7HxR30m8Vl5Js7borhNzgqnP3U6/fV9JnUlPu7/\n5QWPuZqDZWh1r4MTy2LumiUoDPSrKGMcBn6bRtfs84+mNUgW6pBunvpsYSQg\nqNd6xtH+OXCdFqdRHoNfBO7Gkv2acIffg6L4Q979K44xCJYPl6EnZmF5xdRW\neI18770eaPDKomc8cBTFkQ/rCaXVhJprqfSLM+7fb1muzOQBKtzMYjdGtJE2\nMPUIOQBqohNhX6Xr61MwTZrmj3Ydl4zqaWIm9CgnFIfm6Ih4NlhncT+p0Bp4\nb59wVUructGcFVDfpyWyM8r6ztZAq1x+9Wd0ZoxY3cBbOZkb507K7h7bR9Wf\nJmSVM0a3T3FXR8z+emkq5wvvclrJgXbJ8UD5Ih94uOviPtVSP6Di9kc6BEk1\nz2e45VSjFt7fFF6fmTMpQmyROwgXdOOrwovFEAFe+kodA2DiAKpRS5WgcW9D\nGoXw7zM8e51XSgDovBhWjm+oJIRjKNQh6V30xfPdfkGJVRdViHaJ5cOp0JQp\njSQT\r\n=bgSO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"beb4a14c8f43815a21024c26a96e3c53851a9b41","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.4c497bd19.0","@material/rtl":"12.0.0-canary.4c497bd19.0","@material/base":"12.0.0-canary.4c497bd19.0","@material/theme":"12.0.0-canary.4c497bd19.0","@material/animation":"12.0.0-canary.4c497bd19.0","@material/typography":"12.0.0-canary.4c497bd19.0","@material/feature-targeting":"12.0.0-canary.4c497bd19.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.4c497bd19.0_1619632422367_0.3069040122495732","host":"s3://npm-registry-packages"}},"12.0.0-canary.105b15b96.0":{"name":"@material/floating-label","version":"12.0.0-canary.105b15b96.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.105b15b96.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"63a707c65c7d6b678f282fbbd4829ab2a8d81d88","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.105b15b96.0.tgz","fileCount":34,"integrity":"sha512-jR+TFqenMN7GYjGLfPKmOyG/SyXUG3jNINF8dmzFg2c9PXBC8TeGWt2AeKMjv6DUDu1WB1uQ+pLGQ/F8/mxwhQ==","signatures":[{"sig":"MEUCIA040bcVVgj/yWmMk6PVeP9KVNnHf+7z85v8NuEI42vWAiEAxXXa/hVuo1hLI5E8LktMN3YhvuXeRsgwXp1RwAS7kJ0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233250,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgiddVCRA9TVsSAnZWagAAKm8P/RSNd7++6bP4JpAUke8z\n+LHlZeEaKbvvVqHyzS53epslLS39ZDC4eoDKyT8AVwFfO2C41pnHr92roFub\n2qzT9djwaD74UTPlFTjwCiidCR9XlThMk6ODVRwVBvQGSoHy8wLO5mJEjL6T\nXZsHShzE8AqPKGbCcMaUWSBHJGQrCxPLBzVDK0xuBgmxmj0VbdRazCfYqzvR\nUEi50dPGo6pZ//6PS9FC8KMb7p0C+8PS/Xo/CJ0/3xrzrXed5vugEm1oZGzM\nfUe054NZFm/guuPYsi2OKWt15hBv6d54HCpcnS8iDiiXrLtQOA4O8GOZcHqe\nw+pNBbsV4GI/FF0iaxMuC6JYet5v8+QZ8+KkScdsQCYv/TEkL7YKX61i36QT\nud0zzlObBtzQypl57etbjaPFXj12XoiuIXvkZixRfQn2e72a6NJDfau9e9K9\ny99YxA/I/sF/q1iCtXN+pUXfqfwBZ1TW03DouZ1xSQP1rBGqdwCwxVPKgooT\n57Uokytf6A+i2sP1vzG0+o3+aDJ+g8621JWqDxAcP4NWtMHNSAlr8KyYs6GJ\n6oernULD2XoJMLbquNyU5CzmZlcN3xCnUo2DaIOnQ6OlEHMfL3a4wHDblBqq\nXDEmZiQIQ+BEebDYdOy7ouKTTPLRRypB09g9iqJNWSFjh90nxgZ5Ig9IgwpK\nMeFn\r\n=/50n\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"762e9351a26c1968c772104d6d64f7874c81528b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.105b15b96.0","@material/rtl":"12.0.0-canary.105b15b96.0","@material/base":"12.0.0-canary.105b15b96.0","@material/theme":"12.0.0-canary.105b15b96.0","@material/animation":"12.0.0-canary.105b15b96.0","@material/typography":"12.0.0-canary.105b15b96.0","@material/feature-targeting":"12.0.0-canary.105b15b96.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.105b15b96.0_1619646292858_0.28821310655467136","host":"s3://npm-registry-packages"}},"12.0.0-canary.6e20259e3.0":{"name":"@material/floating-label","version":"12.0.0-canary.6e20259e3.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.6e20259e3.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"aeb04e7a7ebf83936e8e711f65517a383b37254c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.6e20259e3.0.tgz","fileCount":34,"integrity":"sha512-gfrDKuyZkPe7DCt2N9az0ZULy5aIVfAA6f6//iowTXCwheqty78GBNTwSxarelqQdU1xavQsxF5y2TmCTtN23g==","signatures":[{"sig":"MEUCIQCG6DFiHJZgt5CUnoO0jYbpq1gWlbidnYQ86zonnbE5ggIgYMt39x8m1nAmNP8ZjKx6pZbPY6OQBvQv7OpCQGB6L9c=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233250,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgidhhCRA9TVsSAnZWagAAAc4P/3c27FnVSmGGafWy4z5Y\nrG3Gz7sJHAwudvYDXD6qjewmYIuDVIo56jeRLPVPUX+QzLh+6B5JpgO/IXgE\nofEC+T/4uWQeoWhR5QP4WTKiW4b2hFvU3CXW+q8l3wmOBzGYn7HIeUB71AU6\nYE7vWdctrCTuLnhiufwcEZf3R4UzbR9tNWapLMql3HCmshim8I9woM4tHaPU\nZQ5fKjdQC8GjuaW1reZPeTewksZ3k3MMWQ7tKbw5rHu2fyL2za72a0rKf79A\nZ5Wb2Hm4VZb6O3mWY3xCwytBb8/gU3E0420P4Ip7eoIDk4NfFMAdCiVVv8R0\nT5aJHBzLhh6yC+uIFFlMCbVHItFt7z1glp0ApYKb/UT4c5czv/VcWcM7tAFn\nqmKozcjJ3N/Zqh5+c6j3TzelZyay57L0yIOeJiqIkUrCX5rWI5kw45NKYIIG\nhdIqktuv4/Y2RxybgHUEZ++q7WU4z6ol/V5ZlF4Dgd85MTZ5Fy5da7v3O4K8\n6s//bCzxBuPZLV9hcceO6TLEYGmWWm2bvKqQD5VS8Y7Gxv+puTsLHPuG4j+P\nkTrvl451U2xU1LCkv086WotAI8N7PpjDIDN3QIeO6UQc+sNFZAz9oI0jb5F/\nSJakMrX6R3K0uSXcwp7lVw2eaAIgQ5Zn/Bn8OVjEMv9FG4GeKH6tgiVPb3oj\nSTL7\r\n=8PUO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8e07864b42f463f977fbd0f9264b8930da72711f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.6e20259e3.0","@material/rtl":"12.0.0-canary.6e20259e3.0","@material/base":"12.0.0-canary.6e20259e3.0","@material/theme":"12.0.0-canary.6e20259e3.0","@material/animation":"12.0.0-canary.6e20259e3.0","@material/typography":"12.0.0-canary.6e20259e3.0","@material/feature-targeting":"12.0.0-canary.6e20259e3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.6e20259e3.0_1619646560709_0.8900909682217639","host":"s3://npm-registry-packages"}},"12.0.0-canary.0f79a5d74.0":{"name":"@material/floating-label","version":"12.0.0-canary.0f79a5d74.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.0f79a5d74.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5c87018fa7e15b46561bdb9c81799ad63e5f757c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.0f79a5d74.0.tgz","fileCount":34,"integrity":"sha512-30Wk8RxQjRPQJ9iIVqEpjqGMumQ9r2rKBANu8pgFFVdxC3aHiWyzBHnzuSVceuGUr+TrUmBk7jwhVPZbJWKgOQ==","signatures":[{"sig":"MEUCIQDX6AM97wT+zAr4peaeaagKVJx6nn7FECbnUZwYGUK+pgIgVUitvhokntyz+gi0Op3xLFAqupARHrPGo85uH09cvBE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233250,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgieT9CRA9TVsSAnZWagAAPYoQAILWu3aWudYQJNDmWDBn\n0FVdm6TC6dl1Z+/GYCOvJs2R+1LnHj2aRI0W/II80UJKaKFJERJpXpmYQqlq\nDQe5Pr7iELQiX7cIBbxCW8+MZO/ZcM71bcpKdKcSpyi2G9vbk28K/I9EDmMp\nk6eR6fBjg26zcXOPTIFM1aWYl9lEowV53JwGe8HlVIMtha3X9lexR6UcTZWa\nPcJTu28PTgFwIEh0CD58aAnDv7c8O65ALAE87+Kp6TuvLsgsxwE5z3q0+ocW\nBWN/FjQtoo4pUF+C8DF67uDUhPSu8rI0OJJDEjZgdI3koy7b9/HVZ0iX9Qhu\nYIA08jnAeBEg0TpG1+KDsyN99RgQ5yYvLTk7AdRZJ2Qd378oU4J8FpxiEhdt\nd0m4CVW7YHcgQIN/dsZ7WoFfp1DcNFO3NvzK0o1UqqmvejoJn+cfscic0S07\nosR1TP/OQGMSEnuLg2w7mzU61J/TVadPAoF0CmDLoiRr+n4Ll38tNvroNlIQ\nvTj244uUrQWcvyHW3ezVSAtUt5zUyGBjLyMqXFH+04JQjP/1/vok5QNx0qW8\nnTMa8ECljMbNk129EPaZBSTzc7BpD10tPaWVAaqq1mMEetn0bWfjlQlJTghF\nwKwkrdOgMb8CsrI/ffEuVOWJBja+WB5E5n7dtnX1TI5uKVROQ7VCEWabWd5I\nVRKu\r\n=E2sc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2fcb990c07fcc62dc025eb258f87a8f04f08fee5","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.0f79a5d74.0","@material/rtl":"12.0.0-canary.0f79a5d74.0","@material/base":"12.0.0-canary.0f79a5d74.0","@material/theme":"12.0.0-canary.0f79a5d74.0","@material/animation":"12.0.0-canary.0f79a5d74.0","@material/typography":"12.0.0-canary.0f79a5d74.0","@material/feature-targeting":"12.0.0-canary.0f79a5d74.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.0f79a5d74.0_1619649789233_0.33793001579597126","host":"s3://npm-registry-packages"}},"12.0.0-canary.84f3db9ed.0":{"name":"@material/floating-label","version":"12.0.0-canary.84f3db9ed.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.84f3db9ed.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ca8a0f92c9d9f2a127a009dfd78b442bf2634e86","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.84f3db9ed.0.tgz","fileCount":34,"integrity":"sha512-7K4I2sk5/dbt6QgPHVeG3Too+0WimTZ185YRkcAHn40fAih05PKphipasdXekDZsaaGhErPhbKATBFkNZ+cdGg==","signatures":[{"sig":"MEQCIHAikNgHo58GOV19Qa26nZPsYr7ZqmdDmWNMHMbKrSlKAiB33Tdi9zMVjxFVcXVjHtJ5R9C7549okbIoQAbzzlssCw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233250,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgisAeCRA9TVsSAnZWagAA7B0P/2IvphLU46XppuSwB+SV\nxwH9IBxxCbBsZCZmIEGsWYoutneMPcPM8fgk7+IrC4RWd860qRW7+XWtauVa\n72WNQTGAbhseqFQD48+8NwQxG0sdulBzIUa1xSunSznk2845YYQsYXeN4oNV\nGrhgXKDba77cojA0vS7qPcz1yvKEgVOlQDIeJgdsw37SRtDl5Tv5Cs8nplcO\nyGfTTfSyF+YvX8W27c2gm62LXhMIIkHwZBEj5Zxkj8XsUbnmL7CL2GljpZSq\nJ/PO8oPGlNBt+wXZjYsrDz4IE1rFLVxL74uBNyJ3dzvyFdoeD1U7yjptToZP\neD8KVO19yTNYU+BNfxA2jrhhVUtC+oiJnYEcPstw6Cp/RrTArXfGk1PytvtN\nTqPOnZuMBXIMDcO90ttomGA3MHozbut+mzd7TA/x5MF9Ak0c/7J7fG520f6H\ns0ZET5plW2eyc0IbZVB/a5KNxLwuBWEiSJ+mBQ1F3HAGi78mG8OmsWIcg42C\nex2fG354gxB6Jzj8nFT6mYyJWk3MgOwUAkGCrxOtCsp9Zhik+Ql3Wy90OHdg\nMAMMF7NWqQ8px5uk+Jj5P1I1Mu6pse248ilNSNTeUBvycwkV9pZo4SkiJkti\neswThZf62/KdM9WXkyVToknVjojOSbnRBjeRRSga7G1qeM5ivUBBRdZhewLn\nq9Gc\r\n=+bi5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7c4b7e41edc7737412479194451432cfd33839b4","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.84f3db9ed.0","@material/rtl":"12.0.0-canary.84f3db9ed.0","@material/base":"12.0.0-canary.84f3db9ed.0","@material/theme":"12.0.0-canary.84f3db9ed.0","@material/animation":"12.0.0-canary.84f3db9ed.0","@material/typography":"12.0.0-canary.84f3db9ed.0","@material/feature-targeting":"12.0.0-canary.84f3db9ed.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.84f3db9ed.0_1619705885514_0.6049630749967911","host":"s3://npm-registry-packages"}},"12.0.0-canary.8fc29273c.0":{"name":"@material/floating-label","version":"12.0.0-canary.8fc29273c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.8fc29273c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c2ee7cb2e6ce3adb96bb38574b90a1b14b437022","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.8fc29273c.0.tgz","fileCount":34,"integrity":"sha512-UqVdvP5Gich5Wawnp0oCU1qX3wc32IDLxSpY8E///webUco0OPYzha+EfrPasXHVasgGeri4q7/gUIokkPHOQQ==","signatures":[{"sig":"MEYCIQDhCMr05DIWfi8CWpIdl/je8i6ick/6rF4HKbU5iO8tqwIhANd2luHZlAOXWe89SJxf0X3TUPSBelENqTHHJEPUuG8Y","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233250,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgiyPoCRA9TVsSAnZWagAAkw8P/1EeQXe67qaPuxZJnjo8\nrwYP16i6NAzx1lOBSPGdJNhLBApCQNhsPh+JS7cHtFGRzXzAb11q5XCledJt\nO4GBlggi2WaVDj0SN1TAKxhh/VHBZqESc/CoUJIm/3PI6QTPrr4eg+kI0Wez\nxZINa8Kluj0IzhfgskikDrIjkuRLDb3B88gaLaWVpCL5UEZwJsQbQwHL8+5r\nAOvc+uwKIjNWzvs7Ki146c/b4hk2Ij1Kk7wuYY6UxJyD/f1o2w1xD7paHbJc\nJjGF4ZOYSaTKpUIpxsoRYmBm2YM+0PB8AiQSjWaoTEJBGRQVAFiG2KXa5V4m\n4hyjXAZpIPInyIMSa6i8zjO6E0FVHE3VG7ab4HIjCw6SBRr5IKGkYbec4vkD\nohXQkFJ/QT8urUtobZ7Ot00YI2qS2+HNq6gXDLrJPmZ/9XmrXEe9CL0kaA6m\nKr38Zx8oq8vNpnBQSJdAaC60FGIW1/i8+BimzQVURC8D8GQWPxUsgMwtGaBX\n5ioG+blTp4Lz7mh7bbQONXxI+c720T3SbQzIZZhfxdn/rY/74J1+ut4Dt/Yb\nh+HK5/0n3F9HdQK5atQ1RAO9gSAcri6ioo4iW3ZM0KqU+BXBLuLKkAvJ9XEf\nce2hAtCUK8uhJjTCQRiU0E0z2AO/3NQFHrhNj1jxhAHL9Mf5Wjp2MzOOQLy1\nlONV\r\n=o/vK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"fd877c3e50788fb95663fb8213bcd66f347cdd0e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.8fc29273c.0","@material/rtl":"12.0.0-canary.8fc29273c.0","@material/base":"12.0.0-canary.8fc29273c.0","@material/theme":"12.0.0-canary.8fc29273c.0","@material/animation":"12.0.0-canary.8fc29273c.0","@material/typography":"12.0.0-canary.8fc29273c.0","@material/feature-targeting":"12.0.0-canary.8fc29273c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.8fc29273c.0_1619731432237_0.43233857565917844","host":"s3://npm-registry-packages"}},"12.0.0-canary.c50d20bab.0":{"name":"@material/floating-label","version":"12.0.0-canary.c50d20bab.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.c50d20bab.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ec0feada1734785ad9bf1e75ebff47ffe42ba381","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.c50d20bab.0.tgz","fileCount":34,"integrity":"sha512-7hDQWOeSiJOn5Vxl3eK9m7kX6cV2GJrR/GuUbvpZIrCcpJnhM1ROLVPmWxiuqTVcPayl7nccVz2Z/ROLwerrHg==","signatures":[{"sig":"MEQCIHB0GqdU3t30koOK1TwjFVk1GF9ciomJb2tXbBJLDvUmAiB2nUfQQ1gN6EeJIBIR40HJA0LuqQgneSLBKgmwKFfQzA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233709,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgizrwCRA9TVsSAnZWagAAko4P/3V9cTUXNB5GxBsaC3OZ\nt+c8hCGsMh9Re2t9Zcr87juLmvyCT9xgZZX2cTcttM03NxX00ntGrzw9L+eK\nRhtgHkDklFwLzFg/7/cPBBf3pwwMPxZh2FNEeMx/zrzKB0X1DC05qU0OEN8f\nJ5alEXBHVeh1aWANLCAN+ATYy51Q0ayVAfxLPyc2K7B/oUgL/67zoaXGe0jt\n0w1A8LpMzVSwgSXb/bLqRfMo15aOeTFzy6t/YrvXysgymsz8H1jhTsoGMolG\n8K6WsYoUN2aWVzz4uNefjl586enoHaqJqnO4ABcRvkFyQ2zEAPRb1Vh1uwxQ\njrQkwklTx/Np7Ml5oRV/Wt188LBBPzgtRl3DFRtnVLBZX41ZjFbV0AEaKUzY\n7GpwvXIHRkK3qZuNCJo1OrPp3mLBYcfik8AWhgY9lTvb9RGVQvLZMJckQJ8E\n3KAYBLYxbP/9hKl88A9WqOOWpFhrsy1CiYY3Z79nmIsXxnr1MDoCtdFUeqhu\nNMzMWbHkvriO6E3sbfyA77z/sE3r5ako5oUdZhqnEAu08dCDRT0+dxBofTyR\nkV6JaISI9+ZCK5W7Mv5dxYFn/WY/RTuFTXCVYUjZbFnyyNZ32znF2K1wPqxm\nZwsZaIwL2aaRLwKEAcC200DFY33kyukG7xw2Z3MXL01QDOQSEKstoBgvwn96\ntl/8\r\n=goVF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2aee1fe5eaed5267b0e67f1610c29dd399d323c1","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.c50d20bab.0","@material/rtl":"12.0.0-canary.c50d20bab.0","@material/base":"12.0.0-canary.c50d20bab.0","@material/theme":"12.0.0-canary.c50d20bab.0","@material/animation":"12.0.0-canary.c50d20bab.0","@material/typography":"12.0.0-canary.c50d20bab.0","@material/feature-targeting":"12.0.0-canary.c50d20bab.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.c50d20bab.0_1619737328243_0.9214786980529805","host":"s3://npm-registry-packages"}},"12.0.0-canary.474836ad0.0":{"name":"@material/floating-label","version":"12.0.0-canary.474836ad0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.474836ad0.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5afbf120d464fd224c74779680dd19c603fd7718","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.474836ad0.0.tgz","fileCount":34,"integrity":"sha512-ZMf2VYcGwG4Oe3H/gDZAvVVvwqjXDVLyGHes1yoXrj/OjGaBcizhfS4igWrDMlxegS9GwGvg2BipHz1uRDgTVA==","signatures":[{"sig":"MEQCIBFhV+kJ1bzjrtelVr4yvjnKzkF5ZxY7TRbG7DxGwfJzAiBbPvXecbqUBzuVwPFue8mskQDffx6+Wh9jlV3RArGkew==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233709,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjM0PCRA9TVsSAnZWagAAv1cQAJMPBYGC3Z3kFSdqvE4A\nQE3GAcRTYAWZ1XGw1lzmTpa76tNMzqHgJX9ZLqywJAlPldDRWyJiJkTC/K1q\nwm38V4hsxHzvpzqEt1Egb6bHrNcJks65k30tDUcz7POWW4QzzUl9KnIdTMqT\nDpVbecGsOcbj/CAftbVlOwovt8Y7N19yQItj9vsHPyEeb85EaBxogSD6BtVc\na50tCCgVWE6oIDLpdvtjCO8kcun+SLfhd1Ru3ea3ZpbFDamKXz6Hztznx3Uw\nZLur4tP5tBT3D1IpE9rtZcxXZnue7fuAwisZ0C05KxvdYIlw5NZbn/mNSm5b\nDO1l/Hi4d4+dH/4W0eOrjF+pzeV8uJq3tFP5Yo0oyWVAx8CRfLnkbjxmiWp+\nuhxUGfvy/6z0NLorGEqapAEIoU465ZAc+dcbYTLoQTatnIYlrdFGLoLCx5eK\nFph2vTf5F8AaGUHfs2Hz7QMBX9L947velcvvhMmg4l+q1zhUwKB+RWuuqYK5\niCLIbJJgGw21Y7oFTb5KHtLlRcthq3oDerrsyCaLFjc9Ok28YYVQOCXIr1sC\nnrY0OnovBDRArI4kz6Ulppr0lEuWclhwIQVNHCr4l6OrIY+vd238YC6bbEUk\nnyE6Zt2YqExVxvE4jjFeyfmvlaqr1e/tVSAPnZwJEkNsTdJoGfgJGGEToEhQ\n2gV4\r\n=W5Rq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c9a6db3013566afb165bda88b05607f2ee398718","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.474836ad0.0","@material/rtl":"12.0.0-canary.474836ad0.0","@material/base":"12.0.0-canary.474836ad0.0","@material/theme":"12.0.0-canary.474836ad0.0","@material/animation":"12.0.0-canary.474836ad0.0","@material/typography":"12.0.0-canary.474836ad0.0","@material/feature-targeting":"12.0.0-canary.474836ad0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.474836ad0.0_1619840270805_0.520920879988096","host":"s3://npm-registry-packages"}},"12.0.0-canary.f5ad92287.0":{"name":"@material/floating-label","version":"12.0.0-canary.f5ad92287.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.f5ad92287.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"dde224dd0e4bdd422951ce870520fc13c45316fb","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.f5ad92287.0.tgz","fileCount":34,"integrity":"sha512-TafIw2p706ygmdreh023lExOB0QOLt4eWFelED1ZP1wnWMfyOMgJLXAhoQ3QUuPJZm1bLSvNeZDDNiJkse6Y5Q==","signatures":[{"sig":"MEUCIFuDwiGLLk56EEOZ1wIScyq/+t8AEZTx1/fiuUtPYzsrAiEA8pxYEIuhKUH0xyMRJaCKiBLDKyQxxlcTrcVLRcXk8BY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233726,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkD9hCRA9TVsSAnZWagAAb4wQAIEtxgERIY/cPrtfOSqL\nuUk2IKJeAdUqDvbMLTgXrEzFn2MlPdFXSX4aAc4chSNWKWQ+MkTjiKnOl/hy\n5C5yzceMdfBRuMMQ4NvloxY2DfuouCDwdPaf2Tv8+ELnftiYsDfpvZuHqyAZ\nt6CE4HTG4WO54Hpg2uWBMxJ84hq7khomXOBIhYI8ge0TXXUx+SjC5DMt//aX\nR9fsCbiByT/mFhlOmTkG04yplSrpWgpQy0tzOLy+Htw2aanWI8JHzHajIbmz\nOcXCZ9M4oKzJXF9VdNzsEvKd0gDQ5qhoDFXeSsm2dSyMUiBpQ4A8laWVLG6p\nUbVyLTt9N3K30qyEg+P68i7Fr28QYuUGG8EMvXenCw4MAPezpEt/Cxn6l1Kq\nkG0wjzsNvqHgJNOP58yRPQC0h92PmD0MIf/2+Bgxrvrnqa8ZwdF+Sm9jTCq0\nf41hxU6u8lFiUYekZ38a7VvvDAYHsEvJT1fjSNidqLSrpGQ6aCXUVLanWnxL\n2CQwZBaaxgsAHoRwgOdbZ8Gu+CzU8xEojgviiB2Hc8nPvNg/Qw7C6OXQ0nFa\nuEdt4X5qH35dJjR8yKcyhvowcs0FvG2dmjgwT4ivRUsZP4zcR2IEvD32x9Mv\nZmls2V084TUI/t7CEOAf0aZh4Mwq7izg8ORhAf1Cw5xgX/ADKgVeuaWlwPGV\naZbi\r\n=3oxl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"493c206bef4cedd10981093c61731e1c1547227e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.f5ad92287.0","@material/rtl":"12.0.0-canary.f5ad92287.0","@material/base":"12.0.0-canary.f5ad92287.0","@material/theme":"12.0.0-canary.f5ad92287.0","@material/animation":"12.0.0-canary.f5ad92287.0","@material/typography":"12.0.0-canary.f5ad92287.0","@material/feature-targeting":"12.0.0-canary.f5ad92287.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.f5ad92287.0_1620066144606_0.02000262660257701","host":"s3://npm-registry-packages"}},"12.0.0-canary.af453daf8.0":{"name":"@material/floating-label","version":"12.0.0-canary.af453daf8.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.af453daf8.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2544d82bf84e1e536daac6315364153d5ee2660d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.af453daf8.0.tgz","fileCount":34,"integrity":"sha512-hYXY/TyzB7hxwOCcmDU0kHm/lpaj9SlXscuKJocMcqQxpMp3NUmOP2R/SgOSsk+xGziBptq/zVdJXrj7kZF7Fw==","signatures":[{"sig":"MEQCIBnfsg8LGp83OWCLTVXH6nk+M8Ko0WWlyp4eFiV2vEKDAiBkQm6QSXRcEvW1O1B14zDq7Ud8zT4VgZvmah5cVdQQSA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233726,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkEavCRA9TVsSAnZWagAAjvIP/0ENF3Hg/LfFa8cv4041\nOg7A01DCvxK8/MT6AMZfYQOQfGHEQu7h31RrwZUxYUdUmK+S/jTPHSdsLtjR\npdMZNYx/yVHNRfygYHrUVDHq6xuiKMtE31Fvqong9HrBOgOF/yZ5IoNtZYOQ\nyEh27T3QBUfaTq3vT8b4EieiGbOljlqVJfIG9cimXzzLwLalInQ2g/pi+7DO\nxuogcELpgRNgrGw7tMzCP464j+YzIKi0fOdossSb81ClBwTR/EUjnv4YCxUr\ne0WeifESblLq03nv4NpPiQCFYZQMB1q+Vrb1BTf+gZnZ7cwy5H2ZBsgoLkgj\n9H4Ie3h1zKU2+SWfn2Xb4/Ph3wg9eKvZVr9Mk50L2asELAxvGNg0XhVC5xin\nrJ3lTmbFdiM+3vU5vfHPhQXrgZtcDnoD4ETB0SaG9rlFpTJCS7daXpjRE1X6\nnIcYJwqHv/ukKMg0yJNiElzdc/pCE36v0fW+uC3vd2NjSVMYaY+8bdNG4xIV\nfkWI79MS+/4y7Y3q6ZHAfpMm0JNBgQvBu736vE8hAnTgy341jwz3NciTteGz\n6v+3vh7La78rTYItzPwsq29qI92Q2udepaUgtHXtAgG740jR5PaJf+FpZm19\nRsSy/6owmypFkvejsDqi4+TRoMEIhMrEivTtrv59oiUIxg05sq+gnTuN1LoR\nvSvU\r\n=aGnm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d55347cda19a4d9469eff68955185d9d5e235a16","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.af453daf8.0","@material/rtl":"12.0.0-canary.af453daf8.0","@material/base":"12.0.0-canary.af453daf8.0","@material/theme":"12.0.0-canary.af453daf8.0","@material/animation":"12.0.0-canary.af453daf8.0","@material/typography":"12.0.0-canary.af453daf8.0","@material/feature-targeting":"12.0.0-canary.af453daf8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.af453daf8.0_1620068014871_0.5210794535003094","host":"s3://npm-registry-packages"}},"12.0.0-canary.1f1918c24.0":{"name":"@material/floating-label","version":"12.0.0-canary.1f1918c24.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.1f1918c24.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"0908c77b40aada0bb9cbe8dc2a9ac319b2bb9845","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.1f1918c24.0.tgz","fileCount":34,"integrity":"sha512-X9L8oyvRH8CKpSoMqWZi3jnTAAdCm1RHcMcEm3F+0jCVFAh9SiFra3SFaMzDdHydYzI38n2pHJ7nhNQDgl6SuQ==","signatures":[{"sig":"MEUCIQCDJzM6rIZdCjGyYSijXatDiFWjd1+WoACuCMKnpAEChwIgGQdx0JiSsUVauzuUH9v1WZFT/DtKKo19QWmxS00kGBI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233726,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkE2BCRA9TVsSAnZWagAAXeAP/3ae4O46P0AG5dYDHonp\n0j8sQd2A9u/3mDvPPdvV7W7DWI//S7DnViRevdE3WZe/5KU1krMj/ONWMu1N\nLyLOfMnYwXJ9G/Pwcczr4NqRos9t2Jgn2nWrDedBil9sz831c+bkP1PhCyNe\nYaHbNh6YMhtBgWhVloi9RWB8cvdMF/60ewjvKnd0MNO/VHYeUnfQHdHbZOSx\neLOm42lGHU9lP2f3xagQQh9D2k4oWmCh2ox6D/T6cWCLAEmOM5CgAcl2jwqB\nOKJPP1WoT1o/isx9Kf8AFKCjM45Hum1IX3dhbTEwqwXPqpkABqDkqb7IpgvI\nLtYKbpXQ38klwF+h1J3AqBkdmGr8lUoNZeVvtdqnbIR36j80Ia4WhfPr2r0p\nPEQaRS6Oj6utubkrpDq0Tx8N2VTns3GKPgTCUzweUCUvGWdSVv8DcORglSBT\n16yI83qow19ISJXqmIGc55pNXqtJHZUjSkbzqcHieEARmr2QgoKf5lpH5gjT\nPgKYXPK/en62L5wHVdwAiB5fEJLm4dDuKNkx6bSx+c3RVlw/RofvrT+IqDJy\nRMFNQGEeo8dahA6Vk8FMKKrymvAhy1zFQPcJgEr0XHnnL/PNYAuvL2blTFKj\n/albykkWHWHRChuG0wZt21LndbkjwPBz7+CSmZl3gez5bz7JAnwkvaX8+jLC\nT/vm\r\n=aXJF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"cda2e786bcb73ac46385a1c6459a8ab7bd9ef6a9","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.1f1918c24.0","@material/rtl":"12.0.0-canary.1f1918c24.0","@material/base":"12.0.0-canary.1f1918c24.0","@material/theme":"12.0.0-canary.1f1918c24.0","@material/animation":"12.0.0-canary.1f1918c24.0","@material/typography":"12.0.0-canary.1f1918c24.0","@material/feature-targeting":"12.0.0-canary.1f1918c24.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.1f1918c24.0_1620069761436_0.35038403204029733","host":"s3://npm-registry-packages"}},"12.0.0-canary.33148231f.0":{"name":"@material/floating-label","version":"12.0.0-canary.33148231f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.33148231f.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1c5072a98b147f2fd27d8a68223c0dc9bb3cbe25","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.33148231f.0.tgz","fileCount":34,"integrity":"sha512-SIrapFUYkzU4ckTgIPyyF+W9EcsRPVAaTnpbaoBeatS8H0B/LqN/EXBF+BYN5YeSuwdn/bEHviLaI9lZS6ChXA==","signatures":[{"sig":"MEYCIQCdCpZkdRtzFoDBtCA+e9gUGWnG9OWXEbIuK5tgfsJwcwIhAN71N3wNR1TXIMBkCiu5u5sMgR8wIh88jtYX8rANZoha","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233726,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkFFRCRA9TVsSAnZWagAAJSIP/1IwmKJQkM3RKGeIaEEP\n9zSxtWg2Y6MadGHS5gasFm29ZdXqLvHMDFUKLg5ewV8M+kTjmKOAd5qEGPb3\n3e0daqMj02HmbCUPZ0noeNuLRoPI8wR1VN56uPZyFqeElgqQPwIwbTh8Ohdz\nKVqiWq/2k2MkJOQ0RLzFnMHbuFBKBnlyTirFvHwEgS4TXjYSjUnlI1DR8AJA\n+yJUsywFzu+n4BVpZsLliZu7pdyDrMBVeQmvtF0zRWUs2PhpJJRvIF9wEd6y\n0TZlNWmYHu24g6nk7/tkIVapJHgOg0L7lLOqoiECLxUcTQgzJY4PPacP/EY3\nZnYb7FcTovPsKgdq2NEGg0ORi2Y4lGpSvBDe8u/yRST0dMQjNRybosue99qx\nQlzxJrPB+OSZBCzKAPYSrrv6zebUMy6e1Q78IIsnMKji9I2JK3Qmus9V4ItA\nZHUNp9tlrTfywBV3gnlpwh7O4+b4hNWLXEUYRE7sGPZzTpvpbUoAe9r2LJfX\nuxWQqE984CQM1cGiO2dQzFL8MRdXk23cwq2/dObI/1PzbATkm2CEvS6Kg4jE\nr7Esm2lkgzfc9q/5nzFDrDXs4WtvXVaXTWlLLiUIaNFl1w8FigAQM6sLc+DF\nYgXl3UzzamElwKlQcUcy7TJOVur8VIijZ8otcFN90b8E89d2mm7bLp8rW6ga\nypFj\r\n=KVx9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"bb5a14b15a74fcef265050ad96f737d0acf36987","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.33148231f.0","@material/rtl":"12.0.0-canary.33148231f.0","@material/base":"12.0.0-canary.33148231f.0","@material/theme":"12.0.0-canary.33148231f.0","@material/animation":"12.0.0-canary.33148231f.0","@material/typography":"12.0.0-canary.33148231f.0","@material/feature-targeting":"12.0.0-canary.33148231f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.33148231f.0_1620070736585_0.9720174932093297","host":"s3://npm-registry-packages"}},"12.0.0-canary.06b76fa74.0":{"name":"@material/floating-label","version":"12.0.0-canary.06b76fa74.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.06b76fa74.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4a7f28e4398c76d01950c9278bd5b5688393e32d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.06b76fa74.0.tgz","fileCount":34,"integrity":"sha512-hPnnTiOFcvvSJj742Hiojxmp4TNr5OjGaTSobR0eL/aJFSJc/LFlb/CLP8y2hBUkM9W7O0f45OzpfVkQjQ4GDg==","signatures":[{"sig":"MEQCIFVgise80ds4Y6kiXrbXQJJNiBh/zrOG+G4b2LD3JKSbAiBbZue1Kv4TgOqw9ZssuP9KJLkgygKtKloNj21gdc52FA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233726,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkFLtCRA9TVsSAnZWagAAKw0P/RVBtHWo+0VoJrK8FsZB\nKNFmSoUiaM+FUDlp0bkMoP55rWi/PWxil3eJHRdppm5uyCssS75eNfJo/s7z\nGd160kFq38jCN0/5A/xtkX9/i9xnjCxSUlWHdVxUXL2KCDnSQbpgOd1MjRW2\nd/aBJ972eSfppMaiCCKZ/K71Z24TsQjMDJKtib44Vm4bTfbl5CnMb3SHRXJu\nFn8dCm+en2Cq+at7qGyMUSXkZ4t46RooONWEI7pQqof3IMg42tc3sx2GVfE1\nfZMd6CV2DVyRTcY0XeCCLN9Tech0CPNQvH+DUXVX0fXdt3ldFv/o0qokjwFc\nOeF9F54uGSuhkKqKQfjTVq9o/HB6z7CV8O0XylpB2lKqktTENSk7upPvcQeo\nr7PULEEhQrgwDf8oI3S7mBFi8sM4CwXpyOJVjQo+hyNP7wCX+br/arEkkulR\n6iSG83dXzO92syq+mLVsGniw9sa5KlcGNarPogzDxGdlCusooTWDMxjXW7xP\nnzy5LjbW0grIB7xDkd/IljDSJ6DqYZFClEZZXyiS8hHixC/L/3jH+DmUZDbc\nwfYa4VysTz/jXckn57frOH9RA0AyBj0gjUVSK8qA9/mHcgNuyeFOmuiDQ/rX\neiFqVaEdBoj/4k5IUZ97mczMqK0aZCcX3qqp+h6ZkFJRGP8sJbPOOXZbyHnq\nV9jl\r\n=FR6z\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"6a6a73c9687e196677329640dc1ed025d13b44a4","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.06b76fa74.0","@material/rtl":"12.0.0-canary.06b76fa74.0","@material/base":"12.0.0-canary.06b76fa74.0","@material/theme":"12.0.0-canary.06b76fa74.0","@material/animation":"12.0.0-canary.06b76fa74.0","@material/typography":"12.0.0-canary.06b76fa74.0","@material/feature-targeting":"12.0.0-canary.06b76fa74.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.06b76fa74.0_1620071149075_0.918889505246518","host":"s3://npm-registry-packages"}},"12.0.0-canary.7c5000473.0":{"name":"@material/floating-label","version":"12.0.0-canary.7c5000473.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.7c5000473.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"0fd45c55341c24f99a51ea448a3ce1c20f69831c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.7c5000473.0.tgz","fileCount":34,"integrity":"sha512-LL9hzjC2tvRZ0iZtKbmhmEfYJQI6FwbR6KGvnvtRJOs6K+CMQj2YfR909dV0e0ahjBUayItQWSLkmuf7wfMPbg==","signatures":[{"sig":"MEUCIQCFCodcdaajOyW4RgHKb3hjhTuq39jtz8CveSWS1D7O+gIgEc3mRyWLlkoyonqEM+y20Bgl++MtDHh8yxNdtghKNFw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233726,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkHwxCRA9TVsSAnZWagAAkNwP/1Dty2Xxti7zulHu5mU9\n4dttQWzDJGm2Cy1dMxceB1OngLzTDVJ+WJPUgonVryaRIS1A4lP6nJfF5nFy\nRPaRaCE/+nIieyXL9WlFLbTkUJJI8P6AW8CijrErLAPTDmBXdv4no3Ql2Pvo\ny6QYvvqkOkNdwKLfsFMI+xzNyBB6rJwOxgdXu4QRuXQ5KD9hYt6uypfDSzGA\nQcteUzWbAk7cgXpva+0EqkvWl1FiIlLSouKgnpZtcqwniBvlp5Ap1a0L2IuL\n6WtAaHaM65lyJy8aLtd44htkhiLXNCenBqhp+s5gRUDIVudI7P5Agkqj8K5T\nDsnaG+B6fv4Lq5DJdLau8vGe5Nq7CgDqyWWR41VhNOSps988SZkSUlLumQ7Z\n9bWRlUIfayG3Vkb/wG/M7FU+q3jP8oiGB5q9rK84Ju78xNMzidPwD391PiHc\nRN72HCE1Zj7S7wxFpN0C2H6/wZVtWcOmDtwwhi4Y4/ly12wIpswS57dwcWy1\nxAU6hTslmfee3JcEBPRoAEMi6/1DzOdtYQujKxjXR6uc9WoCuNM1QKQeAeR2\nfMdbg3JX4BcsR8je7/FDFrM6GCq0a2xi+dtEO8e1n1Fv1znS+AHnJp9vuYcl\ne4Nurwzd2HEa4WFnKsnTpjtlIyVODomqahAM0WTMM8IaifRVzqY4+2nFAy2r\nEK9l\r\n=uShR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d53e0032497f2efb6a42d541ce5cd2072711f86c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.7c5000473.0","@material/rtl":"12.0.0-canary.7c5000473.0","@material/base":"12.0.0-canary.7c5000473.0","@material/theme":"12.0.0-canary.7c5000473.0","@material/animation":"12.0.0-canary.7c5000473.0","@material/typography":"12.0.0-canary.7c5000473.0","@material/feature-targeting":"12.0.0-canary.7c5000473.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.7c5000473.0_1620081712577_0.06033718084553219","host":"s3://npm-registry-packages"}},"12.0.0-canary.de997644b.0":{"name":"@material/floating-label","version":"12.0.0-canary.de997644b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.de997644b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"bf4a8aad04af4ae852dc10f446a0f5baee97c2ab","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.de997644b.0.tgz","fileCount":34,"integrity":"sha512-rqBrJge+7tr1rIQDHgPO1yWCYJvp1XB9oWBWp1HCyay1+A0rE3LWcUdYAYObdavp0rhpI1XgDfW/80LNScmo7w==","signatures":[{"sig":"MEUCIQCORmawbiSQnr/FgzRUMHklIOV5gs656evCI2QEnl1OEgIgOCFp6tdr2toSkR48S7eMcq9CsfdvW3ZxuGrelmROfYk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233726,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkYQ0CRA9TVsSAnZWagAA9vgP/3XTNpl1iDl6xGqknNLd\n62VAT6tEalZT73bdTuwO5GydAZRtnIFKnpIU2FF+lsbCLFsaPjGWfcAJ09Vl\nOzhZ3UF+DT9PDjsVyI/qHntQfZfQoYjmhkC6M1eiFMCUnMGdxeISmjNDNukU\ndoY5FgI4mTvkuwAsysgWcLR6/3R1SP73XyPvfolrg/SYG/P7FzY+9hXk36Up\nn6CdNToawqfiM76F3C0ndpDEooBTMoOKmC41D9SmN2FBsfbBFVJDhdbK3LcH\n0DaVbmKAtu+fvURT+QKsG+WSG4K/esmZeHVEr2nuuRFQMQpBWSr0ijHlbD/P\n6n2qgCmOCw0sHXRYCT75Y5zaFXAwver9xdeZO06vzk0F+rXkZGchh63LDuna\ne5vbpLQ04O4EJued+9F9EbvFzUiCdJsQ1TqyyWRry5XLlgg6iHGsxoKbi5NI\nO8qOp8BXXgXooVB39uewZKl7SI0NNJDFTjJaVGamXf9Y+zQdDeovLiggPCP3\n4Kre7VQoQqEFTRhEEigF74qXULe24gf5WxePDmpG9reQiNGYscRcuM/8adDu\npT9cTpkuXgt+LuVyiE2fcv832V426/kDN87FnV0zN5sc8/MnLvjGSZp/1XSk\nzld4IZQPIS8DdzOHuMvZxX4oMlGm2EYa0BTsI2wLWCJ7m3TYL2fdTeE7gEe5\nmoJQ\r\n=/HO1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"efb97e2ef70bfc07ed9b429041e4f201bb0d3a53","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.de997644b.0","@material/rtl":"12.0.0-canary.de997644b.0","@material/base":"12.0.0-canary.de997644b.0","@material/theme":"12.0.0-canary.de997644b.0","@material/animation":"12.0.0-canary.de997644b.0","@material/typography":"12.0.0-canary.de997644b.0","@material/feature-targeting":"12.0.0-canary.de997644b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.de997644b.0_1620149300196_0.9600535482381369","host":"s3://npm-registry-packages"}},"12.0.0-canary.d4d7f1cc2.0":{"name":"@material/floating-label","version":"12.0.0-canary.d4d7f1cc2.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.d4d7f1cc2.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"0a240d79214d2eac6a0c98179f49bbd3972c944d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.d4d7f1cc2.0.tgz","fileCount":34,"integrity":"sha512-R7sJVX7MqSy9WnQ4BTLUVptPYJJh2y9yWYylMPSZQC5MX0OBwCXcbVZkGXmsoI/uL7K/GVBK18KSRy4f+pZk8A==","signatures":[{"sig":"MEQCIHMqR1U0ajiDM64lI4Xw4NvA+7rzxNC6aLCVxEtJkUzdAiACHXRde1lYB6UnQXk0Kq6TlIUEUIV3Y1BvZ9lyudt2Yw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233726,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkYp9CRA9TVsSAnZWagAA4d0P/iqRLQxZxYZUELUkCn9s\n72dOUgZ3QIN6OcNNLggHjnkmtaA2BG20RqQMGSaXQFoWJjfVu8au8w2xLLnP\nSkWUBC71oPyZw+bTeazBOjZDKGWkINumAdJaG6adun2rBBIjC7+RZxI2N4ab\nVNdRko6HYz7rEz/PzutJ7ETPvDQDvIQCDuY4S7TeVDkiJgK4mfuCoz8Eppju\nbeXUEobYwygny/1QP1fw7ICMXtZPssZP+C4OaApaYDBznSkns+bEU+ocQl38\nV/mugrVGJiQHvvVzKZ/bVr020bLmV75LrAo1PGpqaepEs3jkWhIt4yMqbDe2\nolcxKwAuP5YqKHMbFPe3EoqELbeV54z9THttIsGK70JYEga6T4nscWDdQ8IB\nedL1HJkBzr14r4ne7MpZc9raYOoJb6LZI2QsfH+jU2vpdARMl3TaSVuAEiM4\n0j3cdzXBDb3E3QsAK1HnANhZSJGj/LsmUuznnpj/t/2WJ0GRPXXe3skSpvKB\n0yIfM6Bl4SMUHjNi9ebeZBzWV38iDn1nr8fFw8bhSlqu1aEIvN3kmb102w63\ny9ibAZsCT4D0No5+cCayq0NlCnVWC4Av5oV2R9BVJ1tH2J6TYhBASoKlJTHC\nf0OmY3rfyr6r8WESwpQD1DmY06fuAa6+Y1zLfTazAfK7uVqrLrfvbeIVnduF\nQC83\r\n=ppzt\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"473ac5e3a11b87616a0dcb004bd5a9411a271f6e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.d4d7f1cc2.0","@material/rtl":"12.0.0-canary.d4d7f1cc2.0","@material/base":"12.0.0-canary.d4d7f1cc2.0","@material/theme":"12.0.0-canary.d4d7f1cc2.0","@material/animation":"12.0.0-canary.d4d7f1cc2.0","@material/typography":"12.0.0-canary.d4d7f1cc2.0","@material/feature-targeting":"12.0.0-canary.d4d7f1cc2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.d4d7f1cc2.0_1620150908662_0.6321051855159527","host":"s3://npm-registry-packages"}},"12.0.0-canary.be999eb08.0":{"name":"@material/floating-label","version":"12.0.0-canary.be999eb08.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.be999eb08.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5eb6148c9ebedb439983d3f31cf93373a83bbb9a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.be999eb08.0.tgz","fileCount":34,"integrity":"sha512-iVX6wXZMYSkeUSqmZTjh69vXYhp2BHtS2BwISTzxhvcn4r0Ed/ITCCqH0cW8xDRrbrMFYkpDKXm5SKUDCEA7WA==","signatures":[{"sig":"MEUCIQDBwpybzlwzNSfs6AzLxvvfkjpXnFC0yyAPtwYYocQG0gIgbEjv3X1V1D9AdHEypqN99KMzoNvbK+PqP8pqi/5OK9M=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233726,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkYunCRA9TVsSAnZWagAAyD8P/2a3DZrtbCqUJGgR+DQ8\n/MJCoUYakfilEvYgFpqNfK6XzXAmsbgqmqqwha8fRGtLlA2M0qvWzgoMmuOk\n/lxM/uRpE0+LvZH1fTbH+3DxY1E67SXaWpr1D0T235ioZynY8cK40YHB8qcd\nN9bVKveGHiwBr2Y2iBCn5pDvQ0H6L82iuWIi6d8NDtxRyokM+g9SjgqstXls\ngKfiXPQ9SZs5CAlRS/A7LJXywE2C8L+vaf81JSdY3ggrpJiy3Lm5ItaaqWFu\n9U3dv8uj6Sp2EnnJyJsMrm7+1xcmeFndiaMRbDP/qQq09aXdHwbP9w9JcEj4\nxeQpvRIk2vleAC0pcCRCTMfLHoJkr2cwG/DJsDdTvpr8e8rwmR49OkciuUTQ\nP6ZRKA4S1haQgIp9Od70tqag4exxDO8q2mrasmGwrd8g5vNwVZ3pqOM9HQ7W\nu34mTb9yh1W4mCwP1b3wLZXrPcr8DoOzoFjrKc/Y0F8Jh+ThFnZsTY81d0ki\n103SnEkoXYn+dc6rivXq77SG4of5YpnfZQ9Giiy98+3zfRzNHWXkBBPYIo4s\n8w0JFJG8PEfzRAD2hnSbY+MxDYw5/jFbYAU/vK2oHYoAj9rL7V5jrW2aczAg\n74JTln5gDpwgVLmreGLLlShR8MCQkDrlYwG9lRLvNYceNaKJVgTyoKvgP6WW\nj50+\r\n=q6cl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"78911f7ba4a7d68ed38f554357f8f224ec7a15fd","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.be999eb08.0","@material/rtl":"12.0.0-canary.be999eb08.0","@material/base":"12.0.0-canary.be999eb08.0","@material/theme":"12.0.0-canary.be999eb08.0","@material/animation":"12.0.0-canary.be999eb08.0","@material/typography":"12.0.0-canary.be999eb08.0","@material/feature-targeting":"12.0.0-canary.be999eb08.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.be999eb08.0_1620151206608_0.42461098231023997","host":"s3://npm-registry-packages"}},"12.0.0-canary.eda1705fc.0":{"name":"@material/floating-label","version":"12.0.0-canary.eda1705fc.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.eda1705fc.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c0ad397fb62c486e1e009da01d4061f8c6b357f6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.eda1705fc.0.tgz","fileCount":34,"integrity":"sha512-zvs3fCLn+8t7JSU4WcdGZDbPvHhNpUdv9kxPxwGyChTbBOLq8hw/fZdWGGqQ+BHkVD44Ndtf1rfFEfe/BGRxZg==","signatures":[{"sig":"MEUCIE9GQP6lDPJ93p8T6hwYFlCZbxqsG8aI7atQ6Obp4rW6AiEA+J7+ZvssIouz/KOnabMftBQAUTp91pBa/0j53jDYas8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233726,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkZwlCRA9TVsSAnZWagAAxmkP/iOEht9YVMLvkdxVG9Ed\ndrnFXErxGK66j6TZbf9yQxVvM6k9cvQIxLVB/Hgk04OYnDmtrUqT0FHRtB3i\nafpoiwK91UuVyKHVfIWgtf6ulHSOtu7jDa9L3IGegA/PSDH1mmI4mN4JFx4m\nsUFyxaAPhnpxbZsowG6ttBbURPSlEfmyniEQS1alNBjGyfpL1gc2nK1h3Nqa\nMiFPPT2h5blObKyuzRPCh4x6Y/AZ5NB0/loWKLf5MWbsUAjwY8jZ04b/OWPd\n7mJX/qhNwmKYx40aKIVWEM5g7N1Cf0RvtwHyvFBkruVJuCCmI7irzZO5wkqO\nHvs21LXPS22IpJUrmayXBSv2+sd9yVNsQxwcd6fGe/O1RYXuvP3mN0QoRRJQ\n5PLAIQRtcs8xOSrmSZnHzCXI486ysonzkwTYc7kHDu/uyhIqmMDzuY8IccZg\nwLUapVx37qV9bhBcWlprjToTcE2kwNsZZSba4MFaibmgXAYnJariIXkjI4H9\nvemkR2ZbS1QZWTANhmeoRhBWwHplrLtI2Hl813YE1poDG5zC4X3mpWzjsd0/\nY7+A3nfnyzpzCdueG/NC3wadbIGKCacES4pwiNRZU9I12Wb41XqoOn418bSi\nmzIs//g/k8sN5/HNmV6q5KCzy9bh3TZmLp0u1dH/pHNZvAFOVTi2Uo4WO9bo\nJg/T\r\n=Ae/C\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a4c7f355f27d26cb39ac4876510254d165a5645d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.eda1705fc.0","@material/rtl":"12.0.0-canary.eda1705fc.0","@material/base":"12.0.0-canary.eda1705fc.0","@material/theme":"12.0.0-canary.eda1705fc.0","@material/animation":"12.0.0-canary.eda1705fc.0","@material/typography":"12.0.0-canary.eda1705fc.0","@material/feature-targeting":"12.0.0-canary.eda1705fc.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.eda1705fc.0_1620155429246_0.17028988467265838","host":"s3://npm-registry-packages"}},"12.0.0-canary.718c90178.0":{"name":"@material/floating-label","version":"12.0.0-canary.718c90178.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.718c90178.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"dac82ebcaa60d7388c4e780d6033184f1aec9526","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.718c90178.0.tgz","fileCount":34,"integrity":"sha512-bJvJCFIfz0etFoPdkVo0TH2xK0ej7DrHXYWJpzIFcnuTk4LG349kWc/IulrcENWN15yNIxIxK2E6Ff2VviBChg==","signatures":[{"sig":"MEQCIGN0wMGPS1cJMk/UyWGi7ILbw1nXXwLljLb1Y0pqCLV0AiAJbEw6gZABJwDePduQlRV9MJyEE8jPPF6vWMm/bCG2kg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233726,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkaA4CRA9TVsSAnZWagAAKoUP/0wXOx3B12sgOvz8e7md\nNG0VwAcGmuIyx8SLYOQxOcPdHKFAvKDjHv7dSH8FiklYKEWdfRer9cAMmL6X\n6+ytNTXTDe2g06akIEnNclbzo6IdtqqXG9VzDbgbkkkwUxPxixW7ymUOZHWn\nry0QTR4aiYfICOEboGpn0n/pNAIy+PzgzXzMyDI8fz+d1wEYx3xNA0knfD5d\nsbX/JmsPrMxrWUKF5zU2nr3DvlK/0fRWIUmAUmg0WmbmXRaNBf51RrxNSEi2\ns4FwMF9Kwsrv5Mf3NoZothyzoUG9JPUN0cvsQk0o0PoACkup/tkP4OOmwtPX\n1TIFlMRR5MPnD9cEVaHZRIrk3LVvIVwoEmPfMyhGTznFcmEwEsZBf0ebI0tL\ntMaWEwRd8+2rNmrHZ9B8WEkS/8p718+IT36YiIWUYp67XuvLGJRBCSv15/HF\nZzwwH/4sBLjNesSd58EZbQpGyGywIXRO0Bko43IzU2Yx+oSu5yFM5MgSjVqK\nzUnA0n9vOohlm9dmL0T7pgXBGM4X6EetkG0NwvB3kGvmgPDRK3Va2p3x+NBB\nhkOZb22L7D2nIE8q5P4N0w7CkWwyiTQ18dcVIfJHcMxx6J1+qQNbwp5kRmtv\nCHQ29c3MeQOsKPAPBdH+b0/TNn3Rx/IZT5TC29XZWK2+AfHBl0VHQ+R+AZAR\n5/zs\r\n=+2UD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"38bd77e93e567329d390e9784d4f591d6dd41191","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.718c90178.0","@material/rtl":"12.0.0-canary.718c90178.0","@material/base":"12.0.0-canary.718c90178.0","@material/theme":"12.0.0-canary.718c90178.0","@material/animation":"12.0.0-canary.718c90178.0","@material/typography":"12.0.0-canary.718c90178.0","@material/feature-targeting":"12.0.0-canary.718c90178.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.718c90178.0_1620156472233_0.2530326992044287","host":"s3://npm-registry-packages"}},"12.0.0-canary.0e3917299.0":{"name":"@material/floating-label","version":"12.0.0-canary.0e3917299.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.0e3917299.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c8a2086d51cd63152d5de1ec2aaa2ca16b51b2e2","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.0e3917299.0.tgz","fileCount":34,"integrity":"sha512-GwaYpqE99vk5rw9sXBFC+jPrjoOSiusf7Sgf+yTpNUq34ZZWVroZJixip8Py9Eq3Y+3rZ4gjDzfqhdW7t8sGfA==","signatures":[{"sig":"MEYCIQCXp3zKY1nXQWyaYtZ6YIKlAhBllT1F6Y+EMeNKCH1QRgIhAOYcTWfVwvbGb5FkARUSF8wP7SvzGOaF7H4Umic9tY1k","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233726,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkaDZCRA9TVsSAnZWagAATCkP/2ZVDLRC9SFrvt3B4N4A\ninzn0SnyOth84oUKupzBJGPhYl5iielmxRxb2kCoI63qXBedoTKIiRs9sGTq\nfaqVv4UatyhDeAvZeFwawBG/mIMIwxWy+PtD3gU5CWWK6nTpVCbMqOq1zny/\nOKBSnv+aWmlDF5UWmg7gLSfdMqx62xUufHxdKboVWh5kyWtFQWjYi10gzs5K\np4DW3GeeN+Ie6czr/iEbbvnuktIECXvE2s8mLmN4Z9zfoGNWwJgr3mbyslQT\n2DhE1q8AhkyqQ22EoVItq3wzOKpNMoiaIbS1omCaR7mkagaztLy6kG7Me1D2\nSHa9nH/uS1FqpZxtfg/E/rtvMBwbRa9xgLuL8v3lKXBGCylVBHWSEZuppRaZ\nK9rv0CQWWI6nN9EN6rXChLywRsrena5u2sfTWNuWWsl9g5vMXRClS8je5K1m\nJ8Gqzcc26Jp5SNNqzfbKH2WS9YveU1OA8Y7EpJhtoOMxi5ssmLYLcj98mM6R\ngfhhM62OGOirv5Q7u98Jr7ynv3LAXZCyHCseDnW3nH15FXtjthnCw8KxbONW\nAXX3YtRiC5KUNFmypL1cdXur03W3pyVBbjgk7RmSB5qnqNU5tlGoQpo8IpYi\niYP9qmc6b1KjD0iR0LHvmmmZIkWoSAR/ux0uCD/qNAKKwvvN1//PA0ozy4Tm\nABDw\r\n=5F42\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b53d9d2ca98f518aa071c4933f2c0046916932d2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.0e3917299.0","@material/rtl":"12.0.0-canary.0e3917299.0","@material/base":"12.0.0-canary.0e3917299.0","@material/theme":"12.0.0-canary.0e3917299.0","@material/animation":"12.0.0-canary.0e3917299.0","@material/typography":"12.0.0-canary.0e3917299.0","@material/feature-targeting":"12.0.0-canary.0e3917299.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.0e3917299.0_1620156632884_0.25048959676497207","host":"s3://npm-registry-packages"}},"12.0.0-canary.836b3c7db.0":{"name":"@material/floating-label","version":"12.0.0-canary.836b3c7db.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.836b3c7db.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"fe7d37e5738a03b95a7446dc7ccf30b149d02964","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.836b3c7db.0.tgz","fileCount":34,"integrity":"sha512-XXxCFrNscg1c9ne6+FVkh4M3foL1ByJSxIyy+BWFMUIMoSTJ1Iw2lPBYCB4vHThYDFbotwt5bYi410rY0JiiRg==","signatures":[{"sig":"MEUCIDLXpbPOJlE0fbb1hNPV15Q2ldZMURK9xiWWr4l6fFtxAiEAoZno0a8ZL1bCESLUJjwc/m3FDSyY//Mh8q8+ew7F97M=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233726,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgka+7CRA9TVsSAnZWagAAmkQP/j1SuP7+Qq6Dg+SXGfsy\nX1B5iHMK5ZcP2fmX3WdRflS/k8Rn48+S+wKFL+GWhcCIbnfyVRpp2aYTpFBh\nhFfY0fD4k0gIwt0lVSR1VRQ44yDW311X6RCCfdj757+4xOGeF30C6hhMaHde\nj4ZC4oloRBBFvUVUbwcl8DIZHOv7GkCovKFZBmHOrwuCawAu34v1txSXxUEO\nr1JNc6TyJBZnXBdajJ4jf7BdzZB50WhOPI+/t5T3s4NlFWEm8D7wVF6Fofpp\nGMwnOgzIzmkw9V60xcYB/JH7NycbXDpPZ2FmxqxHonU5AC26AXqQ8kzbQI5V\nzD5b/tfiBYxgi+25dSiYYrcwkLySR3Lh+uGzeG8QDId8QoxjELI9pYvs0Xju\nCaUnJwTXq0XlOB/iuz4OE0pvao2tv2zOy+LvGl4hi3mNBXnPecMVYa0PvQTr\nadbUopOtvpWLEtkrpNKzQs6V/Z5N43rAI1jMabKdYRh6UMGKqE5K53LccKgg\njB/BgjPTpB0phGtOXYgBr1pIrRmL4Z0joZEcqunmreZm02FTtOF/O5DikAyo\nFqxN1yd2KSk0lrApInMoRCrifJx5+EFpOUpKJBcNq4E6IvxQQxgLfHkpo0TQ\nUDghzCvl4L4Gq4PhiflKlDdaa/YHIUGkxlvvOuGxvkBteDBgamOfpXTG3n6v\nXPHP\r\n=1dXi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b39ef8f7b55792965f33ce0e4907f1811ba2b17e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.836b3c7db.0","@material/rtl":"12.0.0-canary.836b3c7db.0","@material/base":"12.0.0-canary.836b3c7db.0","@material/theme":"12.0.0-canary.836b3c7db.0","@material/animation":"12.0.0-canary.836b3c7db.0","@material/typography":"12.0.0-canary.836b3c7db.0","@material/feature-targeting":"12.0.0-canary.836b3c7db.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.836b3c7db.0_1620160443013_0.9237623626830234","host":"s3://npm-registry-packages"}},"12.0.0-canary.53d4e6d59.0":{"name":"@material/floating-label","version":"12.0.0-canary.53d4e6d59.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.53d4e6d59.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"97c008d39cb1fd8f5f02d0563e1af08dbec25f09","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.53d4e6d59.0.tgz","fileCount":34,"integrity":"sha512-odCRkk/FFcuHAgu2vS+nyvGLFoN6nmHj2bJh+nPC9AQ5cXh2/Y861rShIgWtbT5oDOYOQ8rMdgaX2Bv5Imy4qw==","signatures":[{"sig":"MEUCIQCy+ZTkoSibuKatL9yEQUHssb6skyIz6Modf9ScUStsaQIgWQH1VRfVOHvqyOu8wQcZJ9HWGd34Ce2Is2erSdq0QNw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233726,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkbNjCRA9TVsSAnZWagAAq4IQAJZ/REwl4L6C2NHTEr3t\nOdAZrICLush/c8nhV8RDyraf2cuc0H7WK5kXs8BUMyEJo8eGTFztpWIRY5A8\neu5PxK42ZGgLLn5ExCizMXtCbznGV10/d8K0dRg5si7A3o5Xtuy5fm1/iKX0\nE4amVXHhrj1Km9Zj95Z8f6/EhS16Q6FVr9R7kQL/ZsdsXQ3A/d2T3tseFvhp\nJWC4KkWO1ItgSTSjVLvbiQVzPVC0NuGBS4Cuj7aRMO+gaoCmpv9nb5KsS6nL\njQb2GZm3AKMBuGL/3+cA9AltMOcjh210bj7K1qlCB/lx0JV8iCKsNWHksuvD\nRn3qStsOPYCIs/dxYSPo+lwYhPOncm5+t7VuE0riDKQzWg5LCrYEo3IKh4jv\nrGFH04vMflJ0f3jijJzzcwSAlc2dh4jadooiP+SaGvIgxm6wZ0hyWXMTh0B4\n/6j3w1ZOmPvzTX+fwqCI/vUkbbp39yxglE1DZ4U8CvnPi+l22DxECvuiibMt\nt6whFRKoozND9F3TCoNCegMe4wCICaFH1e/wO9hs+NlDK8PjJY7bEKzEUER7\n/w0IK+u/U7RQnf420douOiEPWrZudh6P5KkCJC/HyDwj/9HGMTDLJJkP4U8k\n5Z7ZBFYmt5ezjDjIURDpyroEERE/9NA94TPFHJl+Kr4MxSgbZw9nejjHwIKG\n3EzT\r\n=LQrG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a89a7c81034e7bfbeb469ddc1e1e463b018f7179","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.53d4e6d59.0","@material/rtl":"12.0.0-canary.53d4e6d59.0","@material/base":"12.0.0-canary.53d4e6d59.0","@material/theme":"12.0.0-canary.53d4e6d59.0","@material/animation":"12.0.0-canary.53d4e6d59.0","@material/typography":"12.0.0-canary.53d4e6d59.0","@material/feature-targeting":"12.0.0-canary.53d4e6d59.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.53d4e6d59.0_1620161378768_0.7206383118020274","host":"s3://npm-registry-packages"}},"12.0.0-canary.18d147e27.0":{"name":"@material/floating-label","version":"12.0.0-canary.18d147e27.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.18d147e27.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"17234931ebf33269be378a6e875780a5ad2ea677","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.18d147e27.0.tgz","fileCount":34,"integrity":"sha512-ZaBhCGjeBZVgYJbxOg5Gt4h3PSlYwxFrIbBrovhda4zr2xNzr8hOyJagq7jQXRZQumQpfAQyHfb1o0RtKSMOYA==","signatures":[{"sig":"MEYCIQCUVAL4m1Hmk91fBXDGG6gFF5Qlk1R5U/tsFLLQeT43iAIhALyp8JjfN7O+xoUUr9ui9oZrFed8T2ODRo9/EXTsyrqd","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233726,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkbVmCRA9TVsSAnZWagAA2lAP/RmTk5cOvJy/pCU1PRNC\n7GKGkS+/InLdxGtZKSHzrANsjuw5F50h/doz/rsNJzQNHnwCmvP3dmmVb2lL\n8sGeMVEAGhU0cs31zjaQ+wzJX347E0uJtq9IlBnY8IIQLQzpkeP2reby1Y5j\nRZkD7w+AUBF+/iJR0Ujrnv4/qODgh2Y9odSRxNqo0a6NhHrzr8efEUWLcojY\nz2L7Pqrbn5cM+zPISb5VE2kcoIwOkIq9pwMrPscblrs//hQtVwpurX8xzHp3\nBNk0v6v3u2zFMFUDuDIpT7aycQwOCs9Gn+ADyMOHYY9ihHvyuBVGxSvGxhEy\neX2lCfSusePXuBkJbKVVhnKXZuwjybY2X1h42rFMMcCluPYUcIpXBTW6sYt7\nVEI6n/4LdOINX3e2nMycVYJjre4+20596+ZxUXZd8RgM3FJM9w11s23m9ylf\nLTxvVfzFe5PUHm4UnOrznR38Qjy/fzs5pscg1jpXi29PGoiCtJTrVwZi/QCb\nsGpFwx1IAQFA+S+qQhEUkCRDjf+s4qO3QjoIxdnrb5lXgjkLk/0pt1F4Rsg1\nsvb7J3D0uXqrf5UKWhmWJwJyEKSzYO6JpPlgkgfz/mat37az3dHzfIV74uR0\nx6lz2MEILM5KokK4dpB9qkst4IWbMMiRQlanFy8CSa+eqzs0+k2XWGDO800O\n0W7z\r\n=/SfG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"02e686390dabbb1590eba968246da65476db162a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.18d147e27.0","@material/rtl":"12.0.0-canary.18d147e27.0","@material/base":"12.0.0-canary.18d147e27.0","@material/theme":"12.0.0-canary.18d147e27.0","@material/animation":"12.0.0-canary.18d147e27.0","@material/typography":"12.0.0-canary.18d147e27.0","@material/feature-targeting":"12.0.0-canary.18d147e27.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.18d147e27.0_1620161894307_0.6316569175888316","host":"s3://npm-registry-packages"}},"12.0.0-canary.b9984794e.0":{"name":"@material/floating-label","version":"12.0.0-canary.b9984794e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.b9984794e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"bcc5fe396b2615e54113694d396a9f83202c7ae2","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.b9984794e.0.tgz","fileCount":34,"integrity":"sha512-FeK3K9Y+Qyz07gvHlfs2d8rOeGG9YC/Y324krYHVx7XJrED3PhMtfSWMXpa4bmlEOd8DOSt2phfF2TRtjVIo/A==","signatures":[{"sig":"MEQCIBwbHA5YMP/9BNJLLFLX8yp5DodM/rsCzWkPQALXyEg7AiALOjGSOD8HmmsqmPPHTpg5TG/7H0hHAKkGcc6Hvw2CLA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233726,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkdK1CRA9TVsSAnZWagAALBsP/0lPT0EazJZbvPrsFRSK\nR8r9I7HBZRqYmN6Yto82tVohIic4I0tSi6qMOXtXSYcksFfFvDj0FJA8nmqM\n+TpLxSPbU0ocjauGROgaLt2Vwdej106GePWNhjlad4jFCbN/FAQ4fgwlpldQ\nbNiPUc+T0JJ1A5BSRnEjI2vNSfrHUirjCzTwhaWXMq0DPbPA/RX1waXnJb5i\nISQPZse+Z63K6QugJ7uwxe07a36M0uLVScLphVilJqDyYzth2So8eq1TVYUx\nygAiURwzDmwoEZ5oMJQMIMx7RwjYAlbvkwlX9XZBXzd60+hxhe5NMwXsvGXv\neVzCKDLGLFKNcQOgk7b61+wzKIE/tTV0IeoaWWCg6yo8E46D99kMckcviSiz\n3enwCFXVP06jPDnbD1JPCJW9Z3Y5ze1FEYSQ1O3c3mOYqJq4O2iKCD6gd7Js\nb9KG187u5+XezVV+bR2kV0pPMbxZZ8EFFk98Hjybq6Cbmr82npJ5cPt/AIrw\nKIjTInT1l7jt0OjfjgLTQVV5RJNGb4FVefdtJtjzgb26oMaI6lsXRLQzfbdK\nvJaQrYdBvcvn68EAaeqYbFVndoB8Bc2t4o+2a2o4HHWAup4q0J8PI00dTcEz\nSxTafr8AAWhRQ/Kxu4elm2ZnyzdzMIg5EMhRrAslSRujRwtItul9ky38HyZg\n1eKs\r\n=a6Fs\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b9cb2c88737add4e6d3e04893ef4ca57b7848549","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.b9984794e.0","@material/rtl":"12.0.0-canary.b9984794e.0","@material/base":"12.0.0-canary.b9984794e.0","@material/theme":"12.0.0-canary.b9984794e.0","@material/animation":"12.0.0-canary.b9984794e.0","@material/typography":"12.0.0-canary.b9984794e.0","@material/feature-targeting":"12.0.0-canary.b9984794e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.b9984794e.0_1620169397354_0.8031000577628371","host":"s3://npm-registry-packages"}},"12.0.0-canary.b76f5fc9d.0":{"name":"@material/floating-label","version":"12.0.0-canary.b76f5fc9d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.b76f5fc9d.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6918c128a25977d6f5c01df8e3812e265bfeab83","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.b76f5fc9d.0.tgz","fileCount":34,"integrity":"sha512-W4TPG1IL82pRMLn3zFG69SWcw8/isGfkWHf89tVnYX5CXm4sNLQIL0BNS+09vyMQiIz2tGdXo5FutNuqo6ooxw==","signatures":[{"sig":"MEUCIB2T9CFn+HSsry14lYOSUF2pjFzpTSbk/bAGguE5IIfnAiEAgssJJcar7zV74t3rNai8UBX/z4vKbBZf6631TgxTyaw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233726,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkdOBCRA9TVsSAnZWagAAsfMP/1GM8Y9IjQumW2eClB+L\nTBK8uXkDxLiU8dj5YaQAWaIBLF5xQwclHITuVF6qihqZncitNMZLbMNK+yzY\nMJy6y87xGggxi9nVgtTebKS3eQ5ZGdzT/iXAo5GLzCBGg09gwBzu1Gmbu6Zr\nlA8VM7mooqOyd6SYUMM4Bfgo7SL14JnlBQQ/LrmfITy17VRFmxo6vokr6SS1\nDxSoOfnXSBwNUvEhQ7QneAH2MVHy2vdPATp+vvSZIkbfWSnfkD2LDAhNANYE\nqCO4yXNEcdqHP+2HfaqXHzWT8w6yCsGW5fLlkLUi7ArWmi02KlXkG25GKQP5\nO7ZXeBMFfzha1RXnTzIq4qnUGXo2zRaqwFDMT0uTQu4PpDbQ9Ms2RraeA8H2\nbYG0rRNSo8sx7S0+qhqur604z37IHirbBu1xRLqeUGbVLBuoqbfJN0bSkIDZ\nJ2eUrpQ/MeyHRUNfMCdAM6ozCjeoSztG2l8xTWfdPEWOrfdajVX8ynBZpKXr\nsGAjZ/gy9wghcnrd/H5ZrgXklZURITMKtCeYNKtuMu1+yPLEuvhNtmR+vNoX\nMlffaLTfyQadYKoT/1e5lZg2e/LeEaqxiNJgC6em54tW02QeozxEAGtXT13q\nRNmtzHKxuPx0GfOnDi7/CNCGTLo6Whsj+qMZpJh5QttAhARjxm6F3Q4M60Zh\nDzd/\r\n=xjSN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"219c30995da49f5c5f458aa1b983f09054c2d4d4","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.b76f5fc9d.0","@material/rtl":"12.0.0-canary.b76f5fc9d.0","@material/base":"12.0.0-canary.b76f5fc9d.0","@material/theme":"12.0.0-canary.b76f5fc9d.0","@material/animation":"12.0.0-canary.b76f5fc9d.0","@material/typography":"12.0.0-canary.b76f5fc9d.0","@material/feature-targeting":"12.0.0-canary.b76f5fc9d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.b76f5fc9d.0_1620169600665_0.0006758237019905966","host":"s3://npm-registry-packages"}},"12.0.0-canary.055d4f10a.0":{"name":"@material/floating-label","version":"12.0.0-canary.055d4f10a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.055d4f10a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"291eaa9783f1c6848d40762470f9bdb5681b6e22","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.055d4f10a.0.tgz","fileCount":34,"integrity":"sha512-p9OWbUz3tCZW17z5Hl+MvOeAbUpGfgVA5b4cNzja7HF38/4iEI0GDCkxFGKFFWUa7yT7CNS6p6Rg4rCY6Ov+QA==","signatures":[{"sig":"MEUCIDopXO1pDwWZJeAYRp2LgwS+bHXrqe4azZPLI8Z1VDDvAiEA22GgPLsbpFNWuAeh3kwwAUTEsxjZ7BztlkCofmZpcFQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233749,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkdcMCRA9TVsSAnZWagAAccIP/2koky1fK1bgrB0CTij4\nLE+1W4p7g4jCKwge19aSswB8hEHQWW199nKAsSWksVZ13fitq6rbGZtxPAc0\nbXs6JuWEOj/PLZzdU5Fy9fiMiYJjEeQfVw818p1w0XSwfikF5MsDWLAcUZVb\nM0SyXe1tJgYLK0+fxztG2N4xQ+wrRWyQdXGTLzYuIM3b3VTAI3A5s4FUoSuR\nbh6wM2smDNAp0WLJvKm3vmfyw9MX0q21m4ZLpoGWa5L7O+0PfON/u95I6NBA\ndO8dfGHi3GYKIA0fFTA7SF+5qCIel5KbGs5b9mKB/40OX5bQpXG06jZXVTHI\nul1rFaVnOFX68u7rQyzt/iY8vM81I8xGbbqPaHUm6L9CTpbEqNm08xtpWLP/\nPGrBttVkub3RiTOo9bejO53odh3IACbKoTrbY9oZwS1U6shbvFxn/AGaWJEw\nz4JTwr50Et+7eKykSzAb3KVlAXGWAILE7VMB9jhYBg3RpON005cCrOrKJ7RY\nU6gjNjMVB2Ce/44EIbVNr59ZfglJIV8ft7ic+jPSV28u1JREPyUofq3DH5Iw\nrzLpDTgJgnu1ab10uTXi2g/dt8cHBJGt0Sljse4tZkQyvUA1OeK6rr93SGeZ\nBzF8IRUgpo4lCdamnIwhjuf9Czu8LiDCSwccu9n7ufNjpkeWXb5wM0nnpM/U\nFJv7\r\n=xJPX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"df8d3cdf52cca2c339c1fa1cd18129db35422c55","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.055d4f10a.0","@material/rtl":"12.0.0-canary.055d4f10a.0","@material/base":"12.0.0-canary.055d4f10a.0","@material/theme":"12.0.0-canary.055d4f10a.0","@material/animation":"12.0.0-canary.055d4f10a.0","@material/typography":"12.0.0-canary.055d4f10a.0","@material/feature-targeting":"12.0.0-canary.055d4f10a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.055d4f10a.0_1620170508163_0.2830839901875386","host":"s3://npm-registry-packages"}},"12.0.0-canary.5b6a46016.0":{"name":"@material/floating-label","version":"12.0.0-canary.5b6a46016.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.5b6a46016.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a5ad84ced2bef8bc1d0f25ef892825b65c425ea0","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.5b6a46016.0.tgz","fileCount":34,"integrity":"sha512-M8JhphfrMg6Z79fp5vZ3y9fvXJjYG37il7DliOlbEaDbq0qw1v44lBx5kEk+SctpviijxJP58C8bKlV2PIowFQ==","signatures":[{"sig":"MEQCIHYDvvX7IQt3SEk522VZ2zK29Lrpy1A1X+byg672c8Q6AiBzqZ8Q47STC7qgCgzyCAc4otba3PEd0Ou+nLjl7gIFEg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233749,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgksTcCRA9TVsSAnZWagAA0NwP/RljO6SMDMDpB1ZsvB+z\ndKNX5ibbF6HG8RhCAcgVVD7x6ru9E0TAvR0kpDk/7NH9l4nxq1DLLCOwTONv\nv6DtF4ADqciMvm6H3C99nwOx5JMNoN+4vfAbtRjEp+PE6XvvZJhczLhn1/Nq\nsLbeTk55BtnmPU4wh5qJeXJ1vp/3juojHrhsCi2HpGqmGw4RGCpCb8Tk+U7G\nZTX9QRwONRDnxI5t3I1XUiAvuoTuyYcxHiC9nrbquGgzrTqTxGScpoUqI100\nJ2GYV/U3yKCTm5oltY8mm3+mJaKdYRiwbs2Ym+A+hmRtdRzHfkzbK/kOy7VD\naGzDH05jW5ZoB9IlmpR6yROCQARCc+wyH6nHmCD6jdzQIuz2BgYeTWRpEzYF\nar0dqbjCDWEg1/fqM85Pgnoj/JTIKmZeHWp73BT5LxhDNm+3I0cOpJlWqZ8P\n4ln3kCH45Y/4+S0LNAK0w17hBj7lNV+Wla9934DaBWlS8qqWjhA5GElylQ3P\neqHFfFj6WydSeQSffr6RmW79Cig3w1I0mEg24x7jvlYS5Db7mQgShNxisV2q\nGhnY7EDGawgUWHRhfHT6js982ZSbwETNiZSpwDnJEDMHp5FIBhgybGo6u0Ss\nnGzY6uaE+2dP0mCkjIH9Tn4ebUsQJR8ERMrcgXoOcEPVqIs+8lEVSPKaWOlr\nSB93\r\n=/Wez\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3d9c7e3c179062db8b5bc243e8bbfbd9d9132e50","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.5b6a46016.0","@material/rtl":"12.0.0-canary.5b6a46016.0","@material/base":"12.0.0-canary.5b6a46016.0","@material/theme":"12.0.0-canary.5b6a46016.0","@material/animation":"12.0.0-canary.5b6a46016.0","@material/typography":"12.0.0-canary.5b6a46016.0","@material/feature-targeting":"12.0.0-canary.5b6a46016.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.5b6a46016.0_1620231388300_0.6042657429733747","host":"s3://npm-registry-packages"}},"12.0.0-canary.33c9a737a.0":{"name":"@material/floating-label","version":"12.0.0-canary.33c9a737a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.33c9a737a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"80534fb9e39e3a56b30446c7c997b92956a81c5b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.33c9a737a.0.tgz","fileCount":34,"integrity":"sha512-lLDfJo+6JVBlJd0eo7sgiRE6L8xpnoNKd7zVPfIvUdJ1YBBEZETtckfSpKIsba5fXWkNS5/896df14O8y+myLg==","signatures":[{"sig":"MEUCIQCQcAXgVQtJYQaoVZw4UkXFPWm/Ccjl7cccGKmyZWZG+gIgIK6nT1yNmGxhsdtE885o0TvoyRlot1IctBZ6M7ftJ0s=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233749,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgktV2CRA9TVsSAnZWagAAoEUP/1D7Q5rOVFgCpwBwRmcW\nhpyKYTPyKUk3/dIR1VpPbvmKIRhA/YykE/OHJAM2SCyCpZkseLiDZFWDVA+W\na2CpprmbQcDnGh6swNE2Kw0d5wlDcHWfwW2xz7wOO+pUWK3jHcdurdUbWcXk\nJ6VGOE+zX5gHsJUcmnfNlKQVuYoihMEQlxYIiYObeO+toIsAg6gFdyxINGNA\nvRlYD5qXa43xeZ60SZUrM41W4LIzxGsI8ZRPFRagsWa3lgSN2mUQwBNGWPhy\nut/UZSeXQ0hQY0tjFqgqLpl78dye6CNJp+dpysRq1pt/skETLbwVKktCHMRi\nAcZqasRcPPD5WfEKfzlhbPGluCkFaOpLEv/SBSEpbBkd/6UZlAieKDzG1bMS\nM9PfpSQMJHkT5AzA84Hz6Tshbqq9keYn+uf5t+f8rc7Xg8aQng9mfLsxtn97\nKMneW4AqQlRYDNX5gvTG0GxcIHisizOrxMGx8XLdBuMZBy4sNoTz16CsY/TZ\ntyBcG0wFgumj9jihpqld6vzfaVs0BRJ481orpqyBFxljihxOo2wJmNI6NHBQ\nofJTlfuExUtAXlbNcYhYww7EQsd7sNX2NnMBlSkh98BCfU1Umum2CiRpd0v6\npDSV1JrNjJ2HV0qaLiPD+r0MsnleJyJpek79HNGqjly/qTHOP+O1LbYIn3nf\n2V38\r\n=L3Ai\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"fa5c97d28049bf03f5b138c0d97bdc267f43c363","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.33c9a737a.0","@material/rtl":"12.0.0-canary.33c9a737a.0","@material/base":"12.0.0-canary.33c9a737a.0","@material/theme":"12.0.0-canary.33c9a737a.0","@material/animation":"12.0.0-canary.33c9a737a.0","@material/typography":"12.0.0-canary.33c9a737a.0","@material/feature-targeting":"12.0.0-canary.33c9a737a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.33c9a737a.0_1620235638439_0.10135922220916171","host":"s3://npm-registry-packages"}},"12.0.0-canary.9bc0effaf.0":{"name":"@material/floating-label","version":"12.0.0-canary.9bc0effaf.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.9bc0effaf.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a7c260cecfc65965e46a42b98f4392d2afb534ca","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.9bc0effaf.0.tgz","fileCount":34,"integrity":"sha512-L7y5475WoH3WtEw2/7T67LyUOjuz4Y0KQuO59HtxdSWy4p41HIBXt9l3qCkQbU6S8gW7NaPsY5PhQgbr1toIdA==","signatures":[{"sig":"MEYCIQDSpZP88UZYppPNQKLDpk258KhPLebMK9ORm7m/jKxwvgIhAPhmU/NGCOtTmYpW8BxnIAiOnQk8icEg2nsUU0SPukRW","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233749,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkwddCRA9TVsSAnZWagAAZU4P/ieROWjRvPmKYUOA/pMn\nU5LJOoVKMLO2mvdVCooN9h4tRF6HlnJIn1N1Z6094htxJRXBNS04HskjlcWK\nWm/FCW1HSy80uUD1SXH4SKACDY7n3jWxmBxLaK2OpitlhRbBlnzjZPscTmbM\nzsstQUcceHy2WJHQLgFOQvmiYcUFiQUMzeL3v+HP2nB+jeP69Jfu2bd/C2/x\nSqSa0XAf+4eCBVbDxS/EzCsTTe6t/JFOcthpgjxr5GwsZSMZFPuXJgllQSua\nbtC5cVrYpTxYAvknHBjwm+myXR84w8QXFMtEze/WFaUnrax2eFtamO6syiHG\nck6r/1Eq6zrGyoM2TBURqdMOxKWAwnfZGX3623ibB/v/JMiWz5l8V8WkBbCG\nsCJUQXlS7jshQ1WXJ9OIi5OyIvH4fyGYG6NT6s6K/i+U8U0GN7xb6/7NoiR9\n59qjRWLE6CALWA35ywiQX09j4HGHJnnzYZ1MPDyjeu8SZOVkIWnE/S+lSv4D\nA5fg1KOlRNA9oHJ+xNdxltjxxKzi9wzRXDWMQE1PsDpqM/y+jV4vJBEYjc1w\nIsQh1QZunZ/XbrzIZ7XiraWxmKcZFbvXzYI0PQ91IfWOv7WXaA8O5c+xpsuX\nmlgbsfxSepU3EvN63s0IESy5XIZBz6lcDR1pWmkPPyhAehT8OmnzWBsi6LzF\nhjLn\r\n=N/bM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e671ae06efdf42f7ea0cb40bb6700fc57f6a35f4","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.9bc0effaf.0","@material/rtl":"12.0.0-canary.9bc0effaf.0","@material/base":"12.0.0-canary.9bc0effaf.0","@material/theme":"12.0.0-canary.9bc0effaf.0","@material/animation":"12.0.0-canary.9bc0effaf.0","@material/typography":"12.0.0-canary.9bc0effaf.0","@material/feature-targeting":"12.0.0-canary.9bc0effaf.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.9bc0effaf.0_1620248412630_0.1946806197281168","host":"s3://npm-registry-packages"}},"12.0.0-canary.a1e0f2af5.0":{"name":"@material/floating-label","version":"12.0.0-canary.a1e0f2af5.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.a1e0f2af5.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"75c7ebfc2b5abcdaa45b0318fa54962a630786dd","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.a1e0f2af5.0.tgz","fileCount":34,"integrity":"sha512-+MMHPDvJKHMIDbSM5SxGAdTH+1xQ8qX30ZrEUyl/yTtMnAawIlY6stM2+L4O5Y5ddscWwd/N67wK2kMhbnIneQ==","signatures":[{"sig":"MEUCIF7qJ8qsPRZN+1E8CF1drkCZMptlDRZE3sc+sIIUAdz8AiEAp6ipB532Nso3e/IwrNtJB/1JJCig2koljT/WLSIS2A8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233749,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkxDxCRA9TVsSAnZWagAAUr8QAI2gkojvmH8klfiduIFH\nrAgwMCsK/7gYkHl2eoZuJqIPYz+R6B/rU85Cq7C4IwUjCsyKhch5jBNFbLoH\nKM+ryfvpGyCMNFFQCzvhNJTf3GbWz1ui9eEn4Tqkk6xVkX7t/U6cHky0ASHq\nZ9nKhRCw9pzKVvmRyXdx0LGdf+WUDneNeMqUAD0TcxNjk8rFMYAkGByI3Q1s\nV+bmVHBntOZMjnLm/qTDrFctvAOv26CUTzp4QNI2qL7SFYvfMUMCeji0Solm\nT8VjNw39P/rwWaK2k+Rqz115YcjPYl40Os+i0Ush2OS79sbVjrN9NyE9MQiV\nVYhL/zF4tQzTnVcvKt8xu3cBrDFH+4B8Cmn4Q4X6RA+kpsxXuueIMZeaY9QD\nKxmY3J1thwH5zmvsNWGDGH2TxphYXVUIiAEnipgbU8TFKL5Hh18qMaz0jhxu\nRLrMWfN6+BzlIXUAVRQAauA7y0PdiD5q3AWjVy8lvvbCcvPPrNtXH30X3dWY\nljdjHWy876auTZQ2/Hkdi0FXMn1Qfs+7Z4zpD0Yy1oIapk9XuMQZnczvXmPU\nb4zysU5dmEOf2BqEQJF3lsfc2t9OnLVXuxbGrTJUwseBTF0I8u39EfkixWof\nRyX68fyGm0LXuuggmMpvElH/BhuWTAXGosc/kkkjapY0/6I4Te1N1S/YgDvd\nB0g6\r\n=nF3P\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7e20a4b86d7cb59be9ebe12cead11b1e8c7bb63c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.a1e0f2af5.0","@material/rtl":"12.0.0-canary.a1e0f2af5.0","@material/base":"12.0.0-canary.a1e0f2af5.0","@material/theme":"12.0.0-canary.a1e0f2af5.0","@material/animation":"12.0.0-canary.a1e0f2af5.0","@material/typography":"12.0.0-canary.a1e0f2af5.0","@material/feature-targeting":"12.0.0-canary.a1e0f2af5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.a1e0f2af5.0_1620250865151_0.10824154537724806","host":"s3://npm-registry-packages"}},"12.0.0-canary.06930c96b.0":{"name":"@material/floating-label","version":"12.0.0-canary.06930c96b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.06930c96b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ec30eb6a2c21c298185affdb6b7a53260563b864","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.06930c96b.0.tgz","fileCount":34,"integrity":"sha512-o1DqGphHO2xFVtpa0MokXd0m0wdaD68TA0BMuiDl9rZvZqkYzh7wa93TkcIPThJky6/WiKd6Al4xkCN9yX0X7g==","signatures":[{"sig":"MEUCIAhOG/ueCiRGcjX5ghk37KESwj1SQzXJwINNw/ScrOMaAiEAi73jXCZty/JCn+E4u3cqMNs4qW3fmFkxgg9xBVhLi/c=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233749,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkyywCRA9TVsSAnZWagAAYpgP/2L6DTDW4+Tpqf4oMtd7\nYEpfJrTpdR1gbLJpstjfATJNcaCSRlTrMOqEDb8UKceNyvAuVS1MR3+yOJaj\nbx2xYy1i0Q3/NMs1t4ZvPfiQJcMtrlCKTVf8pgJemh1hR1kTKnvGZoPMaLpB\nDFcWYlSGTQMRnidlhbaHXCCnPaYwozX0ahsvuhljQ2MK1gWBBJ1JAV/x86zq\n3F+O1jef2Vnx/D3MWjyGoSl0ytYf5TIVuP7AoR8FQh2cvGYHAyXbNMeRtR8g\n/RsAPUzmLNmPlXqHV45OZQz/VmvSdedWzF+En7zPL5sC/NL0Kd1OkbwrOgck\nLNe3FMDhhwygEVqaG0lGjsD6Cr7qCgGu4x1B43s4vbillFd4/oj/JpZqeLLj\nNo3k6ctBP6i4eR5wOwqFRLa6vcrbL24H32I/Ols4TwoQU82J2804ZVYZNiDy\ngjIa6iWQBIC3PKNyE3WGcmC75dYvrUc1plzYdbTkDfUZrV/P1eV8+Zsqwx8o\nCOE6nFb6K/M5c7AHl+HGcKPp2vdMWkj8vf9Mu/V2AbyUNBIbclh7j6xYhblS\nG+y38LVMruo35iV26vk15nGsgjAdOPOp4y8SPAVbg3qkcMEOtgJ7by2fXjHi\nzjev0n7A0uTKIvtAVacT4ijA3mvzkK0wZirgvV89aNsLzvIM027h4bkfgpZv\nsMez\r\n=XXw+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"aef50df6c5f49244a2b0e5a941794f4e3e4fd21c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.06930c96b.0","@material/rtl":"12.0.0-canary.06930c96b.0","@material/base":"12.0.0-canary.06930c96b.0","@material/theme":"12.0.0-canary.06930c96b.0","@material/animation":"12.0.0-canary.06930c96b.0","@material/typography":"12.0.0-canary.06930c96b.0","@material/feature-targeting":"12.0.0-canary.06930c96b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.06930c96b.0_1620257968136_0.35950748758705586","host":"s3://npm-registry-packages"}},"12.0.0-canary.03f525f9f.0":{"name":"@material/floating-label","version":"12.0.0-canary.03f525f9f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.03f525f9f.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4199a01711d1fa10712b34cb0143fb4d37f467ee","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.03f525f9f.0.tgz","fileCount":34,"integrity":"sha512-emVAju70MbuVuS9wJyK7Iabh6uY2/TTJ0jk9UvxZPdmaSDFjoPhKkE6D0WWq3F5EkcTjJ9DTozAnCcuzKPWu9A==","signatures":[{"sig":"MEUCIQC18K7Bd+25dK0qYptMpFNVeZfUTtFplbrIaPIDsiJWygIgWe0jCW09bNR61xE73O9QFgKiOHS0oOAX10IPWDQIJpg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233749,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkziOCRA9TVsSAnZWagAAhFoP/1JuntJelPqXTc5RuuOB\nYT4CIFm3rVFOxwooYTkyMbCuaXXZ77F25wJYGfm+wIaqecHt/H62GPLXAwzc\nWe8fEJzYoDmUg04jU35sks/SNlH2MltosGI5bohAfl+iv2XLW+k8LGw8Ydsi\nrqa/gYLg9ZfQCpVXJrzQKhKCcHzs68D/cvn5aawN3tlg6FwqHk9EWRioill6\n2mxUfvNQBz8C0oJUJ4PrpRKyLDqSIjuccdKctUe4YNt7+/Iu606qwEcbO1P2\nIT4SppKFn/fiHpb2UQm2zbNV0qCEkf2XSw2ZzxEyoa2vaVlxrErjuZe7WiZO\nv29XzgBwkYDE8BdniTLwxN4U2BgqWijCWVEqB03A9mNaktRmJoDoYI98JPyp\nhlNWrrt3KUzOwpeWNdnIImEK/FK5+5nj2D1siw/fYKmGsTj+2QriqRHhvOl0\nMt9pmwHeCwhOCJU9pwNRX21JRUQei7S6zqZqdKDDSt3xwYVOpEeRce7q+rEu\nCDGF9VHxF89ekekHHVKeeFt1eSRw6q3Q5FwqI+IU4gKS0wUiQc252miEXlQ6\nLJai/U3dFNMHXMXcLgsMOlNxKZUxjbWek8fGzzCGuclnx6sZ9nxWr9Ul1qLK\nTpImF3L9RDr2wcUN7RYuSOz0XDpQ/wydlytff+6SJUxRTcL+t6o518jxETrg\nKdTI\r\n=kAOK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f9df1400e21c75e46fe6641abb76d5840dede67e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.03f525f9f.0","@material/rtl":"12.0.0-canary.03f525f9f.0","@material/base":"12.0.0-canary.03f525f9f.0","@material/theme":"12.0.0-canary.03f525f9f.0","@material/animation":"12.0.0-canary.03f525f9f.0","@material/typography":"12.0.0-canary.03f525f9f.0","@material/feature-targeting":"12.0.0-canary.03f525f9f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.03f525f9f.0_1620261006247_0.4096120846160394","host":"s3://npm-registry-packages"}},"12.0.0-canary.e82ba2a26.0":{"name":"@material/floating-label","version":"12.0.0-canary.e82ba2a26.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.e82ba2a26.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"0022fe46bd6a2b6d2e1002e75330c1cca495f7ec","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.e82ba2a26.0.tgz","fileCount":34,"integrity":"sha512-t/ImDGp5lNccr5F7hXJHCWwUGcRaVW+C2jbgohwJw+NlE/DrJfKJBmqSX5XyuFA9bpXfMJ5YN77yx8mMiPx6kg==","signatures":[{"sig":"MEYCIQDSll3B/Dfv/zvkqRe1BRofZqPNoxjrLdbPPspk431KBQIhAMZjFSTgKhMbAg3eWz+ku6jbl5HMkrq3ZAzXEbNfdKFy","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233696,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJglBGxCRA9TVsSAnZWagAAd0wP/jF/+4ZxxXR9jK8tBZ44\ne7cofPtxr37FF0/ZK3eqWYPVt72OHITQSvfebKvLuCPHtz+KNk2jqAfq9hw5\ntkHQx7uq+xG8DTyp3zkON/fuNpPYWS+w8+CQBOLGWft0UUFZRjPtv2MErFMQ\nb2XS3gq0pEIMpZ36+1zzXTF4eJwMon5nrWs2frrRc/NfpXA15H4PFHVnf8d/\nrYz0NCsI4Tr5inKtIOlClagkwvot8yC3IWVoEuqU2YY57g7NrjrChKhkKo1y\n7UUNM04ni9srnpWf57E2O3CMez+DVN3jHZ8JRhjkk7HfGIOt+ETiu/YF4z/R\nsZXSexATptbCmb0vkU320PNFi9to0nBb2MdbBouNo5PLCSZalkPeSr/o/FGV\n7YdZLIuXWnN50W65ZqS1WHCBDArtXxHTlq6fiKTe2z9PLzq+gr/WaZARR+PG\n2ZsOH9z54E+gK1NXvP05XDgl1X8nk9BXDi+RRYlyZ2NbtJxqz/KMEunoIVOQ\naIPaqNY295OgFBV8LaCrWjHDpCwo7VzpbQ76ChKz2/384dpIavM99669okOz\nun8cKuVr18Tbrq1FG6Etx6XnU1u0cJRSAg0LzMPnbzYM1QoIcIYGQ9c9mAiL\nwPYup4cTkxguEqlVKs9k6xwyfNAmRhGSVlPQC+TKA8LmAozhcfsNa0CP7nPG\npC2w\r\n=5aQE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c3349c46dc5415cbb89b8260a8db012f44f09eec","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.e82ba2a26.0","@material/rtl":"12.0.0-canary.e82ba2a26.0","@material/base":"12.0.0-canary.e82ba2a26.0","@material/theme":"12.0.0-canary.e82ba2a26.0","@material/animation":"12.0.0-canary.e82ba2a26.0","@material/typography":"12.0.0-canary.e82ba2a26.0","@material/feature-targeting":"12.0.0-canary.e82ba2a26.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.e82ba2a26.0_1620316592934_0.6663450659744588","host":"s3://npm-registry-packages"}},"12.0.0-canary.fc7c4e5ce.0":{"name":"@material/floating-label","version":"12.0.0-canary.fc7c4e5ce.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.fc7c4e5ce.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"24c367786e57eb1639c5d9bd789d34b60a8f7401","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.fc7c4e5ce.0.tgz","fileCount":34,"integrity":"sha512-sFbDBSEP/j1Po1O7Uksds/DZ09huJxugjnjeeeZ42hInZQKaRuZMjxdUOVdw46wcxiS+ti6U//Ns+leV/PR7Og==","signatures":[{"sig":"MEUCIHlrP1PQaTPr3qYMy5stiAJx6LREfYmi3cj5ITVNzMM9AiEAtGvClLbozON77AbxhpID7l/JRcNBEtrMcAGP+nZhe6Y=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233696,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJglCd4CRA9TVsSAnZWagAAH0kP/1mdkh2pBk1nkj/Af0uS\nZAidgZHgjNZa9PQRDA0oP6EswrOvXGfC+EG223UGo4fiMTSXgRneQaYopB02\nP+z6KZoE+HLP57IfdyjpOa+SjE/r7OJXEFd9s0ISxzYfB4WLjwk0ka8c8/hQ\npkyhd0/6Ugyri7m91jlGzImPAIb2PtKbsADNMLIrsjwL0OzkUhhNdZNvebiL\n1Fi2y097vP8fPQLgViN0Fjs2mP1WGrhXWN8aGR+4Jsm5ZRjoyKe9t4x5EevB\nA+bhpZxoEgQFQUIy9pdgeWdlI4pS+0AIGlddsdEnxvntXoM0f/JC2KjqXZZa\nAAVaJBAAf6KIHIf1RgMyQ+/jrGohlonKQGO46rPj4w/CAZwFyA9JB6G4Y2pJ\nSQFM7MUAKOHMUfeaO0c3T78VoM7w/Vlk4SxdhZDN+uoP4w8sD16+DS8fFEOY\nOBFbUvGH2NyY0p4MsjwdMtDAof7GVGRTkNiYd2Bg+N4v+ObO7foG9E2uWDOX\nwF1SfSccKmTRkgepjgP8hfQ4rSQdoSIfsYlj0S6ObJzkh0I2MU35s31OFZH9\nd/Z9FSVIEK7lPEh8sZ6rXfXBVkErggrKL2vuWTxGqSYGYUoPWCMwkx9ThRKz\nOS/0vitSaRwImmavOYtDxCIeBiMlvDAZvTzOep31aoMjN6y5qWSvR+w5thKw\ntdRX\r\n=hBHz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b549929c65e0a33cd9d427a600513c663c2dae28","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.fc7c4e5ce.0","@material/rtl":"12.0.0-canary.fc7c4e5ce.0","@material/base":"12.0.0-canary.fc7c4e5ce.0","@material/theme":"12.0.0-canary.fc7c4e5ce.0","@material/animation":"12.0.0-canary.fc7c4e5ce.0","@material/typography":"12.0.0-canary.fc7c4e5ce.0","@material/feature-targeting":"12.0.0-canary.fc7c4e5ce.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.fc7c4e5ce.0_1620322168159_0.6239078295354525","host":"s3://npm-registry-packages"}},"12.0.0-canary.65c04514d.0":{"name":"@material/floating-label","version":"12.0.0-canary.65c04514d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.65c04514d.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4b93a4a536c1cdfa5896908de61f8fb8aca42ebf","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.65c04514d.0.tgz","fileCount":34,"integrity":"sha512-TgfYiHvPoyGqrJPNaWb6JBqMwV2SzBuWzsB9WBb+uWnFOKRLhgvGc1yqWCQvTmrhEhl+JV0Lj4l0SALFQ7KJQg==","signatures":[{"sig":"MEQCIQDc0t9Z6raRQL68VcG82H8sLwftS+zNRQ/eYgCaraLQbAIfdB3He1X24a8D47uw6OZmslzIg9nqmEEF6SfWn1yJ+Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233696,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJglDjbCRA9TVsSAnZWagAATUsP/jNr9Egsx5Q3K1pmp8uG\n+eMFkczF7HBprKSlDkitiVIaw8iy9Ka61B8R/lX737dI+lnYKysMGpYFIhN5\n+fLvLljcIu2FKd80E3KJyjoTGa+rVueDl3oxsLto/SA2rWwQ/aaucB4LjnsS\niVzOn/u/bFdQfzxYv9uAMNHS5ehqI7wbP5fcWgKE/bX4IThWnLSoqowD0lfT\nl+7eMowoSMSqW9Hu5HOSwUHeAe3ocW4jc0P0jno5qb+Bedxuk7174KdVA52h\nqobh1t0NyWWnxF/N0mT1OSMWMDwKhMvBz0nBd9afqH3AgTFFkNKGYDTmgAUG\nnjrD/mrFFXTFfq23wP8CM4+i4f4eEVijmbfIKonXQoMTHixpNjN1w0i8vFJO\nZENm6/uy5YeHeBmpHwcO1OUJ2ge4N4Dqr49PGmLQ2nskq5PG1NhZJHnp1nf1\nBLzD+z30KCBT6nFp2hLiMuU2ufzjjo8JDDShoSgTdKTHQJBg4toMu4mf+XnM\nz9/F14cKTODtnEvEAjkDuIHiYx6EmPxWmRyRpgVIeg87TXouVls1adQnwzqw\nDUQCEQNv1hURGB2Fpelcgvd+8ULDU/qfEMGXe1Qc6poccMcbbgzCVwkUNR2f\nPwYxHEjmWzD0LZBa2ZcDCfPKABpf1rYdQTrYZo5aZ8/JukL9RtlVRXQvjGtA\nTrCP\r\n=okBW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"01ca5daeb81d99750f9020fc62e04bc76085858c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.65c04514d.0","@material/rtl":"12.0.0-canary.65c04514d.0","@material/base":"12.0.0-canary.65c04514d.0","@material/theme":"12.0.0-canary.65c04514d.0","@material/animation":"12.0.0-canary.65c04514d.0","@material/typography":"12.0.0-canary.65c04514d.0","@material/feature-targeting":"12.0.0-canary.65c04514d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.65c04514d.0_1620326619114_0.9931092948711833","host":"s3://npm-registry-packages"}},"12.0.0-canary.c97779ca6.0":{"name":"@material/floating-label","version":"12.0.0-canary.c97779ca6.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.c97779ca6.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"24ad09867bec6b7dd9b8524aad8ed3917b785508","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.c97779ca6.0.tgz","fileCount":34,"integrity":"sha512-Z55nwLLwfgakwREPEK+JxTiSfHVhihRExbW2isEsspEV8M9gdbAQBqaPBcxWHfh3w0U4ya/gskpFn/QYK0wKOg==","signatures":[{"sig":"MEYCIQCZH8L8us6I4DsYiFpqPy5ZkNp9QVZ0MPs2My4FNasO2QIhAPll2ClPnFqRPffMb0j5usLRQ3ufSoZ52jJWKg1j4FMk","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233696,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJglGLwCRA9TVsSAnZWagAANXsP/1GkzoQqv3LxOi71e6ZR\nmC9LXeC7vFpVnHlmexzc7YwA32FAfKJ4rEbOP3tIsChJHDc3rvMd3HwRJDTc\njsSDGYLMmQ0PgbETPzy0Jpp1kCa9DH2vwZF2P9rooLNMmldcUbxvUM/375vH\ncEB5yfORjgO1FGsPyClXwOtwHKirPbqs68Q3zuGiU8n00sAv3iQvXBIDRKL3\noK2zfSDXRqyui4JVNlRJPrfuP3FV2V8dAKzJco9Nk20QCYm7tS6AzYrXkCNL\n7esBBwJ4RPW6+Ai2z1TieOokgqYetrqK35bXD23JN11X1kyfnJrPf6xtAlvC\nUXULD/4m1zA97xD3eHH8/8jSv1pvrGZcvY51Avi7nQT+70IUK/1d9oayT+XW\nmJ9o4+jnN8AbUj7wswbDsbqmHOwIzBwhf/ssoon3g22isVWMcCWMI0sMfB5p\n7uKVcz8451LXkYorxWs5yKlpZ2kjtUN2Hck3pLoD3wJLa5cVGW4aeW/DJGyv\nCNge8C5xkqOl6Ymg03kTskT2wu4auuijIoKAUfO0WPanEeU/W3rNloyf2ebs\nT4NZVG6S6tBlC1tNAinWBaoZyxxRmSkcTPURhwFGFcLWfjYr/4qir93bUpKa\nc0D5Chni4Ern2a+kaIwi8KgVBVLd4YnKTX1Cdn/qsCZkhXp046riwTq4P8Hb\nU/kE\r\n=MJpw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"046f80118629481ec1af7c937a84ce6e0fd1f635","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.c97779ca6.0","@material/rtl":"12.0.0-canary.c97779ca6.0","@material/base":"12.0.0-canary.c97779ca6.0","@material/theme":"12.0.0-canary.c97779ca6.0","@material/animation":"12.0.0-canary.c97779ca6.0","@material/typography":"12.0.0-canary.c97779ca6.0","@material/feature-targeting":"12.0.0-canary.c97779ca6.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.c97779ca6.0_1620337392085_0.4192154029531492","host":"s3://npm-registry-packages"}},"12.0.0-canary.869d890d4.0":{"name":"@material/floating-label","version":"12.0.0-canary.869d890d4.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.869d890d4.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"8ff24dfb97aadd779262083a5aaaea7e5e3b02c9","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.869d890d4.0.tgz","fileCount":34,"integrity":"sha512-bXiR5GxUgegt2GzwUGNH3di66NPx/9DFHnWZxg4kEBgnh8TGW7Hkl77YiltDaUyw+rrigu0Wp9zMxqxR+chqCQ==","signatures":[{"sig":"MEYCIQDeECd7pDY4nFcvIHT6ZnzyS6/0/dZhK44xOE4dN9HSSAIhAKCbH+LrMuagogWmQEAasYqyTYCE/+2AHJiMQawhicl/","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233696,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJglVpjCRA9TVsSAnZWagAAKQUP/iFdbbxpw10rfyY97aQU\n6CKp6nMG0Rx0uPtH9UmgAPcITSq3Zea5HsnV5JTpZR7/4iGus5fiQxOXWloB\nW2RKgS+o4NK0WsK9srhDkR7yeZkhZkk2cG89wWj2fl+dG+tjn5mXCGS3jJ5s\nUrrQl01uw0ttC4EVTgjBswOc9T5iCqJUHsM9ZvqQf82wkkTTic+oT6f+TEqF\nJcxxLxEFXaREB9/dJnlIY8Yyf9DHriLQbw6avrYTr90IMnIUiqF/5gQoIbtc\nV3fi8EJM9vUay9tEGAzJlIo8165gVzRWHC9sJg21lV+G4GUuFeFD1/ZjlxjE\nTaLLLnsE3SKPInxlto4Z+CbYY4NrXBfLjfYn7kv4OIFf5/0iWl8Sio5pz6Yo\nmOdOeN5g+jpul8ByWUTAKrlL7/QNIloLdfNLrF8HCkLby0CEohNR1BnocqLB\nsVrGZLD/MEp+2rYI20uWrdDisBug+jm9/+CgBc2/bNwXi9/54hajjgeh4O6X\ns20qPRLC+4fXf6KegzDHT56Ri5Uq0WgK5k21sVDW5PmOBQIsDe+VPHxiTC+f\n9I9H0dqD7BsfddUV/H8znR0jZqQDHjeaPwQ3AkBQ4K/vLorW38XNozwJ05aK\nLB56kV//Ucd6xZjQhfMqdXeW44+78hY2uA8dlGIUsPKriFvWp3zOCq01uOOM\n8nFZ\r\n=sEsq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"cd73688a61b81573744ba9a03cd2952798eb68f4","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.869d890d4.0","@material/rtl":"12.0.0-canary.869d890d4.0","@material/base":"12.0.0-canary.869d890d4.0","@material/theme":"12.0.0-canary.869d890d4.0","@material/animation":"12.0.0-canary.869d890d4.0","@material/typography":"12.0.0-canary.869d890d4.0","@material/feature-targeting":"12.0.0-canary.869d890d4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.869d890d4.0_1620400738453_0.4711457557244352","host":"s3://npm-registry-packages"}},"12.0.0-canary.ec22e1da9.0":{"name":"@material/floating-label","version":"12.0.0-canary.ec22e1da9.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.ec22e1da9.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"425dab9da2b73fe110d9501aba56c39b29bdc250","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.ec22e1da9.0.tgz","fileCount":34,"integrity":"sha512-/AvjybAMtsJiB+AE8NmpqRLmiq2HRN1Bj3GSNfOzNa1OokvO8wmBG4DNJzYmAZsukph12QkY99KZx6Yai2V0ug==","signatures":[{"sig":"MEUCIFXu1BBEVb82kIcIxHMdeyMEYXUW3iL+S0IM7vjg75QXAiEAyaXKRHNc4Bj9y68J8slB+bQAKhK99pyHpAe59XvwpJM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233696,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmXorCRA9TVsSAnZWagAAoXoP/25CEIq0qxUEb0Ut3/06\nXF2pYzJbnYSrZe8ntdsPXkrJ3w5Y0sT5L5i2qg8Ok2pbXotlrvqM+LW05DsY\nh1dAvvzkIfMOPdFep+bKlcrRVrLIDM7Z5/dAUIWZWs+DREoUg0guCDkoFdnB\nnnKPRCN34G7naDimFji8xJjPZx7sAUkhvQv11b0KqODOXmfLTOTwyIt8p3SO\n4cNEn8NHAMpdDFZmRAfFmdRy8K0RnnJ+SfZeDIDW8FF+m2Ms+hf8W2SBajwp\nJy1gLbqnMuV6hF4eh/cQjqgPZDq1AwBqWgL677+RSqFS5tzEpp5MEhEXE3c1\n9tZF9CEZRBwIqdkhy+rl04GmiGcQwV732zF5/GiA5vG5YGTrP4KTjC8E8HXM\ntsq5Mc+JKzNww4M1jAT6d3z3N/oSqy4anFtAkQmrlFayj+6+lgb3ISZshcEi\nXciSdp6sg+RoDWm4g8FOSJJM30k7O42XYkgePXWmX24cWUukYrfganjw1AQ+\nNXHACJukPK2SNxrLIR9j0U4C1/QybGV7Pn65JBUPjof8st4QQlYW8jKWqFua\n6dvlIgSDPkJE3YAtBaryj7UCW+3udtJXpfFS0qpTKowj05abk67U+FI8enpd\nkEK7D705FcoNiB/pE03l6gBd7XH7QQL7WHhXXbSyPOJjIolL87wd7zf+CBBs\noNFm\r\n=QLCG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"273a15f546b8d5df597771686f431c3726397778","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.ec22e1da9.0","@material/rtl":"12.0.0-canary.ec22e1da9.0","@material/base":"12.0.0-canary.ec22e1da9.0","@material/theme":"12.0.0-canary.ec22e1da9.0","@material/animation":"12.0.0-canary.ec22e1da9.0","@material/typography":"12.0.0-canary.ec22e1da9.0","@material/feature-targeting":"12.0.0-canary.ec22e1da9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.ec22e1da9.0_1620671019375_0.9101330673487869","host":"s3://npm-registry-packages"}},"12.0.0-nightly.7427449f0.0":{"name":"@material/floating-label","version":"12.0.0-nightly.7427449f0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-nightly.7427449f0.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7b9a86a030c6efc1323fc719b13d1b2242425699","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-nightly.7427449f0.0.tgz","fileCount":34,"integrity":"sha512-VtU1X0RDzM0HpNKmysJzr+mszUfdHsMTU756Y+zByuUOmZ9+S24JtAHB5vYE6B8AuKZsshwCE7kEzs8BleJ6yQ==","signatures":[{"sig":"MEYCIQDy0cZn3u81Ifkyus1lUICXih4WUaaqqr85CrQVunAA5AIhAKIuxbDpWXd/lTHja7HdYbzHhPqo0DpIH13F0L4KKano","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233706,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmX8wCRA9TVsSAnZWagAA+28P/1oNarKASr/eaL5Ph+Cf\nFYIXXpph2BbEQsElgomaDbHPHaFkM4nIVs7R8gJcykTT+FOfBxOU9aFuhvH0\nlmNlqXP2iivzdgvkCdukQw34R0fW4dTGwGKLA1CGbnvpyxmPfmJy3ry8+xqd\nFy7Rd7m9gOfMkPq8Mv4f+fBFPlbVZ49KXD4kC8XuIyNFGDwDv46HaKyYQ2wU\nHGyDo9IyKuSUcABwzTNl0fSKW+abxFEfq4kCkSv8+7RtwIrzYyV6p6cAXgqn\naI2p0hPvh8CBaVnEMGS93UxN1jqKW2SCgET+WHSnHhNlH3E/l3jV8zDewHA9\nKie2IjxTTuMaSgOKx5jAtciBoV6L8iAVQmDWTk+UC4P/ySDkVwBYR44Usgdq\niU/HNE2UWM6e/DG2Wta//R+PJQotvLN8DX5UcWWAHy5CNWCv4FoRZM4w9d3t\nFOqE0YYm6zZ0YLrpv1uMKCYGjaVXSBKRmaRhcN3RQPKVQj+JavW2rP1eVBCB\nf/JZPrbZ9BY+zFzdROgK+QMcDKm4PBZkkHsz5J8OWfUDdsDXWmcTkZ+wold5\nIAmg4vHkTWMQUMCO26ijwpVT3LE6d/TarOrGGKgVF7tHB5b9SDTB4Aa8JPFr\nXA4edjAzL/gzuuD+sSD6IMsRN4VbYvF5odiLGfW655Geba0dDADLvZ7beTzl\n+zo+\r\n=i1XD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7427449f09e9521a6deba6ba7da71038c2fc1f05","_npmUser":{"name":"asyncliz","email":"asyncliz@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.17.0+x64 (darwin)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.17.0","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-nightly.7427449f0.0","@material/rtl":"12.0.0-nightly.7427449f0.0","@material/base":"12.0.0-nightly.7427449f0.0","@material/theme":"12.0.0-nightly.7427449f0.0","@material/animation":"12.0.0-nightly.7427449f0.0","@material/typography":"12.0.0-nightly.7427449f0.0","@material/feature-targeting":"12.0.0-nightly.7427449f0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-nightly.7427449f0.0_1620672303621_0.35700613681312676","host":"s3://npm-registry-packages"}},"12.0.0-canary.957cc3bf5.0":{"name":"@material/floating-label","version":"12.0.0-canary.957cc3bf5.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.957cc3bf5.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"275a2f0c6f2a0ae471077a0c3267a4b8cbfb8d64","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.957cc3bf5.0.tgz","fileCount":34,"integrity":"sha512-viXyq8eNr7F3FLJodOt6AFLaad44QdPuCVnqWWgM2OY94+ynRdxzpRRhoRuiSystCBEJ/ap6nsMl+T7LV/0SYw==","signatures":[{"sig":"MEUCICNyp+Gk58A3yAP90N600+28kLxeQ8Y1Idb6xw+LzyebAiEA65gvC9P357CV/WnGi+wfezMijWnwFRNeTWfuoTCpSKA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233696,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmawoCRA9TVsSAnZWagAA1LIQAI0gJUhj3y/iN42Irng6\nOhr+FgC664GnKrdHzLozwbrYB0/6yBD+e63kPXWgWnXY/VU0IP7HFYrDa15X\nLQS4g1hUh/IO98ik9IKeuG7uNGVSFvPolJ9IQxf4Tsa9xLCFYyacTbRWzEqU\nPoiTD47ik3BHj6Zliwa3y9a5Ugg0S6L1wULUgidTcNVnhuuiNrdrwtTF757C\nkbUDSYiYFooY+C69D+DhqNN6+UvOqSZxHQPuhMs+ZF5xke7NIVFZJe27fUUD\nl+uvZ6/h03BIv0T/NhTiNXMFlGe1kGmkuk+6QOVUFSh0sRv78xj8QAJ/rkj5\nr1asSl5J8Wz+Nh8N6jZHwDctYbNtDb1uZ9uN3ZuoybzkTCF+sJPrR3ndhuE1\n06r/Z0LRlLaiI8sFcFU16lUiuja+8Wfa41farpMMhEuMaZJtzbIrolS+Xfog\n9ai+aEQTgB9cDhQNdzwabBxZbsRi6WBoCDrdzDrjn9TBE3yr2yjg8WUeS/vH\np/356wXq44Ir4UCboWmujnAWAJAjUpkcNlfcSh8CRvZFkFuVtKg8RuSfkIib\nHRG6ZEEJBAZhEMTK2c7tAJWycXV4potF7AlUQqoZX8Mp4OoYS5cbHbEA9hcx\nGX5ksaKXPcBIh0Hi0ULWpVBTQPI+Zh0n1jgYwYlZqrAZoBFkv58+oL5LpSg0\nzM9Z\r\n=KryU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3c29cfc65a597598e2a8e1841ef1af72450500dc","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.957cc3bf5.0","@material/rtl":"12.0.0-canary.957cc3bf5.0","@material/base":"12.0.0-canary.957cc3bf5.0","@material/theme":"12.0.0-canary.957cc3bf5.0","@material/animation":"12.0.0-canary.957cc3bf5.0","@material/typography":"12.0.0-canary.957cc3bf5.0","@material/feature-targeting":"12.0.0-canary.957cc3bf5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.957cc3bf5.0_1620683816211_0.07025987134076872","host":"s3://npm-registry-packages"}},"12.0.0-canary.88a33cd70.0":{"name":"@material/floating-label","version":"12.0.0-canary.88a33cd70.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.88a33cd70.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f67abab9c532cc97af578a51e723f023260b85a7","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.88a33cd70.0.tgz","fileCount":34,"integrity":"sha512-C8Le3Q/1bzVkOSZIyKthwytxDgRV9HDvSD0H4yCywtsfUuKPR2HrCA56XYBzZx+hgbxV0H0rf+LjxHSLS4nUWA==","signatures":[{"sig":"MEYCIQD2YLTClCWHI8uWoV1IIioG6wHiETxiEC5ej5sI3J4KoQIhAMS7KaltYGIpVcMrupLibHQCkp+vMo/3l6SJuj4q0rR+","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233696,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmcsiCRA9TVsSAnZWagAAxHsQAJgNtO13houmkYPeHkER\n3Tn+Ch74zYTtH6PveBNCa06K2D4DTwWuKghwCrHvVWd9xq48EVHGrUU7HIcs\n8kRCDvl5U6Uy1z6F7F2KRyQbwUlS85Xxx0W0/HSfgc/sYb+1NVBV+gcCs3FX\nUSwnLkvmVG/RMJp6+/CaGP5hhDBRtEKqe6dz01YRT6fiS8L35LHLTX84OC28\nxTGgJX3BfM/ObofO+k9VNqSaJfVCF61hDrlzTicQMRHARJ2qPKM3nSob0310\n2XPEsFqCp8FVMBPFMmNv/FhmLKyH9CL26qiBEGYi+B76lWjOcKi0C6iK7Ftj\nl/mmSx5D4I5C4LwjXlXA/jO4XzqVmwOcJ3HiIBp5CIF1h8jbdnQky//4+ono\nD0kE+hTIVsrCnQo8RqlxmKKaaVvnrPtPAt+HlWBC91pkOFCOHqfgv0tTxZGI\nwy07RfabB/UYhZEuQMHcK7ymYQ5aFhxxiGzUH5hs2fCfIS2Owq62rAux36tB\nqp4+D7/Gcc2irxMjswju8pXLghruo297oVgM9F/W7zDf1nj0iH/fPWCJZYiG\nlXiaVVhfrilWZ9OeVl4rjz2bJeWB33fA0GH8oOgSZgQ7g3eXpFAKVuRC9q0V\nOGFxk5SVNRNQ+X0QkeMdIpt9Pk7nmMqPY0QMj+bB1QL2HA//c1OejZ6cbGrW\nKFpw\r\n=3Se8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f1d341efc173e89bd2770326eaeb1fbc581c9648","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.88a33cd70.0","@material/rtl":"12.0.0-canary.88a33cd70.0","@material/base":"12.0.0-canary.88a33cd70.0","@material/theme":"12.0.0-canary.88a33cd70.0","@material/animation":"12.0.0-canary.88a33cd70.0","@material/typography":"12.0.0-canary.88a33cd70.0","@material/feature-targeting":"12.0.0-canary.88a33cd70.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.88a33cd70.0_1620691746080_0.33540840754987244","host":"s3://npm-registry-packages"}},"12.0.0-canary.d20dc6dba.0":{"name":"@material/floating-label","version":"12.0.0-canary.d20dc6dba.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.d20dc6dba.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f363f94993ce878bce9df604ba9235a7eaa835fe","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.d20dc6dba.0.tgz","fileCount":34,"integrity":"sha512-oUJmBDvht4trxrcDuvPFYXYG1tXNAu2xGp7G0gprB7Quw4UBF7YcSvN5zWQj3Q6wdNASWbFbi95D2xpmTeBtsA==","signatures":[{"sig":"MEUCIQDlnlTTYNryeod93wsMEHPZr2KtQdV38H5FCSw7J0iURQIgJgC+zRcTlVeblnbZxW2m4OB+4IB5RNPqj80DJ5IaIaU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233696,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmc7VCRA9TVsSAnZWagAAlLEP/2agZCXh0cRgL6U16bLL\nn0dBa0saFVaEJvMBzYkVi7ExxS5EuVXuFxmPavTz7C+4ALq0/js/PMVqxRj/\naBJ3lCm//UduwZe6XoCASaJy0xNVbinrukzs0M+KJ+sPOfnxX8PeLHwjttQ4\nffJ6rKqseB9zafAjjwYAdo21+hpJlBEUwlq9NHNsIyXzcNgCZd2Z2/WpcPbw\nGV560PQlyTiahjONlDBWH3zLhVM4ynro3o9xOAm6ruch6JS0ycJn7LeqMcZO\nouZD+CNvST2f02LUowfGUYAFBlzV9mezVtiEmLcBu4qBj/UJSkGWoBG28TOP\nnhHhGjDgq3UqT2O9fl4ZvNkDeplg9xXV1htyZFwi2t14nL2BmMYMPd64dbab\nF8GqFrHiPV47dgB9QcQcRLXWj22y5BdicOsAZEZ+EH8Hmu3NroxFSMhTTVfX\nIExVB1P4PgFHi0pQ85Vcqbkufuh+LAWSuy8pTQqfaiu56F++ASrgQ5ER/Ync\nsNEQ13w+KvPAl4GqPo35XoFyTjzxpj55VuWpXm0a+Za5E+R8BZH8miIg3ys8\nwyz5kvg3oR31JNoGs4a6MdE7fkfi4E1g7WKlyqczNytb6My2zFUTPOoYcE+T\n3Rel4vNAv1XeIQ1tf2CYHXQmW4hQtTRACZBvxW8yVKmsOfdrP9RxoOkFYGEi\n4lqZ\r\n=H+Bk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f2980d3f7fbbd8d2e3b824a765f7fb03096bf11a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.d20dc6dba.0","@material/rtl":"12.0.0-canary.d20dc6dba.0","@material/base":"12.0.0-canary.d20dc6dba.0","@material/theme":"12.0.0-canary.d20dc6dba.0","@material/animation":"12.0.0-canary.d20dc6dba.0","@material/typography":"12.0.0-canary.d20dc6dba.0","@material/feature-targeting":"12.0.0-canary.d20dc6dba.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.d20dc6dba.0_1620692692769_0.0316089492203131","host":"s3://npm-registry-packages"}},"12.0.0-canary.0ce2fdb02.0":{"name":"@material/floating-label","version":"12.0.0-canary.0ce2fdb02.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.0ce2fdb02.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7c61da1d2511c5ed98626fdcd1d407873577f3c8","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.0ce2fdb02.0.tgz","fileCount":34,"integrity":"sha512-lyUSPbuaXSwm0sbQKHkzjH6HvtUSGA3iywwLGrbAmFNi18ZBtXOwSkzTEcUKEFaJvBVTQjBzD6xZfa0utA8vQQ==","signatures":[{"sig":"MEQCICxZ0TPnNRx5q2sJTOyBaVitFq+6/QyfkKPZF78raFqvAiAF9GpifIwcfhf0I3PEKpbA6x4nMOtmxJ98pUJl5aERiQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233696,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmdbGCRA9TVsSAnZWagAAQpoP/iOMXMfiZcCK7jfpwlVJ\nH/5NL+mge5uvMn5g7q/A7bGb/MCqYHw/Xz4+MqyR7vt8q4rUqbHwzpIuNcX8\n7EZVP2DU8606fqaVHAA0U9wZviNXgp8yF7vSXdV62/u7VryxBk99kCs4FfQj\n1NTrJvYQhY4Nx65uKLYq5YeimNA29Lr5OWjb9Me8YIcklpxmW8NGYuDlU0yW\nJ9k9mxoAja4/WfQjA/fq4FfqBpHeDfDooNtnAg7JgR+lFI6EyEFTsKAi/78s\nKz+3uB6Ca6Zg/FkVZbP3dR0F7Rx/Y1xhaTlEemKpdQwmnSQYYU5NvCDY6MCQ\nG3eycPgnCuHjUqSxCI7CEGckTNjq1dd/8tpKHzrxiQsY3mDDWscbffQkXtIs\nE8gGPGXAtDyA4N79R02/pAhQCjXcIfKHH3N7yrJ8cnwjYe2NyCDT83P7v1ED\noX8XbMBkHsRtwaWRFaST9DAHIz8GLxXeg4Xvj97NaEoA1zJmCfjV6gGvpuU2\nLpy+hXLdTTemH1snSkicOJai9T+y9aJzfpOpjoJN4OnINd4LcGSeFo0+KrWR\nJkTOQeV1Zuiv0AZdhvgLn2ERLmNCHb4d5j2W/QvWxUSUe+JEuMzKb6hhR6mM\nYo2hMGRx0QcJHemH8KO6Z1XM6lEhSDcIg4qMEJh/FD0RB/IJQYT493Mijn7R\nM3FC\r\n=I8F1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ee2139d87a1d755a50dc6bf0a6dd53a2f39548f4","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.0ce2fdb02.0","@material/rtl":"12.0.0-canary.0ce2fdb02.0","@material/base":"12.0.0-canary.0ce2fdb02.0","@material/theme":"12.0.0-canary.0ce2fdb02.0","@material/animation":"12.0.0-canary.0ce2fdb02.0","@material/typography":"12.0.0-canary.0ce2fdb02.0","@material/feature-targeting":"12.0.0-canary.0ce2fdb02.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.0ce2fdb02.0_1620694725819_0.1482142947000098","host":"s3://npm-registry-packages"}},"12.0.0-canary.cb162da37.0":{"name":"@material/floating-label","version":"12.0.0-canary.cb162da37.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.cb162da37.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"8e3e735041214bd6b8495adeb80c405fce71a6c7","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.cb162da37.0.tgz","fileCount":34,"integrity":"sha512-r9OXEF+7uo5wqYCHDXYD2u1lARtqtzIxGta5qC1dD5TU2PEynp212h0dxPJYtDKIkL57IXxSvAw0mptaTx/S/Q==","signatures":[{"sig":"MEUCIDS45w24lGX63tDxmdM8RXT/yFh5ez7mf+bb8kUP6BvoAiEArC8qt6BF+q5DojQ+UI2QpZc7XxRGAIW6gxWxxJH+cQc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233696,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmeTGCRA9TVsSAnZWagAA83IP/39wal0KKIwGLEVO7uq/\nCyLERDgS/NaefgALLsR+sV+/HAQxBcKSChj8oIet39U0xrb9LTELmHN48ukG\nxspkQUxqkMRHLKqP7Mts+J1hL81mjTuYh6TRJ4F+TecdHsAQuYoWgR+8hYhw\n4NmfJOMCSlU/g1xO148Ok7poGuMRmmcW4AAF7LmT9fixn+6GTDXKgWGrQjMg\ncSZ+Nt+jvYX9WfKb6ZQlqcrUMfU82OaYeM5SjZxzV2QdDephMcS9KeyFslF+\ndorEqtPaVszcN3NdlqH/yXb8o4GIUxoN9uu1o+po2XXn5Dw6VpckU9VuZbWk\nBgBN7tTdtZQrJiXmBMzR2bVyXU1VOpdVHTIxquUsTPQ9mEn8WYVUccMozXTS\nJuZgvET+M2Ol+H+JowKHxxaOSSNSYTNHJNyiFvKJxNMtgrOGGW4sGQrvTgku\nYqF4qygrRnfw4S+YTnn9ao8JE1K7nGxYoiB+1oTV/thKfyPnAsLYRkJ3jNEm\nxI6SLqcsb/i/SKsVahl5zgVDUakqxHzHUzFK//kRs/Ea7W3MFvbN4bizJ7C9\ndF4z+bvwhOFD+YRbPloN/oEriMubBTjqAxlTPwU6k2p650arW1PFZRlFLngn\nIcqAnOzI4N3Tv3NYPLJekLL0IQ/vVXApt8PUcLpf5FEdOzJ78ozUvo6RATq7\na7HH\r\n=Y7WP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"9858adcc9ed7b1111dde19951ba96847bad0beac","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.cb162da37.0","@material/rtl":"12.0.0-canary.cb162da37.0","@material/base":"12.0.0-canary.cb162da37.0","@material/theme":"12.0.0-canary.cb162da37.0","@material/animation":"12.0.0-canary.cb162da37.0","@material/typography":"12.0.0-canary.cb162da37.0","@material/feature-targeting":"12.0.0-canary.cb162da37.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.cb162da37.0_1620698309564_0.22273183424283616","host":"s3://npm-registry-packages"}},"12.0.0-canary.573dc7ffd.0":{"name":"@material/floating-label","version":"12.0.0-canary.573dc7ffd.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.573dc7ffd.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"29d0714fb3785e6180088db600af89628ed18ad4","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.573dc7ffd.0.tgz","fileCount":34,"integrity":"sha512-hVapvjuTPgBIj4llFz+IXoN0h5gW39O1mGNyOGCdkGcNkr3SXct+KVDXNt/0oq6/C0w+Ma488ktUnx/xKwDTEw==","signatures":[{"sig":"MEUCIQD2bMRUoSsi7ygjBjWRFkpM0YGDlsVR6YABMEhA55NB9gIgbzqmKPhwme8wRhyLr2k4e3xIzOMQjG1ufy3R2DlK+I0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233696,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmek2CRA9TVsSAnZWagAAnUAQAKBYp7b6yj4hZ4XhGZ6X\nKPZmpLwM3odwKSpv1DLnZl2EeFpF/NSeiDvWHrDAuJQq+MkUluueA0S2uzmP\nzmbNyR+u6PlaH9MBz9uHK4Hw/pur00TqVZ2l8Ct35JqqRf8UXrAn5qkN6M4f\n2GmXN6cP09O7iKd+ZrD3VY39bcy1+l9YuWhbpSgeP2Zp1Z4dUEBErQpEBpP6\nccRO99AxuAc8TUOFJyEc82DQehqDZ0x7k7o52MKHWmvHGistevFuUM+Xc4a8\n/SfvB5h2fnReyT8zsKZLPqsqawoAtgziVSdxI55R7vzbQgkAajLSuxSiOHGg\nJ8GOjt6Sl8I4AsLe7TfgZucFQuo/WflZeKaDJrhSIRTyK+Uqg6cl8y5gH2Mz\nDYF/dQpecNJw8g9w45FEc7xUMj/5UE62KJdsQvpYJNLApIZERw/hgYIO5lb6\npu+24/fR86rIN0sotueo+3HmRZokhg75tYwQXPlt7k5kZidBiZ0dPaPwjRxD\nrEM30L+mpPluZY+CzrB+KPHSzdsM6QnUMoodqeDyXJTSvbFXkNCIjEEK91J+\npHtI+uJ3L4XwPK+SWT0+bCQK0/ZIZc1Pwa+1ZQTuDiv64FG2nHgI2N7120Su\nmCgmbx5nC/Ag1M15SK0RkMTGSXDIRNS5hK6IJy+Hh3XV98mAzKOGBYhRTtGX\nbqVZ\r\n=qg81\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"67aa299a5066425730ea2e8558f89c111a5ab156","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.573dc7ffd.0","@material/rtl":"12.0.0-canary.573dc7ffd.0","@material/base":"12.0.0-canary.573dc7ffd.0","@material/theme":"12.0.0-canary.573dc7ffd.0","@material/animation":"12.0.0-canary.573dc7ffd.0","@material/typography":"12.0.0-canary.573dc7ffd.0","@material/feature-targeting":"12.0.0-canary.573dc7ffd.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.573dc7ffd.0_1620699446219_0.8963172531030992","host":"s3://npm-registry-packages"}},"12.0.0-canary.d5f6ad3fe.0":{"name":"@material/floating-label","version":"12.0.0-canary.d5f6ad3fe.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.d5f6ad3fe.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c32226249fc7f4fb26b5f63fa185c96a5e14e48f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.d5f6ad3fe.0.tgz","fileCount":34,"integrity":"sha512-GUCMg6J/XqG//Q65cZacwk0hWuAT1uJOZnubQiWy21RB/QroH45qlTkcAzee7k68YCot0JyA9HFPoiTeodo+yg==","signatures":[{"sig":"MEYCIQDekV2yqBPvCyQni1k3JjMZ8IFmQgSi4m/WW7KT/w6x7AIhALNLwFFBVMtBIhnoGpkV76Jpo9UdIxii4XpJ9grp6uyW","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233696,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmxHACRA9TVsSAnZWagAA8vUP+gJVyuHN6UiRKUkBgumg\nlLIsRzlHz3zXzYrf5hEkmXFEswjYbMtv3P1vwch/LnsghZ06xOFQHDaiRwsI\n/Q8yhb1vEwymft9uVc3deuBqRGnpz5V9Nquo/mrlldszjdPR/rowfAv778jb\nQOdRd18njHjV6CIMZU3RDnr+N9GVIOweftlw44tCQkERdet6zIJlKNziyJdm\nhHh8QT+I2LmOMyiW0Li98Jk0rWFNt41NBmfLxIl/P4VB5ZVpbQ7UJZU7Pxo0\nI0Y55Lq1CeFRbBEhhVmNdkQyYZEsRDzhm1mxmRyhTs3mM5nMcYx4xA6XKM6Q\neXI/GsIRYlGFg1WtX17GShdwSsP/8/Ib+wPnNPKlMXUrZk+96sAhuhaphLiT\nciUqQfjtoEAaG0sjpmAhQ/0PCSWzzqkDWK7FoEjZGoEiZf7aZ0oIG/gxavjU\n0qc5L24gEUC6AbHSigYku8A+tHnX6jOidcnNyMiZqmjv1Xw8bgQGxGpwOBt+\nYqcnUdJIye5Hg+EOW73s0mcBLzYnv388s4oEU9TWjvO9aEE3Nhc84ZReWqvN\nfon8z6ei8CYxlGC7O/yvek6uUPo4bhJUyomd2YFawdN2ty0ZXl8SKpKQiYu1\n976Q50aeq1Np0dL0RqZkudlsWlFWRw6DVmxhZMwV2jcSzPURlpOJ/oc2PXb+\n6KiN\r\n=E1L+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c0bf85201107dc8a95576c2392f5b1771bb2c969","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.d5f6ad3fe.0","@material/rtl":"12.0.0-canary.d5f6ad3fe.0","@material/base":"12.0.0-canary.d5f6ad3fe.0","@material/theme":"12.0.0-canary.d5f6ad3fe.0","@material/animation":"12.0.0-canary.d5f6ad3fe.0","@material/typography":"12.0.0-canary.d5f6ad3fe.0","@material/feature-targeting":"12.0.0-canary.d5f6ad3fe.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.d5f6ad3fe.0_1620775359751_0.2858260773324641","host":"s3://npm-registry-packages"}},"12.0.0-canary.25751d2ed.0":{"name":"@material/floating-label","version":"12.0.0-canary.25751d2ed.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.25751d2ed.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"01a598a07b16c359ee009df9311e2cb0acb3b516","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.25751d2ed.0.tgz","fileCount":34,"integrity":"sha512-QgDEE+o7Ovt7gzLUkezYi7SCFP/64epQMurZ9QWVyvRMDyDDy5uw8H36fvBj1rO5bnz1LzhK9suIaHD6w/oQAQ==","signatures":[{"sig":"MEQCIDE4FyezI1YjdteMe7LBnCR/5r8I8XFpHLDDKSZeYcm3AiA0EMYMRKO57k2HYCYB9DUVfOZ9k/ek7+bQvsqy09r6mA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233696,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgnAAqCRA9TVsSAnZWagAA9XEP/3D6MsyAOHuNFfQr31oz\ncdfwoVGaa1DHxvE8Is/+QP+H797EsC3M+2oh60ecPDwbFg7foulU8uatxPBZ\nIIOsY15lbeGJ/9zrChy4DQ7ttxogFoI2qHBpbPmQjjpOAIkPSfsPumtJN4Zk\nPlmDHAgTjHIiYcp+AkWLXDbtu0ZZ7GZPPb26llKbJ30QYB66mCtWzWFUsDXc\nLQEqyf7g94VZnNQFrZ8YnZSZoWRveexOGZzP4umcZbGkw/gQvkD/OBx5y8Tj\nVn/B7PVD4xpNGh/8gWvWcBY65Zsp+z2YMoWMnWlz0h/sRn2zeud+aGx3fEUP\n2gyv0pew97nU14xadvcI45TagSH7qrFUFvkSvPiFdZ1f+tWl9RVPLMcUKmnH\nzeillJddFiD00grNwMQuxjYzfy3xWvyu/0c0ualqUNmh3QRW7OS/uBORXfsL\nZpV1OkzOo7aHcE7rDM8U8MwmGh8UQml6nRKFIniNGJYizL74WyW2A/TZ6F8p\nXqIeFr5sr0WoUs1WRR9azCzYBnlclryzNKykeXQYwmVpvQTsThBOCymHf9fr\nmr5SsJpSKlemerh4/Xik1mx216AnNGaVmRDlFwvkKTOgYAVUUJHP4V1Qru1x\nZnShDGkHQzxwnM3AN5JLzCf7QPG17uqAGkhmiHbbzyubLoKxpg0gRYUI4dEH\nz1sW\r\n=HlEl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c38dadd226475a1dd91a992667019eefec273bbb","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.25751d2ed.0","@material/rtl":"12.0.0-canary.25751d2ed.0","@material/base":"12.0.0-canary.25751d2ed.0","@material/theme":"12.0.0-canary.25751d2ed.0","@material/animation":"12.0.0-canary.25751d2ed.0","@material/typography":"12.0.0-canary.25751d2ed.0","@material/feature-targeting":"12.0.0-canary.25751d2ed.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.25751d2ed.0_1620836393563_0.15814296588155807","host":"s3://npm-registry-packages"}},"12.0.0-canary.a23ecb682.0":{"name":"@material/floating-label","version":"12.0.0-canary.a23ecb682.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.a23ecb682.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"659901e2544db3f4bb4b5f5f6fb2acd545f7a386","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.a23ecb682.0.tgz","fileCount":34,"integrity":"sha512-LLSXv646zuUMto7LRs+8nH9x8o2dkNKr818HeobLAr6zXMexZ0fcmosa5Xom8GlHIs9H8BxX7iegyx/kH/y2+Q==","signatures":[{"sig":"MEYCIQDrLR6fo2R3ug64uyYO6TJ0TJZEgf9AmCXe7KEnx7aG1gIhAO0H5TO7HfTsv4/RJ1rnxx9ZftX8iPomYdozxTOOBs3F","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233696,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgnB0VCRA9TVsSAnZWagAAcUsP/3aitNjTnBdtE074wHh1\nDbGi+Ja93rZO+J34KtFTX8rA8it9Di1PcUv1x45cpdyhnHkmp4o5oAnsGy8Y\nCWXa6EHowzdN+NjamPdcBlJEhGe4elJ0c0slGe/dSmK7Gv2WZQDbOGfDGxef\n9Y45W8OG/ofda48sTV3Z2spc8pO7gi2oRPz1Wsf2y4UG7I0Ila1QvrVoWkhq\nW7VSL6DbYWPTqdTqbsu9xZJA1Z7vvNbwxM192UeImW3NIcmrsK0RieuGS8hG\n5aaQbvTXRKcMJ6yyZbZYNU85NFof4cJK8NNqOHSkNJSbY35cvBqOrVWlDqjq\n/5qjU2l0bAoSb984XMJscv9yPocZcs/thUe2ibj4S+TYT8uaPsmFo/opzjUQ\nmORntqCEHkZnCH8kNg0DruhRnpI42Jjnz9gEE07S4gnfZwHVClW8dkXfAzVM\npNLyIeMV9nU79gbJU0CGnyKy7N7oAipPIbalMsNIpo7RhwMjBwUb21czmK68\nyxuZaCoFZaj5pZ0qUH0b3N2giY3yPUAEu2fTwNDYuY7WPhjH3CcPdL2P6I6Q\ne85tdxJKmYW3C/oMgW7skaJVSgCCnQdphOHU//ouqmRK7/Rm8EB2EWNjK05s\nPJoGpf7g1y7D1EI9AHxmCNMTNh5XgJZmXBt/F+2x2Uj+t/mOCtZLD8m2zCM6\ny6l8\r\n=EGce\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"da78c3f024a21d0e0df18a30c887082b202d7269","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.a23ecb682.0","@material/rtl":"12.0.0-canary.a23ecb682.0","@material/base":"12.0.0-canary.a23ecb682.0","@material/theme":"12.0.0-canary.a23ecb682.0","@material/animation":"12.0.0-canary.a23ecb682.0","@material/typography":"12.0.0-canary.a23ecb682.0","@material/feature-targeting":"12.0.0-canary.a23ecb682.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.a23ecb682.0_1620843796858_0.15524598901976505","host":"s3://npm-registry-packages"}},"12.0.0-canary.33a954852.0":{"name":"@material/floating-label","version":"12.0.0-canary.33a954852.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.33a954852.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e3597f794a693e9a6b6c410809e7986e9187abfa","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.33a954852.0.tgz","fileCount":34,"integrity":"sha512-OaX6BTd/v021Gw4DHDBPaOiPT6k6Xxt1R30TIfukRHMomJ0+JA6RU99RWpya8ZUNFIHb6FwmTpGxbIk6PwLllg==","signatures":[{"sig":"MEUCIQCtqO8gKc/J7oSXP/KfjC3KRA7i9yOVnWegUGttzSz29wIgSGP4Lelkhg+8hbGvjTyYJ67K6chTGKwVXpHMvga+x8k=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233696,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgnUDCCRA9TVsSAnZWagAAS1IQAIsTAOIBtF9kBYmGyYTT\nFsBqHIwu34gsur9ngZxV6ssajBR81CWgsp5sBZb2tabEUABEg4M4f00z4LAo\n3QPfEs3w0wRhSlYIr2Utzqv5nc/rPxDc03/LkfPMF58PU1xl7HRLrQEJ97Zy\nKuT5bqLyN6uUv5kO37sy+zjtXOVvGMHthTdtganOJioVET4pKAPbPS7Wn/h0\nIQsdo5G5dRs9xruiQygpHiRSeEks8aywTyePtFY/mVrWpFhh0rRopRRNXltp\nzktlNW43ZKE7U4kiAf5b0I05WocWaav4s95/gHl1rPCwrXlbIaSdlYNIZLZK\nLwyTmIzkBdBA2oBIdRqTkFmXxqWTHu2eOA+lwB+NiyNiXIUITrFfQK2beng7\ngOrx9dsLYxzzdWpzQ+nhPVtg1HJVpfLB7QjNKpwzwdmvUghPQETqRYqipwjX\nIvC1aiYs/l1dzIqJ/bmT8jHaHlxhKhihxuDWRlUtAhD4Q4WhUkLH1RnrhEEj\nkzmNwDIfo3z+rq+lrxhOyzTjiidcX+Vqtc1PaWvw4VxSC7vaBhfo8L1T2u3Q\ncCviQT3DrAPzRT82Kn+Q3yXOSUbXi52wdqC+COJEMXksRgO/RW4tR1g+AsZz\nizowj1OL+Fjp+1rfcfr9jB/kEaWk07Yl6Qd0aGpUgW9r8TqsVKPUzvqt/KYV\nJEpa\r\n=2l3d\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"703dd5ba6a1225efec74655d3393690dca1922eb","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.33a954852.0","@material/rtl":"12.0.0-canary.33a954852.0","@material/base":"12.0.0-canary.33a954852.0","@material/theme":"12.0.0-canary.33a954852.0","@material/animation":"12.0.0-canary.33a954852.0","@material/typography":"12.0.0-canary.33a954852.0","@material/feature-targeting":"12.0.0-canary.33a954852.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.33a954852.0_1620918465531_0.11198146119572461","host":"s3://npm-registry-packages"}},"12.0.0-canary.a4484849b.0":{"name":"@material/floating-label","version":"12.0.0-canary.a4484849b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.a4484849b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b8951a70b838a262a347ff9de6061c343ca460db","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.a4484849b.0.tgz","fileCount":34,"integrity":"sha512-BNmtShPl7qhxsu/0oczXSohMNZO8n/T3BmPO68EfEUQHZP6THICS7PWUUYBOGZjsBZ8509CxeGfzgGwvqfbbXA==","signatures":[{"sig":"MEQCICc+Veb1ls2qc71vCFy7Q8U8ydBHPfJIMLAf+AhxWHDcAiAS0+onz/BdY5LnaqzV8KTpIfl4hduIbegkKunUUc5/aA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233696,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgnUY6CRA9TVsSAnZWagAAVpsP+wWX5gm2KIJ/RXPOhHm7\nwlnqw73hG+FS9NiPkrvYf7wl2lJEH1g+/KTuB++lI7Y5Y3x7S+AOlLk7nfQa\nnDrspoYhfU4XfR75YrF3AmkcdUD4065glyNlDvvbL/oVJVzv5xi2bWXwuDIV\niJSEc5cmAnvrto3xgB7BjrT4Tyj5qUQmYJH6QUYcTHLPIbVc93vjFu1df9lU\nP4ysSvh8NKI4s/XWkvwJa6sHus+YH3s7MraYluWTpk56W2dQcldIOac8pGuM\nL3HzD3W6tU4VVHfGY/qDa1Z+PR4TgC80pcAOcawduG0I00xJf9Jxuf1J1HNY\n02HZiKi/Y8FrUIwm3wyU9Wa+YWEV9sDicc7RwB9siufeCo907TFvLfg/YNNu\nMRrpBt9tUbt4e3EinWqpeXyawwypUAEPVgNVTvSSzUhA8UlmcdX1qTuXXanD\ndrnqHnD9T9CkueuiqHbHO5QocgFKnDqGttDyC/NRkfyahRXw7YLgjlsMrO75\nnrKtlYBVHJ8DB5vARURDuNh6DEMOa4Ld4rJPTJl29Fh/icab/9Isnns2fjYz\nabEKAJUjZdSIttHaNmHI5F6rPEHqsHQIHhk7gaM1Bzcq0OCCo/WTNnoAQBVr\nlxwtILbdaqH3RzYheMHpg8c3bkAkJ2fXtNfN/toFXgX/GPbh2mXg4qJe4MXq\nyOPS\r\n=oHU+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7908229b1205198ad87858e49ed29ee3836cebfc","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.a4484849b.0","@material/rtl":"12.0.0-canary.a4484849b.0","@material/base":"12.0.0-canary.a4484849b.0","@material/theme":"12.0.0-canary.a4484849b.0","@material/animation":"12.0.0-canary.a4484849b.0","@material/typography":"12.0.0-canary.a4484849b.0","@material/feature-targeting":"12.0.0-canary.a4484849b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.a4484849b.0_1620919866396_0.0760683913871345","host":"s3://npm-registry-packages"}},"12.0.0-canary.b4c3f513e.0":{"name":"@material/floating-label","version":"12.0.0-canary.b4c3f513e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.b4c3f513e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"92142071e94f0fc33615fbb0b2dd0782658f030e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.b4c3f513e.0.tgz","fileCount":34,"integrity":"sha512-/jcdbcA4aVh8PW9zykA3irKS25AK+vJoJMGQVDsrbwZeU6ntluYH2ew0V/lfavQKIdKoWS7Fg9h+dLZnR9iZhA==","signatures":[{"sig":"MEQCIAsHjqKxq+YRq40zIn8Pjh2DCCJS7PiRJd6lQyMb31SEAiAvmMUosnKhEfnP1DTPxA/ekbI1OGiLXIgEJjh5aH2y4w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233696,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgnU7pCRA9TVsSAnZWagAA1H8QAJejc7RY4MFUpLmOYP0E\nCGqKhoCwsSnMBJ9DPKnKg8eqs1RchfcLBqPniwUUHI0vsBPRBXZM3ZvLjTrl\nHn7TfJJi3q+F/0xqtiI3M3HSjAngQj64c1XalPmh9xQRSM3DRDNeYvjkjS0+\nVfP2BrFLarV8qCnOBYfCHootwAckBq5cOoD1wFQLN6g/cwkFXxcmqaHzNAtQ\njfM/ywjsH7Aq6zKKqxiRYFSp0UnvFsH9iL9pNwl6ojevvx1ORISWLyOhEsK1\n2KP5mAuFuZGrG23JTy8fRZ5IFMDyctx/QokH6fjbOIt7N3mpVsgXEthIAaDb\nS20Cp+Xp9aCXkzdad9yIbFgpgz/ORq9bhmzSn4b4pEoZq+PE47vzZkXdht08\nu1Wi75lr2aTNSCG/alC/y7b3WTayAftIHRDbCMY9cq7qxrO5b4ZPcVK2sdZs\nCzmRkOm1DsuQsxSicSOW42fFYHxaejoQMz5WJG+gdi0bcqg3xciT/o54r22k\nkEDkoqgeXz+fYMXNGIwSTe9bxIbyczTBJVWbZ9o3fE6nCI3E/rYx4ovDS5U1\nIuJIcF3jpn2bvlk0tMlv/kS2yzeuwaQe0dpgNQVVSfJNL9IZ2BYGXuSmLtjr\n4wlmwlLiKoDNRh3wbaBl3EaoHQILSyEIAM/VQF4KwqZ3teaW2WoP0B4bLW2f\n1ex4\r\n=yAoE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c2183e7caf6f0437e64e41b632f75d33156547ab","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.b4c3f513e.0","@material/rtl":"12.0.0-canary.b4c3f513e.0","@material/base":"12.0.0-canary.b4c3f513e.0","@material/theme":"12.0.0-canary.b4c3f513e.0","@material/animation":"12.0.0-canary.b4c3f513e.0","@material/typography":"12.0.0-canary.b4c3f513e.0","@material/feature-targeting":"12.0.0-canary.b4c3f513e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.b4c3f513e.0_1620922088530_0.1607295224752916","host":"s3://npm-registry-packages"}},"12.0.0-canary.1a8d06483.0":{"name":"@material/floating-label","version":"12.0.0-canary.1a8d06483.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.1a8d06483.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c32b3433f0e15cc2e5e95e3cf9c82c2cfeb9c470","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.1a8d06483.0.tgz","fileCount":34,"integrity":"sha512-m5kiH5bYvPLYtoFNIXmfzTYiaQ82QeMLhpjwDvUJfBxR7TYYWCC3yrKU2ehmus3vGjlB8VsKghbW2KubDifkWg==","signatures":[{"sig":"MEUCIQCck+hiCg5th+OZ+FNRK8paR1BhmTv0VuHXx7zbXO45ZgIgIMslii2roEKmkpOAygFu+pwuOmgbWwbiToKGQSH9bGs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233696,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgnVA6CRA9TVsSAnZWagAA3uQP/ixs61lS0dG47bjcd/5T\n5LPF0YU+T4/+fTSEXWFS3g8Munnwb8njXsg17GtihzM2eO9Xb3a1g2UAgEby\nVMToWY5aQ1qyTcog9kwc9g1pI7wOYM19C6xRSwABuGF97lCE8dBrtsR0asMD\n0IZTE9NGq0QHtAqUqRei6322sDj/GrG8i6XCWh2odEbPHIdEK/542lGekhTV\njP9yrEdUbtO1dwDYalx8abarQt49dlU7/Z+yKTCnanfECECA3lezg3fgRI32\ncP9Uy0eiypbhLDq8q9j+1Q9eGBpIjGaooT3tRVsCdxEimq70zz6lHWRnync9\nFuvGb3dwWT2bLusCrnU3ftGxjolrg62U+CjPvbqn+OkPogBcrlvuN5coe644\nsNbbE7+kB8K2ohMK7qbhy84CO/qPwrJY5Dq6mkXGp+HC4IPbCjdKozXyYxP6\np0f2+P4P4aoxDZpI8jZ6nW0lNg3mWJ8gqCygDwet9PI8mmOFEDfzUOm4Oqz+\nlKrNgt5NT9BV5l/bY9dCyR2sz/IzYV2JkSBHHq4OlaBL7/G07X7b1d49WdL8\nBUpL/QQZa6N7xsOKkSQpI6/2s4edHAoLZWAtuzGBdMQxBl+l3F7rdvCAlWcF\n0DParkrJdEKY9HHx89kDlrJHGpKMkTGH6H330FMhndRoYmWtgzFgrsY0K99C\njeOB\r\n=Wgea\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"4fd7ff5259e7910dd76488a7faab45af839a13b2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.1a8d06483.0","@material/rtl":"12.0.0-canary.1a8d06483.0","@material/base":"12.0.0-canary.1a8d06483.0","@material/theme":"12.0.0-canary.1a8d06483.0","@material/animation":"12.0.0-canary.1a8d06483.0","@material/typography":"12.0.0-canary.1a8d06483.0","@material/feature-targeting":"12.0.0-canary.1a8d06483.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.1a8d06483.0_1620922426370_0.6813252167135286","host":"s3://npm-registry-packages"}},"12.0.0-canary.8e6081836.0":{"name":"@material/floating-label","version":"12.0.0-canary.8e6081836.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.8e6081836.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"8d5f3c87da0110ec14940a3ec821582b998931f6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.8e6081836.0.tgz","fileCount":34,"integrity":"sha512-99j0CJbLvgbo0o+4pQB4jOtfvRzvW0IyeYmL906VvFm249JwsTo+jLHtnpqElqDTQhqGqxv/yN49X7AeAHKLAQ==","signatures":[{"sig":"MEMCH14DlFwqtr3AN5VKj9yso2WzWSYxnaTuGQvPPvqbYXgCIGt0JpLj+P+Sx3Bh2QS2YoN5tSTqvhzSaHatEwGZLHOI","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233696,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgnu5bCRA9TVsSAnZWagAAkz4P+gKulRuFMVPcVq5thEuM\nG77A0JBVm7qc/tTDaj1n+YqVUScY2y6fhB5SblUN/7JtXpLd/SAtOl7zneYG\nE+95JDEyMJqTYDpeqJNqso+v90BT7c50UgIGdlRJNcc2mbK9nHnSJVlUvRwn\n7m/ZttoBJHw/s17jCK8fgjMEddtHzmW9Grofdt3z0zSHioFD+0B7SOZLpXIX\nAXsByteD63juTbxNIIWndBrj8vC8sinYySs9PV3EKheXDNiNTRLN4R0CrT2I\nyV/gKLHpkGy3D6OqhaQAU5UJGMgqdIDCg19iT9nqw6RDq+CQYHjCkBL0u7KD\n91eclt8OO2LpFuAhEHsybj7dNZq3QOASiJBcpaVN5rR/5GNgpI+KCUxMCMub\nJxmitpjxvTcl6X4thjZj/7hYLUmUPtM/QBobUSfY1pvh7ft+LBzFTEmFTmCM\nTx4/WvVbHh3YOW/V59fi6ZJz3JojxxfaBg84dA759JrRKGnmtpg0rxRaw9eu\nGI4dZWx+hBchMBiDjTdvkQsYoRYzOFaOGxcaCkITvjMbk/E33Ta8FukrEdMU\nK8XeYGssvTc9Sq85L9zDBUbWvMATUcWdO/6pbne3CBDMtJrEhp0gk7FnhQn7\nv6OSVRNbp6bMoA26O7ucj3NX+jfH4FwqczYLyKa+qZ2ztLndKcKM8nPmZqwH\n1oCt\r\n=RJLL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e648805eb34c990054d503fd3f70ed25e40d6d9d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.8e6081836.0","@material/rtl":"12.0.0-canary.8e6081836.0","@material/base":"12.0.0-canary.8e6081836.0","@material/theme":"12.0.0-canary.8e6081836.0","@material/animation":"12.0.0-canary.8e6081836.0","@material/typography":"12.0.0-canary.8e6081836.0","@material/feature-targeting":"12.0.0-canary.8e6081836.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.8e6081836.0_1621028442928_0.16473604724108593","host":"s3://npm-registry-packages"}},"12.0.0-canary.a2b0f4cee.0":{"name":"@material/floating-label","version":"12.0.0-canary.a2b0f4cee.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.a2b0f4cee.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"821a02d8a66be5ee646d9dfaec0b442e0aa14c54","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.a2b0f4cee.0.tgz","fileCount":34,"integrity":"sha512-zkBQ4FYyJqbRpuZZx31WHLZiXSE4A2ulIOpsosPEM30NvF6a3ecoJrgLwvaKaz0rZcz1ucdhEswz0BaCZlzjkA==","signatures":[{"sig":"MEUCIF9hJDE/M+V1D07WO3yUhQwSSQFKndm+as77XE4hJvcVAiEAjhtEJlCZ4vBCf07QF26e1LuOvtmblCL13+V3zDjYKyc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233696,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgnvF0CRA9TVsSAnZWagAApqgP/3FIm5+2BUrWz+8Kb+Mp\nDn/rIWi1bzU+qn7B98lXLznNTbXC5cj6sVXfhm8panjNCADukIVVFX7OERJy\n0GXB9kJeBPOa+in8xHU7qkWjGGmPMlza1dKWWt6PCC0hiopX76KT4tOrebkJ\nkmlf+xy2b1nO/UF1bUZgttcvPHKy6p5ywwxdJ03hm6kx/hb7teL/gkp0yYDv\n5ENRcG+YVjv7aGNLEVKgt6BMlNfvSgsNiE+DKbnMvwutziLiPK23sUo07RQ9\n7/b+Zsv+pGhzVuAN5GyrREAFBApOd/ePD9uqm3cqu8tSfCwb19FQDC3zx9m5\nt7EE+YZ/i1eh9su40M3kKHnWvaRpzHZAkb8uaVbQBbpAkFnJ1RDq9QpjN0S1\nfDfBdjP/pcb9YvqgekagwuQVF7mXNHVor4eGj844yfotar3qUPygpgaQ22KO\nZR9MZNGIXW5Tc2wu0zcdESmCfB6t4s0JaH9PpBCuxVJKZ4XsOF8HEJ2zO+yc\nAXW7b7JrxXt2ZYuXfo+8qCiDbSrFPr8EUe95acbfeCKvFsuxVtSVz7qHc5eg\nTo4mc7O3XCi2RnynXTOQpnAFz4EGDwCjliUAsJQOvldXM75u2oLo+FE+9N4+\ngHxv/m631KiiHH0A1qUhjHzcpLnkt2Gqxrb9Rtp67M6ZaPrH4S8NOCPORM/D\nSqdN\r\n=Hf2h\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"67c2d3cef073a380a13ddb6bbbfc90886c7af364","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.a2b0f4cee.0","@material/rtl":"12.0.0-canary.a2b0f4cee.0","@material/base":"12.0.0-canary.a2b0f4cee.0","@material/theme":"12.0.0-canary.a2b0f4cee.0","@material/animation":"12.0.0-canary.a2b0f4cee.0","@material/typography":"12.0.0-canary.a2b0f4cee.0","@material/feature-targeting":"12.0.0-canary.a2b0f4cee.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.a2b0f4cee.0_1621029235986_0.30140966692575244","host":"s3://npm-registry-packages"}},"12.0.0-canary.e8e39ad19.0":{"name":"@material/floating-label","version":"12.0.0-canary.e8e39ad19.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.e8e39ad19.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1ff9250fb8b04b7759a04be941a9c8eb41c0d966","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.e8e39ad19.0.tgz","fileCount":34,"integrity":"sha512-3isUMzJDUYb6xS9SldGCpMny9zNN+rm4vjXAzC2O3iMSR8w8qxvvVqiqt0BYF8xPWEy763VuKq8qdblFz0KVlA==","signatures":[{"sig":"MEYCIQC920m8OaUskMAfTiibu3uw9tuOwZe6d9osy7Yrlc2TRAIhANRr4NnEqP38fIxpszlXw8PHlHbQ76lNBSyQ48LyNQGw","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233696,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgpB/aCRA9TVsSAnZWagAAHuMP/2CUufTO6V92R5bgSZv1\nTE+AL+6nWNiH9nw3ugSgXLYkfzQbuTsgzKFy+t2y89GLFOHJ1v7ApAGQmsZF\nj8RD0IcyLZs0lphaxEhif2QZl5m4xaKwHhs4ky9gkOPuPeLYU3cmLYitpS6L\nFlOX4MLREFKv0AiVdOJhXB0rfUm0om9Gib37vKYr/RqGLAiqbSrEKaI/Mpdw\nfJIg0/h6g+n7n2KNobSHUTyx/RLFaeY7qRP5KwughpF+X05daLK6tr4swkQz\nqlhUxNqj02TZMlUksizQ3L8NeJ/fHc/4+7tZyCRYzTjrTKSsMhckLnQwC4aL\n2RhJfxgmf/1uaCZB6008s+Gm3HZnAcJFKMiEnNDIiEwKal2q2mAOWAfUv9nz\nbGzqdZD2ztbonf8aUL4afUzRecX9jwggbUw7KUrs162gtXlw1hQnpMBMYRRD\nIY8rDGfYwz3BoztP69927SQGySbh2z6HjELFzT/bK3p0SN6k4jIPlg+MUEyW\nHwPcRMzMs7JK3i14M8e09ua0cJ/wjohxlKyrav3ijnBKmPP+c+wQR6w6oxJH\noE1/k7BnMt7zkXXk26V8kkHKrVDNcogNmDZlbQYyRCmbMuNALCyxCEzzYkHt\nfx86odF0TRk88210bK+OqLeoLo2SzeMda0wU2ZcWOgv8rBz1nrTTYuioRTeb\nnG+v\r\n=XKnN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2bde63cf3be6363eb1508c4d7e1747acfc51a761","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.e8e39ad19.0","@material/rtl":"12.0.0-canary.e8e39ad19.0","@material/base":"12.0.0-canary.e8e39ad19.0","@material/theme":"12.0.0-canary.e8e39ad19.0","@material/animation":"12.0.0-canary.e8e39ad19.0","@material/typography":"12.0.0-canary.e8e39ad19.0","@material/feature-targeting":"12.0.0-canary.e8e39ad19.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.e8e39ad19.0_1621368794479_0.26372978541993297","host":"s3://npm-registry-packages"}},"12.0.0-canary.4bb5eea2b.0":{"name":"@material/floating-label","version":"12.0.0-canary.4bb5eea2b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.4bb5eea2b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"cea79fcc9ced2681d01868de48058e770286e658","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.4bb5eea2b.0.tgz","fileCount":34,"integrity":"sha512-C+RiOhMmIawNNK3KRMQuV3KTC0Nx43OIjLg78ysY8PXvzeLCFIGmmHqKm4Ya2rIuOEhhJNFTx7vvmliVNl7LsA==","signatures":[{"sig":"MEUCIAYFtHuztq1hzk8OtOKSpcz8F4clTly4GA9rOh3h+H3iAiEAiDBFBm37+z3sXmTqPnwrmyzMSvml0tGzz5t90lUxMow=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233696,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgpS6XCRA9TVsSAnZWagAAVvYQAI2AJYKQGAX42hCH69eL\nUzDwLuB6ltWiJA6asu6V3yOyyyPQ8oEEMj4hR0vTetLH3sbcq3vAxFd9SmIx\nzwh6htOJYdsoN1G4EsIG3NMG/ZACigxE49+PsFY4ptyGpD4fUplyyNn4Y9rS\nENR1eFVefuhe2+cknD8VWPJO/qJVDtX4h06wduttrBEX25zkl5/DdYGY76li\nZ+eUd61vi1Llfn2jDgQC9GIgF8/RbQeYTEkgkQ+Ofo0fF7UFLGH9wHr/qroU\nJVrFSmfFjhLDa+7H6lGolUrYwigRnyLpVamHQn8agBL6CWB7GiVS1Sjfc9An\nXEyD7sfS7stX/hWd51XGHztnY8qHAIgKwxTpV8t5reSL8378HV4B/Sp9uQWP\nDdCAJFpe56lG0KfCTvL8MX2zMGMsDDu1A9WKWgdxBKLwD+b7wkoSNOUOsbKE\nbm/h3X3hhPd6tRWFAxKReGoKTi/GO/kD4xxih+w4W4RX9Nl8Ev5nDF0tkLCB\nj4vwyt7PG7kck5FHGLPHo0Xes2RGM8YI09Zx9eDmQ5+pSlBad4x0gNdUFIH4\nFn9zxuv1reEBVSpIrQzYtFHmUhEV+WPIjVBbhoOLk34HVjz08JSPvDWRjdwe\nfL1DgxKnywduF/FVSuvsdDEGB1U5jmNCUfk/FaXYBRIE2Dit7xcyYOoHP9mV\nmq0P\r\n=OZyV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"9abe3ad555ba3e9ca70f37ff3419acc2edb56676","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.4bb5eea2b.0","@material/rtl":"12.0.0-canary.4bb5eea2b.0","@material/base":"12.0.0-canary.4bb5eea2b.0","@material/theme":"12.0.0-canary.4bb5eea2b.0","@material/animation":"12.0.0-canary.4bb5eea2b.0","@material/typography":"12.0.0-canary.4bb5eea2b.0","@material/feature-targeting":"12.0.0-canary.4bb5eea2b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.4bb5eea2b.0_1621438102666_0.6423947711715035","host":"s3://npm-registry-packages"}},"12.0.0-canary.ccce99cd6.0":{"name":"@material/floating-label","version":"12.0.0-canary.ccce99cd6.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.ccce99cd6.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1bb075d00e457bd1c1fdade69d3c475b67cfbb46","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.ccce99cd6.0.tgz","fileCount":34,"integrity":"sha512-V7AkoIl0pAcsKu1RyGox66O/tj9s8b3Cyw69WIMpd6QBcBxNsw1BjtxZ7qWelbtEEY6HPqUbNxdcSANN17uDnw==","signatures":[{"sig":"MEYCIQDmQH0kdVPs3h+7RZ4NOw9Stbu4BdZtLF35LA2BUzDePQIhANPqXmqy1YqwFZ/kjwgNo8jycgmkwnegdqfjzH9s61Oq","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233696,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgpbPXCRA9TVsSAnZWagAAcUQQAIN+WFmgTiJoaZtP64hl\nquozLja8daYzXzMp5AyRkuOOX4VylTIlHbcN5i9lHHf6RRWq9gpCh7+x4mCB\nY7/FO+Lw/WCNDQ7Buu+pTZPRKF65KBxOWu51QpRroMXYoUjG/yP4H13s50QO\nTWcPHTv5YrK+7LTy4GT4fiDJAsIVlFxR7HwWMvkg15qfm1jjo7xdOOieUBDV\n7XoRim+ZKcHHkKsujULsXUTYdf8jIeInl+oXjINsg/SJ4jsrOpHmsadh/y4B\n02LjNt8zePHNPXvNLfXm9MgUJ5vSh/I+fW4xjMnuGxjO8nfNX6ezWOm40eov\nuY7ejhSBZ35oWfRRcBKEJXCACiewj3HnNPf27LGG37QmzRhQ7zkjnE41s8ts\nNUsAgJKLeU5fpLMccW9XHqShA/8Ac/ZWkJ6buYo6EJownI9CcnyNvJ9Ux58H\nB3BfBbNncn467jHUA8FBT3GsLMslP7HOZ3DHFNYcrhiX1AlXdtwpIZuxFaPA\nZe6YjkAh5Mrnt5+Ar0dqN8TszRZC0XtEz43p6eHLNONiR0epXoy6JeTxQf9v\nZzVN0tQANqRCXbkkuffb5dU8lAKumOFCcZaU9Jrmep+Re2isrzACFGltMK9d\npeZlqseymmNTZElrNzGW18W637f6oxoBwbCGv+thyiceSLbl/Aoq6hoK3Cz6\n/7TP\r\n=vJWZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5d475a1522350d9dadb5fe3597683fa7f4851b83","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.ccce99cd6.0","@material/rtl":"12.0.0-canary.ccce99cd6.0","@material/base":"12.0.0-canary.ccce99cd6.0","@material/theme":"12.0.0-canary.ccce99cd6.0","@material/animation":"12.0.0-canary.ccce99cd6.0","@material/typography":"12.0.0-canary.ccce99cd6.0","@material/feature-targeting":"12.0.0-canary.ccce99cd6.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.ccce99cd6.0_1621472214647_0.7381794290996495","host":"s3://npm-registry-packages"}},"12.0.0-canary.14767a8db.0":{"name":"@material/floating-label","version":"12.0.0-canary.14767a8db.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.14767a8db.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f8b7ec771d0ffd75be5e37db0a12d01fc093df44","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.14767a8db.0.tgz","fileCount":34,"integrity":"sha512-Tg0zn8Z6lQ48nxy4+aimz4naRGEHq/wawJOdzmBqWy8TlF3uqFjQMpEody7EYuZuTp8kRAorDwDIrDfGVvfsdA==","signatures":[{"sig":"MEQCICcjHxidRKIpy/VFIgm6kYeBuAmBI4BZR9BxmdglPfvoAiAaXvL7u85o5XBa5b1EUCu4M3uIaS9x4UPuajvLRQHHaQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233696,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgpsu5CRA9TVsSAnZWagAA4j8QAJNjFvCmtXV1s4HijspP\nysNsMQZ1a4CXdzOJcAdKPjhGiv+BKmzG8bZb5MqgkPkmhO/LL9zhNL2PUFOj\nnfwFqR2TS1G1PRfbRh0+KDQTB4L9f5aIrluXqEzl8T7TWv0VXkSsKZ9ajOqV\nEtxSkzh5GJa94hbJ5lTj+Jz4TuM7NSs7u3nQCb+tZPtO8HM3T4vnPj97EqaH\nhZRDyhtfyxB5NoPvLrw8eOH4Gq46i7kEJyx6toZV71BSWFUzU0xWMi9bJSfi\njMPuW/qtJCFEzwkVfY5c3gJyPIEGMzSmc4yGjz2ahYUGUlYrbE4tImz9ycOI\na00ioBglDrLLp6wCqEMyqETcZzRmjnsYTBE/UhV1m9PHV5pVh6sDn5fmlf/D\nkQsf8nSgtQADDGti9pBTydm+pwe2ZmVBoM1uW6BsH6J7J1p7DODsT6ohMqGX\n6xkzFYHGjbY/gIiCmVWMocaSMmDtCIO4BigTyKwf+qoWkKkQz1/U3gvQ/0Bz\nzKazKO9lLWJz8HmXceUWVk5KWp04vQZpc11Shm6OeQ4IdHPjyEf+06nFYbeV\nS4VkprcwBpoUcntpFl5BwLBLYkKmx9L9Rx0H2RVs0j9j2oqKFDEJMLTpxHYs\n33m3LSxl8FYiJdQrEpW93QX5z7VpDC8nTAQ9qorP3XxZW8RIqaEZl5Wc0b81\nnuGX\r\n=WKMB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a324b91ce28769039998a00879c6f441cb1159b6","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.14767a8db.0","@material/rtl":"12.0.0-canary.14767a8db.0","@material/base":"12.0.0-canary.14767a8db.0","@material/theme":"12.0.0-canary.14767a8db.0","@material/animation":"12.0.0-canary.14767a8db.0","@material/typography":"12.0.0-canary.14767a8db.0","@material/feature-targeting":"12.0.0-canary.14767a8db.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.14767a8db.0_1621543865057_0.8573522104386004","host":"s3://npm-registry-packages"}},"12.0.0-canary.22c6dcff9.0":{"name":"@material/floating-label","version":"12.0.0-canary.22c6dcff9.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.22c6dcff9.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ed07ba29ab8bb67baa15d6563c32af6cd18b367f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.22c6dcff9.0.tgz","fileCount":34,"integrity":"sha512-Bmnw7+TF0ZAjW1c9omP89GvHqqx7L1NXBYcYYWQLuHTkVNuslGUChfIjE6aEbXmjKb1bzdAfAjx2KkoSkYM3ig==","signatures":[{"sig":"MEUCIFXIGZCwQ4XJzhTUh1viNjpQSN3cJT/gKXeBgBvGS7UZAiEAg3d53bs09MX0e99FxTw/bma0gctK6cYEGnoeZRTjri8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233696,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgq8PcCRA9TVsSAnZWagAA7lcP/2uwJNQnaneg2L32CQMT\nUMaExPtO7hGej8KRb7P4l9INOirZTivKA/n0n1TxSlSqSV3jAbxYk7qTRDkO\n+29EGwHDMURZHvo1kIGQLTi2F1OyVCN615Lz5ykrLqjVL7COhgsTsdfXV8cr\nKco4RPQEvCKFrTQqenQDX4DGhbzc83Oeo/7I1wVCIECSvBrBWi5BpI/FOoOu\nI6Y+3TNbzZWuk1abz03ohvPlHdz36t+9Nv1dS4Yvob/r0EvVJdSeTven+/Z9\npVmyAz+PimVB2HiHz0HyEO5C1hZZ+5ZEmJO6sAVE6gAyZ08uv1F+3Z6ve5V7\ndfc5Pi5ESpIF6MNwhNUz0quhgcJJ0+FW7dfg0t7O1GMXICxksAWV34CuFkGh\n9JQGr2jplzjK+yMHqfgKMcXpR/5cKRHniJnRWEzqN8l5bcAXkq/A+MmYn9GQ\noSXiLoQAuz1adLIlImTsJhFl4mD32nM+Rk5s2JdxWd0LPUsZdj+9cDoARoNy\nw0eWnkHnxgMAhL8AK8/5IXdEgd85kY2XlaSGpAS7dLG8Q2Wfi2zCrcTn0pQ+\nR5qHYV5er6LQtxczd2MCjfS024VuzNslMcm+AZZhYm2oPPB7rz+5SJK85jVI\nuYNXUQ7wlPq2J1P1799zTTnsHYKoBH+cFiQ7/tjxaukz7+cniKL8Ik/2G/qY\nrLOK\r\n=tSwU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"74541e300384d800b9cdf492ff70ba20ffc583dc","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.22c6dcff9.0","@material/rtl":"12.0.0-canary.22c6dcff9.0","@material/base":"12.0.0-canary.22c6dcff9.0","@material/theme":"12.0.0-canary.22c6dcff9.0","@material/animation":"12.0.0-canary.22c6dcff9.0","@material/typography":"12.0.0-canary.22c6dcff9.0","@material/feature-targeting":"12.0.0-canary.22c6dcff9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.22c6dcff9.0_1621869531733_0.509792495801866","host":"s3://npm-registry-packages"}},"12.0.0-canary.fadab3372.0":{"name":"@material/floating-label","version":"12.0.0-canary.fadab3372.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.fadab3372.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"cfbfa598941ca619712924fceb6b9182c44dcba6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.fadab3372.0.tgz","fileCount":34,"integrity":"sha512-UukgmQNjKpJH6BvF9ppa/k/3wziZFtzrm7HffKTxmQRjREgbbAnHyL4tzw4HdqgFBC/3S9R6cx6dVwGR239UYQ==","signatures":[{"sig":"MEYCIQC1+sKryM4IotR99wPCrhfz6BLBNxLvGQaBpD1Lg+iL/QIhAPqi/y+kyCn2loRKWvDKhI77OeSSz8jtcYsPznsCQ3Tt","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233696,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgq87gCRA9TVsSAnZWagAAmCYP/iSNljjBn+YC77H8nA1b\nEiFElLwPOqeo2wP+41vR+rwRDjqolQTQT/2s66VQ2+O+J+HU/4BBG55FkdWV\nUo0Y0+nlVZQC6u7yW2e6+JmCsrD8ZUf4HI8GauYaWZHjPvi7K2cTTP6tXTpg\nu4fopRGo31X3gKlYHUMlWlDUfYDT3xRwUYMb4SLOfx6kP+nr+1uPmwOrNG8a\ncoJ/QRgmhbZ4O4S8tohB+25bCv4h1imk5/DncGNnAzRAxhImAb2vW+YY5/Uq\nGOOhyxLpCfLG6QykmdQGn9hD4SgQN8bWVuLm0hOqWxiZwoRt4MHGMqFjIqic\ndIE7Czb0p/NYxRO4E/wKt82Rszs6bDwMhOan0Q37R2IoftHlxjgbW+T+tufn\nkh+AriTekJacI+Ej2JT+BeCth1EhgTcglI2WoOETfbB9H3he/OS037M5zLX8\nmCG4uwgPTr6P6G9ON1AZcK8qIFY6qYaa4Y2BbRI97TkXI50Za5S6Lfvy1nWA\nD2XQ1rnE0miTu1Ff3zk329MtwrfMpx6cyUt5fYmIBuMEyULAlWjUzeg9MCQg\nP30h0LvBIVykROoMlqiVNIRoqf2F/xKwa6RDLvtkH1ke7ZgHoemjL4VruvdO\nf/wJt3LbP3Ke8F0jIkmglO6LMMKNRwppqR8Lqawsh9ZdMn+Kqq+5zDiSvq4y\nCH9k\r\n=pBdL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d76e611194693a7270b5e10fd87906ada48c7af7","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.fadab3372.0","@material/rtl":"12.0.0-canary.fadab3372.0","@material/base":"12.0.0-canary.fadab3372.0","@material/theme":"12.0.0-canary.fadab3372.0","@material/animation":"12.0.0-canary.fadab3372.0","@material/typography":"12.0.0-canary.fadab3372.0","@material/feature-targeting":"12.0.0-canary.fadab3372.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.fadab3372.0_1621872351785_0.7282065127653334","host":"s3://npm-registry-packages"}},"12.0.0-canary.caa73aeee.0":{"name":"@material/floating-label","version":"12.0.0-canary.caa73aeee.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.caa73aeee.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7e0a962fea8bb01f9ca8aa446a09a7d3c9c807aa","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.caa73aeee.0.tgz","fileCount":34,"integrity":"sha512-rljMRNYOvGzG2svxM0ekxc7UjYkNIv8azEYmzGP5zTUP1L0bg10Xz4wfj4ASTkhIrLpjtsbYHi9WacB+mOSyrg==","signatures":[{"sig":"MEUCIQCAf6GrDeYW3eQNY80NcMqUYSrWEW2k+KLTREFmenXuhAIgdt92IviwJ7Cn6AHHcYCsfrvo6FeEAqnx/sHgpipUt3o=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233696,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrQZHCRA9TVsSAnZWagAA6ecQAI88UnUqooCmOxUZMZjE\n2Vb7ewFS2jHp9q8dJIdjEVLM13Ntra/GELO+Or0El9EhyhXZvKGG0E5KXIRM\n35m3HIHv9nr8TkDbxMl49dfLtBASEMXqKtDbLGlgtYM3WCSUfmfWi8FdiZw3\nrLxEQ6ZyDekBDsQAq5XHOfMws5RCzCN2efb6LSd99OWXreXOkLQ7WT9DX6TK\n3HAmiVooMCXvo5e68LiEpY/+hkM1QwCOR0u3FRQIr1bf1lJfeszR7oNAC/fW\nMtgeZqRu1UhGGqpZ/uHr27Quzr/kn1FCgtS0rtDx3LYr45WHjVhsAPRlAxns\na31MwmHgmXJpsIAge+llByb4ksW3JKPoeQaC5wAF1R9Uouangra6j5+AqRHP\nBkDB5gg1dnMECcolwelei3xXR9Gy1wdoBTsHkQG8wvWWRKMs150cyfwr8jbO\nF0TWVR+vqFZ4Oif1ZREZxchoeRIDu1vuxDkOsDe0NXxxK3FBatj2gdtj5hrk\nYkW5GS7Og+mJWhAxi8fJ5mxK9P/n54S+MJf+JtEMDY0lYsaAlG9a/R1Xt1os\nElbNUA67w5xxxGoWBdpaE+UgD2oxhxjltw3J03+5TQhU5IIPbEniGpnzo1uA\n4wbG526v6oIxDoKMR0Jk4huIqRXr3u6x6e8zwOd5kNNXS1JNFRwnvYTn1nbX\n8HWI\r\n=zL18\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"dca5692fda23e55426458f6b0c56c2b6dc9e2dd8","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.caa73aeee.0","@material/rtl":"12.0.0-canary.caa73aeee.0","@material/base":"12.0.0-canary.caa73aeee.0","@material/theme":"12.0.0-canary.caa73aeee.0","@material/animation":"12.0.0-canary.caa73aeee.0","@material/typography":"12.0.0-canary.caa73aeee.0","@material/feature-targeting":"12.0.0-canary.caa73aeee.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.caa73aeee.0_1621952070669_0.991693476912068","host":"s3://npm-registry-packages"}},"12.0.0-canary.ec31ae1ed.0":{"name":"@material/floating-label","version":"12.0.0-canary.ec31ae1ed.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.ec31ae1ed.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f62292ac802d8abe89e4fa9440f19c7a8f8d0f26","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.ec31ae1ed.0.tgz","fileCount":34,"integrity":"sha512-0/1TXGvJuVnB7JS0j06kBfcArDTjLjUG1iOPaRhOAKa/L7EJyWkX6QuCMcK7LTb8eUVwYGmuRX8yqH8TdRTrZA==","signatures":[{"sig":"MEQCIE1R4rghCLl4isFJW51s5SYRc7R1GPTJ63fJvo+pVfvjAiA0f/2ISfKRJ7Zr7l2opbhCr9OA0AvgzRN0WQM3oV6MEg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233696,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrV+UCRA9TVsSAnZWagAAMT8P/3o/m13zuXMh1Ud2yKvz\n8Bhd/Ijd++vTOKvUHzq/rv25UenfWq9BKrjyvlo5g6lDX0qSXl+7xtZoY3Fy\nl9YJcT98cknlX65DfJVwnKU3lSproj3A+rGRXsrZUe/hCj/hGmVVfHkc70kL\nEHFdteLBsjmJpmEmJEgUGN5lY421PlIzQuwzmFLFI7F4Fz+eSuQjwLCPCGD/\nrWg4biNylMIc2Y/ElZGT+OrUTqbyl0PTc6ufksPxZP71/6IdccyJ7N2dnHu0\naTAILrs9cbOhoO8X8F1klv+Ob8nerERGgSDwbNbZr5+EgBav18Grd4R9z3NA\n4g/0IZg8gNfjRK6qxBU+Xz5ruP1NzQFMYlti0jPMGe/cKI65MjJaRVJdhUUQ\nPFsU0lQ4kCYrbNqZjEyw7UxVpiLk6WMFKOsAObjOtRrKm1bgWoDx6s46B8Ki\nnM2YOW8B/oq5u1alWzPXqPYLFjiT15Xc8cmgbCRlL2Fd4xxbMaXtK79vOJFX\n162kPgeHYdA6AxSwcsqJ5GJW4iwqDS2vlF/0m2+lKyoPJ9RdOGlOx5e2Bg/6\nPkZcTKH/wGuUra1MKnFjmgoAA/zUBhM05w5utOLWsT7ku7swyZgEda/obH2K\nk+2GGiAGAlXJzJS619IKh1wND33iQxzyUSlTB9leApFMGyU4xkOxJLm0sf8l\n+F5T\r\n=5Y+8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f9db084a3aed73c844554c3b223d5185727b6d07","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.ec31ae1ed.0","@material/rtl":"12.0.0-canary.ec31ae1ed.0","@material/base":"12.0.0-canary.ec31ae1ed.0","@material/theme":"12.0.0-canary.ec31ae1ed.0","@material/animation":"12.0.0-canary.ec31ae1ed.0","@material/typography":"12.0.0-canary.ec31ae1ed.0","@material/feature-targeting":"12.0.0-canary.ec31ae1ed.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.ec31ae1ed.0_1621974930974_0.7931688410308735","host":"s3://npm-registry-packages"}},"12.0.0-canary.8530d3514.0":{"name":"@material/floating-label","version":"12.0.0-canary.8530d3514.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.8530d3514.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"557bc6212289b58efe94eda856e868ddc317907c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.8530d3514.0.tgz","fileCount":34,"integrity":"sha512-/bzRHFWRL9gis2PwjW+i5iGa83oj2VcMc3IfLJMgWDHgeLVn0gn6rirUhtl1yH40nfCg1SAgt+JyjFoQXfQybA==","signatures":[{"sig":"MEUCIBnDpih8JKNLYFDLkQpwxX3yPkPR1qxNZvnTyjmJ4LWwAiEAr5/dsTjTe2hmVzs1SGDIiknfC4k/xWWpXabQ0USoOzA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233696,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgr8MrCRA9TVsSAnZWagAAzqcP/0n5InUWrj6D/ohPBHMY\nihO9p/NpI/Vb/QBDvrncJw+A5203lZ0dMs6Mbd37bSqIw5RihYLumZiy2EZh\nyrmSUiYau5F13YAAv+f94Jp4TGJSaWPaDrtR7md8M/U5IPOJswGagmwTXfCK\nsbhXxJTp71ZJM7T+tks8Vt/u9wMAd05fvLl9nNaE5kpA0UFI6KaYIMbINVD3\n6zJtIYJSzNoI3tskZFZEkaVvj9vDFIw4evcbu0Zm56gfIYcE6TR/O7680uZU\nxwqfOSBgLegPBMjFGSYSXGGGByeZlZGBofOg+6fsia2n22MS5u+saVhjFQ6y\nNaCygnX7xuzy52A8Y4ALEMfUyixou+vzaYt+6RqM3i6zh+K6rFfCXSQNO4lK\ny0lAvbTfwUtDP+Gn9lJppwrDXv/A0bLbJlDxOuDSHWuhl3cuz1zLPEOkHVZE\nDI4TeOy0wEcaU9ehjw0FyUc6IMGsY5ExgGYGrggwXEzd9PzlW47gCQLa+1fY\nsgN/M1wKplTV3AaMb5RcqMiJk7MW73dKQbAyflOXQX+CUvqKAkqmDlQtfDNM\no+RcpOHhfwq5wkHigCanbap3RhXTTslmlVWOPXh4EFuCs1noNqS9AcrlxFWT\n240GiIBUkOBNsX7PjYIl68tB5iP6xIS2JhgP8gH12KNkXv1XhKfrtn5zSEgr\nvKaF\r\n=IO+3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e32508a69db8bd9ce4383a14f2c576d35950566c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.8530d3514.0","@material/rtl":"12.0.0-canary.8530d3514.0","@material/base":"12.0.0-canary.8530d3514.0","@material/theme":"12.0.0-canary.8530d3514.0","@material/animation":"12.0.0-canary.8530d3514.0","@material/typography":"12.0.0-canary.8530d3514.0","@material/feature-targeting":"12.0.0-canary.8530d3514.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.8530d3514.0_1622131498469_0.8560029389328101","host":"s3://npm-registry-packages"}},"12.0.0-canary.00b5899dc.0":{"name":"@material/floating-label","version":"12.0.0-canary.00b5899dc.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.00b5899dc.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"8dbf4ba9cb48141949f0d81a1e9a0bfea6a5cb14","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.00b5899dc.0.tgz","fileCount":34,"integrity":"sha512-7TwvRlSLku4VFKCEUIca2H3ErrxX9thV1OOOdIywtO54txQscMSpc70XhJ/LVKxU+ZlbFhe/uj3kLjxc3kn1nQ==","signatures":[{"sig":"MEYCIQC2tCJRA31thEW+6aw7ezOUw3SuZKYMSaMtY778lRImsQIhAPnk7TvWXWHbtatyi76ZJsYdVh8LhxIwUkey21JXjpuG","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233696,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgtriVCRA9TVsSAnZWagAA48IQAJx1zA13IpdOyeuTjbPt\n70RznlBik5KK4nVcnqJBmZ+66APSLUcc7/NvbcXV3Z81G3bryA4mgO4l5kYC\nRkoxmjg0xy52rl5e8K7bF7WZtD6OTx7HYWKKJNqQxPp1ovlXMG4fDxFz5mIH\nV4YtS/YN2OYCUVZ7rpvetyEGwYDho2U4SC8dQX/jRIdRhD1yVX06xh+tXd2c\nMgx9K0e9Ouj+/AR+RkGT1AfBU7NDE+e7lfOMbgE+3V+fhIsQYTpGcta5KTYH\nkd5fvMR1Cahrb01YwtCu2Qeq5ZzEU051DhZQPNVKdCcsVpgkpTTCRwYh0A3K\nyWK5pUPEeioCAUcGXzk5UJot6voMzeyH4yNsT7kQqnbgFSPAz2uGEhvdmIek\nZw/fzx6yinKM5yPdOkjDdUfJQX3PgjxM3NIwOXb4Tp4Yh8D6D2WcFESEa/ie\nd1L337Fqb0Go5IZv1/4hupLDD27lX41vIjDbWZdaSk/u5ZpKvsgYyodW8U0E\nidvfz7jQPTMIj77Y+99PccPFCadwlY9hFR+t01GI0oNi2W9++zIbb/o5YiuN\n+Pqo4a/qmMl8DZqeEidVvk1lIVKX1tzyWfSIczf9LnktLMPjBpznU+XO1Fyu\neTB1PjAyKwubD7iNtUc+zH5UYkZc9KSBjHoRPHBhuXdzzp/FcKqC+SuNkMzM\npu+5\r\n=kVfG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"19ffd4cf15764c62ec7b1dfd76483a2919f6501d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.00b5899dc.0","@material/rtl":"12.0.0-canary.00b5899dc.0","@material/base":"12.0.0-canary.00b5899dc.0","@material/theme":"12.0.0-canary.00b5899dc.0","@material/animation":"12.0.0-canary.00b5899dc.0","@material/typography":"12.0.0-canary.00b5899dc.0","@material/feature-targeting":"12.0.0-canary.00b5899dc.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.00b5899dc.0_1622587541321_0.6306271673840989","host":"s3://npm-registry-packages"}},"12.0.0-canary.f1525ea3e.0":{"name":"@material/floating-label","version":"12.0.0-canary.f1525ea3e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.f1525ea3e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f9f20bde3768db4dae04545f3c5c456520f6cb4f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.f1525ea3e.0.tgz","fileCount":34,"integrity":"sha512-PngB7fkxkpO/DcRbBjWg4nfMAcMQQAMWDsJDh9A9fHyKaduHbZshvAgqRkxRXK7ga1SnkyBI9QWyPH+0cMj4Cw==","signatures":[{"sig":"MEYCIQChWCxYqp18rJTAPIcNq1LfOfgh65StLONqxv+NWag0ogIhAKrIFl1GgmZQ9E01Oqx0NZCLHfoguVrqscRvJmoEHA7W","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233696,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJguN8WCRA9TVsSAnZWagAAkg4P/jxrO4gqVIIv3h4bYE8X\ncQA+nZPpsmTuEPiyKW8eupwrfaRim0PyseHREFnxEiZ0tD5JBBX/qmMNpMYL\n1bjYKf44Qlw6TzWEznEu3imcWDmeYY5uN4HPhn0fJAINRUQ5sCCvLtnVoZSh\nMKbNR9iWy1GO4W/rjDVW9MpuNu9uKj7ciB2Bx+F/N8axrpHgKYQwOjSMfCBe\nfsSXybuHyakAsRS9QdbUq9mde+VjOB6i8aKO9Q/Vzs0UW50PDeghOHU2tY2y\nO3Pn5+4MGHk1hag5sW1TpiYfm49mZ/Q5LuIo8rK3ys4joQfbNfvAPTZjdhbc\nR1MzPHevlc5kRKTKsNK4Zx7IYw4GuJr84OLdcEPi4JsprXwxzMFmEyUj/IKk\n/zJCKESRoi6MoJXP7jL5WSzsaYO6z4hnyGnvDgt5ZClQclzR9zIlktfOwkQI\nJJScOHQ/vaCFzrDroi3O9FdchEdZo05eNgoHu2nepKsELiloUy8PWCvMRdOr\nlnvvRO/ckOb5nNVq4BGbqF5Cop/b8iCiHht8qc4zSz9YaDGexPTZsBYQUrgo\nQ4tsZPbnKeFPNFsQAx39p9Wgd5slv4plsSdvmPoxuPE+kgvVCDlAHDylGmBQ\nUxuZ1QBIilhErA0BaiX4KUdxv2V4Ksyq7huUe5XpEhX0jPbyCS8AuuFX+QhW\nnwxX\r\n=iMZc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"97ff3c2e33330849b0ca447ac6983126a385d845","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.f1525ea3e.0","@material/rtl":"12.0.0-canary.f1525ea3e.0","@material/base":"12.0.0-canary.f1525ea3e.0","@material/theme":"12.0.0-canary.f1525ea3e.0","@material/animation":"12.0.0-canary.f1525ea3e.0","@material/typography":"12.0.0-canary.f1525ea3e.0","@material/feature-targeting":"12.0.0-canary.f1525ea3e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.f1525ea3e.0_1622728470312_0.4043066629361338","host":"s3://npm-registry-packages"}},"12.0.0-canary.464a00286.0":{"name":"@material/floating-label","version":"12.0.0-canary.464a00286.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.464a00286.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"93912616cdb9c48125925e928072fa2ba5967f78","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.464a00286.0.tgz","fileCount":34,"integrity":"sha512-0mq0IInr2o8hlOvd/85yt3M8Do2CTCD4yycLd2FWDQLl7kivXBff8tDpV13QEU3UkAgSyeDltjzSagdsw0DCZg==","signatures":[{"sig":"MEYCIQDlAZlyzIm+mlZiolvvJH0W0Tze6YZcsKbeMyhf6ifwuwIhAJTcrYjcsMC9lxuRCp16KVL1Dqxc0deJ5Bq1gwulFmwf","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233696,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJguOs3CRA9TVsSAnZWagAA/lMP/0pgdex2HAJCBwcbABKJ\nhDJpf2MSkxyY8Ap7xpBB68rYbVpuGICkyUBOj/EReplnzHr+K9TDjif6Hj1g\n8WbOcMbsNcOE9iE8e0MVmom7mZusEO5ltvrkl0M7wJYb65UsTOa1Pmkvlpbk\ntBuoEEjiAmXI/TkFjMERxf0aGknvmu/tKOdoYlwvTbtinfhBf74RxduXqrcG\nvbW4BvndrerPxN+3BWtcGL1M8kDAlugl+y3txe0XwL4Xk2rf+OrSfJk+eW7G\nQlxrYczgUIJiOoBTMTdEhIijELmzTAaXixxjFU1ltnPOPWgJULEprQDO1PhU\nGiMybs+0ejAlCVVwRx68w0jez2XAhuH32LdHyPKsIVD7vkXu+wL2g+m5H/D/\nx5uKuLQlDRWD+Snza+0GoAaUW7tP1/D/gsPcUVa3xGCuufj9KroPrR3W8w4X\nEIf3fQU9jXBbGg8P35SR7RyHltF9wZdkVyL4s18CkSaYIR9Pt2u1UBp0I48y\nBrFdj1G3F3DTHzfTET/tMdFbZk8ibVWz32kWHg29ERtE9FsqBYOyT0FhT29I\n9ew5Qa8D79TVqzYHCC/wlDo86GJ0UNjJdM0eMkusqtmWyc1DsazZcldncS5C\nGwQ/9/caSQR0GZhD1bizrJolqCxcW3QHbtsNXk6neWmh32MuaJi0AMjw3HHf\nnV1U\r\n=qO1m\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ceb43f7f74f7db77edbe7a13d3b92e853d599d6b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.464a00286.0","@material/rtl":"12.0.0-canary.464a00286.0","@material/base":"12.0.0-canary.464a00286.0","@material/theme":"12.0.0-canary.464a00286.0","@material/animation":"12.0.0-canary.464a00286.0","@material/typography":"12.0.0-canary.464a00286.0","@material/feature-targeting":"12.0.0-canary.464a00286.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.464a00286.0_1622731575586_0.9493234654465452","host":"s3://npm-registry-packages"}},"12.0.0-canary.474de7878.0":{"name":"@material/floating-label","version":"12.0.0-canary.474de7878.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.474de7878.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4b5a512ed945f5b27e9e03e148985a9253e628e6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.474de7878.0.tgz","fileCount":34,"integrity":"sha512-HjzJyFZKaKdaFJpBOLyh++SR8X+LR99YCVsuh7LI8Uq52GCvtHbw8xrkk+vDJOKQp2V95mdI3Oq+OoJZjSn9xw==","signatures":[{"sig":"MEYCIQD9IQFFnHhgCfQVj82214YJyNJrSN62+ubfjDBNFx1PhgIhAKrBq9tRfKwJhB6z4cjs4Zn89jjzhKzKxUhF0KlbKxnY","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233696,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJguPHNCRA9TVsSAnZWagAAo4AP/jiRvWweFZ5WgqfAGjSj\nk+b5fC4U0gT9R6CgY+lUSO+P4nsMTJNZstqenD4NnPLHkXU9f3NX4PvmxvpF\nv8u7oGu539qMoB+c6MpHpYITvsuHT0B+3YBLdoI/0h40NtZESmaTZj4ZMzXO\nGbvGloEfPNFgJYfUorjV7yohhqfkk3HlEpEvWYndbjWg4imCPhOKB3iLLC2y\ndKTzi/1tGc9y+zMxvDF77xQ7Eg3/qr4Gzsrw+YOCnAUcqGJpLZJL/ZenTwrE\nYSnyJp0nO9q6FLM0De5DQsKR3IzmF6fsP9WNGJyfoqwUyOs4ETMU2fPxzyks\numJChenAskUqtLdVcNNz1Fy//N7n61xi1SxWHKDY2X2l3wPNdDRo0Gbpf3mi\nXLkdL+GLMFyQDRQIHjpcCEDfZ+elmD8beAXgqRTCJ8MpQJflxUcXDrYSn7S4\nFF4Y0wVVONYRVJizbfjEm6ojmij20mBlA+I3KrdcdRlUds5OZTxztRN8oE1q\nGZzYMsesroJ3eE3PY+RlBv92Y5YL3DUOtv93CxQzXlqW6QmSg2xkYSrtLzlE\nRzchVWUfNV7yQ7wDlh8jgQYGOTUInuWrF9UFOXCjgKAK5v6RrHemMa0nM8aM\nQk6SaKEh5k5yq3KJqJLTZqaKb+dIOmi3mrWRt1l7KCIBAWMsNCbf8KTMqKo4\nUEMS\r\n=KS/X\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"67d604ec9cbaa0dc385eb36be35e0adfe641b244","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.474de7878.0","@material/rtl":"12.0.0-canary.474de7878.0","@material/base":"12.0.0-canary.474de7878.0","@material/theme":"12.0.0-canary.474de7878.0","@material/animation":"12.0.0-canary.474de7878.0","@material/typography":"12.0.0-canary.474de7878.0","@material/feature-targeting":"12.0.0-canary.474de7878.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.474de7878.0_1622733260813_0.11920018959023548","host":"s3://npm-registry-packages"}},"12.0.0-canary.b87ebf74d.0":{"name":"@material/floating-label","version":"12.0.0-canary.b87ebf74d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.b87ebf74d.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4e1b56c9168e53b177f0cb501c136c8cf141d127","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.b87ebf74d.0.tgz","fileCount":34,"integrity":"sha512-74+rtc/WFpULY59PJIgcO8Iz87QBjV+PiX7JF8xQrA3cBNm2vmG1VFoUViRLOuTFroeBme7YZt187LbIz8t/7Q==","signatures":[{"sig":"MEYCIQDooB3AkCMimSYmKy1Z0GHA+M/JthApFMMMIhmsPlGnzgIhALQaOH/uT4qydIemoW61mLaQeoe09ltvoUfjbqGohWe1","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233696,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJguRVxCRA9TVsSAnZWagAAUhMP/Ron77J+iysc+UJqE5so\nJvOMPaCUbKZPd6qrVL8mXUwjZwuUIbwkoIjfXGaUoIpTK3WqN0wcugxJNE5D\nBAkQ3vKNZhCZK1ED6LF3KDwwLWdWZygOY5seZ7Y9/q6Z+TuKv4Ugaz45pBCR\nkD7AZFvffA8hyravKAn09UNQQAr5u922/MJLHVgXilF5IaauImrRS9jvk43G\nKcH0hJ0WlL/Xo0+SpRfZZEJ8IL3BY2gUqU+zivjCmaYRNPsk9fLRl207SmyB\n5EVCzjIxvC4pGcdC0ylVBtikeFMbIqQ0q8hQmQesFr7/ZUZwoeMijeBnNGf4\nkS6oZZ9F1TiD8nhGJZKjeMJf/4kD2BKLtrp3hZgqxCVHEqElRxapDDgHuUH5\neWj26gmehPaNiLP6paLINwh73mrYtSvISxBredQLIomP5IvIXPrp2j+uvMfX\noOlwd4sq4YwTKLVGdnMiRnFr8s0YCJrbICMvuspVXyToU5oBbNCZoKP35+6Q\nHWRj0QFdDlkn7D0kjSK1bPeGdGBgdyqB0x1pQjG4TTIJRswnKPZG013oJDkT\nLVQMHNssz3h9Y8qfzxSlLguM8nTUpBFpNei6ty1p41qRLkrSmGrQ6pWTm4oA\nr/GNfKEXtzN0pLiw7Jo8DRdCW47WtNVU5KLW4pbMFwWf1M10mg6txf2F4QTR\nZ9JK\r\n=op8j\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d3567c6dfa0fd347d2141fb92460c63fac28b46a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.b87ebf74d.0","@material/rtl":"12.0.0-canary.b87ebf74d.0","@material/base":"12.0.0-canary.b87ebf74d.0","@material/theme":"12.0.0-canary.b87ebf74d.0","@material/animation":"12.0.0-canary.b87ebf74d.0","@material/typography":"12.0.0-canary.b87ebf74d.0","@material/feature-targeting":"12.0.0-canary.b87ebf74d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.b87ebf74d.0_1622742385229_0.5012014498021946","host":"s3://npm-registry-packages"}},"12.0.0-canary.2daa49b35.0":{"name":"@material/floating-label","version":"12.0.0-canary.2daa49b35.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.2daa49b35.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"07fd6cc15a70aaf0a8ca6c022d7f32a535831002","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.2daa49b35.0.tgz","fileCount":34,"integrity":"sha512-0nwTIgIGMS0AWcwYh5fjey510kpAVTQ4g6v2Iet0XSJAbhWs8JHeVMFYioagqeU4dnvOFJz1bmMJRxFoGG6aag==","signatures":[{"sig":"MEUCIGbzP1uUisDRdHV+xvaA3TtMSZ44WXY57RUE8ISMQTvpAiEAzaWe82zcG9s99JzOo/sgej6AKdwWPYQQbj92Uexof1k=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233766,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgulFVCRA9TVsSAnZWagAAglYP/1EiKoedu0tR8hRLym4D\nzNpbTfBybZbwzNIEy3pQeaUCqM1phSXXYX3nnWYDUDSv8ZQTKT6AeToPnITF\nRrMX06sHty2ifeShtGsp3h4yymdml31BFuf/gir0KHBFpyN6W/izpcR+WGy1\njXbg1Q1epbPZXVR3g6INCsNvbM6iqhYZ+LD7UEBoYBXNSST44Pel2nbS6lt3\nS6K/oDnAb/oL2UAZ7SS1Orq54jIgRQj2WvWz4J07+6nIS08Q+VcCx4OZnOTJ\nHEhsEuD7U9j80mv2m4QzvK5pxUInWdErSEV3MUU87bBAWZJBxSXP0V2ijLiX\nyYLqL0JaLRCQDhBFTwhK8UFuEwZkm6ZMd+HTfoQwIvHnx7iX6YAvfVpaNw8u\n207nq+VwJULTWzFzMzRQbgfVT9oHWdVkpyqd3Jrjm+YSmYuGsD1F/PxretZs\nOnRrHKdHid8DsYAoLZIzSBrpeMbcT1tx7Xm356H53fiObOfZEwxfsjNZBOh1\nrEUaru2LS1eq4MNjkyvik1eSldekrKM9r16rAyUA152RYbWbMi5C8zY427VS\ndpJH0uCngPifKg4WIQ6AjOoMTkDRulZewXGF1GXe5cOLpSICipb8AL9kaSSK\nqeGigusxch1LkQa/6QCQEWlPE/eujSclhgikmf7x4/xEqzHXMeVyzFZD6qxy\ndEjD\r\n=gpt4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3e759afe4116e5fb3941df918249b1b1348fe684","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.2daa49b35.0","@material/rtl":"12.0.0-canary.2daa49b35.0","@material/base":"12.0.0-canary.2daa49b35.0","@material/theme":"12.0.0-canary.2daa49b35.0","@material/animation":"12.0.0-canary.2daa49b35.0","@material/typography":"12.0.0-canary.2daa49b35.0","@material/feature-targeting":"12.0.0-canary.2daa49b35.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.2daa49b35.0_1622823253741_0.5761578725699898","host":"s3://npm-registry-packages"}},"12.0.0-canary.08db3d737.0":{"name":"@material/floating-label","version":"12.0.0-canary.08db3d737.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.08db3d737.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2256e663ff79fd6fc26b7ec0d7d2df1a30a8e0ce","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.08db3d737.0.tgz","fileCount":34,"integrity":"sha512-PWvoY+HnCAw3PVPyt41vTHR89Z1MEHBipaRBz3KSiRYPE+c6vx2eKNVkpVbPVCTag/yTz8VncrSXQEQRPXg4iQ==","signatures":[{"sig":"MEQCIGDibCNf6UbasMzl09Dx0Zr//NqWejBWP11Y/V1+gJWiAiBe+SNLO9br60JPCie5rxFhA7T0cSvI5/36sdLLjOd0kA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233766,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJguoH6CRA9TVsSAnZWagAAniQP/3GgqLSx8mPL61TmFk1J\n50KKP1MJt/Ffi5YO2P1rqKhPx1vYz66AXMrfCX5t9LofcjR1V26ef6FdIjK7\nt/3b54KRGJ/obZN//5EZez4uBT7omYzdQKnjEISWgdA0owQ+G5E4YJmZUDls\nFKNZe+QIZzxYM/M9XZOQNJyNVoPWct68ONCZOWakRNYQkEEvlk3f92w0OGKY\ni+a99V5JsoTeaNgLDwz+xbguEjxAOskTHKmp2Bh5QlFVUzsaoWOI1Hbg/fTW\nFVGJt+YO7FWrb7Nj0ctWBS9BaWJvPfrMyoCX0pQb4YgEopWSZdq83uQhtq/+\nU9CFQNy4lHJdAPyrJ+50RYwDFoSIiAOn9lt6hXTQo3mHxRS9YrGbDqut5goe\njTKtQDb4AsNsEXRfvjaFGvDNjByM5sj0Vu6WS0m2c67hKWFw0ivgkj3X6A5w\nHtjw1jLAXhTtNSS3G2DSaRhCJVLaeCPa5Y6TPqQtmWkkzSKe8iMlyB6CFtb6\n5wkOOIwu7TUePZZ2A7MRWYr3D55lGLbXJFLGY+gLsywRtAjZ58IF88CzKFuN\nVIKfE1CHkkI9bvGH2adMWWR6TLGEopIhlbC0Hm32aEYzbggwpma/Yv3/jvAl\n5WUykE+llQpvEsXQDVbsHX2jdyNSZzdsLf2LAw94by7+KNmH6Gd0/bJIoeoW\n9Ttu\r\n=NvWV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"0175b9a3635a8e6c8c6690948618b55f39ca1ffb","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.08db3d737.0","@material/rtl":"12.0.0-canary.08db3d737.0","@material/base":"12.0.0-canary.08db3d737.0","@material/theme":"12.0.0-canary.08db3d737.0","@material/animation":"12.0.0-canary.08db3d737.0","@material/typography":"12.0.0-canary.08db3d737.0","@material/feature-targeting":"12.0.0-canary.08db3d737.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.08db3d737.0_1622835706787_0.34391549842741376","host":"s3://npm-registry-packages"}},"12.0.0-canary.5823407a7.0":{"name":"@material/floating-label","version":"12.0.0-canary.5823407a7.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.5823407a7.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f0b389dac383124d813390bf84a294b8132cbcc6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.5823407a7.0.tgz","fileCount":34,"integrity":"sha512-uUJtk2eXvzFqEneOoNgZ8F2il5yJ8np1f5uHhDStOB8dPn+2mdC0/Vnd+IYLQqWHvxgWYhSUwhGlG4r1HKoOJQ==","signatures":[{"sig":"MEQCIGzIzNbdF/oYKIy3GYToqx4EL11gygIoK/HKLSxw6nC6AiBN+7LtnCUkHp46tWDoxsm+tsG0kqzK3yy30QcCe07H8w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233766,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvr5ZCRA9TVsSAnZWagAA5/IP/3ICxI7w2rFJiyttxcBy\nUlMDzIY4zZkEnJJhE6Jw5LbZ50Sv9XXcPFSj8Z5mXuBUqusnS94e9Ipn02Na\nr+/gbUvqRowkdDdlj7zcVr755p/L/yeNLuuDoe9rS/sK8pk/gM3S07lRpgGO\nmLemUqEg1iVvDJxovojJN803WA7QKGwX8a/+je/vG3DuGBoJ7SZ78aq/DZSL\nneom5SI1TCH1C3OQI9jEwTUcyYGyAB7tcTY9OLyv+zMHTmXliMXtFegZk/ve\nK+SYF+GnBx08z9nCrE977q4EHy5nVnf1AG8T84qwwZ/hvYMnDP6QuxjwqtCO\n1qaLe58kO8HDHd+4kxOrzy50ACeU3ICGbxq/xFb3+mqaBAa3U1kwXxR1c4d6\nnhFlMZRRg9TLSznRXr1A+BsJc1hA26nyem4scShUSo9Z3/WSUOPvP6EkTcfh\nVwccY0ZnSOZYOXx6QThlJEMiFj34pNnvza5AvGhJVk0LEW8HvFqE/tzQm9zD\nxLIL6DgZCfZX2FVzcc6am/3J7ZQ8GO2Kgc5PFZo1rHh9WfwK9Ur8LTrC7K92\n3hEFCIRiKzhG4xpDiYelCZnn/E+ZN8vJV2KdKGK6/PAO2uZCGDqv3ye2stGm\nSt41AO76Fzc5QpsfW6RYKhlGp1hVVb/7Fu9txK7wMTW6uQcJ+VRhKyfdBX77\nqYPF\r\n=eGEs\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"dd3ce4590e0d881d04e885d116e10e680b6c01f9","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.5823407a7.0","@material/rtl":"12.0.0-canary.5823407a7.0","@material/base":"12.0.0-canary.5823407a7.0","@material/theme":"12.0.0-canary.5823407a7.0","@material/animation":"12.0.0-canary.5823407a7.0","@material/typography":"12.0.0-canary.5823407a7.0","@material/feature-targeting":"12.0.0-canary.5823407a7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.5823407a7.0_1623113305692_0.6920279728023517","host":"s3://npm-registry-packages"}},"12.0.0-canary.23b0c5e22.0":{"name":"@material/floating-label","version":"12.0.0-canary.23b0c5e22.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.23b0c5e22.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"37fecb68847b0d47698890be20689b8a4717060b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.23b0c5e22.0.tgz","fileCount":34,"integrity":"sha512-WF/cXcr8O7Xj8PIoKKevBn/bjGiaFtU0uzZ8L3+oGUwhtJwlaeyZGZuTtKwbBT4iziDU2fZGWRYVh2YORO/f2g==","signatures":[{"sig":"MEUCIQDr/HezYuq3b+ZTJd4FmVzUkL5QrrRwGjrZmSV6siDEawIgJp7QJLveaCNPugWdggaRUlkyxqRA7SPo9EqQLtPbRr0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233766,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgv5k3CRA9TVsSAnZWagAAqbkP/j/ivk5uXydurRy+Pajh\nwgALs59B1NcTzMQUIfidQrtMG0FBZYt0bbPkmdVXeidFVJf61vnAVtafV7Io\nSog+JQVrpwhlSr2D2HGblYPYvDt0IPttN+mi3i8Y/wGAcXdNUzLNErEo+RRJ\nl8P7AH6GF7SGUpslOTXNJQLpvrlHm+ORRhsb4xNdyoU7xyFuBCs7/2Y8uAnM\nXTPsAUlBX8egCleQEbTLGL3xgS3Z/j3hGTmmfQxIFGHg53ySmUPg4Bu6znMr\nXNxF3MQ+L/yM3x7Ix7HnEjaOX2UUqJdg5PCqghqB4wPWuqdqceFSch8SZy2e\n/qo5UG2n7KoRd79C+G5XVUaaJD++fPaQMgpyUL17efdJCLIv5xPqC2OoFQ/r\na6RdV7LjdVG+pg+o5xiZOYcvOR8TMwrC1KhezLET3WvfYbUcHlETzfWbSedq\naX8PDpp0PHloBkAbxhdTYSKfnTQfhfNrlb9TfDiSZknxngbaPrBqh858Wvbi\nyGpY2i/kMiNeOfWodOvjtSJzBUHIRg2R/fU2n98/gMvXBUdSdreZdLjWdEgc\nR2c25HU6jtvxoHkIWwwnpbu07b1s3ws9VTN+ERqzPVVbzZTH5WtpN0qu1P5F\nmT/mGCBbozg36mYpZ/d4ai0LxqBZnixL2ZwxmFUIzbMuSdlnPPnm4I0/bnrL\n0GPB\r\n=RlPb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"fc55a497a3b0d48a691942de987d781555ef9d82","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.23b0c5e22.0","@material/rtl":"12.0.0-canary.23b0c5e22.0","@material/base":"12.0.0-canary.23b0c5e22.0","@material/theme":"12.0.0-canary.23b0c5e22.0","@material/animation":"12.0.0-canary.23b0c5e22.0","@material/typography":"12.0.0-canary.23b0c5e22.0","@material/feature-targeting":"12.0.0-canary.23b0c5e22.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.23b0c5e22.0_1623169335435_0.056964935223365876","host":"s3://npm-registry-packages"}},"12.0.0-canary.2952c6a76.0":{"name":"@material/floating-label","version":"12.0.0-canary.2952c6a76.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.2952c6a76.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"217bb99b4fcde5d5e0381791149c02f16ce48484","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.2952c6a76.0.tgz","fileCount":34,"integrity":"sha512-brS9qmLQk6auRVoDzlhS3i8Z3C/44ZGwE4ze/XQ0ZOmJhO1KOcpVJ5RlkLLC0Fi7GznkQQEgZuTkZ7e0La/wFg==","signatures":[{"sig":"MEYCIQDECIxuXPLVLQeeoUqy50dC4OtjcThOtlqMVD8GPWF/TwIhAKgqso3gLNM0uvE8sY/Ah534xNwYN4mwtRuQudj4tHgy","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233766,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgv6ulCRA9TVsSAnZWagAAJLgP/iv+FHDS6YVtO4SXCst9\nmF5xzJelXSTgJIoBy10Qo4W5hAClDuQ2h5JxGpiQfKMWRyNeP0byJeJD/wPs\niIn/QrnZmdu0ihfxWbiUXcDpnfmBIyz+FTu7A7Po8fV9kAzjO+qtOGqOaV2o\niMONQNSsEJHVGfi4F4bx/4Cv1h89x84aIyQ0Qso2EsD+3EwVaV/ho+Q1QJaJ\nicvzwOqrhdO5K6NB3GhOvpoA0lmuCdP7xLKWK5y//WbmMNmW4D8hB5GJxQXB\nhISLgGC2Fi+xRuBzqzTR8W5L/Q0tOCZ37DS1UHDj6alxeNYnbZsdN1YFhCDc\ngWIo4vS6O6rtINM3b4h2pQ7p2vOg0dMuv1SnjTqFaLIya+YQOYE1kRE7lnOl\nuSDdrvM7nCnOWuEQEB7PJrTjqm9psJklINiOXDoseeN8vmGpvAE0PlLFRcYX\nd98IIuBk6N/es3ScbD3k99e+dqT3H2DsihhT+zUa2tuEg5j3u8fh3n1vtpt1\nr9/WO+JmLCYP2PIWdfOzhYG6aELf7vRHGDkcyvCnTAOLHlIhAieYdm1GHRqq\niDsY7r3+mCP/29QVtdMjL5XyRyTG8HgVSqAJzFA0CbL8bjg8TvF6DkZCikKt\nQrczdxfI18k7kxmLGxzkiNdLEBCdsdAdPB0g5UioqtDfuwd2K5ZpZdUL2b9w\nat/k\r\n=8mId\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c1b0afec5d55ef54d74fa1cea1899368fe5c7180","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.2952c6a76.0","@material/rtl":"12.0.0-canary.2952c6a76.0","@material/base":"12.0.0-canary.2952c6a76.0","@material/theme":"12.0.0-canary.2952c6a76.0","@material/animation":"12.0.0-canary.2952c6a76.0","@material/typography":"12.0.0-canary.2952c6a76.0","@material/feature-targeting":"12.0.0-canary.2952c6a76.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.2952c6a76.0_1623174053732_0.4317212530505905","host":"s3://npm-registry-packages"}},"12.0.0-canary.f12425f88.0":{"name":"@material/floating-label","version":"12.0.0-canary.f12425f88.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.f12425f88.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1858cc70ca6e4b88e87cf643d211e8367534c99c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.f12425f88.0.tgz","fileCount":34,"integrity":"sha512-24YHXlOTz9B6GxFQU4/EN2bRYPd34FOz3kJeL9iQSsjkcvHKqUYee4iafZfwdrflz/NhDTDkjsKW3x9fJTvRMw==","signatures":[{"sig":"MEQCIFBY/yX/l11cc2VAuEj9Ma9K3MrVPt+UWhF/h7NmP/mRAiBvyyQP301cWYG0EP4xy0qv2Dsmiy+uzGWi2y4yaNIIJw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233766,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgwWWCCRA9TVsSAnZWagAA/zUP+QD72NZuvJ6u3S9F/MD/\n6X9haEsvM+hR9CO1C9U+jMwnuSbuPBwzf14Ut9AqodtqUE2nqtZA18ucn3sN\nnKy8WSWtFA877U+CVrLcDktm+EQVRM4DyZn0R85aXlpESAaet0rAbX+9SNMi\noRyFPsIkpqwEuDBeIz8/OGkxN3tH7tRHoNncv4mVT+1m0OknZkO68nHJRH+F\n3FpcfNOFdnOLI1DbqV6uNQZKjk6gFmS5K/D15dJhnRu91x2Riccsycb7o2Kg\ndGRYxapy2pIt39ybSuKiZUY+H0+o6LXyJ56OxlZZ1tgIe0htnS0UU4g5uR+q\nSs91GIz1ScfhlYeY71QNUwRHdTDkpMDOmOari7edEOzM56SO5NvwVJ/OLX2e\nPL9nOopIRoY0ZTvntp0UTkKYfT/q5rSLlbimuGHNG8/N93YOgkUSFG0QRlAV\nwfyWCahJs//OgJeqw1aSkwc5YU5FNKY7saXoomQWrHQCVdRGs2j2sW0JEEC3\ntdyUWu6WXQK5md5GBkv5ej8frsFRGCww+SeNOMoW41Q7C5BwbnRisso5Lpu5\n+jakD3/MTput1+7DljgsXrYvjSfXf/5AMGUnp/tT8wLpRCLaGZa9960R918C\nh4RRHcJYO7UtRcx3/FTZjQ7nB9yrNf02jBjQfF8EM5jgfNKn9Aob6lyASx7D\nH0L4\r\n=DnzT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c8fa3a7d372e06e42b474eed4ef3e4105dc43301","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.f12425f88.0","@material/rtl":"12.0.0-canary.f12425f88.0","@material/base":"12.0.0-canary.f12425f88.0","@material/theme":"12.0.0-canary.f12425f88.0","@material/animation":"12.0.0-canary.f12425f88.0","@material/typography":"12.0.0-canary.f12425f88.0","@material/feature-targeting":"12.0.0-canary.f12425f88.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.f12425f88.0_1623287169990_0.8027748851923746","host":"s3://npm-registry-packages"}},"12.0.0-canary.e543628c3.0":{"name":"@material/floating-label","version":"12.0.0-canary.e543628c3.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.e543628c3.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5875579dc5c2011759dc9a1f0f3425a59a144881","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.e543628c3.0.tgz","fileCount":34,"integrity":"sha512-/zlYUdPjyCxN2Sa669DetI8QPtSk2fOrd+qNrh1gxPiYGtu13pVpOdiUbF0Dp5Q8tMDOPWVGpc4klASeqQgsvg==","signatures":[{"sig":"MEYCIQDJd4Tyf/S/tvLgB40xxuvjJ74sehbHcrGe8B4fVe2f7AIhAJ9hvEgiu5Ev9+QsUCmBkyxJwoHQsdXejZiLYe4lctSv","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233766,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgwWXDCRA9TVsSAnZWagAAZwQQAIVA41Wqnc4ZcTlfxZwd\n9b1Kr1MkcRsQiuT1sdRVLCmosd3vs1nUjbd7g2pSfFQFJwxtMHo63iKRi7B8\nmUXPd0nRQSC9JxTL5pcCPMvtlHnnYHehfFUQd/1mm6PAaaToHB6a0SFa7EwT\nNjHoqmkmCinzU0F1c5MOTo9CmmFL0Bdrw29f6JYyNSRHavcAwtf31a8bJ04t\nd+yuEU/JxzNLqW4dKuSez7MMOfgVCzq6aF3Qf64M4DiyCCcqpDJsw3l24Umb\nMuss9HS4gw/ywvNkcJ6K8CELA4rQRVP5hk30bv+Z/n6fzp5x6x76ofSLzh0q\ndu40QoIjOUes5t1TRstzrcUEgl6Sy1IsKuTL2RKMf+nIAZ50RPAVfYHyeAgI\n0d7Y88lMCfARWN3Peb5NUevoX1X4Yp3vFSohq+n0k+85L+/u036sZY79Opff\n1AW1k8TBwDxdThx1U6+vMg5bCQoaHwRNO1S2vwehhPrqHYXAnb03b5LRpBUt\nq2ZvGYsNBB95Jof2vcpySc+y+mxCNZ/Y9R35suftVUoWt0Gnt3bNC16W0bo3\n8m3SI955sjWUZor5u7zKCdUD8xnX9vbTTygdtgGTBJIO/DCxB/Swwc+Z0u1p\nHBP7vBndZ9nxY8ISV5FU+4U4kKeHTEBIkoHiBUYt0MRfVsbo7OhJB4eBh2mh\nH1j+\r\n=taxU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"6e28195a46e3b2108c76ee1a6a9ea9416276ce52","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.e543628c3.0","@material/rtl":"12.0.0-canary.e543628c3.0","@material/base":"12.0.0-canary.e543628c3.0","@material/theme":"12.0.0-canary.e543628c3.0","@material/animation":"12.0.0-canary.e543628c3.0","@material/typography":"12.0.0-canary.e543628c3.0","@material/feature-targeting":"12.0.0-canary.e543628c3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.e543628c3.0_1623287235087_0.7165067241817835","host":"s3://npm-registry-packages"}},"12.0.0-canary.e0c346286.0":{"name":"@material/floating-label","version":"12.0.0-canary.e0c346286.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.e0c346286.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c6fe047390c2a07baaac9869a12481b72ec3e60c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.e0c346286.0.tgz","fileCount":34,"integrity":"sha512-Oaq4kPFuLdZvn5qzI5XX7XXU/6G8nASaS1aTZWO+lmr8rTIIdI35SfULorlJCnEjpJlIgYU73bMEyJWWpEC4zQ==","signatures":[{"sig":"MEQCICyn+xLwsYU7hvQQb5wEK+b6kz2s7LBOD2r+4WgjcyFBAiBhmSJ/lgUCmSAb+r/OZNetrnCmmJVP4v1gLdSV9vzE0g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233766,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgwj9sCRA9TVsSAnZWagAADJQP/1ObrITrQkyMWlv9J0GL\nRWNT/a1CH2ayzOk5loSCOvT9dy8lg3zCzAHrmO5oYR1Lj/kf0dF/NrWYjbNm\nakNmDPXviYlT36qpFcd+KR0fHELxL1SmYSES+N+fVKDtKm9bDuRPZ25ZatLi\ndCbQcFEXmZkuTHRQoSk7CDKkyH3O7xqoGEDtYRJ2qWHMyd1oSfxC8nEbPj/e\nrDejtDT7XWKuD/0k0BFRNjQEicypPklbcL4vQd/rjdK3Xip0ODFFih/6geVd\nqOJmf8koR8X3nMmfFfY/MFb4sN/coCDt1nrBONu5+ewAnpOW7PiI2u1Bm+eM\npjQLvmikBC/hBShGXIJZvRc0NvyIBs4LsoCj/obqgbssT25qPy58XuSZRZXU\nhgDYCthlwogSAPNMFZsk5k+QQ29WapphK88brnv3vlwv3blE/ND2e4xxt1AO\nA9E0k/bQzvW998IQyrhcEeVgpledcEwRcrZSP7oTm5eHAMd3SzN9HTEiRpSX\nB+Rkq3v+tl0wNqr1d5RjZxxmuZZL2EnEs4wv1hqNnHnQ80ZhJSGX03VZvLXc\nU8T5U2PLVQickXasvCiGT3gUqo4V1ybKln3Dh5BirKngjXGgST+Kx8EF8NcI\nFfZ25t8VbJO1pr0QR20oSY44YA+1EwkAhxXSArbErNLgpx/ONBcWVQG9i9pH\nfCFU\r\n=pfKX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"405607237a611d804caa0b022897b683aed90ccc","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.e0c346286.0","@material/rtl":"12.0.0-canary.e0c346286.0","@material/base":"12.0.0-canary.e0c346286.0","@material/theme":"12.0.0-canary.e0c346286.0","@material/animation":"12.0.0-canary.e0c346286.0","@material/typography":"12.0.0-canary.e0c346286.0","@material/feature-targeting":"12.0.0-canary.e0c346286.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.e0c346286.0_1623342956453_0.30016252191685044","host":"s3://npm-registry-packages"}},"12.0.0-canary.f43af5633.0":{"name":"@material/floating-label","version":"12.0.0-canary.f43af5633.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.f43af5633.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b7b2cc1e17d3c58324288c0d0a7f91008161edb2","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.f43af5633.0.tgz","fileCount":34,"integrity":"sha512-5eKVTvm16yjlS2OYik/bWNOvhU6SUZbUPw8iFMdpr06A5eS4emksRZzBqGaEVZoMXSjWa1A41Ts/++n1sDzkAA==","signatures":[{"sig":"MEUCIA2yg06y6MvYwXLDZpKUAhtmtv/VhNMkCjl+Kva62EMDAiEA6g20xIg6r9Ha4VplRlvaVvOtoZg65qNRzvAsjKgI3CA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233766,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgwneoCRA9TVsSAnZWagAAB9EQAIoQj3kYkMKNE/wWSNEy\nj44COYdhdzE4ItJGNHaGci5xOqK+CHRS2B/gNUH/lpHVzkO3jAehB8BWK7U9\n4/18BPb3+LbqX/pb/ZT0Q/uBs1Bpawxu9P/JUCnFqipdh+RB38Bz9WfuBx53\nSKJEt3q0sCIywoj+O+EL83OhMIWTH/+IbNf4Cc9FrG9z1BAKn91xMofk2RG4\nSi6jsJyYVRNcj2DX4D+XnyQkfc1gqcvn4tfVlrhsVPRlmfGkAkHYiCdag5eA\n2nT3Cy4e4dvU+iGTxtyJp3S0/rfokcvAilz8gM/+dpIN/58NOFkoh2l9utk0\noYwSiRxJd1v5wgFXy7EdWWl9cYvnUXorSCEyQkmbrtcJ5cu/ASaRBH/UWtGf\n8ohCWjITnafWRYTiGfEq0NVqxt7WVNcXFTbnhpsXNxqyqU0eiW68odHXlRCi\nVksJhlaC/CBME29Oq8Jr1Qa9Eb7RMynqW/1bs0f9O7ZoICMz+sclNrh5wWCJ\n8tW6cksR+egqbxykvysHMKR+UPVBeJz0wNLmPfbQf3Lxn7d1HBYdbPSnjFdT\nzdUJchzqQanoYmzvax8Uo3/rRh61dzCFKVBh2cSY85EIX1tJdBDItSZ4S9QU\nmiiR5huW66txcxRHjTEBfBBop4c24yuMiWtuf8SLRguRA1mgttegVa64gRnH\nrHdo\r\n=2Hhx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"6889f0098642c4b4f3987ba353e17a9a22de856b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.f43af5633.0","@material/rtl":"12.0.0-canary.f43af5633.0","@material/base":"12.0.0-canary.f43af5633.0","@material/theme":"12.0.0-canary.f43af5633.0","@material/animation":"12.0.0-canary.f43af5633.0","@material/typography":"12.0.0-canary.f43af5633.0","@material/feature-targeting":"12.0.0-canary.f43af5633.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.f43af5633.0_1623357352175_0.3960336474238093","host":"s3://npm-registry-packages"}},"12.0.0-canary.8415ae585.0":{"name":"@material/floating-label","version":"12.0.0-canary.8415ae585.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.8415ae585.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"66a0b1359fc29b0bd81ffe7a244d208923437b63","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.8415ae585.0.tgz","fileCount":34,"integrity":"sha512-qDlw9ut5CIlIqDvuNVTdZzBvwkSU0cfPh/ILzRPA2CAFd6URZxOvG6LQDZGPHl38VPsApIWINeLlQosx4mrgiQ==","signatures":[{"sig":"MEUCIQCRgpM+jS0hoDC9PqVal37AAtGYcUuwm0LAtoPeshWCiwIgBivkf/Ye4WFjQqk8kNYK4moLhlvRPamIP76M4Wi9+Yc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233766,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgw4niCRA9TVsSAnZWagAACA8P/0/VVR6C6QDLXvnwKE6a\nVclrn3KvuKbgnMLYJh7iQuDuia9kewtAE6dbGNSl/k366djZjdmbwjIaXzEQ\nupXofuqLcZtiNco+Ipyjryk3eJUfF+LD/af9hkz92SpWVr7xMyJWS165Emm1\n2sOa7tezTBeYKFNInlke92W8OhniC7DQkk8hatWZNhwBgKHO6+pKFDzBJYYF\nXUv/PzbH7zOZJta9HOiVxJrtl1QElkXRuEVZCdwhouDfFP1Ots+6h5K2jpov\no3AEQxM2vowhN88g4GrLN8LAhV9iA3td8/DhL3IuBu3PfrkVWQvanL8eSyGr\n8qm5Qj0zZ5RUqmkyse8U2+N+dpJ64JObbjksniX74sC8zoyPdvyI9mQDdcy1\nVkE8969QnFsKI15ONxcTzJqZU8Z2RuIo7kBoUwVodrI9x4BFuK7HlBRaqAXP\nLZQxL1hiOZfDweEOYcypbvXNJgtx4q/H2Y0zgHNIp1hCJg6iVARlm1AqASxP\nPAi+5dEyjYOydo81cyA6wIuMSSPXQAoaaLUzmGXw4hmVE2f5SpLXlMz04Oe8\nysQw1nHZw1FJlWbQ85N7yTFs0cVOf+yD44msd63KIKAf2lTmMpnHy92sBb1W\ncgKQgAq+kiSJz4SDVfFRV+92T61l5QFeF88YCGyp9DAqyRsSNkwdmT9yAirA\nHOYh\r\n=zw1z\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d00f19e41330e3956e7355a23ea132e5ff37403e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.8415ae585.0","@material/rtl":"12.0.0-canary.8415ae585.0","@material/base":"12.0.0-canary.8415ae585.0","@material/theme":"12.0.0-canary.8415ae585.0","@material/animation":"12.0.0-canary.8415ae585.0","@material/typography":"12.0.0-canary.8415ae585.0","@material/feature-targeting":"12.0.0-canary.8415ae585.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.8415ae585.0_1623427554034_0.4927695463904982","host":"s3://npm-registry-packages"}},"12.0.0-canary.598fcccc8.0":{"name":"@material/floating-label","version":"12.0.0-canary.598fcccc8.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.598fcccc8.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"cf6905ef41828d2a07b4327f69b0f6f31bc8d5ff","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.598fcccc8.0.tgz","fileCount":34,"integrity":"sha512-laNRmmvqErlwvpz+yyf93GnpPXI32ZaKDPrRA6X3Dx/LDCgKtng8VaMuTSGZx0rMuD8qMtOuXkoxB0Kqd4CkCA==","signatures":[{"sig":"MEUCIGUfVZ+E+Sl86329k8UDB+mVWyAK29JwUiwpt2twaRgiAiEA71LPJsMT+c0BI+ZB8fjOXZGgJWjQ+D19Sj9XBn3n6Z8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233766,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgw9m1CRA9TVsSAnZWagAAZ8sQAJj2o7OC3Ok7n5j0I4Ea\nEj0kEHhn9dVbf0ONLjHSQ3ZJw6l4z9ZUv80GE5yMkBBQlA3XUmPbGU14yrNk\nAxA2doRabV7Bh1b1QUFLMNG9jjf3j1oN9KBs1uFx55eN1exXVOFwSJipEPCJ\nbuXKZECYVx1rfl1HZLjvRt+cajDw6Xwx0YkbDgDLenkaPg/bR2i1cwi4y2O/\n1V3w7EZYRIIMoVi4bVEewd0jex0ezoi0Oxbgzopsn8j2zxJpYSN5s9emH07Q\nFpJTZznbT1Q7yqq/fby0id5fL3hyHGwMf6DEqnihUpl0V28qPsDqdulZvEGY\nBUES1QJegD7SuKEglTpf7bx5OjGjIctg7PpcJqVs1Kq4jG8IrVar9u1ZFcjS\nrN0fTZPtpf9CpND0dDH1wPS2M7ONwoTl0ytb9QJJ74A7wAdj4JZtP55xmH0D\nLFHZ0SDaRskhA+C9HHoSw8j4VIJt5WZ1NTthdNhrh7ElprNG1H9dKT+ATqt8\njblRUkUS3nSafiovBLCvg8CnmU+UxQUmuDPIrg2aEBGoeR7OAp2pbdZdtco7\nS0nK+L3NNT/uTDuIziDNzRWODC1QnIgK/h0xUzefeCfYC7ewco/aCWZCrgdA\nscJ+PtH7ZCcVPOCTSXpc1ig1j9KUMGX2/4VsIn1seP8yq4PAhlYAEEBzZMlM\nUWuw\r\n=qEYy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ccbc9ce9b0bfd89a7b5d57d3e0d6bc2ae297f66c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.598fcccc8.0","@material/rtl":"12.0.0-canary.598fcccc8.0","@material/base":"12.0.0-canary.598fcccc8.0","@material/theme":"12.0.0-canary.598fcccc8.0","@material/animation":"12.0.0-canary.598fcccc8.0","@material/typography":"12.0.0-canary.598fcccc8.0","@material/feature-targeting":"12.0.0-canary.598fcccc8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.598fcccc8.0_1623447989434_0.23421811914593071","host":"s3://npm-registry-packages"}},"12.0.0-canary.5d0605188.0":{"name":"@material/floating-label","version":"12.0.0-canary.5d0605188.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.5d0605188.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"00acab9fded5b97c8b46f02e2801679b189b4954","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.5d0605188.0.tgz","fileCount":34,"integrity":"sha512-FSzK3mY1s+TeVkFZHmGWnl3wFKlBC+Q/hmCL08Ye/WhSEf0YWAI/8U5wU+8IYAucVkyvtAkqjftZXRnpsoMcug==","signatures":[{"sig":"MEUCIFYFXkRyxqUVS341HqRyYP9BzArf257qzVlgfQMKCP4oAiEAlrsym6Pg9lmvxA97Ynar62zesSAhL8DkwgAwWpA9OnA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233766,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgx5RECRA9TVsSAnZWagAAPcMQAKLR2Uo22v6zaAHOB2VJ\nVtDaoGtdGNXfSyuqG0BQCOo/WxPbLittt2BbfDsRhMSufnU1ov6t+yQY5AHv\nR4wib65nrsc0jof9/Z+dEgkKMvCnCMrCKhAJv3ZK5I9h5lTh2MQq6w9Ynd/l\nXlIhjFxeUPDHwWpk9rIuhBruYtmeXoDpjcjTg4a5c//TEfUOUQbAL4ROJ4qX\nDds5Yg7b/jU0CI7ZPTP0g/nciZpoE8vcYoogBPY+4+JQpCHZhRP9CkOrStJc\n15XQSmfGVMbCbACdrGv2aAXTtXSOdGDA5WGJntBqg0HF5Bxrk1iL3tHyhaaR\nXo36rnBhoIYzqo8MffSsPOEk6ScC1QeDMLc07N9DgXFG7kouFLC4cw9c9gpR\nLDQ0uPj2xYep5Y4HGO6MBw2AFdGc77kU8K0nVeCmm8ofXvbtRcDkmnemm57j\nKQf9DDTZ23yPbR6h0OlJqfWBgr/WeKPchxIygxtvua9F9BBZ/zHcRDu/lYRh\ni74N0AtLx8EskDP1O970fg409J6fboiPsT4xm03vcQm3Wreig4a7Gea3479L\n7Z9IyVMDvMS8cQ2C8oLvK9/1CHDuvF6HSmAW5om2q65RoEQn22XFSLv/HEvh\nw0+p1r/otcXkLjNPtRcpvVGwnP28OtNGhA6+dQvpUdDSPHi4QpdZgJ9RkGfs\ngvUO\r\n=IbE4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"0ecd220c6043621c1d471242f32f317475b671f4","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.5d0605188.0","@material/rtl":"12.0.0-canary.5d0605188.0","@material/base":"12.0.0-canary.5d0605188.0","@material/theme":"12.0.0-canary.5d0605188.0","@material/animation":"12.0.0-canary.5d0605188.0","@material/typography":"12.0.0-canary.5d0605188.0","@material/feature-targeting":"12.0.0-canary.5d0605188.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.5d0605188.0_1623692356019_0.6420442408274829","host":"s3://npm-registry-packages"}},"12.0.0-canary.f147a2271.0":{"name":"@material/floating-label","version":"12.0.0-canary.f147a2271.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.f147a2271.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c3cb6831ab408caa2677ba2c00faa8a4a9de3521","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.f147a2271.0.tgz","fileCount":34,"integrity":"sha512-NTd+6wmiVFi8H99SimChnM8ekatTWOl0VTisaOT4bL36VLNGQ/XzIUEzy1E0qpQd8UtljMSv6IhBLumrDsVGUA==","signatures":[{"sig":"MEQCIGIOIOVDBDUWEblBUxW6fqCga3XtV+5ddDm6m82e9giyAiADdJGa7YjG6erLhTf0n4axpBuSulWLaBPrDRPw4ZVTVA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233766,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgx6tzCRA9TVsSAnZWagAAwTUP/0K/Bg+YRLQ561UG/YZ2\n3NP1dD6vKrodkTj8fDbbgsZiby0Lbn8Yf59VbXvuuuZU3yPqjuoYiWI8Boe4\nVo9YZCjTxrBAdipaK5L5MNFWRHlupyn7mW1xjcD8KMYBp9B9K4B6M84NShMJ\nAU9sfck1uq2JbC05d7gDMQOuZNlBxT32K36Sj5f0sB/t4FkiFmvdpeF0usnW\nK8IL+8Hi910XonHVzYCr6f59a1n+KGtnRz+GRh2xFcLiwcEM/evLFgdpV5MV\nJDIMsUscuhiQjlF4ZC7hTgyPh4wwPx0pkab3taX/vX07ffDc070DvfAXFJHT\nKJKkVVQ5tfkbT0OfO0DFKjh4i+7knKmx9ZsqWum3RMJ8w9Izp9mgSEtIc3Jy\nIaz73hoQNgcu1iNFSI3ymCCoGj1T7p+0tZouaPFzu4YbatQO3lA+zeHwQTJn\ndS24NeMOSwXeh+GTEaXuDbswjtWk29nzvToXpH+sgPMfOqZ+7ynC0JB3DVP8\nVCiLSk8Zl3hjSAcXxmEK+kS8cAt3I47vdEwzdT/ntZ096RmmRNJwWocFyOKb\nxTmUbaDEpQis1TdP2cgGcigIoBz8QWhbuyO5JqxQ7Iw9u9kjSM0PP5Wg+AKK\nQIfKUP/ZmzjfsKTZxUw8ivF59Gr7UJeS1ATc0yC0GtBB6M1SyGuZux5/Wnsi\nGB2i\r\n=ryfl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"70b871f06c34302277b9eb3064110dd70afb181b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.f147a2271.0","@material/rtl":"12.0.0-canary.f147a2271.0","@material/base":"12.0.0-canary.f147a2271.0","@material/theme":"12.0.0-canary.f147a2271.0","@material/animation":"12.0.0-canary.f147a2271.0","@material/typography":"12.0.0-canary.f147a2271.0","@material/feature-targeting":"12.0.0-canary.f147a2271.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.f147a2271.0_1623698290988_0.40044813617881836","host":"s3://npm-registry-packages"}},"12.0.0-canary.33579e00b.0":{"name":"@material/floating-label","version":"12.0.0-canary.33579e00b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.33579e00b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7f8bac9217ee6c3fc93d21ac6404f54d7c1be48b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.33579e00b.0.tgz","fileCount":34,"integrity":"sha512-NPWDDHDQC5ZXUuQKS5Dt9TP6U2uxG1+HhtULY7N4HSQ294Alyx6X+St5U0jJceDEMYmQJx+1rzkh9XvGF77S7w==","signatures":[{"sig":"MEYCIQCFQCnXL0Mtg5j5i3ivmDwWhJzgcDyvGocCgf1o9eguNQIhAMeprqJZz7AUbtTdPZYP3ehL7Dcdpo2tOhN7+DhIRD6W","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233766,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgx/KsCRA9TVsSAnZWagAAhe0P/2R3nZ5ZFI15nQJeFE0B\nK+jKlvZa03Wndz/zGrY+mesmL54Z/W6Gzck704fr8yt3NAOcpCTfo+RIwiCI\nZYhfXshjvcrd3WrdlLDn2MhabE7tKbOa/F1mIW7CmgPuLUHKIqjsjjU6rE3i\n8jHF54zEHUnz2EbAdbZLhaZxK555NdLes/SYBVblE04WP5DKAh/1zUHhRRHr\n3E6/D9gZTjNRPcDxn71EvSQ5f0i4SEWz6KCTPrrsddsG9BEtXess9GJjGJq8\n8sBwkYsVuuotThc4OTSFtAuaeercOvBmS4etLRaZFWBGNOeJFTyxS0ZXU5MK\nKsA0z/0xKxUObyfKnzAxQRputEJmMooGeMOpSaCU4n0TZmzDc81eqCnnaB36\nmAapiJuFmqdo1XdNFTb0vgoLJxxdl5kDSFGYqxzbYL3XVpkUe+ONmMvLiNy4\ntdB+TOVpbC5eU2KelvZzOWj0fyo+CXrRtKYdWtNbvx0vkMKbB77IIoK13cpU\n/NwUVw2wlFehv3IeosvkR3X3fMP9qO5ZzgXoed6kSXKCx5DMnPQqTZMuwc7B\nOKUdJOQph7k1lpUCPmLKiQyI+C7fFP3NEHzWXRyLw1mDAjzEVxwhgPS7Nnw5\nxkhsz/rC7DPYS9n+rgvPVdoiMBCu1F90nbNfia9pm6Wp6heGYbHDRJC6wG3M\n6dBB\r\n=IEsr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"13a815cd8b945d23ba7ba2ebd6730088fa195237","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.33579e00b.0","@material/rtl":"12.0.0-canary.33579e00b.0","@material/base":"12.0.0-canary.33579e00b.0","@material/theme":"12.0.0-canary.33579e00b.0","@material/animation":"12.0.0-canary.33579e00b.0","@material/typography":"12.0.0-canary.33579e00b.0","@material/feature-targeting":"12.0.0-canary.33579e00b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.33579e00b.0_1623716524387_0.6441101380280425","host":"s3://npm-registry-packages"}},"12.0.0-canary.a6909c0e6.0":{"name":"@material/floating-label","version":"12.0.0-canary.a6909c0e6.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.a6909c0e6.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"07b426ab77a72d357bc5b519bcde502cb1b4c198","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.a6909c0e6.0.tgz","fileCount":34,"integrity":"sha512-xyCq2pKAaOnA0NKzNNesjNEtw3FuSKgpq6qpC3kE/YDxO+MFLXEVTPOjW3uOuU6G8Ey/n7vmlsVd5A/F4LjU3Q==","signatures":[{"sig":"MEUCIQCppFM3o3rkKFNXFL88g5Qra9l7K52yndmecgWD5LF3yQIgKUCZdd+Jj3YVF4frR+P5bVaac/Z0iy9cHzEdVR6CRXA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233766,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgyPGzCRA9TVsSAnZWagAA5MEP/0YZJnKbl90lqdVI74XQ\na0w9zGr8Bv3v0iNvZKxffac3ukV7xc0i6WXl7qIBpEG+TxuEqrnuucLaiAdq\nnV5kUuQvHWFeRIII6FWQQVLrzlFyiXrEA0kKYq7zC0devmu4ZHMmY6ufyc2t\n+2TLBEa3rRNZbeK5DHbH74OD1v9h98e5fvMjudEj/8WgAyMo5cjQtM0S3wrb\nHCJHm4UwtLm3TUNKBWso3kwqdlmZg1laOwSKIFm3BXJrmgQiim7znqMos22K\n9KNCL56Vf3oROFGHWj+UjdgegX22iVxiw7wcRSad92mrA9h7JW+05+lLAmZ3\nkIJs1TOImCqkwJzeR3CJi9fystlhIIdF16f1VBsfomatK3bZom/6uO66CZBO\nsHuefxXB9R9St1jHTA9ZSkXqmsmSlNJGdxXtjR2O4ZT3xnHmbkZt4VhBWdym\nWW+M6TU3+aVA/YHSzOV4PuI/Rh1w7bVFWyC8WXelvgOdDYrX2P9xrjvOrNLQ\nDdBqEkEbNg/jI1SOz++4kE6ixNkB1NQgfWbF6mTa/FOr07Eh/Znzn09v4FCQ\nJQHUc0c9wmFm9+9N5PZ+ChyTgzlnvxg/HhkJa1vmEGuT2Yw23m1GrqaW37hI\n+3AX1OHQ9mo0rLRuJbyvL5cEPECPQQukV2pqYqBxYet0miRCmVnQAY8v1c7B\nvyCK\r\n=DkmL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f4852598d008bc1750e5e9d2a0e828aa8804f87f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.a6909c0e6.0","@material/rtl":"12.0.0-canary.a6909c0e6.0","@material/base":"12.0.0-canary.a6909c0e6.0","@material/theme":"12.0.0-canary.a6909c0e6.0","@material/animation":"12.0.0-canary.a6909c0e6.0","@material/typography":"12.0.0-canary.a6909c0e6.0","@material/feature-targeting":"12.0.0-canary.a6909c0e6.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.a6909c0e6.0_1623781811224_0.7901795291325762","host":"s3://npm-registry-packages"}},"12.0.0-canary.c18b5925b.0":{"name":"@material/floating-label","version":"12.0.0-canary.c18b5925b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.c18b5925b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"8a8d77cdcb1742c40ef31d37cc721b01b1315326","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.c18b5925b.0.tgz","fileCount":34,"integrity":"sha512-j/DKSwnqX1Y6jgKXh3HVH/clrajYml4bBIDMbPEICIXoMYH9CQrJXcn3474Uibk6vCxrPVugNTSTzQG7qIUBGg==","signatures":[{"sig":"MEQCIEFvfuxjyKcyG0H0X9HZKDuyZfqmZFGabOZ2BEVeKaM6AiB2EbwptKWhMnkWsnPcTjOv1WbYByOsEid/jReHynovig==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233766,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgyRWuCRA9TVsSAnZWagAAg6MP/jiH+cBucHZtnFVOqPE9\n5tuOXPT1IhS2gKDHBwYVkPlNbLQ8bGe9gz+u9znu5dgZLa1NkZ7VVNU0BWRS\nEN+SvXCgBkyEZLZUMKKf2QdnmZ1cgmOhzcm40qSmJRwkiohAcvcOkEQnzaY/\nsnLdIFWQdvXcdfpUb9XXBxkqZNRAHjH0/QgdBpd99i4p85AFK5L4TJC9SGDg\n/YO1d18B22Icqs0dpT2fTweYQqRI30+7PFUxtWt3vDiec7wsSPg/W/8aIEGu\nY3MBYzEW/lo3gKsPdH4gAy9jou4X1a2aHdfSzry/dDKuTgLfILOms4u7d2qw\nr0dv8MaWgbfiLRpdmrDzy4URT0J0zNetvDMeWCbdJFwLs0TEpNiWDJZciXLv\n9+MWtDID6wnEI6ohifJumZfphxGvX1srRgn7xXB3Yyteay8iHmfJoSoym06u\n4t9O2Dnwgw5/xG/xLHEnkOifFHedE5aOELFa8dpEAKIZRFVlKtbJ2FwVK/DA\nsq1zeDnAjcK2axmeeRLMrslMOTxzorSlD+gJVL/j7ZbwYNGrqtYc2aUIOJOS\nsSbce7E3kFKN3hZMMsJ78XTbE712ew6J+CIUHB6oMOZk9dnYfsmtd7rd9SZ1\nSeqvGxx6h1PYN9TABYRuZiLLT9T9XyDabnn3fI1QcqjM3LioFhwjGH3nmAGJ\n1HEG\r\n=Z4Yp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"bc767c077b93ce415f2505e54f329042c80b0d3c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.c18b5925b.0","@material/rtl":"12.0.0-canary.c18b5925b.0","@material/base":"12.0.0-canary.c18b5925b.0","@material/theme":"12.0.0-canary.c18b5925b.0","@material/animation":"12.0.0-canary.c18b5925b.0","@material/typography":"12.0.0-canary.c18b5925b.0","@material/feature-targeting":"12.0.0-canary.c18b5925b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.c18b5925b.0_1623791022436_0.3987441888701049","host":"s3://npm-registry-packages"}},"12.0.0-canary.271fff902.0":{"name":"@material/floating-label","version":"12.0.0-canary.271fff902.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.271fff902.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c47b4ca7078bea45733ca1720f4cf4e21412d183","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.271fff902.0.tgz","fileCount":34,"integrity":"sha512-faI+5O0pSxgAti6DuLt/cSUD9iAtb+/JRGlWTb3cSoupl0G7iZ32DLMZo9fIOl2sTygTDyWmbD44oC99K7Q8JA==","signatures":[{"sig":"MEUCIQDZ9mbZHHXncGTcSL9ZdIqLWPTLYVnL2jEalRCniqRD4QIgG0LyOoXwJ7lbGjPxg3IYfGXLIeMroY+B4rGZXj8a51A=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgyS7dCRA9TVsSAnZWagAAi+8P/3P1m82yZV0lHS78Oe5W\nPWZh7VmXfMycm4SHyUYQLut0efs9nnomgF4un2G//YienSZMFukygE63Ouqr\nOwdZPpCsZhvb46mWkVTBEIDRXVpZjcw9Cm/c4Ngy9SUxotbxBpwTwzq80sNv\nTgDlFqmlY1QeohZu/MySYm1cKmvmpm00nxvyktxxWeXUQ9oU3OdRbZtvmiF6\nD2sRgYESohMGGwKs7bwDRkSvt9krkpdy5Ims6i7VfnvNzUnCgC2pBMEkMY8j\nkT+8KJuLa0Ps4dJXa7HDN6+ctnxhrOqHyyUMF29VG3ujlE/goZxA3r8lI4FU\n6fgNdMRK53FieXa2X/1dNl9Pid2cTw5Uw1xkCRXdFLMglbsg3EVWpr3eoRBh\nbMWX48GQyEEGelQii/iy4zlgIMTC3GkYKNRNE86mJeTPodz3ygl7AE68729Y\nAj/m9CTrJeifzf9JDdJWaksGt3nVeBa5nSxz2Z5FF7ykhEmayZevHwDq9CWU\nnWK4l+53Rc07q1rWVW67Kpl3Ty8QBha1/XT4STpIcQYoAAVApk2F3iU7kYGg\n8e6oMOYYREm4e5yEXsC8Mb2zBtxTezGsB7AUr8lKTpyEu8oCzsIcJRcFOSkV\ndP+wBEspXGdXmVdVCtaWo/BBPRuMAbhZ52hOoo7OVHfIrzFEpsrGe80d48UR\n0T35\r\n=BmSG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"4306227bc7e5f014c5e961178b436b394f0dee6b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.271fff902.0","@material/rtl":"12.0.0-canary.271fff902.0","@material/base":"12.0.0-canary.271fff902.0","@material/theme":"12.0.0-canary.271fff902.0","@material/animation":"12.0.0-canary.271fff902.0","@material/typography":"12.0.0-canary.271fff902.0","@material/feature-targeting":"12.0.0-canary.271fff902.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.271fff902.0_1623797469070_0.8621844013252657","host":"s3://npm-registry-packages"}},"12.0.0-canary.7ea2e830d.0":{"name":"@material/floating-label","version":"12.0.0-canary.7ea2e830d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.7ea2e830d.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c8603c37715dff474c3012875509a9367baaf620","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.7ea2e830d.0.tgz","fileCount":34,"integrity":"sha512-v0o/Ixozp7qoEt+yYmin2inJim8iGTsRV4CLBeXapUPZtAeUKXWjf1HWMSDW17clDqhrZMvLV0U8keFVTOot4A==","signatures":[{"sig":"MEQCIEV+Fr2Zmd1zF62myy2YInQcR6L5kCszXZJu1Bni0kaCAiBkntKWU3XiPKhr0u5LJk5i6J+aWppXTBxTo7SiZl7n6Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgyS81CRA9TVsSAnZWagAAa+IP/R4kOBPDSzQ0gU4dBMcd\npBF8+1t28RNktkfCgseanhMFaS8pwr4qAw6CWSYbvA0es/04QCMVyboy62RF\nHfDkZpQ8kVZ1iGcbG7M4x33eFU0YpgG6BJqS1+/micfQFzen2sJOcJdrkTlH\n7OG3aK5EPe6ts76quv7NBwmQfC6cCY4Fx83IjrEq0+vnKHGjL/j3kzGsWGjf\nRiyNMZuUbRZkF32W5aPFoA7Pzz98BXQ9gJ+6zs0ptkLC4tzKcTwWx3SNkkTH\nmtAaYibA1gwrtCz+2q7Xw8TY57SAtWOXOjJnIL6t6bj4jXUoNizPOeE/TOqq\nU9RbRLDY7I77kVcUucCN4MtLd8T0v+Of61k37EcpdLzjmfy/61x4X0rMFSCp\nJgquPXRbLgM/O0hcagw6P7OLlXFtyFgzd+BnCZgEH2Shm35wvz3Y1roelyhS\nTFkc0lsdWD6w/95hRGLOcPPZ6N3OLGfy0OH8h30uw2PO3dWIoS+v+XEZGxZV\nSuk65wu9gdmE9Te/aW+4eIgGsjvY4Gfk+q4/yRJe6Mm1t8oYnTWTZeydlJyU\n20fFLoCHAQY99mkkXNBTgPrhxvVRxc0ipGbDa5UfhrfMf6krbjgptAwmBWgt\nNs+l7W2HF2MC0E3nNZttXs7UEIcPHipq623D8by2XSjhdm36fmP8XUWw5BLg\nUw3j\r\n=VKKx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e1f3cd5692e7f4572664681a049ec1ea1548eb15","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.7ea2e830d.0","@material/rtl":"12.0.0-canary.7ea2e830d.0","@material/base":"12.0.0-canary.7ea2e830d.0","@material/theme":"12.0.0-canary.7ea2e830d.0","@material/animation":"12.0.0-canary.7ea2e830d.0","@material/typography":"12.0.0-canary.7ea2e830d.0","@material/feature-targeting":"12.0.0-canary.7ea2e830d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.7ea2e830d.0_1623797557259_0.21221323505474055","host":"s3://npm-registry-packages"}},"12.0.0-canary.d96f0a1e0.0":{"name":"@material/floating-label","version":"12.0.0-canary.d96f0a1e0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.d96f0a1e0.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4280eee78fb77a55287af59bafef05711da44ce0","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.d96f0a1e0.0.tgz","fileCount":34,"integrity":"sha512-C5jPBGDmQzx1g6XZ40MKu2Z7B3Bs4eCuYxzjq1ZTDoo4A4dTwdx607yD2Vb0dfv+tsm9L/ZqARfTK36Oxsfsqg==","signatures":[{"sig":"MEYCIQCICvRSnXmDo24837ukitmiVHeLTz1x63Ae3XPFh44OVQIhANus7nS+71FA6GdaDAbNjqC/UR3Es5E48zRPxrCpmuOH","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgymfMCRA9TVsSAnZWagAAxMYP/1y+8JPH/uj1oIdX3ZXY\nOuEG0ck0f3l4+QuXjttmcshNrbYfl/WchFqEJRST0zKmlctN79zw0dxcS3TH\nm+P5E3ZU3+hENrmy2awc3Ob5mWlLGnjhqq18UA83wz8u+Y/3Xxm/zSE8Chm1\nGVAQ4qxetzOU31V0yWyioz5szNJhe973SWYtsNzu6ZTlK07294XXDgkZvIar\ngPrMs3SbGZCkU9B57WigRC2iurDf8meRJix+PLezCp+r+G6RCGIldydKgjYH\n2N8PxJCaB6FcqjWOktkez1ZUj1IXqRbLNAAQReAKP3Ych+IhPZBPVmokcmfv\nxbiG2Bd8ZBVQaI1Gj8ATQAA77zF1v4w8J/iYZTR0xTbC7ci+Np5hWwBpeBb4\nGIs9hindfHJoF/h2CQkQyD6jxHstH8i+FtNzIHDUZkzcOtNUg5EcZ+w4gHPe\nF4aEFkYvtMnPGpj4/2RhcCN2b5VYl3d5lXMT6RyKaY1971iYrQI6FwcKNssp\nd64MgLlrlPlJi37Vk+VauCeq2Bfe/dt6gYfo80F3DG54rU5j8I/h9rEeMpoU\n/aHVQJUDDyrKVxOMiqx/rBzlh7zaHuaO9QbtDL8Xrlx+/vHeo7vteIacOj9x\nNazNZKJ7eONZ3gR63Cc+Pdvw0aUvwuJX6UPjHM2Y/mrP1yDLPsERC9r6kY8m\n+JPS\r\n=rYmT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"32470ff9121448fb2599b2985e276f51563ed4f5","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.d96f0a1e0.0","@material/rtl":"12.0.0-canary.d96f0a1e0.0","@material/base":"12.0.0-canary.d96f0a1e0.0","@material/theme":"12.0.0-canary.d96f0a1e0.0","@material/animation":"12.0.0-canary.d96f0a1e0.0","@material/typography":"12.0.0-canary.d96f0a1e0.0","@material/feature-targeting":"12.0.0-canary.d96f0a1e0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.d96f0a1e0.0_1623877579726_0.8701495182197576","host":"s3://npm-registry-packages"}},"12.0.0-canary.a6183801a.0":{"name":"@material/floating-label","version":"12.0.0-canary.a6183801a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.a6183801a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7ff1393e33bfd2d0d2a84d00bb05e3a40ae89584","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.a6183801a.0.tgz","fileCount":34,"integrity":"sha512-ThIZpiqEPi3oxmOwx+mFoDQqW7jD458BAu8aPuB31KQvKMY8vsOZSungpEM7Ackvcemps9obrDYf2fWwxlQx5A==","signatures":[{"sig":"MEUCID/jOTYF8QIRgpyC1raK13Dqmmo3Cj+LA6rnjb+K9gWDAiEAtIq3qrpqeoHEg+ToUm6AJmvH6oalacxm+n+rShPy2fw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgynWsCRA9TVsSAnZWagAAn6kQAI4lCElNIVFeBs+of/Wp\n/pacc5uztkxBGut6nOtzecZDhCLb4KEflacQtMwfNrF5omecPOX6ZYvuKsuB\npgGLjEVNntcL9rOG/hwar8rbIKL6gAg5rglvqo8u5E3HIVapGn/Z59TnPagS\nlD1ep1BQ3zAsHnKq1prZDhItZdBjxqOIlPcmPxoSSRuxTyLZO7Um5e4NSxxO\npGKB+MKk0F3JQKlbD859VzBNDc0r/1ir3R8jjEDf26OFbkXBt7upFABpAkPE\nZ6ydCR9fjkKFwW/JZbbS27HGDYV8k/ZRYYM/xlh51YJrxtganggLnvPv9ncv\n+WGjPHuB8Yw2VCEadjgRRZ/4Nxyl7iVIP0TqlL9PwC7KbeN50WOSW097Bh3s\niH5lwLDqr//Xa7LQCIpOzfkfSI7tQFQQwGgLDwj76/mvoFwrczUnPbplG2cw\nsLeAwY+1/PMfKOfUTXaxYjPcB2DC3yWtQbR3NsR00lp3P0r0jrf7qZiwuxUW\nYV11pu8OXnU9eHRLcKMBIBkYgpm3/HKj3K+96D+cq6Vd+0vGMrYUeE74qkJH\n2hPogOGcOxGh0N/vn5yXASMcU0HNuZxA5fTk71ykb94dESWSOOkfSE1HnG3W\nm8z7WyWUc2oi5TfVRNVZLvPyEE0ledEfWzTdksuHjoph5j5L27TSjPNpXkB0\nd32M\r\n=dA6J\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b5eb42f66e2a670e1f9573b4feb1a600a95b49b7","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.a6183801a.0","@material/rtl":"12.0.0-canary.a6183801a.0","@material/base":"12.0.0-canary.a6183801a.0","@material/theme":"12.0.0-canary.a6183801a.0","@material/animation":"12.0.0-canary.a6183801a.0","@material/typography":"12.0.0-canary.a6183801a.0","@material/feature-targeting":"12.0.0-canary.a6183801a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.a6183801a.0_1623881131733_0.23434905495870817","host":"s3://npm-registry-packages"}},"12.0.0-canary.940550232.0":{"name":"@material/floating-label","version":"12.0.0-canary.940550232.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.940550232.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"efdf5838b8fdab7a503d993d6083105b2833ec88","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.940550232.0.tgz","fileCount":34,"integrity":"sha512-ZXUcNBUVylKL1kA2Xdwo8K9L/1APDzODeQLDAisGXMGDHKq5A+sTtRWKloz9VNLrJ5wUdoSg/V/mH6R09dNxmQ==","signatures":[{"sig":"MEUCIHpa2bRiLdqhj+MxUQGJr43l1z0mgQWHupRNMlb+EoX9AiEAnN7c5nb5kFD3ivo0JYQ4B98wPK32K3kLsa+K3L3iuKM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgy6UiCRA9TVsSAnZWagAA3CYP+wetPRW6RA9oagLuKcvc\nzSqMUE7UM4DO1xZSB0DJ7uNgkte8ISHYgwvOtS+6o1Q2f3k03uWoCSMifNjp\nwyksJDAhCZpDWMQlmzyD86cUhnEuMgvEKELaeC/+KojKYlV/LdkfDlNTWiLA\niCGO808/KVG1FaUqP7ef7HaGS9tQKtV7w5I6Pk/MKvkY+SDWma2wkaXU+NeR\n2lgMVYzhVIhtou5/xCEpjNfyjA+YRzvUjWn2b9D2wj3SnLVNsKz9PKmLtYdT\nIAqcJEbLT1AmF6GlBILKnVOj85fdl1yxxV42N2wB002qhk3FdvFgkL4a8EX0\nU+JqYa6aeDFqYbpbZ8J+Lk2t4LQztpIJGcZ5fyWtqSqJlRCbbibTBpDy6oB2\nDZ5QYJEycWMK2GiJbY+/7WDox+q0jQoANHTPIxAhOup+xpEU3ee6L10Nd30N\nUW9+agJiU9yBVP5jom6Eqq41PWkewndcgIt4gBCbkjn2w0BHVD84lG5mvxRF\nU4lx8hiYHJ+6dnKQ4UjFfyvegu0vFLnblFPM6rGuYK1EWiwJZgfjS/hm4W3x\nBeyJxqTRIvvgx34DIhctLZ/Se3vZnWl8I4Bb7tVhD7p46YrxCFkwePCSUBRD\nIff/4BXig1WiB9vMhXWqHWpqWzVFz2yCheeD1+7NiH8DH6Td3oa/9Vc5lHcH\nfFYn\r\n=LleB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1d6560428828a2c7ac90d050a744265e63c8563e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.940550232.0","@material/rtl":"12.0.0-canary.940550232.0","@material/base":"12.0.0-canary.940550232.0","@material/theme":"12.0.0-canary.940550232.0","@material/animation":"12.0.0-canary.940550232.0","@material/typography":"12.0.0-canary.940550232.0","@material/feature-targeting":"12.0.0-canary.940550232.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.940550232.0_1623958817583_0.4498394827918315","host":"s3://npm-registry-packages"}},"12.0.0-canary.f705e8048.0":{"name":"@material/floating-label","version":"12.0.0-canary.f705e8048.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.f705e8048.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4e797b8ab059e6d227fbfbe7a4518292280e52ba","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.f705e8048.0.tgz","fileCount":34,"integrity":"sha512-QgldePBzUmDYX9zMQZ3GZD6u/uF2v3xd7Y22V4jZVh7jwTCAshxtUmGH3mEdQcAOY1ZweiammlxOvhRAjlP1Lg==","signatures":[{"sig":"MEUCIEI/kQvzRxkhQadks5xm2dlkO5luv/Rxfiv04J7Exz0hAiEA2M09DKcFEzgFiOecIayUC8MAzgub5BOCiLTFlTRAwJ8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgzLqvCRA9TVsSAnZWagAAMCEP/31V5RBbkaVYxjN8vzhy\n8aYdqaZAJTw3A/dRC4899EUSbxvvDzOaA+iBo7Mm0pPiI4BrhWfzs3P0fWEl\nuJaFF8QIXI90MoqyWgR0e+xWsB5jIPoHZQ57H+lc3gfs6NjTd8wICM73goSB\nIpS497F7+5e8a4GX2fx8/CnG6P4BKKVo9OdXCr/4uw5PHgNG12s7ltL06l4z\n56GUcVKQqdbYVq3IeM2xBI84nlsOzh8YnGBO56rKCqYaN69/GfRV/11INBIi\nx0A79TUj0LtWfS7jSgLO9SCm5Rw+gPIAYHAOC3YGYeJogJ0Mi87wLhtuoe+0\n6pdaFTSBH92Ibz17bYHW0/mCDxiXwpqm99uamMfMiwo1lBf0h3A5DUtsdvGW\nrhMp8LU4+11vgKBqc7a9lanWsZ8jZJHRaqzMQrbBZ4eT1X24UEC7PRAWDMdJ\n04DOlA/eugY77xl/du8nAy1LG39i48wg3Zi59bQSL2iQ+E/v7H5aSZG7aa7y\nb/lz4GF0f7wW/bz+AcVH6l1GFg/FAs5jtUt0vNwpVZkS1rUjgp7wywO1BfGN\nfPKDQknZzfFZ2nvrzEOu1ThWBEoTYrnKhx845nK08duiPuzrZ4/2ZuddpzZY\njIvefM9JyTPBTBxYcpCvmWdd+Nix4VAM4yzvrauBwDH4SjN6D7r82HY+pxgB\nPzJy\r\n=P1FT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"65fc1ee152f3abef35713b70962e3d5b848a5e78","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.f705e8048.0","@material/rtl":"12.0.0-canary.f705e8048.0","@material/base":"12.0.0-canary.f705e8048.0","@material/theme":"12.0.0-canary.f705e8048.0","@material/animation":"12.0.0-canary.f705e8048.0","@material/typography":"12.0.0-canary.f705e8048.0","@material/feature-targeting":"12.0.0-canary.f705e8048.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.f705e8048.0_1624029871335_0.2948772103060944","host":"s3://npm-registry-packages"}},"12.0.0-canary.08d791f37.0":{"name":"@material/floating-label","version":"12.0.0-canary.08d791f37.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.08d791f37.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"af0e558fe819862e43edf8fe2470c983a5065c3f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.08d791f37.0.tgz","fileCount":34,"integrity":"sha512-1gAXX5KkNjW5fPmc8Erj7a2aNw4nF7dZfMYxYuwPPM8/RiTa7yGJ7uFypkQCsqbrOhEUh3bBy31t2xDDtMZ87Q==","signatures":[{"sig":"MEQCIDJYtgm8NrLZX7edP6/x2TRU0n4+CONu5u71COVrAqVpAiBZgc+jDAHCP3NiHv1SPJQp7lUw6jR6ZA4OVGPq/DRiNw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgzQwUCRA9TVsSAnZWagAAlUgP/3ZRUX+ijatOf3R3nMYp\nQYQrIKoIdOoCZJhpnHjM1y711FJRJD/+ZLjqP11JcPFAt9iQLNNonNQHuRyg\nJ0zNUptDr+Dw2vrq6N9K1V/PuFNRMXLFU9uQAcjfAC7SAO6PpN3xr69Wuug8\n5WHmWYgeIqoYZB6eblpaAB8c+E3WcvBFIItuEIgj0Wl1SdiLy04ecgytuTEQ\nLTwDqKQko8F67UN76QjAguZ0G1FX7fa077xhg99aLMfQ0ldCA+c3pWb3vQtV\nJZ2XusIObEd4FQyyywOdytSBF/o0ADeGFR9J0XmpzaXM7Yxs45lONqLxwT2S\nGQGqFaYThJqr0M8krigyNfLc5tw0a4iK7iOF/uMqvAUrJlPUrX+CDaEHHSzy\nYXlqFD4aaaPbwk/oSaF4TprBoPrxp8cZXhyKKzEUe+DK3AdjAP6D2MQdyi9U\n3vNUPkSmPgcxX3SFdOS6IhIRlQpT6JgHcfud+9cA+1r8NhHL9Aq3OZlbjL9U\nabuGj4KIqROglVMFHjhqVz8Od0Zcpagn4iBrx3tlp2hK1yb2RCRTS0bazpxI\nW6YSixU63uXlFG1qv8FpQxjBx42jp8cQ4CXZ2ei7qPswTKSRPzIUl1qOlCeD\nAEa/5G88U/buiKoS79q2sGPespFfkNwETB4B7aypeAE8StatxthgZ1Hmf+Jf\nCLY9\r\n=m77o\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"854f301ec7183c3cbd2e62f9ab541f21aa6a459f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.08d791f37.0","@material/rtl":"12.0.0-canary.08d791f37.0","@material/base":"12.0.0-canary.08d791f37.0","@material/theme":"12.0.0-canary.08d791f37.0","@material/animation":"12.0.0-canary.08d791f37.0","@material/typography":"12.0.0-canary.08d791f37.0","@material/feature-targeting":"12.0.0-canary.08d791f37.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.08d791f37.0_1624050707587_0.5535140874766571","host":"s3://npm-registry-packages"}},"12.0.0-canary.e38d7440f.0":{"name":"@material/floating-label","version":"12.0.0-canary.e38d7440f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.e38d7440f.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"636c27a6fc36c014cd3782dd7653010ffb4d75a6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.e38d7440f.0.tgz","fileCount":34,"integrity":"sha512-+gacPs68eHzF2jjft+8tRC1lh632V78dWKIbuptWV5fzRuhn92z+zudU4yM1ys0P6cSYhbbJMpZeiu/v2IyYHw==","signatures":[{"sig":"MEQCIGHYdf/YKat+aoQd5ITBVT4D3kyG1ntgsOVqHmxcLHVNAiAoopzb5uTSerUL/81i15BKWsdJm43csZV29vZc3j/qNA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg0M8PCRA9TVsSAnZWagAA2vwP/0eV4Bx51uf9ymMWHGwU\nKNx3ELi/qsKJibaC3xzhCWlskGGq4qZEkvlNPA0HVJyJwkmyywAFWVramzy9\n4AGgN1tsQ/acV/8w36vuEtu3T5DVh753dWJMYv4eSkBvVLneyHQdOYc67Av0\n8ITpqakQf7a1zH59W6losMcQ7tUeu0ZhVbZxgoN/Dr3VNrYngd1hvWYMVhQE\nY1hmqDuEwGiovH9z6Z16B7fXksci0kfeVS6itGzEgR1r8+NKJZR62XMwdMhe\nJaeJ9pFSQM2nDOPqArxEOmb99Otydcj2IIMfWsxMAq3D0+FZ4e4b/mapoWpR\nMduUJ22AcMgFDvtTAr1AlLI3KHR+3B6wfuzwUPUUYmNsbRgKWqC8nTGYFIv9\nKn660J0dWs/Imunlsv0Ejoub+vbSPWHPNYJhkVcvhJkABoixE2HwgAODZWSJ\nvZf8oo1eF/diE9SbIdn7zs1tTSv52Rg4L51Y4U0/pUdZEgGl7ELmm4vEtGxK\nDb3S/DtWIYEnAP21t0megIgqKt/wHN83us4uvnwuCeSsTNBrDlkozSQqZ2PA\nJc8EZJDJUoBHMK09vS9SA/Kr3/2x6vuSRGSECviGS3iEdXmehy1FyVTIdq43\nUprOxqK9XoTyb1g4veD6Jjqj3yoKb7qUrTMQ3J+tWjSxV7AdDMWQK2Obpql8\nBXZY\r\n=hFzP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1d46835e968c827eb3b359624ebb85f8e3ccf528","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.e38d7440f.0","@material/rtl":"12.0.0-canary.e38d7440f.0","@material/base":"12.0.0-canary.e38d7440f.0","@material/theme":"12.0.0-canary.e38d7440f.0","@material/animation":"12.0.0-canary.e38d7440f.0","@material/typography":"12.0.0-canary.e38d7440f.0","@material/feature-targeting":"12.0.0-canary.e38d7440f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.e38d7440f.0_1624297231006_0.6445076275118164","host":"s3://npm-registry-packages"}},"12.0.0-canary.75900a5a9.0":{"name":"@material/floating-label","version":"12.0.0-canary.75900a5a9.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.75900a5a9.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"0da022cbf11cf4623726675044df5b4c8013a7c5","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.75900a5a9.0.tgz","fileCount":34,"integrity":"sha512-iMelsPK4c9OjeJw1CdVuJX/jyj3FYzMLhDWdtUppFdcs/Wtu5o2Uh5QGf+5O+MwSssBOK2Q0WVbyGB16msrp6Q==","signatures":[{"sig":"MEUCIQD6E1eQeStqQYCIqRuIteQESL0OkPGCnofZJ1nz9//2rgIgNl9jJ5oVttLQGgduPzwc/jGn4fZpvYO5J6W/kcatxKw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg0NxNCRA9TVsSAnZWagAApU0QAJYzGDgQONIA5jZY+0/a\nIkp4fWz+ujcX6fJ+JojTeR1+GMbdmoGOGUzFnShgtN6MDgRiAoWS+OFblsdC\nK84UMNmvg28TsfS9suLGDbej2aar84rM9Qw11JrdQSVhPjkzyZqFojPE2yJD\nwb8Bql/OKJyDOTN0QrAlyg0926RPkyXjmwNuxo+KIAWFOaBYJpVWITUXcOLw\nr3HXo7OvNaBb/lxAjuMhiVmnvRezqfu+4mKtrBRW+S3y0Xdayz8Na+nvPGkH\nsadIUiAf4pn/ZbcUxBSjUAWjdpjZiAwDFroxuu0iGTZyNKLr551bQG95K2fK\nS68ocT+cIuCun2xwTcyS6ybYW7dbvzvXgIOi3qiC0KS7C/T6poXfmw67tCfm\nOgrs443l+TJRUWrsr7UQJurSmV4ALLXt5hl8PELnx9oGrU2rcCeEqAC1cToC\nQQ8XsOCbWTfzMwKnRCwWhRzXKn53rubWmpjowwy8wwmNRLXhf8cwZXNh3t4w\nn7pju51no7c04gcd0/TqvFr+PFKBH2L39dyJ3PV6J6wWg2OqPs8/XwYBTsoR\nbyI27Ko2rL5yGSmKbDIIjCIWC51ZhVGLnvA7OJn74G24D10Mb3o9dcuhYDHr\n3V7cqAElD1FH50Nz6ly2YTUH7odyZ7nZW1gM91/CPSB8w+kkhknZqoP5UHCZ\nCZfG\r\n=JSyc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f08daf05a41f44cbb5e5c07039e1e165d123c405","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.75900a5a9.0","@material/rtl":"12.0.0-canary.75900a5a9.0","@material/base":"12.0.0-canary.75900a5a9.0","@material/theme":"12.0.0-canary.75900a5a9.0","@material/animation":"12.0.0-canary.75900a5a9.0","@material/typography":"12.0.0-canary.75900a5a9.0","@material/feature-targeting":"12.0.0-canary.75900a5a9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.75900a5a9.0_1624300621124_0.07864181287207006","host":"s3://npm-registry-packages"}},"12.0.0-canary.33e6f50e9.0":{"name":"@material/floating-label","version":"12.0.0-canary.33e6f50e9.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.33e6f50e9.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"06bdc35d7373461413c565ebf90d44350fc24eb6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.33e6f50e9.0.tgz","fileCount":34,"integrity":"sha512-/5JC5lowlEUgNZKWd4+1ZC+/IvLE1guHhjxKO7njehonijfzda50TSOUR9gYoHl4MphIZ88s4zoJplCR4fefiA==","signatures":[{"sig":"MEQCIDUrOpGlVC9mPd69pA2hU+8jOV6+uFkD7pKf/tbjphf0AiAik7Le8q0ZVr+U75n9C/t0FrWYAra/rpM3JmPeZw6vdA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg0nxYCRA9TVsSAnZWagAAmOIP/2fPZQ9uGryO8UszN6o3\nZD5d2+zK/q4BxvWmLa6BhFlQuvrg2oSa9vZynzsIsYALEi0rHM5hpQRYlpz0\nq76ex+JJfv77Xb/UxDYNB6CJxoalzbKkC5vU/BtJlBkc/ZydAw9mvvGZx67+\nF2MjHt1ZLXosdhtWiPV+ZhTDxlXEm1b5++7Mf+YhprJkYFL7VlEt+uu7ND8F\npjoAfTYUeioGBX0U6hABizf8qKJguVUpMsfgiPtyP+G934wKTwZbqO3WMg4p\n8q1yPspxpP8EfjJ7SjwnYIhH0SPPI81A1dDqsslu5AcHoQzQ5A29xdPl6qck\nRhevIhkokAjNd3lWo03z47F99ZnDMbQDOllYXglOKwz7A261X2C+n1SKkHW6\n24KP+Bxy9RHvWrRgwi4y6tjS4eImoqhQGXbf6Gj3QJcwhC8OzuSAGRGQS+2s\nOFJcaOAvlXwkHgQscOfz3hU7qYM/7HPI4MN+YBpZhXN7FrtUK1Mb+TxDolYX\n0CTu2IlzXkd+M8wvuMU2HGL0R3z4AvvRXMKFS2G+Evnk5gGgYHNzngoU0cqn\na+xjfCbWxYZj+WL8amle8C1RpSjdzwqoD5Z6/fSMVsVK6U/QLevR89c/vQif\nvJvv/3NKZ9yGEDROTtwoPjXju7rarJP/KnKQw8MOtwLOr3hVjpO4OLIj2Znj\nwswL\r\n=Ufwl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"fb208c22fe558f863d851b5bda74038d5a3b09d6","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.33e6f50e9.0","@material/rtl":"12.0.0-canary.33e6f50e9.0","@material/base":"12.0.0-canary.33e6f50e9.0","@material/theme":"12.0.0-canary.33e6f50e9.0","@material/animation":"12.0.0-canary.33e6f50e9.0","@material/typography":"12.0.0-canary.33e6f50e9.0","@material/feature-targeting":"12.0.0-canary.33e6f50e9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.33e6f50e9.0_1624407127651_0.16467248755995145","host":"s3://npm-registry-packages"}},"12.0.0-canary.8c685301d.0":{"name":"@material/floating-label","version":"12.0.0-canary.8c685301d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.8c685301d.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"89e5942e048daaad21cbec1e20d54fbfafe0fef7","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.8c685301d.0.tgz","fileCount":34,"integrity":"sha512-Jtilt9aFuuMOX9iA1ij7lsGZcCw40D+7GtbJ3XiSCjS4xK38YhWlvIet4Sz78qzL2VUjKs0klJ9rTh01QDOzbw==","signatures":[{"sig":"MEYCIQDjGSuVNs6QVRMQyZcQq+bMjoR2cXKugghWV7qja8v2FwIhAMDOR9ozCsLRPDlPciiJo0F0ex+nYVgHRwlcWu6VcmQ3","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg03xpCRA9TVsSAnZWagAA9SAP/3QL9jYDi3DNurKSLBt2\n1SG1lkuYqV8eHTpOmi8ewYKwHel2cMbLqjUWMX5t1AI6mZqzSzrpDL5Zo4RR\nB7fYaLvz9wID5rHUBX7kOd/avOW83JnVg2/lSRvX1Nf1YUHaT/cz4sNkrYYU\nG/HY6FgwWlHH5vfKZKzTpiswPD/Q9a+CRkb/viJDtIIhmsMp4Y8chLNvd29/\nusj7pQI36Yn16PkVeALbtXDn+wD3Pt0eGSbsEZSEGTDB2aAix1stXAPL3QXW\nE+4emT3GkWCnfQ6ASFBi3r/wtBZYkGjxpb3sya0CsHvV6qYbkckUjzseIR8b\nLHUk/K4frXnn0O5o9Y7xnJD2dCFX+QnvwXEDPzdneJuvmFbNCZ7kwPn5DPbw\nciOII7h0aj3DHHNKubLnbJ+UuDJQgECoeF1LsaRYhkPVRBI3Bas7g/WNj72o\nER3hTgDPBakx3aBeGIZtuu5i3rQTBASU92WacciNEM1KyWqHTkgMVZgM9KIV\nSbh9wZm+ZSJDQI/QSVGJ8Qa7uZ6yJ0w+YfsaEb3a1iYcxm+RvmFbQ30ET50k\nLvPXz4mTXkCFfOqmV0tQmKDsmp5CfZUMAj1VIor0+b10qKxAdCR0Anmuk2NN\nlEngbzrta4Jivyih/1/aij6mvHtHQRMiipdlPKVlG1RoqRufyiM0/JSfHbfi\n55/F\r\n=ec/w\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"43d0ab810254e565375b55ae118522d89b7e9254","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.8c685301d.0","@material/rtl":"12.0.0-canary.8c685301d.0","@material/base":"12.0.0-canary.8c685301d.0","@material/theme":"12.0.0-canary.8c685301d.0","@material/animation":"12.0.0-canary.8c685301d.0","@material/typography":"12.0.0-canary.8c685301d.0","@material/feature-targeting":"12.0.0-canary.8c685301d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.8c685301d.0_1624472680760_0.788900712683225","host":"s3://npm-registry-packages"}},"12.0.0-canary.8c7d994ae.0":{"name":"@material/floating-label","version":"12.0.0-canary.8c7d994ae.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.8c7d994ae.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d9845514ee79f6aff319f7307d1d48e0c474e5df","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.8c7d994ae.0.tgz","fileCount":34,"integrity":"sha512-Yu2lPYpw2E4bZ2krmr4VCcacBLlhqBfhz6+JGMAwZ12OTtXCy8ihnqzrXpbAlvhlQCcYK86RNfDBYatdygCO9w==","signatures":[{"sig":"MEUCIQDCC88DNnqCpUK8NBaU9e0yWUzIoBbImSKJrNraiTk4QAIgbEhpFAA1t7NoCWcPKJs/lLw8rgw93yALnv/v3kDCy0c=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg04sgCRA9TVsSAnZWagAAscYP/1KsqMWBXMvawpXQ8VFR\nHGmonYJKz/qOs8HzjVx1cutUnJPzXuU7gCJsknDrpS87kItG0+s+37Ow3/wy\nzHqR7SJ/ZwDOb2YvN2mcxwWl2Se/SbHUgrAkry8vakl8PZGC/IOdCBUn4Sw/\nsgdpZckP7B2Bj95Sk9N3iv4Pk4p5qJoX8oYKsgz/u226eWP8fmV5f68+Xtu4\nEB7VKvgXILjU0t49obV7Gp80a8VGrHjuQ97/05N2sGMvA4bdRGAz1rdRoDVi\n2YZDGRKxla+bRAvrIe05S1rriU0TJ7+ZogWnh9JLuiKHQycQmIhBFRE6n/eK\nU8BiM8FdKPCNEKJrCyyKTDpOAJzM44hf59brgQzsun/wSnSdDhjU7jzlBE0a\n5CAN4PmiSdhb0ytBUIHU5PzvMY69yVdI07Pb9VQRAZWF2J65g5Uu6561SgAK\ndZSVDvqgRwz+qfJJ4+1SyHfYvq8wIwet2bZHYNtC6tqsYVXqjK+OD8mR9WW7\nr78886vxXqfjIw2xeEBJH/aUWldlZAes6Sdpxvo7Hm3goTMrjgPv5mrOdR7G\n5Dr82nFZN1d7GDR6NbIZ9KS/FSTBhVezcOjxLuIYNJU+xWlfZHY7y9riRS2g\nadSWxaYKH6zezTdd7fCXNlAnIO36JhlHTDLwzaJOkTSCtBaLRlly8F8Fsy2/\nrtXI\r\n=5rqv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"85693f86d68563f451e95113f3d03a29fedcf142","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.8c7d994ae.0","@material/rtl":"12.0.0-canary.8c7d994ae.0","@material/base":"12.0.0-canary.8c7d994ae.0","@material/theme":"12.0.0-canary.8c7d994ae.0","@material/animation":"12.0.0-canary.8c7d994ae.0","@material/typography":"12.0.0-canary.8c7d994ae.0","@material/feature-targeting":"12.0.0-canary.8c7d994ae.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.8c7d994ae.0_1624476447737_0.2322619978769085","host":"s3://npm-registry-packages"}},"12.0.0-canary.4ccd39bdd.0":{"name":"@material/floating-label","version":"12.0.0-canary.4ccd39bdd.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.4ccd39bdd.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b39ecb3d5db9b815ee9bfee481512e3e7dd9ea13","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.4ccd39bdd.0.tgz","fileCount":34,"integrity":"sha512-2p/H8taI91liWt5PJMpDHSJGf5/Npi3VqqHuDB0ZiqYOR2M05pXCKzt2ZwJETGVLqctmHL+UPPsmSajdekW2qA==","signatures":[{"sig":"MEUCIBIlCGFODLnDmauVWAlK9v9GTn8w7zmVLVN0n5g6vQY+AiEA1Xbnj6nKUPRq28BThG7RO0awlgAaz/+emu5pRrwwuC4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1K+CCRA9TVsSAnZWagAA6pQP/1BR1YF7rCPdG9Zejidq\nIddgrolqlRqELGhVIPUYEsYP9ph35a6L8yAAfHFoKHmD6cYa9TY/EN5Pnp8o\nrCD55DhM1cufWFtJ5o0Ucw/27JpGuZmqmEo+7XJgX5ypmMDHlvpTWTut3GEq\nv9oYMGFLPL8hfG+klVgY1HnRaraEx+B32ldtC/WsQryOPgMoxpxP/hL5BPq6\nm1kUlZhoaa73E20WRb0Mn9N2YGMrPq/7Ct97fW3LBfbdX5xJams/TaGaAXY/\nXtx83oWw1eRWoYsM3GpyB0uQB4L8CVaN8CZTAWrGy9ZYZJY/uj4oE7FAwEZO\nBsntzr1R+67BgsyeF5FKDctGaMXHg6PbQ5n/DjfaoUzepX/+1jrcWNsk7J1g\nKYAHYI2IrED8Q/80zOkyBxUD4Jr1D9aUHPj+cjePndj/Gs6Q+MjlLKFAptHH\njr4yFx0rsmxIr2J0p/TwB9+O2b+/KCsaIaSEDmVCnZ7jIzBUdzJ9na/8LUSb\nbQl548F1iiaTPI4oIEmLLVs8szrBVKFkoQiG/g7AlzF0Cn5VRQtbzGi0Tgfc\n6n5H4yE6XgVQ08QIs6qPsUlG/x9CSFcxpb0NrMJlAkwY3OSGrXyBlL8fSsIq\nfH1FXqOy3/Hmjys/J2Eoqvr5q/uMFZIJL0EJdRW89LPkX5aiDpPtvjov5v1S\nHCpA\r\n=M27J\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"0954a36f2cbd31614158e8425662a4969ce9c299","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.4ccd39bdd.0","@material/rtl":"12.0.0-canary.4ccd39bdd.0","@material/base":"12.0.0-canary.4ccd39bdd.0","@material/theme":"12.0.0-canary.4ccd39bdd.0","@material/animation":"12.0.0-canary.4ccd39bdd.0","@material/typography":"12.0.0-canary.4ccd39bdd.0","@material/feature-targeting":"12.0.0-canary.4ccd39bdd.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.4ccd39bdd.0_1624551298242_0.3557105232647053","host":"s3://npm-registry-packages"}},"12.0.0-canary.17553e9f8.0":{"name":"@material/floating-label","version":"12.0.0-canary.17553e9f8.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.17553e9f8.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5a6062ab01b6fb4a64a2c13bcfa7532171c63f2e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.17553e9f8.0.tgz","fileCount":34,"integrity":"sha512-2Jsi7qG5zjk02+hLM4hERtrjCew33ZLR5wPL79dBxJ5RoqqAGcbo7Au8zdjoVt1WbHwnAWhsMUxtyTXVfExdAQ==","signatures":[{"sig":"MEUCIGxQwwP5ZnOBm4clFrxyQIKOW9a+QpGiz69bulRmoluCAiEA4Q29OmqIu2tQPMUpJO2FX/gnd9Ga6l3lbmOi2/vKJvc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg2lK0CRA9TVsSAnZWagAA7ikP/jYSBmwhR+p8NXb0ZEYE\n2PlZGDiqsbx5ZNAdymM9bj74SquILlHWn53EbPUHeaL4Lgn9zlrfzNXA8PtJ\nbpl37+COtmbkiF2gB4g8uV2v1FhnDvqftF657OZhKYqUctC136en1dc0p/E0\nZT9pVqlXuh4eE2TfbBmLDryI3SgMFdfM8PRCSUvXaTPDBL0siLr9QaVKEHwd\nXzTbAhRrXa0QNqypteZ97zjb5cYxcqQGylLKdeC3lPl+EtM95AswNgzQZyJ2\nfq/Poyhpp3Jpl0wCz8pB9j8BaWsaD3LIz0ZRcUYDyzcBdn91VyXbljoV4Rtt\naeJd+MX4GAIWO22g21iauMxdauti4mkWP5zgoGNIvf6OvzVfs9mEXbifWxIb\nUkwMIFj3rqeykgM7Q3cX1GArUckOcTGbWk0jQwLUMF7gyAbkHozybXi1IgT5\nM8xhwhx34Q1oLL6uKntvIHazTZmA+pr7VkD7+RL+ZHGpK5pHzensXtxK1Rth\nALceCZhrPQW0Qoff2JB0mYR+PdK3iyUdTEF1Srwv8zPiWmZYIcMytr8zvlB6\nWG6n5lANwQJC490k1X+Q1Kr2E59C7Ab1TSK4nOeA7GEudAHvb6iR1f0x7X/d\nXQNrsFzW+JZYURMAoPy0TGv/t7B92Iv/RexyOA5KHD+ysvEuhTkVqLWacLHp\nTIK9\r\n=lezm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"bbd7dc5fbee09c82081517ffc14264d4834209ba","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.17553e9f8.0","@material/rtl":"12.0.0-canary.17553e9f8.0","@material/base":"12.0.0-canary.17553e9f8.0","@material/theme":"12.0.0-canary.17553e9f8.0","@material/animation":"12.0.0-canary.17553e9f8.0","@material/typography":"12.0.0-canary.17553e9f8.0","@material/feature-targeting":"12.0.0-canary.17553e9f8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.17553e9f8.0_1624920756024_0.4225712998560789","host":"s3://npm-registry-packages"}},"12.0.0-canary.4c80072fd.0":{"name":"@material/floating-label","version":"12.0.0-canary.4c80072fd.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.4c80072fd.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6c3b5f8ca7fcb35344f2221286593199edb277e9","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.4c80072fd.0.tgz","fileCount":34,"integrity":"sha512-CW09NlWUOPN7XdW9WlRRj78J7gQZsMpnsvOT/0vN3PPtaFa33L0UORtRNgiOiG9FLJbb1Lc1MZOCcHwqXItJpA==","signatures":[{"sig":"MEYCIQDWQ+Aq8J0ya0i1mosdex2GtQh2gOT84nzLAAkq/sEy/QIhAI+w6jWtwMnpGLgEdOdyaCvAjo4SB/UJdZeFZtbm6FQh","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg22k4CRA9TVsSAnZWagAAZ4AP/RErt2Y6mhkQ4ADz4mRZ\n239yb+sC38EdnX7YahpREijDB2S53wDcR78y+z1ZJuQQYpMLd6MMGML21VQN\nyaKVzb2VMDiCsDW/C6kOcvIm2GeibR+DCnwRQE3zpNmvAkvUEWqjUnXM5+fO\ngY7SXSur6VpRhq51lLng78QaELT2ZTU/6dp5wPOFpeb9PsJxqiSZNN3I3Kk3\nNZ2l2ULOBxutnAm3rJCp1RlQOm8CCOq8jte899+wEjkSwdU1qIdADByRFF5+\n4sx4aW81pAslP9cXOZFlFnujJLtclEL9HEDmfXBUDhdfxaH1+L50qYAQ1tBd\ni/O0Xc8djVKxD3USYJsHXRXhcv7jap6hXXqQ8P64/guuApeqo0Jt9xmFUdOq\nUEtn9xNya9IMn1sbVrZ8geQemU7+VM45HfI4W/qU32aOZd00osEYDkFu4HmP\n8GQJzuVNS7OPr+P/nbyeFWd6kxPQTa8DHv0VJGMDjqzAuoZ6IVvkmX84N/AY\nW4Q2Vemm7htVOyoFv1sOGwfMrjkpAXs1n4cuV9zu8pBy8EEEmA5wgqfpwgh4\n9u6Ip2vb2N0S3eJ+PjeHUmn3N3aTF5HQ0jmDlDfIBvCnVmiwLNIvFGC0HZeW\nscGcbzkMxt6srWjy6XVO+mtgUjYxBP4IBHa259UCcJRfvoZyt25oxS5GnxTN\nXumQ\r\n=pbrO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"9f6d10da43c6e0fbb1366c1e37fbca58ce00dc12","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.4c80072fd.0","@material/rtl":"12.0.0-canary.4c80072fd.0","@material/base":"12.0.0-canary.4c80072fd.0","@material/theme":"12.0.0-canary.4c80072fd.0","@material/animation":"12.0.0-canary.4c80072fd.0","@material/typography":"12.0.0-canary.4c80072fd.0","@material/feature-targeting":"12.0.0-canary.4c80072fd.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.4c80072fd.0_1624992056198_0.1875140454894415","host":"s3://npm-registry-packages"}},"12.0.0-canary.796811db7.0":{"name":"@material/floating-label","version":"12.0.0-canary.796811db7.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.796811db7.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"23f25e5ef01d0775ce5edfeab203234d3d0bc9fb","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.796811db7.0.tgz","fileCount":34,"integrity":"sha512-vz/a8Wrcw5pkbyWPoK5WKPKfMmgeqi7Rgm7+FF92+CPw0PdjTJm5ClvWFos2fjpDzyYFZ4J4MU+J3vzX/RONdg==","signatures":[{"sig":"MEYCIQD1L62et8Wd0FwgsquMZKiA9V3yejzooe3qvca2vB/BowIhAMWOuirY7le+rcEx5X11Z9Q6J5Fbss/b4DswbzkJyZIs","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg3QZRCRA9TVsSAnZWagAAJTIP/R5wPt5Ow5zn4LDa2S4f\nYdSKmOPoMYSjIQBXqApdy5/2X0+k0NKTGONDcHpPWAYwzq96vHle7fuVqnUe\nOJHItGAPCsw+Y952UI4g8d+BLdIvFJa+sCFd5FQGMhvxmJQrCbTq3DPkTKhg\nYCSJ718N7LRQJBSUsMXB3mmxUtVEUZcuvBWtBeotkIVx1sOGonFk1AW/F13i\nS6o2jh90OVdQdQvYPKgTDrOa9otqcH09rqiUHAjIKAWolzaRIimV6q7OCvwo\nXhJfcfOgLZWdog8jWQ0tkc73wPC+oW5TIZ2B09hKERHaszx6w+pjnKRIAJqM\nKt0WoTQVrjVW8yUe1plJVEBMATNG3YECcfn1o7mszNBqUB3mKCx+TOq/PuAL\nlAWMUWKn+FoVWELdpThpbi149x9snYf/JxSXqrDRFf8t6hI5qARK5bphVv+b\nDpySsMYmz8OFWmpYneQQrDllgQasQscuEmX1Ff1fkdHCpvQfhcWvzE+CBhtV\nop+WiPFOATwe29rL9G5a9lN4xwHcVy7ZbC3fM0ViVkZCBTb2ihCoimo2tzWO\n8wCl11ViP+Et1fvI296CUQ1B2iyk20I0n4/KNLmAaB0PetpVNSeVYz0JPzmt\nDiod6lC7jx1bpxxwO2e9mcm+eRYt6dAGRizonE5ZZ92QsujWDJ0g85QoEnDr\nTbLN\r\n=hkix\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b02de77dcf32bdce7d23406dd395390b35e386e0","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.796811db7.0","@material/rtl":"12.0.0-canary.796811db7.0","@material/base":"12.0.0-canary.796811db7.0","@material/theme":"12.0.0-canary.796811db7.0","@material/animation":"12.0.0-canary.796811db7.0","@material/typography":"12.0.0-canary.796811db7.0","@material/feature-targeting":"12.0.0-canary.796811db7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.796811db7.0_1625097808637_0.22042762682193295","host":"s3://npm-registry-packages"}},"12.0.0-canary.70e1efdca.0":{"name":"@material/floating-label","version":"12.0.0-canary.70e1efdca.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.70e1efdca.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5fc0201a62b686b59331f35b8cd352b9f63f396f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.70e1efdca.0.tgz","fileCount":34,"integrity":"sha512-v1dO+rdybDoPTAV3GrUwjQ8kJg80KY4KEOTBSvv2WfJ0v7wMBFilO/7MaGnXQnfjxHCjTYxse3ASkE4HotWbNg==","signatures":[{"sig":"MEUCIQC21i7pILYVvARxtwVdr45o4Xr29K2Chcov7JATMj6ntwIgO+xrDIA0HsHh8upkssSjqlc87uOJj9PH8XXgNp4KG9k=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg3fYdCRA9TVsSAnZWagAAu1kQAKMDIs8n36onmWifYk6P\nHmUqoIysPUrN/VpW7LfSJU7Sd2zZsDX3zZA8T5fUWQpdqvhGZ6n2J4UHSzTl\n9IfHHM6DQiSIAADfMAr2L5YRGDqBNls9gVXzrtN7rKszoS99Rq5CtEtAFwlw\npLmXv7DEptJS3vAkuAAhXaoNiM4Fr34wj0Kz7jQcdfk823CZ8rVAJyvNFQgZ\nO9PdKhVusunoF9fdL44t1B7KyYfOV/WzTPzrCOj20VZDWCMaByxfoQ9mB2UR\n2d92lTG8frdUeg3P8aaE90emPcl8j2lKLtEXg+c+fzV2DZZrS8iCdSVrWt15\nB6FMPEfr+Nosa3fTVPpmPOTthmhm/o34WAApzW9xfGbUJ6BGJePZRwLLVUQT\nSrdSK+Ru6tsMcFxiH4ZC2Jirac8pT/TVqDLZEAEFFMdttnKcmE0mi9LlMkWy\nfX2ELDH1dxylRSBANQ7p7sDmvJ8y3+II3yEZrCjh5E8lv5Mwe9+EKJ71GeID\nJrMt5tRQMctTSXeS1GS08TTp9nwhVPBo/Qecb2Y6P+u5QvNzEoLDgSFqqrpY\nyFna3unXxezoClzEnHETQhhxxQ1YP25SFw3ZEDJSg/OWHT73YJXdKSqsePyk\nifzwLcJ/+zTta7lYnSJKU0VZlTFcl5mLskMBR1Fp+gl6ggJ0wUrVn/0wFs3B\n03vA\r\n=0xn4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ab5924ae38bb3ce40d3b1c303e1ae6d175b844ce","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.70e1efdca.0","@material/rtl":"12.0.0-canary.70e1efdca.0","@material/base":"12.0.0-canary.70e1efdca.0","@material/theme":"12.0.0-canary.70e1efdca.0","@material/animation":"12.0.0-canary.70e1efdca.0","@material/typography":"12.0.0-canary.70e1efdca.0","@material/feature-targeting":"12.0.0-canary.70e1efdca.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.70e1efdca.0_1625159197312_0.26415659504662514","host":"s3://npm-registry-packages"}},"12.0.0-canary.435866d32.0":{"name":"@material/floating-label","version":"12.0.0-canary.435866d32.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.435866d32.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e88d0867cd8c87819e8d5746d5fcd35e33ae4d71","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.435866d32.0.tgz","fileCount":34,"integrity":"sha512-MyM/Sw/H/cnsxNMSQeNhwgN8dUilx9qFvcTfA9BkoEWC0gpuHSH1z4WxgbZITGlCkBJ3U7RIujSd6ZpxyZtA7Q==","signatures":[{"sig":"MEQCIGugSlh7XQGUbAQZfGEtr+4mmoSJPOtnpIfIohN1NgbQAiBe7o11mrDZQ5TvW+ZtDr7cCo4I71OS7l5d+T9KmQcbww==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg31kgCRA9TVsSAnZWagAAl9gP/0hg7ZG74rw3HiWXGAvv\nnRleb04OJZ0RLrY9i7JQCveKsc0AVCVnWldtovNlSqlb1nDEsEqXeHyUmppd\nBhLJddk+GwGzYBm8acOX0sYi/ef7AGQkNVIAyYWtf6vmquvEx6Kap5fgizgJ\nqXCTLJzKx24wlpPaqsHokYloEcfZeJczJGIAp6HN/FkhD8joMe4xSae+YoWW\nFRCe86YQKliEfhSKr8noZjXDqgW6j2SUlJOExPBEDAen7ePZ2aLO/GV2vT1n\nkwgeLyA87AvW2SAr9N5fhGF6ahT68+6QM8JGLnC1aCLqPHDmZoKQcEIYKRcS\nwvnlbDqsOnOrzOl54Gk9NVXy1LqSCoM+dEoZRwp6BL3FPsg19m/pqXjRQoAe\nMrde8UwDrb00KJUCF95crMO6RFuDU7riO78FL/WKJXzb8nzJXQe+IENHgsy2\nX8h7n84hG1WoUYXzIsuL8dmdhB0QvFYRJiUF/X2WWFzSRnBzd46Z0Ty03xp9\nRudhhtuQXQu1lfBi9o1wM0MYomYagHFXTgStFKXTn9/S3aKKPLVTYUWslj5g\nC0cX2Lm0hShtvXPTAlQnH4AU+OrGp3KaP7ER140Nk4Z2Gw2hUumC6NrpjTk4\nxw5zTsskwjTF52ImhWnFc5RsYZYi+CdhJ7DnwXQfwf7jMDh++MF+kUUQ3h6S\nL1U5\r\n=OpYV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ecf68c368bd1ea5571aa4da569d6fe6c4b8b8caf","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.435866d32.0","@material/rtl":"12.0.0-canary.435866d32.0","@material/base":"12.0.0-canary.435866d32.0","@material/theme":"12.0.0-canary.435866d32.0","@material/animation":"12.0.0-canary.435866d32.0","@material/typography":"12.0.0-canary.435866d32.0","@material/feature-targeting":"12.0.0-canary.435866d32.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.435866d32.0_1625250080491_0.8178970495701579","host":"s3://npm-registry-packages"}},"12.0.0-canary.d0f9f3f2e.0":{"name":"@material/floating-label","version":"12.0.0-canary.d0f9f3f2e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.d0f9f3f2e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c995c8e9f1172675df1627947f1604dc37493cc9","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.d0f9f3f2e.0.tgz","fileCount":34,"integrity":"sha512-Sne9Wfa/190fSCn9OI4BCJN2TJ+inMXG9KXuW8zmcwEtiPsvgkwAaSoJVUHU40PPlKiGPXaj4ZeJTMobvcp86w==","signatures":[{"sig":"MEUCIQDZ6Gcotirrf5ezqF0VQs5iF1LaLWsN64mOISyqh2ftnQIgXjLMhWyHRzXfc4gsLWx2oZVTyp1rlt02q6nCaPVwQWc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg36iHCRA9TVsSAnZWagAAaNkP/3f7zDZF0+NEXJbggDox\npOVuigmUbP5YF4PmLKWJ9aal9ZpbSM9QVhGiPM9UypXz+pSjPaCJZFMcNDr4\nPn2wjBgFIxr8MC+pT2/4NW7D4T+CsOO/emGt1Bg0EpKzU3nJ5Ba4ndOKcgej\n0V6pip7knMe8kE0iJng4hGZQqGKNS2D2WP6W74dF+t+R1hf65XNhf9BnZgNJ\nlQJfdgEaSrkaKRc21CoHSnwy72/DnnibFxnplGAxaVOxIOjc9ZGVPD/g33SM\ncIdWbMBy1b9hjazlaqMkSJr/KlmQ8M6gzHDCJwx6NxYmDEpgIBj7oRnIt/WB\nFh++7wmS0ZVBnfaq0uQRLIlfhuxVxo7vjizWbpOq6nCz5AhxjAOHVX+GTo00\noj0Or1v1EE0bw3mYOSQWnoBVtXJaq/7WW7TTRRV8Jqv3eF71CED0d+/koxyS\nAG9aYEtMy/AM4GUg4XyapLsrJ5SQ3g61k8mOOocVf57om70hGGtWz1Uq4ZUo\nu6740QmvZrtL6EgzODoqSCHdb5BatRvo1feysM6a/E7iOrqS2rkaLqFUgOlb\n0EGYjDIlucbmUIglMCr/RdhsGYcgzCGWDiWrFpFBDJ+onh6GlLgnyH0ussnY\nIpaZXJrCGp5Tw/5II3EFt7COFHz3RGsa5yCvWR55vjkJtNq5p106n+UB5MSm\nYb1r\r\n=lcTq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ed31c78c6a84cb24353ffd1d406693496f090e29","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.d0f9f3f2e.0","@material/rtl":"12.0.0-canary.d0f9f3f2e.0","@material/base":"12.0.0-canary.d0f9f3f2e.0","@material/theme":"12.0.0-canary.d0f9f3f2e.0","@material/animation":"12.0.0-canary.d0f9f3f2e.0","@material/typography":"12.0.0-canary.d0f9f3f2e.0","@material/feature-targeting":"12.0.0-canary.d0f9f3f2e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.d0f9f3f2e.0_1625270406921_0.5354482480103551","host":"s3://npm-registry-packages"}},"12.0.0-canary.adeac0549.0":{"name":"@material/floating-label","version":"12.0.0-canary.adeac0549.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.adeac0549.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9f6ab8e38b34b3aee2ad933fc3237e44f3d115aa","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.adeac0549.0.tgz","fileCount":34,"integrity":"sha512-YzMkr4OmWQ4yzjWU+54SrtlmmdLUzjeA2O2YNl3y7bPJWfK7TButBHXDlicQorhGELTNBgAMOf8DZm8UbLcfjg==","signatures":[{"sig":"MEYCIQCpIBc7p/V5oPWKZczfSWb8s1T3KgU7xeI+r9VRfmIqTgIhALK2lBiAbADTzUYo9Y4nq8FVpl8oxmGbJQeKLgpt1f7R","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg5xUgCRA9TVsSAnZWagAA+WgQAIU3lfvLg6NjIJCIiYH6\n/qXNCiTLLbPhM05ca1MIi9m70rNbMtdyhsAo9PY7XmoaoD/1z8Vcf7TQhz4F\n07u8f2IOTuUjmn3dmyt+5K9GgkaL7fX5caP3nnx0KlbMAzwL+DfMEiIYWsJe\nHPs2fWmE3Yh3ZXr9IEp583K7qfzpAs6Pqmz+ItS4EtX97M7eAvQ/lLqVnt1N\nPH11Vb/rtImCL+EGEqqM01xCT4/0apUtPlBRCeaXiOMnGDfQt+Vsry6IJsjo\n1N+2T0dxWTBz1oAUD4ZD6owswRMw1lLAu7ojNb3TgkAwGGc5PeuaJvNmdaZu\nK6oXcj9nXR1Y6ylgXV8UlEJzx0JNbQPNw7e6PSO3zLIC14fhsuM1eEfA62uh\nXyn5FMBA0I1WM3meN/BrgNjAGDkpX1EmpdcZl+ntAutk7L6MG1IVzAbvvBx9\n1WWGW7g+ktaLa79Q8FEa5Q+/WoTQKnUnK3UK50Oz8DOUa0qZGlMlYFOzixNO\nvRg9kzFauMki5K9+UDXypglTL94lvnLAyvdQdlPTNJNWraNiLXCoN6or7TFr\nW/8wWuD6j1rm/UdxTWQn0iCRp6EYty3qWq9LWFhE5zeTXUmMox0lwZ0NvGpt\n55k6IJ/XPDig1hNxilm05vLspikfuh4C5K6hWd3I7r3PLiFDYp+2VN0e8E+p\nK9/l\r\n=cBnO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a189bfd7e13b17660ad97870e074af0ee245e36d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.adeac0549.0","@material/rtl":"12.0.0-canary.adeac0549.0","@material/base":"12.0.0-canary.adeac0549.0","@material/theme":"12.0.0-canary.adeac0549.0","@material/animation":"12.0.0-canary.adeac0549.0","@material/typography":"12.0.0-canary.adeac0549.0","@material/feature-targeting":"12.0.0-canary.adeac0549.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.adeac0549.0_1625756960492_0.9585330493164379","host":"s3://npm-registry-packages"}},"12.0.0-canary.068fd5028.0":{"name":"@material/floating-label","version":"12.0.0-canary.068fd5028.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.068fd5028.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"db76cda2d1de4482ddca5df854e1c1e5efe73ac5","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.068fd5028.0.tgz","fileCount":34,"integrity":"sha512-hA/lgEXm6y12tQQjCuV84viGP/bJ3/dQc3v1c1zpmijxbFp8fXzpJoRLUuhi8W86XQNHiYih/jHTrC1atDHouQ==","signatures":[{"sig":"MEUCIQDVbj56/toOOCj4xM89pbBu6wPNTkGFg0fB+L3V69xzcwIgTbjBTrPrGw9X1rp6IV7hCgGjUi/jy9/Ni/qLSsFGqTI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg50wPCRA9TVsSAnZWagAAiAkQAIgXbAGIzU8Poz9T6jlR\n+WhHywkNbC3RbOWSD8l2R3gsPdHKvlaX6O4TO8HOSE/AxyWzb2kO2TraOqZ9\nSYEofnf3zopt8xgWOOEoS8YJ4+Bq5AsQDanSvzcwu0YGsoUTXsi65YE1geWX\nHod0zcm7bK/jFaoNwi4quYpQBCoYXeQCObNHZXHwKxoiuLme4nl9mOkktI78\ns0q8ZC/9ZrR95UJjLBi3rat32hmsqWNr+2JuEgUH1g0eb/xbiiJBjY7L3cEY\nDWw/D5jjaehhJYK2cNaECTyqRtFfB+qxRFCQk8DrMrNin3G3QxY+65BE9UCC\n2YwQ3UwjI8MsLKOqrnUfAjtmnUmCJaoGIMM/FboeFU/vBsIqyoY2iKsB8OgD\nviIizPvusenE6hUON5eFpD6uyDQ80ERJzLXj7cNRO4vBa1PceYP/1KICYlDT\nRy2xO1fIAgBAO0QahgVfouPw35Qbmw+UBtPZxwQvtZHCm6rCRiPJqccWtM4M\nr388YMUFZvzEdfdY3ZUSWJ01dXTaWjLm5ACbGRHFSnrAY3HPBTPkRaOaFqjz\ndWnxrI9YIBXONSKtEAUUly+Bb043Yohi7VGxcjUHVSa5nmHEZhpMhIStb8JU\nXjLy3aq0P8JWDnFw/B1Z63uUWI8o4eFGfOZ+LdG0njKtlkqvs6x3n/kfVUEI\n7oMs\r\n=FU46\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"daf6a798ec3c54ddba492f33c939c41a8d88655f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.068fd5028.0","@material/rtl":"12.0.0-canary.068fd5028.0","@material/base":"12.0.0-canary.068fd5028.0","@material/theme":"12.0.0-canary.068fd5028.0","@material/animation":"12.0.0-canary.068fd5028.0","@material/typography":"12.0.0-canary.068fd5028.0","@material/feature-targeting":"12.0.0-canary.068fd5028.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.068fd5028.0_1625771022648_0.4816452211606639","host":"s3://npm-registry-packages"}},"12.0.0-canary.5dfec7a14.0":{"name":"@material/floating-label","version":"12.0.0-canary.5dfec7a14.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.5dfec7a14.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c397305e5d336fd7fab2c0296e38da7624a4f726","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.5dfec7a14.0.tgz","fileCount":34,"integrity":"sha512-v+PaVoTxdJtmAbbUtPrzmWRJ7qiJWRceyn1qXnM2s/6TrQDKxSDI0rvaZQNhjeARuckNRTLD1BUSV03RgQ8oLg==","signatures":[{"sig":"MEUCIQCFJJZ0yx9v8QL4gv8eZVMP+IFC+w2EE503DWTSERJ/0QIgUSpbZbRTfCoIpGuLsKWqyR+PuvwEggWX1/HJoh1iaI4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg7KBCCRA9TVsSAnZWagAAbfgP/j5DRoCEmL5MESXRosWr\nNhsAdqc+pUynYWDEWIECEoBe8Z5Wz0PISKXrR6f05T8AKrht8+FKpIxg/e7z\nuXXiHhzpcR03GUqBZo7jaufandXpL4cnMLqpBzKVe2Z/oVfu4AEGGEQkgSfy\nt2B6c1uqsKuJuT4xoyrSYyDAz1uCPNbkXDSKy57hsw2ZZHP6rtKN8tDKxIlX\nw0Q9LF04v6ugMl4UtKdGjN2OB7VIYYB2sWBnQrWkuCi4oWpNdaNmvC+t3joB\nklKkAZbl3DWTEvFJ5oeNkio6yT1zuzvml5BI87hfAj8LOEg93m45M4jQyivU\ntKogJo/K/zB5rRse5a8xdPeyUjXD9WuWk+h0KgllExBkm/ydzfw5tIRFgGgK\nn3lMXb/1NamHiE+wZUrGszxW/G8Rdr+sI/gIfV/oL0EMvhNI76l4AxaDPJNM\nsBnpMgH3S6dN+H3l6ERk3uxQUd1s4YMQeXq+fT039vWNf0TTBt0nOOq+N0Ej\npLWeuaywSoG+u7kiC2JoL1BsHrgXjdkIl9+rqCAaq72bd6mlUVLCLQ64gn41\nZ8qFe2ykt4YOHhZPjgCqDSyuDZh5BuhxHGY6QOk2HDVdW1AmkoSFAvCArJLX\nqji/OfeW6X8f9Pbx8J1QtFGW4W+XdlhX4Qm+gZlGI02gA1PC+B7uX+2P9XB5\nlVXA\r\n=kY+x\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7295656b25be2c03cf7ca7ca800e7dbec4d9b531","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.5dfec7a14.0","@material/rtl":"12.0.0-canary.5dfec7a14.0","@material/base":"12.0.0-canary.5dfec7a14.0","@material/theme":"12.0.0-canary.5dfec7a14.0","@material/animation":"12.0.0-canary.5dfec7a14.0","@material/typography":"12.0.0-canary.5dfec7a14.0","@material/feature-targeting":"12.0.0-canary.5dfec7a14.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.5dfec7a14.0_1626120257588_0.3354441399905794","host":"s3://npm-registry-packages"}},"12.0.0-canary.07a73750c.0":{"name":"@material/floating-label","version":"12.0.0-canary.07a73750c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.07a73750c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"bac87f3ef30a263013f7254c32600b321f5f4102","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.07a73750c.0.tgz","fileCount":34,"integrity":"sha512-v+foa2mbZKsuLM41GCX705bOUavrLSiT3xn2ChwqVFCMT0ZiHTNemLQnrNGPFuiQSnZIOkrlEuz1BuVwcPRJqw==","signatures":[{"sig":"MEQCIGBohk/LAKxwjsGFStJIWlUAUYOIDekOkzFlD7Iq8x9CAiBflw38jCGht4ERvBaOrPk/729FUUSafgWHQSiRyw9m+w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg7KU9CRA9TVsSAnZWagAAlhcQAJ51DM/iCW0Ik0lOBOZ+\nUYk+UAepXQLQ97NhCcklg1XJoUqz7oqP2z52AFtHaGtJgn/sbOKlwkmCz+Q4\n0q4i+yCXOmVe7gOnhqcvvaYkP3/PxVzgec4jvGm5/LZAtjMYJMJ1LNs4211w\nDODX2DdPN1KREHHPdX54OkO7Druzqu4B9vnTlACRxGzIOuT1tjyskQl57O0x\ncz0o36W2rSaOsJ/ebt++qIZmMz9tTrnuarZnBOPFEft3sICMar0ogbZE/pKv\nPOrnnB5PQX3qTGbfh+3JwDIrCdf/hhM3gA1Z1a6pcy+p6YS8hMEsgykP78fZ\njlR++VuNrcP/RtjyKc9frw1xSMeU0HmN51/ySb81aF0JRgxu9gQ3v76oL4GB\nV0bAc1fTI5AWhdSEayo84/zZTFsrp/YAKBb6zZwgGySWy5n75M9txXi16T6U\n/3jYa7i8uH0I+CJrlym0Z89HgUncT7AvD3w13XItkiwLoKhrapvR6wtVD5Rz\nqG1bUP1EkH3C6slKEkcequmi2+QaE3CdzGGzzeRpTs8vDhBa/lpEIDoZPOsQ\ntByDedBRR+ZagiaR1iiPod+MRDytuNNP6YMSvdnka+9uEMgvxIUttBM0S6HQ\nGgWBd77GbAMoRBdgN03WTH/ks8O5yVUTldZgcCUPqlWodwfF8LCQy7H7Jim0\nJhb+\r\n=F/FF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3534c8199752b92a52696d2065e73b8e4a997195","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.07a73750c.0","@material/rtl":"12.0.0-canary.07a73750c.0","@material/base":"12.0.0-canary.07a73750c.0","@material/theme":"12.0.0-canary.07a73750c.0","@material/animation":"12.0.0-canary.07a73750c.0","@material/typography":"12.0.0-canary.07a73750c.0","@material/feature-targeting":"12.0.0-canary.07a73750c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.07a73750c.0_1626121532850_0.5924110272554963","host":"s3://npm-registry-packages"}},"12.0.0-canary.3e4c6dca1.0":{"name":"@material/floating-label","version":"12.0.0-canary.3e4c6dca1.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.3e4c6dca1.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"447bd39483f4843ef22ffb499bcd40419cd6fae7","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.3e4c6dca1.0.tgz","fileCount":34,"integrity":"sha512-RUHsmdz0S48qdZDUmy0fadG+B+UB3xl6YaiYRxQQucATYGGLHcHZ09nnakQGl/b9veVdY6p3UpOgp3hk6Nqsaw==","signatures":[{"sig":"MEUCICMA6txeHFbeZt/ULuIErADY5nC4kYKCmrkEJIYvD2ySAiEAyoN9MWJXScNtyKImAqtyGi4+uH7Uwjg9t2skKxE32Po=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg7PGdCRA9TVsSAnZWagAA/N4P/0SYenCkS1iNUiNRClur\nF7Z/4K/zh6TG80x4OemFBFJoLOfnBErNfpElCodqtvOox/T8nMUri0cPdI2A\n+mZhL94tU/8Gie7OLc4MyKf7R45V+cX7HLU8BlqXJY/BrqCpnfgw4Tr83XnT\nK8Db8WF3Rys6j737bv2SGLU/vLCi1uBwhnnPZtGUGx0FUYVWMqaQiJedhJNN\nbubN5avrR85n0C8P0J6jg40hO77jOqQ+HRK/seGQcOEJAzeDURebSRXEics/\nPdBvJ9IRKRfc+Lg6tzmq9OL4jZfM8wE4vJq6TPDLq8KRG2HzHJWeuEb82fhd\nqKUp0OM7WCQvsNRXmkL656u+t72y9le6SbZ4lFUwgR3fJjDPsKlZK24159Cq\nZpCmFldOoXI+dyi1l7LmWwZnogZngbLPTy11v6Zvcp7k1QWS9AFH4MO5zvm2\n69jaySvCovt/+CghxHGpDEAQj0SHqNw4oMOmPFgLOa3Gso+k+4uYbDu6XwYT\nw6UVp5VDl0DXT5tUk1X0GhzZ1hN+MCYCCUFraLEImCvt9bODr5W/jqWxAf4b\n9R0A/DQ7jMHWQBqpoCkZdVleeX6fV3TYgJ4aSxCwOTuSNg9J6CRnxN8xZFDq\nYjNqWaYX1ehGEy8TsNRNb/FRt0kfBb+f9aRtsV9GztoEpc/ft+dC4LSOnSrl\nWgRu\r\n=7WYy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1a6a8bc529062b0303c0df830b36d3110a389f4d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.3e4c6dca1.0","@material/rtl":"12.0.0-canary.3e4c6dca1.0","@material/base":"12.0.0-canary.3e4c6dca1.0","@material/theme":"12.0.0-canary.3e4c6dca1.0","@material/animation":"12.0.0-canary.3e4c6dca1.0","@material/typography":"12.0.0-canary.3e4c6dca1.0","@material/feature-targeting":"12.0.0-canary.3e4c6dca1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.3e4c6dca1.0_1626141084882_0.441512179434814","host":"s3://npm-registry-packages"}},"12.0.0-canary.ea77795b1.0":{"name":"@material/floating-label","version":"12.0.0-canary.ea77795b1.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.ea77795b1.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"13c75e0a160e0ae0e7d16e8f90dca6844ef31717","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.ea77795b1.0.tgz","fileCount":34,"integrity":"sha512-drNtESFBcGcq/nCxulTPOVcq9SpjJJnlp1NFUFvZgb9H7d5AU+9J6NLy0iE6euZx6cPJ/dkjW9bv7uYcPdaNVQ==","signatures":[{"sig":"MEUCICO6nEs+dprL6z6177RAMm/lsKg3VPu4N17WYCBp6gCSAiEA6xfugn7JYlJiB0d+RvEBtaFiK0pfPk3pVno4JEA+r/I=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg7bYHCRA9TVsSAnZWagAAyo8P/2SonDF298W1v6bYSw9P\nBu9lVk00nnEaS6rgYgr+HJeD426vaTV+cfMxB89KbWugQhC1/EuGQVCrF/RY\nRD4oZXKixIRmYenSlK7E43IKNid+OP5NcS8pXdGhM8YyADkz5mvMjaXNRV9/\nAXyGbeuP91Al2qaJ/C7bTDhGf1LoXGYCleKUKQEpdK0IGMxgcyISZJ1O93hE\nVCsdWomscV1wdhTwLFBGuJsqg071MdM/77M4R5fOLi6ll5y9ttfFtyPy2S7D\ndAmn+kgrPRm9+reGegWlpNHcHF0o16hyNoAX+U5FW2AshoNZ0G4a3Mdh/vDv\nM7qRnZYOuhzf+CnqGEpwYBBJTXTpakiO9P7I6R3M6SdLPkSZKSB7smle3d52\n/qe7iN9ex63DcwMjjgPTACOYNX0mJq+tpYbuh7U+C31r4HJ1UX8pqbjNee82\nYuiR2ZwaYv+Xl60IavxG3Ll4zCY1gHvTFV2FuIpIQjGVUrDwQxb6J8K3phC0\nLGATK8PKFPahbnOg+myspT1zA3AohBpPysuZOsZJdxpg20nEiUapYaJEUGbL\n3T2cE+B1oql7SnX0Plb2/R1ip7GTSwQwqLq4fx2I06XQKeaCPmzNrXDj2aWf\nyqXbFcNmk40b7nO3vm9NsPF/5BtSjqzhQ/FKQaQAIUYcrL3OdErADyBSVR2/\n4sPE\r\n=lBi+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"830444e6567decdb85bd9b22a92d5f85b103f107","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.ea77795b1.0","@material/rtl":"12.0.0-canary.ea77795b1.0","@material/base":"12.0.0-canary.ea77795b1.0","@material/theme":"12.0.0-canary.ea77795b1.0","@material/animation":"12.0.0-canary.ea77795b1.0","@material/typography":"12.0.0-canary.ea77795b1.0","@material/feature-targeting":"12.0.0-canary.ea77795b1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.ea77795b1.0_1626191366626_0.7679556505613008","host":"s3://npm-registry-packages"}},"12.0.0-canary.15a179fad.0":{"name":"@material/floating-label","version":"12.0.0-canary.15a179fad.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.15a179fad.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"0c8c937a9e0c17cd2ee0eb456543b69bd15217f8","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.15a179fad.0.tgz","fileCount":34,"integrity":"sha512-sBYR1RZh5Xe9hrO04F4uGx2LJv+kI5Q5G7ft+lVOkpq+NOKB3Twbkdytz03bWoRH6ofJOhsEFQnemQkrJj72bg==","signatures":[{"sig":"MEYCIQCef+sDutxWTz7md8xkIc1TIWas9YTWyBeNaY2KjtWSXAIhAIqF0LmsPXNMSOlLd31LwwQJCNuNDAr1OmASeSNi5lLM","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg7dbaCRA9TVsSAnZWagAAvfgQAJaJtC1Rzw6RDhAtIWx7\nJ6XZn0qN57lYrej55CZbc5uC4zSmLyhTbQvFeKZHFH3v7X1ej37bA55VZTBG\nCt17B8WsdoUn4UpzOw7qV0Z+AcPDFz3z2KL29T4vX+I84oM+hsl2BHoHsYoQ\nrCm3jarnUNgWWq6hCQZ2VP8d/nbNbos9fPnFEvem2JrEZVMYLIsLCpmZmVtq\nUI/vk9Mgqx7ztF93AVhyr9WB1dA4pBNP864vUuf9E41en3JFRZskGgNWBsx+\ns85H9pPilpi9LtPE55a1CqRxnWNjLIAOuY1OznZwFSKQtzaapYQmw1GUBen8\nKQdSJOImbBhon+ZDGE1V1BoZMwwdMTuJXXXFOUxoEoE7jidBH0Lm6y31INl9\nsL9m6LnDd45He1AUGDA2Dyoam9GCyrRZVq8fz4hK0T9wNjwu4Xfs1qCe738y\nOumyV97mddoWpb35a1WrRunHOR8wz2lSmd8kXf58eOrscSSZaJg2D8pc+dVz\n4Rxw5U0HrDaBm0slo8JU/wl0iD6jy+AICKlmYBsRzCox0CmBmo2aasxU93rr\nNcImX4pxzfEJesK7atO3pIkdR6abIh3sUSNrMl+8anL9Jt5ITxd2rfVQHKfg\nlT7EJxCq4rG9fHktYX/nSDPlOoJwuTblG8rr9JLcVvyPh3M2LNCzv8Qiqi5r\n4pVQ\r\n=aTDH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"eb659691c3a77be825ea082c434c0b24c53cd610","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.15a179fad.0","@material/rtl":"12.0.0-canary.15a179fad.0","@material/base":"12.0.0-canary.15a179fad.0","@material/theme":"12.0.0-canary.15a179fad.0","@material/animation":"12.0.0-canary.15a179fad.0","@material/typography":"12.0.0-canary.15a179fad.0","@material/feature-targeting":"12.0.0-canary.15a179fad.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.15a179fad.0_1626199769767_0.8687367584757055","host":"s3://npm-registry-packages"}},"12.0.0-canary.c73142a1b.0":{"name":"@material/floating-label","version":"12.0.0-canary.c73142a1b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.c73142a1b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b326cea5088dd4676a5cb313f01dc3da5df4bb22","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.c73142a1b.0.tgz","fileCount":34,"integrity":"sha512-TNPP57fr2Wi2hg/0jdJQMy/TDWi1m+XPti6oG0lodVKpUO0dfjlvW1vr9MuXWrNpg4NGDVr+ryoWLIv8Uri52A==","signatures":[{"sig":"MEYCIQDExH7+xuMIm17YEzGYA4du1HvhPA4GuD/bDz2M79P4+QIhANy24XdYaY1id4eL8n29CSA6z6sTe+6wFQKh4vmQGqbu","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg7d8DCRA9TVsSAnZWagAAEj4P/3wLq6N9I54MS2JDuSvE\nh5tflzbjTROHuq5zW5yLMBlA7c/Uwcnf3oP463RiHkbnnFo8X1s0XECYHZsC\n3cmmzTyWEWl9WdTsdnfP6JMTdbM1kWzEV8lBOoLQAi6g6ZXuzYB05oliu5tF\nufeHLO99YbXpwTSoKfaOnaAlj2nndD87laETNvY8J4dAfvYsBU3TPl3Zphxf\nKhqbvHsa4VjDTJ6xXYsY7zolvZtz+PU3JyRRauW7ysP93yLVI1vwXFVzbhAK\nk40yXgP9vr1UoZS9Ub/y2ItDMYWOqdTaEUqtWOLGK0AR0hNrATVET0YkQEZX\n9iwmYAyVUywuIRjkcKyl7d+OHmQSIZHjb6Rsw+mm5d82+UWtHUeekxPkyzsR\n1cDbJ9JzG8jdDUTtJo3JB0xJP1A/aRqC8FyA0R7bR/9jlct/LQMsGPkXG7zV\nNTYCMakvgEqwFYfRSJHC5WwdLkJPeajkd8FiI/F9KQyQjtnDMPLYbLdQfERe\nYDsaYIBHlysYlgX0LnE2s8h/f6C8BgjpII9VmcCLDBKn0p84jQe25h2sOeTL\nH8a38C/RvtKU6wfQz87ftQ8jLVnx5AUz/BYglpFG6iVy0YfF1zLGlTFicGzi\nL4Xi6Et8GmIubi5Z4JaVB/iOiyJyZjHAPhcIoJkq7GG7rJY0oYMbnQKMQMK9\nciPN\r\n=OTPZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"037ccc3828bb7b7c6f3375754059c10c231a6b60","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.c73142a1b.0","@material/rtl":"12.0.0-canary.c73142a1b.0","@material/base":"12.0.0-canary.c73142a1b.0","@material/theme":"12.0.0-canary.c73142a1b.0","@material/animation":"12.0.0-canary.c73142a1b.0","@material/typography":"12.0.0-canary.c73142a1b.0","@material/feature-targeting":"12.0.0-canary.c73142a1b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.c73142a1b.0_1626201858939_0.5755313324695359","host":"s3://npm-registry-packages"}},"12.0.0-canary.d923db73a.0":{"name":"@material/floating-label","version":"12.0.0-canary.d923db73a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.d923db73a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"0ae90c61f6acd1ad4d722fddb2979f2e681a2de6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.d923db73a.0.tgz","fileCount":34,"integrity":"sha512-oYZXGnlbZBZFCeupzkNDkdnTKXbz15U7z+wlpSRwsF/7kbcH5kBJLOo+2zB8b1VeCZ66bNsLf0gz8zJHkQrvhg==","signatures":[{"sig":"MEUCIQDpe/sHRTbJVs+xnD8m+PCmKl0G+rKJWgGcLMFuCfd50gIgVTWNEiaXdjSDJ3JHazZ6itYtswogz6iCYLNFLeN+2vI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg7f1rCRA9TVsSAnZWagAA15YP/32UCwCeZ37ubyN2IoVO\n3G1OW9fB7v8RlpgXzfIQB8fRGDjh/XLNAbHhRnn7+IKGh7HObOGLu3rDLUPH\nERl2IB00ak4RkbgzFM0VZGdT7bqyKuo5YGUn4DVdkRuCMcECPBZDgLkEq400\nVfmGHuc6z1u74mnpdU6CoJuF9z8qQTBgRGJFt0PaVQuDH6rTgkkcVsZNLy5V\nZmgZ8NcMgAtS8hGbMpe+AjfdQGDn3vvqjLFg0tmxYrtIRLRX3UnAbT6RTE2H\n5e7gi0XXTmUcCaNelsPy+yiDKQ2Jt3tf3B0L2PxN0as8bnddV9J1BbcoS/Zx\nMXPkfM+nZITqkcreZBms4Q/FxMO5I5J8dxXQlEsI5jFyNiN8gK7sfOU65HE9\n+gG0Fhv+IOZjbb2ot/2zjvUhvHU1fimd4YzSMbTkp/VrVB0kNNMGoBpVyda6\nkPT8SuwfTLNN1YStqsozsz3WbR96wlZzKtUxnQKaqogMYF0l14iPwDC6xKfP\nxFFJYw8I0uOavT2FziYe3VXz8zCuJmfdL3WqqazZxLoIAEf0KIrBZzJ5JOfx\nZq/JrLeHq9tkQX9MpHyNKifzkYceDJp819tjnDXuKaJyFsGIpV6mmxpX+SWW\n8MmSCHz6os3+Pl0ht+h6E0R4b7MtfzLUIvvF20GcGXLbtRVB6+aqAFrNdFQ2\nNmx/\r\n=6GLq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ae010eec116ad324d7e442d7ffac5c8ddcb9edf6","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.d923db73a.0","@material/rtl":"12.0.0-canary.d923db73a.0","@material/base":"12.0.0-canary.d923db73a.0","@material/theme":"12.0.0-canary.d923db73a.0","@material/animation":"12.0.0-canary.d923db73a.0","@material/typography":"12.0.0-canary.d923db73a.0","@material/feature-targeting":"12.0.0-canary.d923db73a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.d923db73a.0_1626209642853_0.9365076721432264","host":"s3://npm-registry-packages"}},"12.0.0-canary.22d29cbb4.0":{"name":"@material/floating-label","version":"12.0.0-canary.22d29cbb4.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.22d29cbb4.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ae70c99c3c636d6b06f660c9e1e01a566c72c0be","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.22d29cbb4.0.tgz","fileCount":34,"integrity":"sha512-MZIVki9uD6JMyfQ6v5FIgt2WEZQ3fOCpoOiE8c9cHuNiawVJc3pmoA5wT/38hJs3iMCx86D1jL1vK9UdyIdF7A==","signatures":[{"sig":"MEUCIQC68z2DcaYQR/DV3qyLGa9WVOfVZ4VpbigxMSNkFFsg+AIgVYETkyac9Myf3poKZUOx6RWhmRBBEogwkWjYaSvKNNs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg7hi8CRA9TVsSAnZWagAA0l8QAIPv3PdUjZ7MTxcx8uhP\nLggR8fP/AA30gbXV1Dz138VulEV8dAFSW5bIHjiMZvuFhs38Iq5nerQI2gey\nCO8Dzrq4Wf+qCkG4wWQ/ZEfSVNWksQCKsoQaU6YnEq/4SD35mWflFg0ypcz7\nHhzqUQT27ebskGITvGJANzZcz5lTTHRLcqlUPFt55UB2nf+QWpxNOvtun4rQ\nCP1dIugvi1QZu9uOIhWjVEzz3DfhO/qi/Sp/NpQzQxAJVpAXysMgiDbvCPj+\nOUvph1YCivqXrAbvOu9zc/cik8R1aeUAABk18NkLmEmNx42Ytq3cGHTe2IsS\nO26biD7cEmuLAOR+3ANMAkVg5D5nknLkkzs6z3f1c96GaUEV5EBRWx3HYGbs\nRD6ZuxRaruyIr/mZqrCQH6zlCMluPMeTIcsUWPxanwjYq7/kgR53ti7swrZT\nL+fCHbGDUo7TqD5yF7iXGaKVNStalyHpJ4c2YyzRjDpX1jYcQk4sXlAaN12q\nSnMpcwEJ2xyUwuVYx3cRMxOCGUxpWpBZuKDOSrCWz5vjSYib7BEhtqF2m4hi\nN18j3YkTPCtf4JXR+jc2DrOI0azZEppm7myhghNBc2u1wS1yA5BEn96k0TbL\ngBZoqJvd5JqY7DOAgVL9Uf7Qxbmj47HqbFKX28ef9WkMgBWoSBDLUHxZgjtz\njmeR\r\n=CG6A\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b37054450964af349924b81bae43ec6b3beb2808","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.22d29cbb4.0","@material/rtl":"12.0.0-canary.22d29cbb4.0","@material/base":"12.0.0-canary.22d29cbb4.0","@material/theme":"12.0.0-canary.22d29cbb4.0","@material/animation":"12.0.0-canary.22d29cbb4.0","@material/typography":"12.0.0-canary.22d29cbb4.0","@material/feature-targeting":"12.0.0-canary.22d29cbb4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.22d29cbb4.0_1626216635879_0.41907530550136407","host":"s3://npm-registry-packages"}},"12.0.0-canary.2749604bc.0":{"name":"@material/floating-label","version":"12.0.0-canary.2749604bc.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.2749604bc.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d5b89308577a12501c5df71b53cd8f5d0fd7df50","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.2749604bc.0.tgz","fileCount":34,"integrity":"sha512-hzfLCY05w+4Cy1N83M+O9ySuYv4Uga3x8+TOuv3AYmVHoVYJ6e/aDdblN6mUudgpJdcj1fpuMuLpM47cj2YyZw==","signatures":[{"sig":"MEYCIQDJ1eDXs+R2bipPmHrvm/TDyPhORoB46XPD0JYbmnFXmwIhAJ/Z2IULV7ESaCvyfOJkUbxhPbZ76QbVxLc3Nrpw7zt1","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg7w9HCRA9TVsSAnZWagAA10AP/jBJdDsQ6KODSemWJe0L\nrzfk/TjNQeSM+Mk74vUax7gd6HpSHKDNVnXV53Ymk6sOBQeDjPkXAn4k6ihm\nwpNi8lz7TdvVv3wKjDMjYGFKKI7ilp2wu1Pa5nXHaLGIzQrEvZXpQk3PFRU4\n7BZ7pvc84RrxUjmoSS4OdHXvkz17smx1S4RZ/L4Uul57nx+H/Q+RtRuptQtE\n9i5LDiJD58wRBJbGv9ULnLWF73Z+xLdG9yvDl0Ese9a4MjcW2CbjZBv8OOqr\n98fBfDNIOgxEAMXzMIoSqMnDaktPCbhONTDFzQAPz5U3Xkn4ukDWxBoXyYAd\nSrwjHD6Vd2CWh1SB3hUsFPJcIVSU6wwjSONpueB2H6MjGYwjOJReI60QqWqq\n14bLzVzczbx6pJq2K7Y0iBnkZZwfugnv+rw2OJZyiSMbW67PxRXzC0k8MRSQ\nEVB0XxjSzrp1yb1CsxHnHakkO243Eo+f9PzAooUJS6hcCyEOOcitRebNIEJG\nlYOs5dS+2Bn6hxZ47+yS5QgiFwv+Okp2ch8W5bFvoDQNgqJqdifSU4nfMTfU\nALxq2upO1nQWXSeEZ5l0KxzMrbtqaC4sw90PytLcsNZofnQl2g9636dlSNQs\nxdTQqHS5N/ppCcW2Dl/ZHGA4Bam9x33gnG4OwVPP/qwn7lbVhsS7f38Ak0AW\nkroU\r\n=YB3n\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"58ae4287239fcccbe4c5dd9259164a0660c76f85","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.2749604bc.0","@material/rtl":"12.0.0-canary.2749604bc.0","@material/base":"12.0.0-canary.2749604bc.0","@material/theme":"12.0.0-canary.2749604bc.0","@material/animation":"12.0.0-canary.2749604bc.0","@material/typography":"12.0.0-canary.2749604bc.0","@material/feature-targeting":"12.0.0-canary.2749604bc.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.2749604bc.0_1626279751063_0.2658398705182343","host":"s3://npm-registry-packages"}},"12.0.0-canary.e1703bed9.0":{"name":"@material/floating-label","version":"12.0.0-canary.e1703bed9.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.e1703bed9.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a72b6a713837443e19fb4b5cb0576e158fbb0f16","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.e1703bed9.0.tgz","fileCount":34,"integrity":"sha512-51XVBs0/vCpmbVh878Rsj8HG1QdAVUjg3V1siiLaQyg8kOW5n0TCmgHhLZ6s+noi7VD5ULGemfxlagGNyiqVGw==","signatures":[{"sig":"MEYCIQD7pvpM732fhvu4ji+uFfPU1xjRyx8gtLVjTNXDY/RHSAIhAJz7/8tKet+1iaO6ykfcZllruDE6+uATXNzHcoqPLlcx","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg71ucCRA9TVsSAnZWagAAqnQQAIJfxTmKEXcE96JK339K\n+Q0pcVhiXHkyAbyjMW9itnVq0EhHGLhKb9nCOnuBHLL6xRxO63MWztVl85/O\nNQjE+zZnvBXH2UXP/0FS6S1dbUuSSWmZekuVkcTQy9jf+ouT9b0E2fWRyoOI\nAgWIVcs9nm1hlUE+ghun6MSvrWmtxw3cBI9p9a0Mcw4R9VC2QkHbOzV6X3cv\nxWMb+tAnU8utcfcd6oxnRx/jubZecvsnXE9owYWnAzwZOcG/7RoBqmA6X7vn\nZChEb1BUU6ZpN1bsC7l6qndasUWFEk1urughssTmFp9URXA1YgepoiWnpkya\nI9eDlrnuKR0NLi0XJTtmIWPE817+VJ1c3Q5ZBav0ggRYx8w53ZN5IUTcuOZY\njDtOfOu4z7dbNpZMC0sVQXv7Z3n7vq/4Rkla81JEgnLXygiMMI38m70ltRIa\nhc+qvXl3dPVvLplQ8WRcM2fNlgyRggrW+YVjjWQtW5cmM85aKxvcLi3u0jqL\nsN9SUG5JA2MDhflZoC6EJOw/2Yyc/7fW5JC9EkjVqKGzTkqQF/UfHcXEt/Bu\nqsFuXe2TmIOUNZY98hW409TaquadgW3ot1BSVS+gHVF55Nyr4gwxK52Scs+G\nIYO7tjqrLVoP0uiRYF3LmG1v1Syny3PlGZsZt6cjrcp1MX4kLKf+DmtxSxjY\nDuqf\r\n=KSgQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ca9075f939dcacc82290fe2b01214639958bde93","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.e1703bed9.0","@material/rtl":"12.0.0-canary.e1703bed9.0","@material/base":"12.0.0-canary.e1703bed9.0","@material/theme":"12.0.0-canary.e1703bed9.0","@material/animation":"12.0.0-canary.e1703bed9.0","@material/typography":"12.0.0-canary.e1703bed9.0","@material/feature-targeting":"12.0.0-canary.e1703bed9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.e1703bed9.0_1626299292191_0.5680306219476596","host":"s3://npm-registry-packages"}},"12.0.0-canary.de48eff0d.0":{"name":"@material/floating-label","version":"12.0.0-canary.de48eff0d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.de48eff0d.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"23dc3ede33bcc685602314c7ddc55160c195a128","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.de48eff0d.0.tgz","fileCount":34,"integrity":"sha512-qiFhGKOhuMOMMfvi+0dCefgb8KUqLwpH2NQcNhRS/N/UIm23eDR7Wtx7M+b7k6HEvXb1ULAsQ6Gube/jTY3b7g==","signatures":[{"sig":"MEQCIHR99JQfdq7uFYaCwX6QxI6vFyH7vwgAcqNmLSEEtv0SAiB9Q2nSv042dcPyPpV13/Qqq/MViLwu/S8erihtxG766Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg8Gt+CRA9TVsSAnZWagAA4PcP/ioVt7S5m78pghNIHL7w\nhOnaZTyw11EaJzWZ1iYRyQHr0hN+AcXk0pKZk5cnZM29G6bNYOTVcAllkPdr\nzVoqYn9UU3+fip8U2a1ESsDOxWgRFhpjDWA3PxfCZuxMPDFmLV/1NG8RuG8p\nTr+5tRIuRv42NpgBONwBnAWJOdP5OdLKPX8zpxLl8p3WHGcq4Gm1UwfGi+2r\nCT3IglEJehSpShiC4SSzsvVyGqWzYwUL6Lob+1JYhCzl7C+P388fQ+a0kxkH\nLbnItIhippt5ZcTdenrMLsRgu5yBnVrNsrHtpyTGAlpVhumhEclENVgRt38P\nzl/MgHWBykP31dAsrqxcUd08F+PxdXQ/52qiniZ0DVlzWv/89Aj7AvmzuJdl\nh+z2VXWOVE2pZ/ravspC7bEmny7vyWJNtIwjQpIttS2Rq7tHQsNazDfoYi8L\nTWqVVmqUzkj4qE1k0rbB24L50LNo5KjMyuZhcFerQ2ymVBZIZnW2LdGGkm95\nivYNw7F3cW4SX3jec2Sv7skhiFTRPTCPY7Yft0mH32nTLprFlcXvJH4MtE+Q\nWVzS/FsTaCYkre98LOaOQgloFOKGCew+SWmRwIgvzjOnnismLa+UPdldvrAA\n6ULhBFjt37rshopLGwEWrnNcWXNLPaJED2wq8l1T0HBJrnQsUp1P4dtuquKf\nzg51\r\n=Pv+8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"121530dfc073c7b24dc1cb75732a0d4c0e6a3f28","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.de48eff0d.0","@material/rtl":"12.0.0-canary.de48eff0d.0","@material/base":"12.0.0-canary.de48eff0d.0","@material/theme":"12.0.0-canary.de48eff0d.0","@material/animation":"12.0.0-canary.de48eff0d.0","@material/typography":"12.0.0-canary.de48eff0d.0","@material/feature-targeting":"12.0.0-canary.de48eff0d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.de48eff0d.0_1626368894226_0.2231777783897111","host":"s3://npm-registry-packages"}},"12.0.0-canary.4f060adc5.0":{"name":"@material/floating-label","version":"12.0.0-canary.4f060adc5.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.4f060adc5.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"41b4126c726aa6464d33f134de7d6c435b1b02fd","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.4f060adc5.0.tgz","fileCount":34,"integrity":"sha512-tx0FhJsdmruPbmWTx8U4DAuT0fyBLQ8DBUv8QKCXxOyLrouhXrNOQNxzH6jaQCdsJfBT4GuEIqZ3ibg5AehtYA==","signatures":[{"sig":"MEUCIQC5L+e6D2jg6W/xUYQOdnfVXmzmE4AqIkrBHGs/Q6Y6lAIgLtq4h+ceEa0cSazfi2H4He9fLDh3Zw6uDGlDW3afx0I=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg8IrbCRA9TVsSAnZWagAAEhIQAI1WV4VnBA/lin8DKwK1\n2TsBz/07FTxgY/0H6IWsHR+YDbWRX2aP6HPFxy338bIdepkkGzfPe3h77DVM\nOY3Im10PIP37kZWE8dPP/OJmLpI/4ZQuFL2Z6pWKadhh/68zSR9LZXRlQ290\nMRoaHE/r81IOD58j070fElKefVGucKcg89c9yH2rONosyugQiZ5OZelyb6f+\n1yxneP4OsUkWhaQhsFixbzrJTPon5QNMuLkUhw5FAK97tgrLMDWdxL3rqlvd\nzHvJ4oJnqNnUQ1fF/HYEzoavSW2SD2BLyJ8dnM0v6BaSweFY/pk4k51Xl9vs\nYFkCoYiiDwVvnwx6PI6jG3ue8Gd+I+7iS5HV1gkdvWyP+obV/alxl9zne6oT\n5z1SB1FbXentO5+Y84goaobEhs9UDXJ0SaeYO6JXxRBL8Axls93Qz5QI0jKJ\nppZx5bRgFRgi4KLDHPHTF5gzmk6NOkBVHqfcqKDGDP3dcRVs8HxICUqJlprN\n7BmUh74TYH8F3hmWK17ytVDQkwArRuyWxwUIz0vBN0yPYaPm/68/N23UvRxa\nHv2iMLMnsLbKwG7lIdFZz4CA9BHFujtqaeeAvvaINwR7/C05Urp7tpYEMWg2\nA9S8fMqss0BG38Jyop/b3eI7hd6vNcWsa45ULsHpyDlgDAHXX/dMNAjER+Mu\nqT1t\r\n=bRcU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2e70b8cd653f195a01f93c3e9928feabf39fa87e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.4f060adc5.0","@material/rtl":"12.0.0-canary.4f060adc5.0","@material/base":"12.0.0-canary.4f060adc5.0","@material/theme":"12.0.0-canary.4f060adc5.0","@material/animation":"12.0.0-canary.4f060adc5.0","@material/typography":"12.0.0-canary.4f060adc5.0","@material/feature-targeting":"12.0.0-canary.4f060adc5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.4f060adc5.0_1626376922809_0.9534711440849932","host":"s3://npm-registry-packages"}},"12.0.0-canary.bd25779b2.0":{"name":"@material/floating-label","version":"12.0.0-canary.bd25779b2.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.bd25779b2.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6a045d83633c70cebd9a09da56f551485086f8fb","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.bd25779b2.0.tgz","fileCount":34,"integrity":"sha512-mnr9HZ9XumBL2O1UIhzdwjpgl+TD9QcUahu/8ATxJmuROOmoX6n02u5M6srqtxBSp0kNRCDwbn6a4vuwDFW/0Q==","signatures":[{"sig":"MEUCIQCti4qd/9weGDtag4taVTZGK3DHv6FnRn9gf1Yp8rhtwgIgRSISIoP+3rEzGNZQdMyiuGLVXxk3gvgu9NIeo4eirfQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg8J2yCRA9TVsSAnZWagAAzpMP/iOME+RPtNsKc3GEpNA8\n16iz4FRcZfnQG/8ZBDRJVP8fg0gtRk/FCd1lfP5/xkyRbfUdUMQC6Jo9KIj7\ngXCRN8qtt60MepOQGeh/b4ZyrZViYkObOPQA07s43wMnjMTzAmVU0xGhLKQ+\nAwdyK6NAri7WIY0E5qDtM7bPM0xywjg5WRA4RuzPKnh6dkqhvh2PaYsx9FeG\nxXs55nXoGYop9tSsW3x0vahM+6YBkjwuTgjTk0M/ZMJ8T6veHu/VhNrsqYfP\ncdccywNXrdJ9Xoph5SUm7K9eaHA+L3blOL61GTyl3aFaxnjyoFBfU4clZRpY\nELc9Qd9FuIf1JdXOSWnx2CvaGtGwynRGzPc28hI11mppTEjZXPlY6G+rxIGb\n+NXyZf+orEnza5FKWYDKMUSG7s7UiHjnSQi3zE53ma/rSn4NTZZd+7Ubz7DF\nVfEK9xRrOczzhaI4ZdYmgse6qt8vcf2Jl2Hou/AXlVis9LmqCAAkGm3ARHxy\nXBKqAX/Z/J4Wi+MNTOUQJOp9JIvfOt3BkN2ltqesZtQ9voBDvpaZmaQGssy0\nqmyBpSUVAGrjGHiC4Ho+2IimA8Ju+zhDiIfHMnTH7d5oST3X0s3pkEUC9Fe0\nb/mX18HbEwr5DmERi5hf8hopw7g0u4ZpyvfPAdXhYDxqcNJ6cD+wahEcqnSh\nQ5qT\r\n=dScG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3ea8422325f9bc5f9a356842191da47e282aa4dd","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.bd25779b2.0","@material/rtl":"12.0.0-canary.bd25779b2.0","@material/base":"12.0.0-canary.bd25779b2.0","@material/theme":"12.0.0-canary.bd25779b2.0","@material/animation":"12.0.0-canary.bd25779b2.0","@material/typography":"12.0.0-canary.bd25779b2.0","@material/feature-targeting":"12.0.0-canary.bd25779b2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.bd25779b2.0_1626381745569_0.3467287137213615","host":"s3://npm-registry-packages"}},"12.0.0-canary.9f68a932e.0":{"name":"@material/floating-label","version":"12.0.0-canary.9f68a932e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.9f68a932e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"56f7c464eadd4fb28f57bf9c4a8f17f6f5e9029e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.9f68a932e.0.tgz","fileCount":34,"integrity":"sha512-rKba7RAmlNCZVzghWT8KCxeXbrvSgKaef8T86UuXFXyoApXejYQ+pHbx2iN9n01lNhTB0baaC6shc3PcXGkKlQ==","signatures":[{"sig":"MEYCIQDjtG/ZKKbj5E3Xa83LUnnPsWX9LkMQFNZFqrPylr9LTwIhALbhbJeJWdHifu3feQbyWuJRuKPn+VfD5n6MX6LTAjyQ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg8LGUCRA9TVsSAnZWagAAPw4P/jOOeB4fQDrFxdagcO9j\nN6UTH5q1V4W4REs98kERs9XP96tL89rLNs6Twm79M85CVmyWP5m80anhylZd\nmu4tU9CCPP0UPN2MGDhbziE3zQKhqyu0JLQG7O6DUYtL4PL7cg1fev6B76Wy\n7JtHMlEzT4sUiREjQB4JMeFnq9NoXKi7oJ4OHXJDkiKckrLIHzLovOnJgX1p\n5zvIMuVq4KU8buzg7zlfnwgYd1U3avOLYJLeNJoVWCoZVWerzG+58SplR/EO\nJewenkOXQ495N54Ztk51E3mlefFD1g9berImwh10yUAnsRlMsALFmd7aCZ0D\nCn/qLe4cpy1S4m2vUQUEjYAOxrZh+Kp1Tt9Au8eiCe/vSBE6VEUNgLQ6YrOh\ndFM2PNuquNQIfoUHnNQVgW51WQ5hqoFO0CdBBixmuCTD/nO21FgjaCOws3WU\n2IX+4T2zndcFMt0iHTy14J33pr26igJ9IMOQ/1/0c2zZHy0Upq+U3nBj5Qxx\nY7alcJlzv2fKKEP8/E318i8SNarRRN3NReoPet86R5sDT0447JF3H96rLv5Y\nA9VYQ9SZDAOKTEUtidnSQfUaow5Yo5KiJfTL3hWCL8nYtCqPkM9x4bD7b/wc\nzqaJhh/BryKXZzyU2Ax6P3vl9bDGAVkhhVrf7JSZjbnsFjyUZ+YxsbFfQsTh\nKcu8\r\n=ENHV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"34b4e5801eaff79707e9f2c769df2c1a34bbdb11","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.9f68a932e.0","@material/rtl":"12.0.0-canary.9f68a932e.0","@material/base":"12.0.0-canary.9f68a932e.0","@material/theme":"12.0.0-canary.9f68a932e.0","@material/animation":"12.0.0-canary.9f68a932e.0","@material/typography":"12.0.0-canary.9f68a932e.0","@material/feature-targeting":"12.0.0-canary.9f68a932e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.9f68a932e.0_1626386836053_0.6354230247173946","host":"s3://npm-registry-packages"}},"12.0.0-canary.4eecdeaf0.0":{"name":"@material/floating-label","version":"12.0.0-canary.4eecdeaf0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.4eecdeaf0.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c8b9ea170447462c8a36c41b494a00873b22cd88","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.4eecdeaf0.0.tgz","fileCount":34,"integrity":"sha512-ovSFlGgorjRT7wNFV68CqC2f+Kd5L5BdKeSxZ2kosj9GNuhE7muxYXCKbwn1XUfCpnP1iygRjsjYFfG9Bkz//w==","signatures":[{"sig":"MEUCIAlVLjt0DG47oDsyFaoenclr5/BhJo6cQKwGtVXsv6JxAiEA37jaUz9xO+MqxNfpaBwDDahOlopgzRv/8IXcFkZPlqg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg8Z57CRA9TVsSAnZWagAA0DwP/iNxcJXYoLC0O+5kX9XP\ndWpfOY+vzgKVIiuEl8bCnJ6GA2ey0/tb5hosRKNinC9uO6Mmiat/eKBrRtWj\nQmmqm2JMOv6yvJ1nu7sNH53Y0/TLZrV6MWx4zucmBfmohDxX9XRA1kTRK0Dd\nWHnEq8zDidA/ZQ3dg6XotCvZTqrX6fkoch6cLTyniQdBIsQecEcq84r6PC1u\nMyVbGkWuvAuOGFhXrqPZBsEq+HETtjI0lqyATZggqQdti04EJarRssaOmw0m\n5ZHiTsIlXXf2H9QvFFjhfhL8/vAviADmFlMKk5lrVJykWNxh3ogopSI2w/xx\niORSGI65eFw+4aeeWIsO9S5VW8DjvbkZn0jWvAwo7NCmYiKx+6tp1ViirsHl\nX376stKPzJyHaosIMjDtb1Va/cW7GqsCZ4aCb4WPbwN8OChepOki3//nNASH\n4nUKBnTxOh8hIBd07X2neZbiT7RZSbiUpucexXPSmZ006owG2IACY4roWPHq\nP4zYf33SE6MSpswnXP0V9X0+gFSID0U14fIeVc2/RLLC5vF5Hv7/YB3r/ZJv\n7Z4dgHdhA6AgFmslucTSJfogWAHJCvHKF7jKASQZT/w3k65OSExMh5tAJKjJ\nvh19N9iNMMgsEUFzaTrT7JtcpV732KpA08JDUvba9u++tQzbK6HWO7cNPXS1\nVS87\r\n=xm9U\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"89a3faf78d32cadbed38135c9ae10ab1f3c8e9a6","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.4eecdeaf0.0","@material/rtl":"12.0.0-canary.4eecdeaf0.0","@material/base":"12.0.0-canary.4eecdeaf0.0","@material/theme":"12.0.0-canary.4eecdeaf0.0","@material/animation":"12.0.0-canary.4eecdeaf0.0","@material/typography":"12.0.0-canary.4eecdeaf0.0","@material/feature-targeting":"12.0.0-canary.4eecdeaf0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.4eecdeaf0.0_1626447483043_0.9790696859145003","host":"s3://npm-registry-packages"}},"12.0.0-canary.7239684d4.0":{"name":"@material/floating-label","version":"12.0.0-canary.7239684d4.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.7239684d4.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7335c20bfc949e4ff79a63aadf630d9286bf06a1","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.7239684d4.0.tgz","fileCount":34,"integrity":"sha512-s7MeDCWQ5aTyHDEHaS/v2SiCLEHctO8Tqq93fMcOrdfMepGng0OE+Hx1vACKmsBqMZU6X8Tean0JsDSypKySoQ==","signatures":[{"sig":"MEQCIHw/ckg9r7wrOtn/AwJ0TTPTQ5JCh9KBjTnSoPVRdUR0AiARRKtyiVa7nu7JaInqCVPwGqClr4p980E4GPmQYC5Jmg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg8azTCRA9TVsSAnZWagAA40QP/iJjxqIu6G7r9Amc8EKf\nG5HfEDnhvl8ihh87lTjWR8nQq0ZYrYSWG8pmxpsbz9HlPMsUCvRvpXxI9M2x\n+M9FnHRozMt7qyIuxBbxvz6cd2ni+Zw0M6QhI6GmAs1JW7if6Pp2ImAPqU3x\nq4q8H3pIpGMtskjuX5KDT4VVz/KsrFG7zTfI0v+yfZJKyeUnPKGzszGJLFnm\nAh1pJNKjO0ufn75GMhvn736SIpIbg1h8Msy8NYCP7V/OCh2/rMO/RSTpWE6x\nQndB7p+oNFWgIicxMe3JqJ/AfHRP0i352RsKidV22OKR64H19ngmoCLUObgZ\nNIj+1ANADRSkuHNVchiJmik2OM0p8aMz0yL4Idt5oJ72bOLwDnfU+3l+7zuG\nygvwLYG+UI0PnljorxEu1EQqlmpQCrbF0dWPdoLvgAUS50KTuMAajvqH+E2a\nasZLNhAorIMp8GBBF4Y+3CIn62s8R8lWHOWAqe0TA/89t7d1onD/AIsY/NfV\n4imLJd4N7OJDmqwM/NPcaea2xpvaYPyXIG7F6pZAVfVQegfcKSQ07RhuUob9\n2Mv/RyPoRsbsnhkcdMndFTtTFYQk1+yZvzaRwhwRL45kOYdKiKXajGPZzUt2\nhxuLtYCPIXS3e5JwCNm6cmigPwQ9RNyUQ7+StglR3u7BGe6AvhWdBcg+IxYc\nbESn\r\n=AQBX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"4b35543a488bb22a0855f6f0d00b047fa76bd623","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.7239684d4.0","@material/rtl":"12.0.0-canary.7239684d4.0","@material/base":"12.0.0-canary.7239684d4.0","@material/theme":"12.0.0-canary.7239684d4.0","@material/animation":"12.0.0-canary.7239684d4.0","@material/typography":"12.0.0-canary.7239684d4.0","@material/feature-targeting":"12.0.0-canary.7239684d4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.7239684d4.0_1626451154967_0.5751861338138642","host":"s3://npm-registry-packages"}},"12.0.0-canary.d5f1f7c72.0":{"name":"@material/floating-label","version":"12.0.0-canary.d5f1f7c72.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.d5f1f7c72.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"fbba76b02a103aae197ada6a1532088b60e49dfd","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.d5f1f7c72.0.tgz","fileCount":34,"integrity":"sha512-uy1nZAs7xPdD5tBbT+bFtsWZVkG9yCzOxm7z+b1IviMX6EqRaYroQAHHcKPgWsuglEY1HRANbMle/ECPuNH9Kg==","signatures":[{"sig":"MEYCIQCj9jxNKSCZMzYoeDwUi1FyXqOe0qyLrxRaCAvH5uSOpgIhAKiy92GjkI4WbdfzYqnEV6WawEvgslW1UYLTOtkzjZW8","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg8bBQCRA9TVsSAnZWagAA+u0QAI/rNHtHvNAYzIIhrWtX\nbOqlBUpFDmI+Qqalmi1DHgdRJHsLrhaabXnkgESqYI5hFEIp/4yguxg+H0/3\ne6RmXWMFwL/ToFyTBuRvtNhPn010VPWXEzNjevhYfuqA1Fa6b4lfjyIYN6wr\n5tCmBa8RUn52OGtUc4k/AisFkqNPqghHTFueWbswf2rBOFfJcBrjbBD4rDnv\n23MekTWHZQa+BeHaWDbObtGtIxEApgqlbnYVKbRqSuU4lePT2rG5zzB/0gJ/\np1QMB7NONzDXW6YPJplBpXQfytklossa8141nuct6JFhZ15gValJciCV8q3w\ndRMAmCLfgQxI15jhLWG1Fyq4WRbuC3KDoxBo0/QjSXZEJoIZI7KP2KQ3R866\n33ZQItu3sN/ZlzhQiSs7kxAfucvCHTe+cg7yx9PiuM7xWtxNLzwUBsmUDY0m\nt7x3goHkBc3RQf+0m78WV03xTmTu9y5KFnZC46yzsygXh0nMpuBJ9Q0/ZRuZ\njFMeia19ow3TxaFMFUWgqcT+ZEsLiT7BolQGXQ9JcSXz/BZ74OV6H8flFvFL\nhD/WipwVpGAKtBjh777MGuxy8NIG5yRZE4N8C1FYwB2FcGX445uG5N1wFLkv\n4YSmgGuS3dppm70pQ1izxkthJiA7+DErw95O+2UjwtHaq5qBFJQhIWdwZVtm\nYxK/\r\n=xXjV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ef327d93f5a591e88ce5af94a2bb181d97b58472","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.d5f1f7c72.0","@material/rtl":"12.0.0-canary.d5f1f7c72.0","@material/base":"12.0.0-canary.d5f1f7c72.0","@material/theme":"12.0.0-canary.d5f1f7c72.0","@material/animation":"12.0.0-canary.d5f1f7c72.0","@material/typography":"12.0.0-canary.d5f1f7c72.0","@material/feature-targeting":"12.0.0-canary.d5f1f7c72.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.d5f1f7c72.0_1626452048747_0.9324180493238765","host":"s3://npm-registry-packages"}},"12.0.0-canary.4d95812f9.0":{"name":"@material/floating-label","version":"12.0.0-canary.4d95812f9.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.4d95812f9.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"dc0568da7d26a99c0971e2a7abfc546bf32bf93d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.4d95812f9.0.tgz","fileCount":34,"integrity":"sha512-riQoBfTJZ8/tnso7DGdba6u+KisgCiRQsQXunNuYuIZgl35vTUXHMHDDuZ6B6MDoPDUoMhbkoKXDloTKVlFQJg==","signatures":[{"sig":"MEUCIQC0FFc8mr4l1+2Wo36A92wZvHoeFuI4xgDsseFHv+sR3QIgKaezuUiTMIcr9wT/hAKrH/y/ZKi6cVOstrwH5VsqZnI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg8eFUCRA9TVsSAnZWagAAEWEP+waGwL/JXHI/hQO8QWKm\noH+/ARV/RaPURf0IfD8eVE65fFY4l/xWcnPp4Pf/Ig32VBJxQCZRkfGEmoPY\nmu1l1k/A/7vtOblDQw5khP5GASmqzPW11Xk95XuLwK616oF1dcBOLhYg2U5l\nLtNQ4ykkQ+eRL9hqguJzhYeEaOTuQU/ZmDDCQSZH/KmX9K33Z3pWkYI4PqIs\n67inNN75DWAKmcixVS2tMjC8qeS1pY4KYtybhziqOGm5KHw1eNVINrhhbHPh\nVBVlI0ayLZ35jejIslo8+4k0N8BwIEJPdTdnCuQYf17CaJL/5PDL/8yG0RVc\nDYIYWiCK06RqG3VGmJM2UA//2biYFD6TvLrZSipghYIpfMLX3nsDbN6mQWGa\noUUDR904Kv7zaVrvoFosnNsWNtQVahuaqtE+sMwnQsWu46ADMD5sblNbkBiR\n9dhoUjRXlZ1JGP/janyM68PUK4TtLQjUySCpoyXVslaKTohItxLthcBbC03s\ncY1YL/3Ld3VbyeJPANbFVFsu5c/9lj7/X+vAoqf8P0o01FGyy0nVhT/Ll3ux\n5sHccUudlbM12RsFyWHGXV0qnlTpJzrYBkaG34Ml7fhplTcDE1n3hTHs3api\nXRIcdXH7o7aggcH+7L9yf5reiwRZSJVPgerJtof5eU90p/U/0qfVw8uTABiV\nZ5iJ\r\n=VGNT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"34bd44726ccda77331fa29afdc1d5ab7ff0879af","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.4d95812f9.0","@material/rtl":"12.0.0-canary.4d95812f9.0","@material/base":"12.0.0-canary.4d95812f9.0","@material/theme":"12.0.0-canary.4d95812f9.0","@material/animation":"12.0.0-canary.4d95812f9.0","@material/typography":"12.0.0-canary.4d95812f9.0","@material/feature-targeting":"12.0.0-canary.4d95812f9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.4d95812f9.0_1626464596059_0.28292802432531516","host":"s3://npm-registry-packages"}},"12.0.0-canary.38d1846cc.0":{"name":"@material/floating-label","version":"12.0.0-canary.38d1846cc.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.38d1846cc.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"17162facdf0f1aebdc9ef495003ab489c0f90f36","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.38d1846cc.0.tgz","fileCount":34,"integrity":"sha512-2nvKGpe/0G491g0koNkqRNYhorjSAr2rZNTEQdbTEWtBj0qBYUbZpLHJgfBKUgEMrg0e+9I1CfVe/5jT9JX5iQ==","signatures":[{"sig":"MEQCIGlvXkSU1M1IMMDO3yQ7kM9hz/Z/sAZDzVWBp9OM9oLkAiA7x9jCcPy3jWJVZeMsDd32HiHUzmY6blAC9mWN9LLarA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg9cd/CRA9TVsSAnZWagAASPwP/1n2ck4TEBL0pBHaJzvW\nqFoKSeNJD7QzvomeAURK/RLyZFvMcYbwQm9rGBLI5JUT8CrNOQYOH/I+Z/HD\n17TnfjjRZymHu0iWxn1hh7oSVm1ybz2st02k/F+xO9JmX+hQh75RVO/b5YcM\ngMmKWaaju59oxfiCwqxQhksPNcelN8FZclCjIRGalh1ujjmA9ATrgZcoPd08\nIiecukfOBNeDhQTxENZGlfPiADpZ5deier8n7lJ8xHEfvpBQVdW/2v1hPUIV\nbBQXMdZZRdUQh3+Cf6/QT5mALoa8/PJiPl+HCHV1AmoGOa8INT6qSs61uwFO\nAoWb265PwJlJ+9mcEpNnlcg46d8Uw+zenGqUSY4PBYg2Nba0MFBT8JWc2CZ/\nwmYuWxpquNgG/wzYuDxxIeiw4uYJIk0MiqVyFSboR+ZrEHC9kobUV5JsTk53\n7Cs0F0u1SOBK6KdblPWvt+u4MkfkO0v+uzXUg8/t0cs4KT6PnRadZKpp8Brl\n/ZZla6uXOxl8XIf2bqnYmyxNm5W3edc7+1TFQqeTX/uROysgVEjwbab4UwjA\n+3mrCAAxMWIsprGLSrnQKmYp9IyEFRlUmluckjtSLrEGEVVGpohJyRAstHRQ\nW1mqFjAIIRzukQuvywJQoEtaZDukiIAml6sZV6fCoHbGZfhkUUbDlCrRRTiP\n36WB\r\n=OBpO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"77a8b2af56ebd184dae02df9198e75b16f4db385","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.38d1846cc.0","@material/rtl":"12.0.0-canary.38d1846cc.0","@material/base":"12.0.0-canary.38d1846cc.0","@material/theme":"12.0.0-canary.38d1846cc.0","@material/animation":"12.0.0-canary.38d1846cc.0","@material/typography":"12.0.0-canary.38d1846cc.0","@material/feature-targeting":"12.0.0-canary.38d1846cc.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.38d1846cc.0_1626720127472_0.7171207812576663","host":"s3://npm-registry-packages"}},"12.0.0-canary.3f691eccf.0":{"name":"@material/floating-label","version":"12.0.0-canary.3f691eccf.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.3f691eccf.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a92e0bdae414f155c3b37a5cce807477b9cfae7d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.3f691eccf.0.tgz","fileCount":34,"integrity":"sha512-hk9RKLWHk5NOGoCz2F/ZjWzH2UwMP+fikV4w/DnwgQz+5ftY1QM7G/X2txH7/SJITaarRpucIj7JuCGDkNXNrA==","signatures":[{"sig":"MEUCIAUczWiSvcxVGUtI2I90CgKbQCaQBaecRDLhR+L51HL7AiEAv0vgRF+mpAQxHdMyFfqkMg1IjP4NiAcl+9Ye5Qg8pg8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg9vUVCRA9TVsSAnZWagAAyXwP/3yH05mS+FK+iqgy6MwF\nQFncu7LmrCL3wKLEM3QmXIP0vInkH+/yWwyh1fnYJtmNDVA4NMTYXAzBGvRR\nfLuVl+aB3M/0SPqHXZcL65p22ZmWUqACqIJr7k5kMKSsSMWHoBNNe1GQ2Jgv\n9nO3OJB4PInGQtW+qxJlSIlxQWQpO3JP+sWeJIqQTD2qpzy8aELD2SZltytS\n5wgvPTqHR39d9y2qZ5ccOrhfCrQANynir3IRI9jYjej+lzS0IcwGZtH79tBc\nTlZLlaTvLNpMDyVfPphGZfqjaSmeMyPCN4sciGQdazYqjDiiR3PX39Gm+VKZ\ngYyWp69VlDVA5mJlA17YdHqTpMuv8n+lUYENu48JnzS5VsdeLvAuRN4LbXYm\njrRpnW012zn48xRqroVbAfFAAJRG5KyGB28S5nScctfYrM1z7kgQ+Zc4lcyf\neMA1GN4uN8XMIY6dLbQ8zVNpsH9sjZ8a54IoE4Of+O1eo8TjBh8oIV/pPc27\nSBSCO0uZkX9CoFpzIJqQ3bGWNJ+OsF96paCfW24V165zfdgyIWzjUZKodVWD\nT5ZhMMSzbJofaxyt+/Zew7Gbd9KfgihVB1/m5pGGGKeTWIziOMxa1PM1FmoZ\nqGZyi81zgHDyEo2msw9NlHieOIzELWxvYzXGqcVHo+qxaE+2qmJwA1CUF5Tn\ne5cG\r\n=oko6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"58271219b83ef8db16c68153037e69345831b4cf","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.3f691eccf.0","@material/rtl":"12.0.0-canary.3f691eccf.0","@material/base":"12.0.0-canary.3f691eccf.0","@material/theme":"12.0.0-canary.3f691eccf.0","@material/animation":"12.0.0-canary.3f691eccf.0","@material/typography":"12.0.0-canary.3f691eccf.0","@material/feature-targeting":"12.0.0-canary.3f691eccf.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.3f691eccf.0_1626797332880_0.8578742166407305","host":"s3://npm-registry-packages"}},"12.0.0-canary.ebb5c73bb.0":{"name":"@material/floating-label","version":"12.0.0-canary.ebb5c73bb.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.ebb5c73bb.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a470d1b8c742ea4eaf756682719d68c6a794e1e9","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.ebb5c73bb.0.tgz","fileCount":34,"integrity":"sha512-glovPnYISajCGi8tQOe73RfMLp6ipWqcqkYrRO4+L3XsUozIQyIIXW/WuLsLanTf4xEtaFaORqzqk6wEuqmeCQ==","signatures":[{"sig":"MEUCIQCZgi5GC8JmsuWSKey3y4e15mThnzF4OfGqODmIyeje/QIgUlENZ9gCwEreqngMQLrbUpaueUK5ZbryShuw15NxIK0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg9wBXCRA9TVsSAnZWagAA2MsP/RUQ4FXrO4YfU2FDFHRc\np9vFcibZPmDINxpgKcG+2v8yEfTq0Nw70aJA66TUW0HEfrVHbMz4QrdN7TyO\n5plTSXDQbGafP8kbQGd/3Xo6w/Cck0TsswBTNq5aUZE3KXZPk84lUu0dX0rO\naZgMEN4Flg06uyZlpfTDS2ebb4ed0hdXDcnI4Ji2LIpckglJlr547WZw3YDe\nCF/yXbZ6WtVbHTrGyLSAxMlk58B+T6bMGuLl98+giakTR3ef+COOaKZQSeLG\n8etCo9VH7ZGYFph2UJ5WSDMqrEzszMbO1bmak/lAMZEypEKtjZP36SAAkJzL\nzjD6OMcznvvlHm74hMm7l9S9OSTjJLlepGjmTGZAK1QUkCCIjJbRfwiWDwnB\nvAriZhC4rZsMK8w3A/N5J4D4dYHFkNzg6cz6hulaKavXAjOu0tCt/I6j+k3C\nd/wmhYfeW1Gw37jrkgbfPCdbDauGG+T4+AhF+q1uk6rO3KJ/Uou/AhEMDswG\n7RFkJpMimcJv/jAvCt5rWu8BYOdjJpYr1+j9sCSYGtte8rpuTS10RjEbZilj\ngFP2UNWZBFL7NwIZCocaeD2aDVaRZjZ7lzZlmA3VxwdZZLnX37fFzxN9Pjd5\n+nMg63qNd1A9yHA1MiDg6EVQM1es1ngL6jkyaeX6UX4hT5m+umId9HW7wCD6\nJxF+\r\n=TWip\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b37a38f7ce62c0d87ebbb4bafa0f1fb02aedb050","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.ebb5c73bb.0","@material/rtl":"12.0.0-canary.ebb5c73bb.0","@material/base":"12.0.0-canary.ebb5c73bb.0","@material/theme":"12.0.0-canary.ebb5c73bb.0","@material/animation":"12.0.0-canary.ebb5c73bb.0","@material/typography":"12.0.0-canary.ebb5c73bb.0","@material/feature-targeting":"12.0.0-canary.ebb5c73bb.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.ebb5c73bb.0_1626800215863_0.4979335111123977","host":"s3://npm-registry-packages"}},"12.0.0-nightly.778a0e8a.0":{"name":"@material/floating-label","version":"12.0.0-nightly.778a0e8a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-nightly.778a0e8a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1f17466bcaa93a1d4effecd2ba2888a64b88e5d3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-nightly.778a0e8a.0.tgz","fileCount":34,"integrity":"sha512-+s69kQHg2inlW8bbYpQ9yMRgt13oRMdkKWkLEemcsEsbC2U0VUYg3pdhM2RlhdBgfVX7ANJLvG7s8ZnEBxBvmw==","signatures":[{"sig":"MEUCID7hFsoJnSYacK8h0EvX2wZk3OEubD3dBGKZsTzaeS+hAiEA8h+12GCSPZEMuNcOR1l/4js1+8EgJoceTrmF0pyR8fA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236415,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg9zqfCRA9TVsSAnZWagAAQcAQAIj6EFyfHoVUnkCiVLPP\n1qM7KaRPvGlA1AsMFnywVFzCZ86oJ5hpAmP+U2k2BLjVQvBcOC+cxb1x4iJg\ny2C6Z3HDuWHq/6/SdfUKOXBFaJIkkeS8cTJXBSmUF5mUh/B31eD+J0v0+DBK\npHOARnOJp18ukzQtR8foh3fGz/T3P+g0yRY/brqM6bbwm2/ZgzaPdoAqo6Rv\nUSjvLiF+zCUxHUc4QQNxdzQS2SxuToeu+Lu+NDiVuuTyvXwG+3AM1pNfDu5e\n1yI3PLJY/xS/RAGMKhDzUqIZ9PeKHeWX6au/gv2JxNQ+TjrsQr+XPmh7JpYq\n3iUN9ObwLOgAUHbtzvM5ID2Wq1NqCtZkqIK5/mhi0xp8ITilcTRyaUSE5BGi\njPli2r3/sxsR11P0UMa0FKlbz5u1uOZlTEnU/DO672SFpSFvTWGYhGji0EP1\nS8DACvCeLo41vXcytLMyDVprAMCo5zxCk9qzF7ZM9FU8sQUKqcU6hGgCR4F1\nfI8hy38NsqvK/bZqibN1trV1D5TiujaLo9Ie+m035Fe7AYOcyGP0ThwZK/th\nvBR03H1UL5Y9/ZFw4tb+qy42rp5hQSs8TNYREVCmTnZXgjfeyVcurZ+07zkx\n1yAC5O2pH6nCvNIaOTKaGu1E1L0NQdW+NxNRyj08HdjhLCvratSUdeWFcfIX\nuDry\r\n=I0Gv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d86234d661f09ad766ffa2f82c69582e585a8fdd","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-nightly.778a0e8a.0","@material/rtl":"12.0.0-nightly.778a0e8a.0","@material/base":"12.0.0-nightly.778a0e8a.0","@material/theme":"12.0.0-nightly.778a0e8a.0","@material/animation":"12.0.0-nightly.778a0e8a.0","@material/typography":"12.0.0-nightly.778a0e8a.0","@material/feature-targeting":"12.0.0-nightly.778a0e8a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-nightly.778a0e8a.0_1626815135117_0.04334900311091783","host":"s3://npm-registry-packages"}},"12.0.0-canary.791311bba.0":{"name":"@material/floating-label","version":"12.0.0-canary.791311bba.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.791311bba.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c21153d9f1e5fbfd6687e9541a2cd3b58dd99c42","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.791311bba.0.tgz","fileCount":34,"integrity":"sha512-SvA8mTBfZ+Xd1o0KMz3RJMMhxzl29YL6jzIZCSNVD5nt71c13BfT/Ao3oW3KJx4RGH8R76ajyFvxNkkR9YQtGg==","signatures":[{"sig":"MEUCIHTxOXpCaJmqQ1yIWKFBABkP3HMgg0pprs1zOAYYm/csAiEAvKx7zLTyYjjdJ5h/be+dvF35WOyJKWkLPK/wutuoJqo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg90ksCRA9TVsSAnZWagAAnOYP/RlvouksnaT3CRI1vWRC\nYb5ABlc8dj1VnJMDIPJwN13T0zYKTO/fNQLGewdTa0ehmWXwLM1sGd9U4qCw\n7QnvEewqED762T/fRaCOULTYiCP39hjfDO8IT3o9kJNRlfulhwjG8e2wLghB\nowgzpx09NS20TfSDZbVbeHVzBt6L6EkIduI+TOHvJ7YQjjOnOARaSp8CTwQb\nfvgdML+46KSXhVVQ8V1qCIAoAJ9Pqub1awNs6qTkf/+fPeMSJMcPUqTmZFNC\nQFh9nzC9dMfsZczwY9d/2RxKsHszmOEuVfrUki1aJ4Ko8P1QFlNBppE1In9S\n8CuakWb4MIx43fqmIAHsSZ7YbveRvipl0P8kXqxmIfSbAJhe3tc+fTXKVIct\ntKQU0STZoyEK7aOWFmc9YymIZxnP/r/pIc2TbI9IDyMnxk10ZpMSC9XLrmqV\nEZd8kqutwL2UJDpoHfM5KsLFipr/86TVn1u3eGauNnXCKvhX/AcLCcz7h9uR\n7Pn9Ycss9P+ZQo67+zPxduMlx6LwG7pimXS7pXdvmQmWUnE5BE0ojtzqYIJo\nYrNEw6Awe7lXUMdtRts0ovYdKfvlT3EWOTZqHdgSgRe/scEWrGH3c6lp2Hf1\nSfx9nX4Ft4vWPyZTQX03NE50dSRdVK//c+ramhUCez8dUYcmnbMhO1AZpnN3\nXl/A\r\n=83nz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b915b82632a30b60ae4dca5d12fc23d5a5df4d4a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.791311bba.0","@material/rtl":"12.0.0-canary.791311bba.0","@material/base":"12.0.0-canary.791311bba.0","@material/theme":"12.0.0-canary.791311bba.0","@material/animation":"12.0.0-canary.791311bba.0","@material/typography":"12.0.0-canary.791311bba.0","@material/feature-targeting":"12.0.0-canary.791311bba.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.791311bba.0_1626818860372_0.38271968773554343","host":"s3://npm-registry-packages"}},"12.0.0-canary.85e9a6ac3.0":{"name":"@material/floating-label","version":"12.0.0-canary.85e9a6ac3.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.85e9a6ac3.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ee45e6623e0e453d8f3f61a01934510f098e3b5b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.85e9a6ac3.0.tgz","fileCount":34,"integrity":"sha512-qWmSZwy0yhn2sSvuBxaeMyOVK4WpLX+ZWZjwZ1sJiPD7ZkEJ+YD2ELzZoyEUAvT2pWCQjlfG7GySeA6MoNdxHQ==","signatures":[{"sig":"MEQCIEOOBgPDCmxpRAMxJjv7RG3KZo7DoPv83+31s6Q0Vj6nAiBIVurP5P3+QdUqQsdv4QK6sb6DGYqzle6m2jsETyqSUg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg+D7jCRA9TVsSAnZWagAAxtIP/2wmufabaU2++PnPKYk3\nyqfRt82XnkkO5XwM/XWQHAjw/OmzxdMLx85+AJVJAc4SVK0tRJTIE5MAymZ1\ndNzdmWmvBcYuc22IOg+wT6eY7gRCRcGumsUOuRLytKzo/ERIQqsjGsr8Bi7C\nhZq5HJiqykggcYz9D12XWj2Ejns/nKwYGlcyA63tMFy9bkg/qI/M3/syJ+IO\npEgEtXlbe7NTsphbCDtN7YEZyrBcbCoZdBoXGeS3TAS7UlcRPxRHvQqJXiM/\nlczZeVPqtDBIXSWsYqi0Cpg99IP2RNTBQ3eTZHTMNY+GP6TrDuKCowkynlke\nYtGJpngBUKD/lrIfA31v9sQZzt0G1WkskjcNgV/dLGtwqngMDcGMm7ZFNFOc\nbJt8lDJEnr0JhjS1aCDAQhwXRy6Yuyk1fZov2YrTGNvHNPHA/n3xMYpkT45m\nXxPC/ACtI0NHX+m7OKAZzPKIfF6pU3OuFgu8ToF1c+DC8RMF2yM9cNB4kzQ/\nGOkQn92jSkSQXW7sGajKaAXlpcgz1KvL4NJJXZ3DR1ACFuuUkVJxBT5aDYdY\n5s/PRCS5h6km75b0hx6KN/GRND4xsjgxW/De1s+TMmM6cSgA/044XmLo+1Qz\nHm4wqoq67/RjyDhE6XNJT0L9WrHZXI8lUs8GUK6G1tnoghN0oo0l2klgT1F6\nIyU8\r\n=eIkv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"651354325ad21ac082f791ec2abb0aa32b3ba936","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.85e9a6ac3.0","@material/rtl":"12.0.0-canary.85e9a6ac3.0","@material/base":"12.0.0-canary.85e9a6ac3.0","@material/theme":"12.0.0-canary.85e9a6ac3.0","@material/animation":"12.0.0-canary.85e9a6ac3.0","@material/typography":"12.0.0-canary.85e9a6ac3.0","@material/feature-targeting":"12.0.0-canary.85e9a6ac3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.85e9a6ac3.0_1626881763067_0.22421244629827197","host":"s3://npm-registry-packages"}},"12.0.0-canary.6b0442278.0":{"name":"@material/floating-label","version":"12.0.0-canary.6b0442278.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.6b0442278.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"accde8bf8c82a5a7360c3d378fe79dcc89034c5d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.6b0442278.0.tgz","fileCount":34,"integrity":"sha512-gQUFSKw/zi+oI5h1SFpOTaTPGW9kqcJR6jRlSFd3/ieZ24GFaJc0FlJPU4kGsFgB2xuaIh0dGb2+gWrXDgBFIA==","signatures":[{"sig":"MEYCIQCtiAapzVyND4fuyh9GyMGWNwC/p2DXvQxk0ruCq/SGhwIhAKsZUevt8WYxCeoNyPZ9B5l0Io7mSNv5kg4qXbQ/uVl7","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg+GxXCRA9TVsSAnZWagAAujUQAIrKpoA+ItjlH8A8rDdp\nFKg97tXItUHvnaVTY8tVhzn0u/gtN8dDVbaNRy0+YNFOLHrL1f+UwJG+fYJx\nRvLZCAdE2UuoCoyEOIezR5uRHYCtQHrP/cKrusvlYKX4VDrOCp9V0lewn4j5\nTJVBdxvwrCihjRLtgphkdVWpvZFqxAfoXlDK3thgw4ckUfXuT94hLCIVDZkM\nCs6C/IGMoG3/rhfD5pQdcqncQ2xwSfajkWPfMjaz766U4BcGxaK7d61VTV0n\n2pdO399jmmxXxVJLp1YYDfUsf/tb6Gq7XCC8sr6MrNybMjb7vSxbjq8i3De6\nWxmm3snA91uZSvGUSNrjD5jOv95bOqfStqNhkSOmpN4MRRGDMw1NXcrhSB9m\nbu4w27hNmJwLiBNCnnWctz64azegKOmlwIfEhcUMhdyxLhEmtPMU62ezzRiy\nCwXIm8PvgsZ+NGwnpD2jMlSsciZq04v0aNwTatIuXD3T0l0pvL//HSTLyXIw\n+OSelL1dSCCqL/BNuk2olnPOnTazZkLXSP9Q68ySRp6tc7WUFjbNT5VxFovh\nB2XWDPszadv6vRDDfoNY3nFhbwfem6VJh81MKpdiTY2+Ov/b8UEmpgzkr7AR\n8yLLX+MtH8D2fcqAF1JXhKlus0/GSabhQvpgmRDIGjx+Ud5mm9IIn68H3WVP\nYSTA\r\n=qaVC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"fefa69e22f9083ed30aa4ea05114191682b45a14","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.6b0442278.0","@material/rtl":"12.0.0-canary.6b0442278.0","@material/base":"12.0.0-canary.6b0442278.0","@material/theme":"12.0.0-canary.6b0442278.0","@material/animation":"12.0.0-canary.6b0442278.0","@material/typography":"12.0.0-canary.6b0442278.0","@material/feature-targeting":"12.0.0-canary.6b0442278.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.6b0442278.0_1626893399070_0.03034008525157228","host":"s3://npm-registry-packages"}},"12.0.0-canary.5f00e454a.0":{"name":"@material/floating-label","version":"12.0.0-canary.5f00e454a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.5f00e454a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b927d7f5eb9ea4193c5722027e5900a8780bd08c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.5f00e454a.0.tgz","fileCount":34,"integrity":"sha512-KODsGxojWRiaBNIsVsFuI2Ih3AnHecY3xtvvqfbmdeqrcV2tfX66rNMerKLWWMIL+Jg4MqVHYfB3nTbdYK3Yxg==","signatures":[{"sig":"MEUCIBKKbk6u1aLhVuxSTTotN7Igqsrtf4/iiprWuG0V2P77AiEA3KXAHrwOkm8u733I7ITLCQmcLQqWzXBYFQpWpBIcz9Q=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236623,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg+aWXCRA9TVsSAnZWagAA5QYP/0aLTPf1BMFaEPE3cOQV\nI+Pg8KeKXpXpL1ua/lE3egl+5uxAlvmNS+9/4IKsvu4AzEMaoyh+cC3KeWnB\nI1XFw441QZmEmv3ij57Yd9EtYlny+ANM4QwwXhLh5x2uL7oJ+cZ75B8+W4MW\nExPuuDyCwBmSMaUcB9ivcyFGQsDlX/Oos+WSymVHeQ/7dMZh6+Jnf0mg5eME\nSEOW4njwqb7SlR1laYmkMbgsQScCMpFCjnEsvnYAjCzLnEdTPA6mSMsOK/bj\n+TtpmuUoApRR1grK4mxJbpTY8fd97jxBHJtaz9kS/PYRz8CFA0A0aotD86nC\nDdbvrJGTaXrSTzy1Yf7tFcX5XxK5HvJH5lyIQ9EhByEFmDwhG1Qo5fBsv5Th\nd6r9XfCBQ4VvbqslGkL/baHEw7cJIPGZoPhM3vr1LjG+JtnLuZApBUhdA4Y2\nXe3dGwd/dbTeAprYrLILR2eJyiqOF56fn3Uvm2GSwi7LYelDynzzxELLYc0s\n0n11rFDEVjzC4q5iD8QcVBu1oN3o29uFq9MBJ+UvOMH7mrl0W4FumdP2uats\n/FvsYSAAZbPGRzm+93LP1O/B9ud/wEZBH0xDmTuZZjPAs/abJDen7yX772bo\nuCMXAWJOU0+CzJs45aT3kLc1QwJ2XzpNHhl8dOryyBG3avUgghC7y87Kp4oX\nUB65\r\n=94vC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b9c8a5899d6bb5475fc5fb2c76a300d4a28f0ffe","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.5f00e454a.0","@material/rtl":"12.0.0-canary.5f00e454a.0","@material/base":"12.0.0-canary.5f00e454a.0","@material/theme":"12.0.0-canary.5f00e454a.0","@material/animation":"12.0.0-canary.5f00e454a.0","@material/typography":"12.0.0-canary.5f00e454a.0","@material/feature-targeting":"12.0.0-canary.5f00e454a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.5f00e454a.0_1626973591536_0.5132013017623602","host":"s3://npm-registry-packages"}},"12.0.0-canary.90e08fc6b.0":{"name":"@material/floating-label","version":"12.0.0-canary.90e08fc6b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.90e08fc6b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"37b1c2ecef1313572f00901beb5a724e5b590876","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.90e08fc6b.0.tgz","fileCount":34,"integrity":"sha512-uhwcW4dLbZlmqiVoG1WDbc5TSNxs+AqKrFqPUOBkWajkWkMOFO09G42pw7lSaBISyNri4aaGl1y3EPhRc7252A==","signatures":[{"sig":"MEQCIGiSplQgOz3YtvNQbs3vuPwZh2ER+hwdYeMKkZFR5EPqAiBtWhzLkeLcj/6AL3bYR5jbrvS70bce9m4NQ5OtiI+bFw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236623,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg+gFyCRA9TVsSAnZWagAAy1gQAJG5dQbr1A9tP7chLxiR\n2RzSlGEqoEtyIyFe5TLYg5yQLpuRsT+w/hJoRAlDY0fnKwcWBrzEsF/Pcwum\nPlBGwqZD5pPEugXqV7lJOCKYW1A7Qve/Jy/zdWQVkAzMQZasWTssZCPOuwUO\n2Fjp/JnQ75IWGHctdI1nr8lpOpV3YxGI8z94IJ9XX0on+9/ibWzNAUcl27x7\nmIWtHlT+pEKI+J+DpZOxHxQZyZN17Uo6R1p+83GF28wK4oqcLAeIaDEjAqZs\nyQyhQnMxW0Hm7pvFltHActLK5oW9OVz/Rk7nYipRKZCxwDmjGpmrP1KtpIRw\nz0k8JGPJr5h39cFMFH+fMk0TjRTJuGCrjYl3kv/OJ8iM+OCZDfUWW4K2hO6C\nNU3CG7atCU6cnljOltTwQKogG7W6EvKkp9DC56DDUEn1NL4netreLbMb2nF7\n+Ebgsx3PCZAVSI93VWS1ZciyE/UzlJjlQXWoij08YstKiZq3KnP4fmlEJlSf\nk4sZiJ8bxxK82aKDAx9cttCy+/xSRWFVVRQ3ffh5mEsKqISQO4pXQl8vrJm2\nEUP6B8RDb9LeWlULt96slyGHvJqAvOA5mwShdK7UtNOTP1gLUPX2VWUC8VJl\nOLMgOwQSQQwEu5XafvvGEDB5bcwF6IWD7On5vWrSpUoShSeDn3hPaP2uEoBE\n45Kf\r\n=smWr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"267e307e557cdce4bda13e55c34cb0d1aa0d0b8f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.90e08fc6b.0","@material/rtl":"12.0.0-canary.90e08fc6b.0","@material/base":"12.0.0-canary.90e08fc6b.0","@material/theme":"12.0.0-canary.90e08fc6b.0","@material/animation":"12.0.0-canary.90e08fc6b.0","@material/typography":"12.0.0-canary.90e08fc6b.0","@material/feature-targeting":"12.0.0-canary.90e08fc6b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.90e08fc6b.0_1626997106421_0.9533564824358041","host":"s3://npm-registry-packages"}},"12.0.0-canary.cf5b9eb86.0":{"name":"@material/floating-label","version":"12.0.0-canary.cf5b9eb86.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.cf5b9eb86.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9c9cb6cf49d8ba8bab882279d6d00112bf723773","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.cf5b9eb86.0.tgz","fileCount":34,"integrity":"sha512-SBiIvmxFm3DTZYrRHh/SU2JPTuWS5u15khMCxJkCJdkLRsi+mTKmfvJTdnT+j6R7Zgy3vfydHW57JAfn6SbcXg==","signatures":[{"sig":"MEYCIQD5VZjJDbxuz1rvTvps6C5pNz3bazX6hQ+rOkxXhUvUggIhAIE8frqGv5kizvfIbcmeCJZzvMeBzhQO35k3VO6yxpsG","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236623,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg+waFCRA9TVsSAnZWagAA/58P/2UPBgvHQztOFFEnZddb\nsV6o+P/RfuJP9f0ynFu0cD1V9SjNlrNWN/5VBvHfHCuTUEbKbjlFFhI6cB1Q\n1eottamoMNMonnz+P37A1CnLjaCxAhggwzs6UfqEdvlUuQyGbWM2PWpo6Dhn\nekf1etuM/UIXj5D37rR+wphUI9HoNgG/I0UptwZ/cK80RyDGP/v5pi7s1K65\nbVV160pA2og+6LuS3hmsG8CLrWNgUWU0Z3F+VQ+tfqvW3xs2ZEKXF24EtdvI\nyz/kXh/A++szy7JxxLVmRGCdlrtzRemxXJMeJ6EIr4W83uuzB4JprWpfprgg\nEts0r90E9DcDGYZR6Co87MByvtkBIhCMum7GGg6trr+iUJ926vt4o9JUEp7r\nK32hRKucMZbKDCvOK98JciCPVSjbqOtO39vVjxxrY1sWXyX4dFE34LKTAA7l\neQkzso5aBNDbQXW93IVUdxuNgFHrIz8yM2siKCkSmHFbDUj+64lGv5AmYU4+\nKrAWRO9vEWsbP2rIUUp9Dlg9x07XtqfBhA0e04LmcwX31T0fWkwxOoV+6dlJ\no1As8NMP0l5394OdnwYEhJWUtNaJKVFkSWxD+Cvi7TNZpp2sC8umIWN/on2t\nhu0vmUSBPwDtAjXcg+g8mTxEDufCdI4qfq0eyXDoZZa7Z8X3P6joWcXSbYKe\nj3YZ\r\n=3rrJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8447b42cdc88335a4d5a37bb048f5babc1c5bc82","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.cf5b9eb86.0","@material/rtl":"12.0.0-canary.cf5b9eb86.0","@material/base":"12.0.0-canary.cf5b9eb86.0","@material/theme":"12.0.0-canary.cf5b9eb86.0","@material/animation":"12.0.0-canary.cf5b9eb86.0","@material/typography":"12.0.0-canary.cf5b9eb86.0","@material/feature-targeting":"12.0.0-canary.cf5b9eb86.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.cf5b9eb86.0_1627063941432_0.4280835950158697","host":"s3://npm-registry-packages"}},"12.0.0-canary.3f36ac75c.0":{"name":"@material/floating-label","version":"12.0.0-canary.3f36ac75c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.3f36ac75c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ded3d33e66d55841a165f974cb4ce85fba002c89","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.3f36ac75c.0.tgz","fileCount":34,"integrity":"sha512-U9m41ZGiIImXIiMnCirW5o/GtUt6Klvzw91MGmc730wyoNkDImJY7V8TWNfGEoWyR+FM5ndvX6693ti1QqLilg==","signatures":[{"sig":"MEUCIBf7X6KM0JL3D/Zkua1lyVLxt5xPxzECDktZHrKCTAvbAiEAhdoiJAAP4SWSyCKgsIbs9Z2NAEV/iAbPj4e6oN4TVJ4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236623,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg+ws1CRA9TVsSAnZWagAAJd8QAIg7fV9lXPFdXWb9B4Rk\nwe5LbY9dNUf+EIasTPi7CCZfydt5tAjRPGyPZB/G7fiDkX0ij5j3yOAWjGGe\nzWnjHwVDuc8xMxlzCSqv5anOXCKd19Yll1FSTv2yxjuLzLUJu0TZ4ceoACCx\nOukUVLLC9bb19WgJKL4ugXaoDKtZKpS12jQ29RHjF/mlmx4Bw/2nmI3NetRH\nXwFf6bMjgWk29mtikeeIZts8em9C0Aro56pHrd/J7DZKTyfvWAwz3OmK6E2p\nit6BlSuSlof3PsDhx2/N5Cy8944dJ6rwFrP3hrXyXsIIDX7MkrhLri66ij/F\n/eQ8pSf328B/4M+9skss4csi2+xVbi5N0uifwmnjPBd1ZeoWRKIwUAJCtNn+\nvSV4uinoKA9V2gQC469jO921VSkNndh75ndagAvlI7VUjsyGDB1TmDcB0Yq2\nkI1GhnE4A1XE39KOmC01uQgYyk5C6HDnEJ9d4aNTPVJoXjdK2SbixCyh0SSh\nf0T0qQ8jW+P/EUhHSMohH9IW3gCbp0N+ySn98k1zr0GqOlZZ8UOR12SDpLui\nVTUJXIyYvsbj6LcBwOdcculLRJOZhOpEtWZ6iV0KrHN63gwd1sq16T/0G7HT\nHDx3zAyyhN7fvw9PIRV9vrecD5naDKrYcpwguPL5kssdi83SO5HiJZDDVUsm\nMJSo\r\n=yTwM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b0f70c5fff2a6f188b24beae7ecdf708b5bbdcb4","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.3f36ac75c.0","@material/rtl":"12.0.0-canary.3f36ac75c.0","@material/base":"12.0.0-canary.3f36ac75c.0","@material/theme":"12.0.0-canary.3f36ac75c.0","@material/animation":"12.0.0-canary.3f36ac75c.0","@material/typography":"12.0.0-canary.3f36ac75c.0","@material/feature-targeting":"12.0.0-canary.3f36ac75c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.3f36ac75c.0_1627065141465_0.0013625658779803373","host":"s3://npm-registry-packages"}},"12.0.0-canary.ea1e1b850.0":{"name":"@material/floating-label","version":"12.0.0-canary.ea1e1b850.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.ea1e1b850.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e244fe5c37a3aeaa1321bfe8dbae59080cb00bab","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.ea1e1b850.0.tgz","fileCount":34,"integrity":"sha512-Cm2kGtjM8Y0pTynGqV7WMF74DINAZIleYwiX43joZTeTSMaFuNt0D9u8xWNkTw90S01Ubkiw5SeM6OroaIWFNg==","signatures":[{"sig":"MEUCIQDIET6I8gcUOc/mOpPJcGKDQC30MHdVRWWCBESwHVwX+AIgMkEjtPbBV9QvkiFKHSOgREBdjTC0TXCeazKmymjw+vE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236623,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg/H5aCRA9TVsSAnZWagAAjkgP/A8ciotRnk/hTf1eTmQt\n41YWXuf5pcrrhH84xUNcwMwNIqHKeFQyrGT7D1U8OblLYAGqNhd7zeaFwrW1\nNedmiShaUUEnak4WGgbuufXmhMVnCCvraTrzXhOAzuFQTBcqo6JFgqTpyO7w\n/zMs4zXvh3HtEZqtJQJYIXiX6SuBVa8F8seAAvoGQPLpwIEOHG4D/XJcHoor\nkNmgKbBri57SDcIX45QGknLie6N1x+8f05REuTbQ1m9aQjOHJGzX4LLkdL4q\nXdSr/ik6eGSupCjddWJ6pZ09FfSCVoNRjor9z9PVfFFSEF8F+/A0Kj9Bf0PJ\nPKiCIJsLxMRdasY9silervPWYw5jYsTEmVGwA0bsCOmQQv0S3j8rhoq4CU3m\nt1mjzALPceK7/sS1WI0Zsz9mBmuszEUlgNXJqV2gUhPgleS+JckLk/p/W+I+\nQZeJRDJR7EOuCocqU8xI96hk+2tGvQbL24trh5swOXYvewb6adPiSoXCuRJP\nYY49ZjMNU8OMa7aCVjMzJLqUFjyt+MAj5RxQt3cXIkgIiXLE7a7zdiT7Rd0E\ndKkqHMlcYzYB4CUJudGAyBdDq5T2tlm3kKFBfhrA5C3AzsM3T09v/3ErZp2X\n6PBOzt4ZKiiTaJJd74Nf1QIQTSNoEEofKQs8OP7KjdUQdFCd8d4fTBCWgqA9\nJ5HI\r\n=0jmr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7c296c6f9b2c20eb32b0501c98b6415bd193dc46","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.ea1e1b850.0","@material/rtl":"12.0.0-canary.ea1e1b850.0","@material/base":"12.0.0-canary.ea1e1b850.0","@material/theme":"12.0.0-canary.ea1e1b850.0","@material/animation":"12.0.0-canary.ea1e1b850.0","@material/typography":"12.0.0-canary.ea1e1b850.0","@material/feature-targeting":"12.0.0-canary.ea1e1b850.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.ea1e1b850.0_1627160154827_0.2808191924659973","host":"s3://npm-registry-packages"}},"12.0.0-canary.22f390c43.0":{"name":"@material/floating-label","version":"12.0.0-canary.22f390c43.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0-canary.22f390c43.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6efce8d81be38e1cf1375565dea16204a2f9f0b6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0-canary.22f390c43.0.tgz","fileCount":34,"integrity":"sha512-L7zx+2pdzeBPNDsRL5Na0tNJ9e1+EMhtUuluOS7UqMoo2i2BFH/9lvQ6iL5Q2S+5YuuaU9CPh370EM1VHL6YRg==","signatures":[{"sig":"MEYCIQCWnIfWNmHVOP33SOOalWZH++wTOe55uvZ95HBdRiSQMgIhAPXdDNeERi6Imazd9WIHRiOrU7SX1P+tWX+Mh1Fuyvtg","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236623,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhAFeyCRA9TVsSAnZWagAAlrsP/0X/bDQE7Lank58I5KJ3\n9PBFyrkc7ErLdVqpamKYuzl4BG9v+DcFvVi7pbdUDUWnmLPsVRFQQAcSj1B2\nFwnLugxBG5hMBi0EduMaJm7aM9tspPqoRb+L/E0Hs3hJWTfwo4uMStK8qwBv\n0/fwpg4wlSni5WgZN4EDtAThnpNI9ZZ5Fg0cvB2Ss/9Pwe2qmZW/+I4c1LFs\nHXjCOLWaCnXlJYgCHai41rHjccWm6yugUT2mPnWx5e77m4XfVUvqRz63vS/9\n37LEnFDtf+XnwL64K/7XuH4o6rJ1ajdtMg4VUC1yXVaarkQINcS8BG7/sYAp\nGsTi5QACi7i0+AfYE3PpIXoLULmKqQd1NtwawkfCLchqZkn7CYDP7wE3mlUf\nBSil30aonlRmNcMcP4u9Yp7W49GnfB9fB1vM38BvWC71c6aCMkX+p9HhUO9R\nYPhLOXIg9vBH+GngWZR/Zgx2ljOU751KJ9QtGv8qs8T0zekpaWx1bqaqLZ6n\nW236iWLoFR50HmrqwpK2dw+0eH5TrdYsuog1t8/dnU1F3tgj+ukvzOpIeIfl\nq7aDrkNqbnxSynwqRz6EafWunP0dcnmxJj+SgABoKY7rkEHbVIDUYpsF6gOO\nLY8W5EZ7pHyGegN2Jo1yvrdopzJV7eKy3E1MvXf2YTTKkaOOfiH+dEOtB0ng\n08Su\r\n=czbb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2eba31ea1c3ae3c0e3497f3dae6cde368675a496","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"12.0.0-canary.22f390c43.0","@material/rtl":"12.0.0-canary.22f390c43.0","@material/base":"12.0.0-canary.22f390c43.0","@material/theme":"12.0.0-canary.22f390c43.0","@material/animation":"12.0.0-canary.22f390c43.0","@material/typography":"12.0.0-canary.22f390c43.0","@material/feature-targeting":"12.0.0-canary.22f390c43.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0-canary.22f390c43.0_1627412401597_0.6205739268043013","host":"s3://npm-registry-packages"}},"12.0.0":{"name":"@material/floating-label","version":"12.0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@12.0.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7f89b4b3d866df301f316c9695debf426d5347b9","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-12.0.0.tgz","fileCount":33,"integrity":"sha512-bOJNxSP8Jd/AJtrMC+1R6azjDWAUsA+4DpYj0TFEKM8s7LS4vulETs+9PoJh++K68haWpkb+Qks1Pa8Vb1F+Vw==","signatures":[{"sig":"MEUCIQCp/EB6SAG+Upz7OgL3goAXguqeQlxG4w9NzkXg/655dwIgcZyyJigKgGPhQrSNZ8yqTT53432SujxjyZ4FdIYiBNU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236093,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhAGNlCRA9TVsSAnZWagAA1GMP/2uVu2ZWfI+x9mRlOa21\nbCjrnJr4Lx8XWj2CjqbyQDhQ8bOYKFMrXsPYj8nl9GAZK4zMfgaLCI2PTZ/f\ntYuHoVUsmo9v75NKanB9dNcEFpdbbFSk+qD82+RcGWJQAVGzCKVAXsNlHafS\n/k/1FCFFwaMGK9IP8DYJz9mpEengbj61Wg+bY0ghOWM5vXZUn4MC9SIbhPWz\n3GxxfMTmrFQgzRhK32Djj4anFj9HOfXtBFZopqXmxCX7i0yGv/h7Q2kruPqf\nCozczcNX0v2lMarOd7SO0BSew6Sen9mfzqlAg9FyukELJBTVLCwiPG2cQd1S\nuOlU1EizQV8VIxV71Ok/78+AJO2VOnAYM0N6LC62FCTViEGHV1DpJwk7/kL0\nK9ylJbiZeRDNw2TXglDo72uMF7UX8SF93UhTBZWpdquN/7a2MpR4weXMH/ky\n+5JBzMKjPJUhSbNx9IyrN/ULa8ajp74u6JDCM0Bwg+WrD4K5NEPs/DHDzbE1\n8empDFuD8/iWFPkJlaG2ii2fiUoLq3zg1Ez95a7SFUDykT0wQ6QEaA4+XjcL\nAAh/0/koGGXF1wUky536xQ7HYDJRlO9bmw/iBK2W+Zw0//522p3QYNlMooR9\nVeXnb69nrWkRAJtVdXoXaNDUtdoqelSMf+ymBc//OLaUyVpq4Tuj6enM3t7f\nBf13\r\n=BPW7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","gitHead":"ae85f7eba0d72f4fa5f3e8669cd316336b3e6828","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"^12.0.0","@material/rtl":"^12.0.0","@material/base":"^12.0.0","@material/theme":"^12.0.0","@material/animation":"^12.0.0","@material/typography":"^12.0.0","@material/feature-targeting":"^12.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/floating-label_12.0.0_1627415397313_0.29414798368276074","host":"s3://npm-registry-packages"}},"13.0.0-canary.ae85f7eba.0":{"name":"@material/floating-label","version":"13.0.0-canary.ae85f7eba.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.ae85f7eba.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1963fb01efa7dfdc9f2e6c1f4b54aedc64106262","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.ae85f7eba.0.tgz","fileCount":34,"integrity":"sha512-+HvWRu/2LasM83b+quRouXmrPI2BVufveH05xjPCg18MO8lYZGSn0Sl0VmqC9msHu24Sad0bUc+s63T4v6QVvA==","signatures":[{"sig":"MEYCIQCv+mr0AOoeCm0DgXXywcBm14vAwBaDzciRFno2d3at5AIhAPN/jQ1rmXiGqwibytpFwKHGA3GRAxReuE5VVSeGmEbA","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236623,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhAGPKCRA9TVsSAnZWagAALacQAIU/O1QDS72MhijjiR18\nQIQo5YuC1fi4jxIICZSHpBfsgYUBsYaj6RmK/mg0Z8qpkmwBuxOUe88cOXup\nV/tEu39EgqHw0L3YqwZJ0in96aawI3bVTnu5a2TaTokD+PDtmdqnUiEyro8h\nkUUVGOMi/KhIQlt9bPC+BCnDAZH/UsUnHdZ7GyFOIL2jnT+MV6phZZ7yFbrm\nDjeuo1m5YvqzRgRgIJiXTxfnrXlUQYYymA4wxJtLNTM8EM74q819BB1kZ3Ve\nUfTps8U2ip//HMOADI498+nyH3SbCLCV/I0+j0C+DsUpWdXjQTDqLBOqtndb\nYVg74OBfJopfdXKbLsup+325UYsEfomHQ7Sowe0V1uKCllr3eX823PUunYQs\nJkafeiNntv/PUKptia0ngxETYOQXu1MC5HicP4bd+1WG8RCcu+fldFtG9wyT\n5qsjZ90ucETNkLEeqX86Oc8QwrTqoRMGimvh/GJ8rnPmLuddXPQW6AyR2RPt\nyWoWsZ2YCf/dyYCvxjvNmBwbTARA+krpAEyyygMBHLSVB4SiNFlX7uv7Tovk\nyRjmKGS3YIaB2UuEStcTZNPgwNnlvJcax2KXIwVZuu2idoDUFuWUS2eVZnKZ\nerflYmkGwVDY7JNUjOplr92VltEUz+NPo9EZ9e6PnqUDHnsok175Y3adOyTs\nYR5e\r\n=w0Iw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"087c731cd84ebd8c578510bd4c8dfb5d11e8c574","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.ae85f7eba.0","@material/rtl":"13.0.0-canary.ae85f7eba.0","@material/base":"13.0.0-canary.ae85f7eba.0","@material/theme":"13.0.0-canary.ae85f7eba.0","@material/animation":"13.0.0-canary.ae85f7eba.0","@material/typography":"13.0.0-canary.ae85f7eba.0","@material/feature-targeting":"13.0.0-canary.ae85f7eba.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.ae85f7eba.0_1627415498445_0.49558432940093256","host":"s3://npm-registry-packages"}},"13.0.0-canary.5981207f7.0":{"name":"@material/floating-label","version":"13.0.0-canary.5981207f7.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.5981207f7.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"19a04841e2068b0996fb2946fdbdf349aa2946c9","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.5981207f7.0.tgz","fileCount":34,"integrity":"sha512-v9dzNVfVnrRnXMauH4NFNt0SDtZ2RkhQFVeA4hV/hWHmNkopn8HOpQjH6DwaEwFIEahMcQ8pjcf0ie5ffpAaXg==","signatures":[{"sig":"MEQCIDVG+oIjE4jJsNvPzMfJ/tMoYDL8OAimBliUTJilbBAEAiACadXgpWtEBHNJ4d6dZrI/NMelmJL3gmgrmN8bvQwZYQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236623,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhAJQ6CRA9TVsSAnZWagAAyqsP/RrxgfmAdfiGLV1cP8tB\n17kEh/EAguV1A8kOk7Mwzg+yTs2un00ELPw9A4Hw+LZVLopFGEK6Vl5llj+p\ncdM8wg22d8Lw/0RwW9HvBMqv5shVALlYhJ8ImRmWG3t2XpgR9BGycWCiBwmY\nM7BjfOI0IorPs3d0odv5ZfWnJ+cRnZT3btFCgLtEs4n5oogPvUZT8lLVZIPE\nZ5rKoL4lgRkrK/w3NfQ63kossGPvE+8IecfDjjku8wU4L87xyH658yCVtoYM\nTayePhyb4VMThSHMrOkPAZBnJYvgh0utBBmeKB+hC0GtpQ8gyUJyWBRNmE7L\nCGY6CtUVz9WrzCYA1Gctcjm4t5H2a76vXoxCTR23erBjyz6t5YjwqPzd4l/5\nS0fMn3HAAx3GtUIYVvjUDHGy6/L6LHZTDxoGaVMec9CYEur3QH7oodEthNLJ\nymNZ3ar8qC06MmK+jraxuXQJiQr138tTW6oCu/JOPFNit3vZ3s8oczSKaBQ0\nqLHBQCLQwKlsoWHdE6fDDAVeJRRjgFt7dHih1J2Lhl04T/dLwoYaqVDcBPVC\nHLgXcBRiBj1OATCiIqgZ3qwpbZmnA8aaqZ1NcTgYNnusKMb/b4933+1ZPQDy\nu6sTDbLUhqDQcn3V5ZjbLpcIZgbqpxj9RyEOgHy23pRu3TEZnWIjoPeKEcs4\npZFH\r\n=XGMs\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8a8b67c19b2a9f80923dd162098b373bbf34b58e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.5981207f7.0","@material/rtl":"13.0.0-canary.5981207f7.0","@material/base":"13.0.0-canary.5981207f7.0","@material/theme":"13.0.0-canary.5981207f7.0","@material/animation":"13.0.0-canary.5981207f7.0","@material/typography":"13.0.0-canary.5981207f7.0","@material/feature-targeting":"13.0.0-canary.5981207f7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.5981207f7.0_1627427898284_0.32062870779512775","host":"s3://npm-registry-packages"}},"13.0.0-canary.83bdd0222.0":{"name":"@material/floating-label","version":"13.0.0-canary.83bdd0222.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.83bdd0222.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c577b4d42713750b2fe163f472cd6bc000659310","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.83bdd0222.0.tgz","fileCount":34,"integrity":"sha512-EDBwLMXwuRdLRXt6pPAIe59sIzqWg0w1fBD5eJoGa4XD3/iAC+ZexeNxwpvimXPV6mWz/n5Loy0IDZm4z35F6A==","signatures":[{"sig":"MEUCIB6Lu18BeMKsPLzfhJLSnmOqTMYmx9fPqoGOhTSByxb+AiEAhXg3DXixbZPSWAHdKJg1nl+7Fcgyfy5H7kGiUjJFZOg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236623,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhAZMlCRA9TVsSAnZWagAAkWoP/0/fcyNXbd9Chqah37Fd\nL/Yv8MZegm02nKiFpk5sj9p5dJugbPSP6+bSNPJgznYbjZCDeZFITnyQ225Z\n2Upfi4U3H6QAXaKoMnXeGp8e6pTHIxIUthPio/7p8WvKEYnDxM33ekflw2Vt\ntiQI3Mnq4fmoybPNyhwipiJBvEvgLpclcw1rWU43i1ruyDRHLmwKjVRyr/ZY\nMyL6bo9nejHqSbJ8xnmpL0+cDojHjGoIBQekPYn2DI3oZ89+2s6M/lfiChbP\nM6EWAuNYJi1iYIPuV7frZrbKPCATESjS1IHlK6FwOI/AAXbnGFhjkX2ojxwj\nigCwDQlo86PHTCz29YkVmhGHoKalWJk27rM9s3eOrYc2CFAhXSWrD37j4KlR\no7Zj6/+piLCC9bvj5eEBGwm9OS++4OaE0DktlRMjlVAM3kY21X37E6ScsKNL\nCxJg6JTogiugvHTrPiu/RbNsWDidooGh86YQjp5uriJ+AlaYb8RHKh56pXJ+\neVONKodh5PzlKLK6q79hr/s8NgB1NI2F0SM+us1T1VGyXViY4vstUJLtt64Q\ncCX3+4dPqGULtCD2Ag3Zwli9R6bRcLGUedUzbYXfDOgdMdJ/6hBdIRH3APM3\nhmOpuDRNDxTHfHzoQrJrx773MLSAxN6RZ3jLXnMkYXBSgjP0+napCd9teg27\nbNU/\r\n=ESpK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1f2b23ad4bf20ade58cc1b10490e9ca3f9469405","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.83bdd0222.0","@material/rtl":"13.0.0-canary.83bdd0222.0","@material/base":"13.0.0-canary.83bdd0222.0","@material/theme":"13.0.0-canary.83bdd0222.0","@material/animation":"13.0.0-canary.83bdd0222.0","@material/typography":"13.0.0-canary.83bdd0222.0","@material/feature-targeting":"13.0.0-canary.83bdd0222.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.83bdd0222.0_1627493157470_0.4551164069530975","host":"s3://npm-registry-packages"}},"13.0.0-canary.28656298a.0":{"name":"@material/floating-label","version":"13.0.0-canary.28656298a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.28656298a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"fcd1e98ed90b2f7e9341ffd643a5e29059a58458","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.28656298a.0.tgz","fileCount":34,"integrity":"sha512-6xS9zTn44lE105KOdGVWc1fzGb5gpHYW20f1K6CyE5uZQeyOZT4a0ZgOfmRDrvOqIcjkHXPxSFBS/OnZNVVtWw==","signatures":[{"sig":"MEUCIQD4GkqNoL3kCTKmdLMm2831P+CxeOFie3oj0ClKB+KaLQIgZEs3b5Tp4C6ILZlcltYI6dqHKyk1pqPBOJWgUZvH6nE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236623,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhAu+4CRA9TVsSAnZWagAAx1UP/jk+RRvQQIa790MRZHty\nPg0/a3ZQEhaxxI2tFl+CVho3DLLkzUUi4oVUbr9ztkl2Q4rLK2qFacZLh1OB\nvs45mjRP9qDLVB2dxOGLQyaOE2Z3jVI6ZLoefDR/B+6JcugsMZKY3btsTBdx\nqafSZg4IZW6UAtXlo6+2yV9eiKJNVTLIesa3kI3Tp/ndZ7q4fUQCFkXgLx3Y\nouDEyj+W8dUp8MiQW3+TedpUAj1oSAosfRrZQZF0wfz2Y8HRQ0EbLFw2geIN\nJl2MuDRxpEvOVIsFonK8Tn2o/CxosU3hcFPDe2ByPbAebT9tjUVx01v88tnz\nUTg8DMpfRVIC/ECGjDBQvJpIGMEhBtlhRFHy3OW4saOf3Sr5Un93OebYg0I2\nWSenV8y1WQ2dYalA18hvQ4KnyMOqWsTAFHsQ8RIrcFi9+Mmn23Dcb40VSn08\nyTCN/0eOH7rSn9qWO9/8kJ3uJL7JsTkkayt7hCd9BXoMcSKM/YNY9qDcwwen\nv5g9n8Y2mX5HMHOPvZDNwbdD2z4HiPwRinwFsiL08kA4zIGNjm+aWGvWJMKo\n5OrJ2yYKsyAm2klmCxYDtobKfumVuew9/awhh90cZ0YGd3LXIlpsmhGm/mTH\ngJaxoXLKzqJFikGZhBsr3QI2Z+JZBpecLG68rgwjSDAYIVCf+860Xo+EvT7S\nBmh5\r\n=KhBL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5fe3e7fec89669c56504c13aadf80a71a543df78","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.28656298a.0","@material/rtl":"13.0.0-canary.28656298a.0","@material/base":"13.0.0-canary.28656298a.0","@material/theme":"13.0.0-canary.28656298a.0","@material/animation":"13.0.0-canary.28656298a.0","@material/typography":"13.0.0-canary.28656298a.0","@material/feature-targeting":"13.0.0-canary.28656298a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.28656298a.0_1627582392078_0.9601708946976817","host":"s3://npm-registry-packages"}},"13.0.0-canary.9e797daaf.0":{"name":"@material/floating-label","version":"13.0.0-canary.9e797daaf.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.9e797daaf.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ba02802307a58caafbe0426590ec6f06cbe9ab94","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.9e797daaf.0.tgz","fileCount":34,"integrity":"sha512-YbcVVd0X2aqQl4JjQKdprO7rNzLUgFJJEqjB+P8h+ZCQ+ysR5JP01CAoO+bfbtj1zDVlVuL2+RhhP4FO3mKvFw==","signatures":[{"sig":"MEUCIH4rb33xSimH8U0V/gGma+GGug6HtoJFl6YTfpn+C/RbAiEAyVexve8Arog24ntiNlsJbv1rD1X0VOlD+RuMyGOBJQM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236623,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhAvTwCRA9TVsSAnZWagAAHyoQAI7Qy7hy0EF+MjLgpuSI\nOaL3IYLVxDkqflnAPlQ5/GoPv3lafnhwBsc012glxoF+u66KV5SeURlvpJ0z\nRGNP+yDi75mKtjDLpGJGvf2yDdfmSuBmY5p5kPZpS1igRPaDNQNb/gdl72MY\niGi2jsVq1+ae0VV1KzQQzguEqvh02d7FPCabezED2JqVR1WyqoG+5c5knt2B\nh2vBPflryOIqrHHgaIGwDpuGAyVFbosTX0TC2seOhecCdi/L5AWU2Ag/0a+C\n/PuLy1lLyiykSpamgNJwT07DOWsMMm3XSg5SBLaq4+MNpMSBBeUkAK56SM/h\nv0JAbyaDV5p9uk6RSxKxGxmZrsba7DoEs848tytg74qtQG18mOxhSxdTNI4r\n5ZwzTZmkWXT0gedLUNdlVr2vDHlKWJ2Q7M/BPhSvsbYsp0dlbx4ukvypEMfi\nHIPlCl/Jx8oWWXKZ4PTUDODSF/tN9yiG4QdTC9LH2bqdfvISCUuWwuqi6hKJ\n9nD7tnCj8bV9Nfc+k/Rv+uAezmlfHFNfgFkJKJHWIIrheMhEy9SnGDUr3LjF\nMI58epcG8dy0Y2W53KZETzoa+9JFCaSaig7O1DQUck9YDvHKetrOlhmsTdPU\n3DKurvI2JKTRMU3W6WXHlJa/4ly7iOnOqDGi5rZKxqf/o1AAKE9HYPQ2wZ24\nSuHL\r\n=QWNZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"cad664597e3cc10ce42dff721f26f40b986db48a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.9e797daaf.0","@material/rtl":"13.0.0-canary.9e797daaf.0","@material/base":"13.0.0-canary.9e797daaf.0","@material/theme":"13.0.0-canary.9e797daaf.0","@material/animation":"13.0.0-canary.9e797daaf.0","@material/typography":"13.0.0-canary.9e797daaf.0","@material/feature-targeting":"13.0.0-canary.9e797daaf.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.9e797daaf.0_1627583728004_0.5595516880945468","host":"s3://npm-registry-packages"}},"13.0.0-canary.adb9f1ad8.0":{"name":"@material/floating-label","version":"13.0.0-canary.adb9f1ad8.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.adb9f1ad8.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f3b39f953e4952d86cd38c978c9d5ed604439039","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.adb9f1ad8.0.tgz","fileCount":34,"integrity":"sha512-WRi+Eg8bMB4Ey32YC73C1YKCUi731aVhKtkJp9tlbXXD1lIuKqUWSiHnhACMnVe5+53MACP96EKOE//Tdei7Dw==","signatures":[{"sig":"MEUCIQDOLELr29TFsFfZDSALeV6ES4OgO3PftDN+deUqKQ7aCAIgL4j5esT/NV0MYWyIADptwuXY68nztvT9jf8ZiqL7uOY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236623,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhBE1lCRA9TVsSAnZWagAAHQsP/i81TspekFvAT4mw3C66\n7d0JxSRGcWikA8iV8Yc/pJW2Sgh8K5O9AZQYBgvuvYSLwm8ZMXXKdlTK+iVy\nayT2U0xlcDXohgSGFiJhGag1qgqDXwA6scSz0sN/aC/fWyk2QyOD87AzYo3k\ntLgew7Nv7OC0Ccl3uYr4T3I1UlDPBkYZ7O7eFADwDv9qsUq71R7EvlzHWns3\nF8dMA+SBO/lib3C7JWdvzJ0SYPRVaP0ePOS5zpROa8Q49pS2yjN7v21dEe3A\nlaSYRgvwYJ84nIKVyt8ZfWVVMTDr7DKI5VZJCqybShSRluGEWJHzfDpjTHhS\nka/B613tUhyGLkC/Na62j8yKUUVilmQSuSycbnvtfcwvgQPQuzZ+BRVCUcOe\nkdRJxETEnNWgBxKmhYRb+AkDRgHzgOYE8He+GS9nw96k4/nIhZN50y3NaZ1H\na1FNh6rNrxYOd8P7Ypd6lVCTdfv928ZENBhYmPt+UPwJLq8EmXwTxMkguhYR\nSdh0kqnbfqcoSBjVRi9PqmI88zkx0/iiTeeF4y+HVY47H7caOlOhhYNdxSD/\ns7bQm01EhVze0EKCja9bNwwyEye/OOxiIMdVGEE770lsrS/94ZVzBpfIft/o\ny/t+f02o9PsIqCmQIKAyDA6uX+OVhnqof9Y+kQdNxR9OXsH2DgZME4n839VC\nw5kH\r\n=QshV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"db010696805aae457c8d8c9da8b394efff28ee35","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.adb9f1ad8.0","@material/rtl":"13.0.0-canary.adb9f1ad8.0","@material/base":"13.0.0-canary.adb9f1ad8.0","@material/theme":"13.0.0-canary.adb9f1ad8.0","@material/animation":"13.0.0-canary.adb9f1ad8.0","@material/typography":"13.0.0-canary.adb9f1ad8.0","@material/feature-targeting":"13.0.0-canary.adb9f1ad8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.adb9f1ad8.0_1627671909640_0.9630594050222228","host":"s3://npm-registry-packages"}},"13.0.0-canary.cc5377458.0":{"name":"@material/floating-label","version":"13.0.0-canary.cc5377458.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.cc5377458.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1e423fe25e9b1108108d6dce21e03a76f181942c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.cc5377458.0.tgz","fileCount":34,"integrity":"sha512-OLh+RtU6xD4AXHfc7U0zG+X9zO7HLnFjtsTszVZSYqzBlmvYF/tal82f0P4XWpaD91olNayV55nD4EyJ2cGO2A==","signatures":[{"sig":"MEUCIB61Dog/7pK13RPAvyxhieGsx0NRcwiT3Sxa6/emgfXEAiEA1xU/m2rD3lLKGT65Dh11JFCGmvIQl4suSW/UoHM64QA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236623,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhBHArCRA9TVsSAnZWagAA9RUQAIVRvXfZTI5EV51AUAbk\nE9m49SLLzICtwodnHN4JzQllqfnvb+uYcQ3+g9ii5Le9TYrls5bFnFF88An7\nULU53kCJtQstBgrezlvAzS1o7ek/hFbG2vQTpxl9mCsmKd9VxEoi4pe8KX/9\niDi8a/M4GTu22BOvQ4Fuo41sP7s+yXx3DE65vakLHygOxwsp4XygHCArbVrw\nzlpRJXX8tHdgKocr8EBMUsx88IwsvqfgTTavKN2mvweWgDzCMM/SlC8wVvK0\nK4BZYvHNOIJGwszoOKORyifLXj4lR+pnCuvIW0ktMaNzhE8e05iFEo+PFUVs\nMk67AaeoKE9V9m/VraXgOWJrui/KBN4eKhz+zLsj5dvoDQ6XbQ1aW0yPpIv6\nTtiIOxsSqHYvzEeYu2iCXfmH+NYDIIJsqFUXYMw121cSzVR/06KZisr9suS/\n9WjILN5pET5oOYaUcdmFPRjDnxZii7QoVLuctQ4XwHiNW5PSULCoqHEItirI\nNpdxAWvqsl6o+TICiQ6x026UKoSE/rDauxg1e2jUR+CIkAd90a7kHSwvTlmR\neRh5ftYjsvxCl1Nu7XQr2yUQeo6YJg1a6EOAMaK9QuNzQ85+XPo8H6zZsmmA\nnPC7fijxF8hZpsd+A7NPAMFl65Z8hKNrEVfGEziIUF52j/4oJumc0+nZlL3A\nxkio\r\n=weKu\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f4f5852cfac85d68dbd83665da839943c29dd866","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.cc5377458.0","@material/rtl":"13.0.0-canary.cc5377458.0","@material/base":"13.0.0-canary.cc5377458.0","@material/theme":"13.0.0-canary.cc5377458.0","@material/animation":"13.0.0-canary.cc5377458.0","@material/typography":"13.0.0-canary.cc5377458.0","@material/feature-targeting":"13.0.0-canary.cc5377458.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.cc5377458.0_1627680811369_0.8941107092191878","host":"s3://npm-registry-packages"}},"13.0.0-canary.a395972cf.0":{"name":"@material/floating-label","version":"13.0.0-canary.a395972cf.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.a395972cf.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3250b48474c7dbce9ab907a812ec39cabf3d1470","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.a395972cf.0.tgz","fileCount":34,"integrity":"sha512-+psKexCrZs1ABvWIGt/dZzkoKvV/Rob1QpRdd17yI3H9bxOwZNXgSpolHlN0FtjiToUVVuJCLMvKXMOOXkHevw==","signatures":[{"sig":"MEUCIQDKYd7pRc/TOpT06lwMrjnLyuptwJaGLs62wL8/7CrOpgIgegliYmuO9U+H1To0oydoUHCAvTl/J0lQ9GgI4MBDUtQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236623,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhCbPQCRA9TVsSAnZWagAAjngP/26utRkcaB4Ag7SX5NoM\nD3Xyb/Pb0eJj+XvZVIyWaY2Fpy/BHN0lEq546FKE+yIeSNXCbdZSEp2F5Fry\nt6HJpPCwM8L+mt8Og1Pn59z48VEnppyj7Dsiwgs+CFyGM8gIHjUemZcMPpKt\n8QhUKGXykeBscQm2fjAA13VPaB/uN/v2p6ueW8Yw98jb3/9ClZxFAwfcQ13s\n3xc1ymIHTjcJTHVgI1RLaC1FUzoo/fpxQPSB40k5LUPlwwa7VzwAHJdOI03k\njZo/bUB+jJJAE/agwk+8QH6Evlw6U/s04hl5sHRftKqah9hfnqHZvydKc/a4\nuDKZifrz186673t5oBvXdarIca6InUKxZzFQguroBCQdpvhB6BfJGpUY1Skf\nh20JwFXSq+w+UZf8pjWYerAM4Eld4oLnUXlK7zhG01axxl/nH3AJP8FFWMoB\nDICPVb0N59knXsib6bHAktV08+tAJ+viAYBA4Ah7PwWcEZqjJ1W4OGRoSfLP\nh0qm6vmEYmBgemnevUXdKONqkjCmdAAyBfYfcghmSmRU6hVHAbrHslWP8EbZ\nB9y6S3DQDjxyjy/3wZsAj0G468oDpiCFcujz9SaxAAsVoTWjcYYggbgFiF36\na2Bq1mOuWpMKsPxdfYhMmcin/ukvyeHgpdsODtW63w1IDcaIkmjQpBP48yj/\n5Dfb\r\n=rqbd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"00a6b6110465620df99cf5f775d52a1054c91cef","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.a395972cf.0","@material/rtl":"13.0.0-canary.a395972cf.0","@material/base":"13.0.0-canary.a395972cf.0","@material/theme":"13.0.0-canary.a395972cf.0","@material/animation":"13.0.0-canary.a395972cf.0","@material/typography":"13.0.0-canary.a395972cf.0","@material/feature-targeting":"13.0.0-canary.a395972cf.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.a395972cf.0_1628025808747_0.3826639120840387","host":"s3://npm-registry-packages"}},"13.0.0-canary.7c96e6b98.0":{"name":"@material/floating-label","version":"13.0.0-canary.7c96e6b98.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.7c96e6b98.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9241ad3b8a90818c4f8ea607883c2b02842123b5","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.7c96e6b98.0.tgz","fileCount":34,"integrity":"sha512-CPI80/ONKR8f4LHVOYVWv1OnaxkgBFH2ZYq6Mh4fcb+b4jZORea5FGT4JAz/16UmtIY87yRm0vF+MW6qR8+VqQ==","signatures":[{"sig":"MEUCIElSqqxOb8Q3x6XDrr5pWuxhYwbj7N5kN5FpLCAgTXNCAiEAwlXAytseSLZwDA1hjnRZ2NFdSVUEG8zEdJH0l1B5yLQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":236623,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhCb+pCRA9TVsSAnZWagAArxcP/jHlsPIN8fx5txyLmLRo\nfDhd+98hS8ejD47eUVowftJyYnf9XvazapiX4BgyTdtSoYqVfgX567epXaxq\nR+35AGegrTyTXVCZqfuBkcc9Erfp3ZLBzWdrALQDWMxHHmgVFZR0ibvStLA1\nL6caQMxdJMPpfj9nrpFbGfGaVbLtWQ+3HIQsfDAOcgJ+b0mHWaLxPqgo5Iz4\nHbUfzSqFxR0vnSXW8/1o7zmj2ACqxw9ktC4qX7g/j6gkv3+yBo3HtpriTMso\nqKGMmP/vhIgFE33fFiTguPXd4Y1KVSn5W3To1YH/XTmQCzE/O25Pr7WQmz2p\nySG+9tC5EqpX8kFsjastiR/g2NagX30OtN2KBpO042v9R1SAW3ynb8XDqyf4\nMj2TeKNafnVvnMGdYeoZSt0M32RdR4ALxD5iJXT61ynfumpx9lS02XGWCU8I\nPnOnJ2d1diq3S4xc5+MKsGEUPJyJR2cQnviP37lryPQ6fieWeyMGaZYo84Oc\n1Xo8640Ql6zvA39xTmiyIXbpijQTLjvTR+j8CcX9m+k6dOTLWHKOKHAkOIS4\n6Ks2S2c+3pev454dzj7ioIRBIZ8R7BDA9p4VIHHFUXDgJk+/RJjF6LCe6UoC\nJNPjL1pDxPhiOWkv7qk60M6ZqriO0JwLQyXh9X19/6OAg7JtvJ2jtIdSjHM7\nDCxD\r\n=xqjb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"38c48bd580ff0facb66c28bf9caeebbd2a6a4033","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.7c96e6b98.0","@material/rtl":"13.0.0-canary.7c96e6b98.0","@material/base":"13.0.0-canary.7c96e6b98.0","@material/theme":"13.0.0-canary.7c96e6b98.0","@material/animation":"13.0.0-canary.7c96e6b98.0","@material/typography":"13.0.0-canary.7c96e6b98.0","@material/feature-targeting":"13.0.0-canary.7c96e6b98.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.7c96e6b98.0_1628028841765_0.3635870003994166","host":"s3://npm-registry-packages"}},"13.0.0-canary.a80c8b2c2.0":{"name":"@material/floating-label","version":"13.0.0-canary.a80c8b2c2.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.a80c8b2c2.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4a225b1e48e2d9c48937544803b3ea3269bfea55","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.a80c8b2c2.0.tgz","fileCount":34,"integrity":"sha512-QDGFxwSVTjzbzHvSxwsDO7O0sJkJiXJ2o5jJonmaF568B9IzmfGEJLtCkUG2wM/RwRuFN6QNJi7Bv98+5x4CqQ==","signatures":[{"sig":"MEYCIQCDSjncwHO6aJfEYD3owvHwr45IcAlDT778IXC+3LQ+UAIhAPwEiaqKYO68XDeFS0BWnayeK2f1GDX4GYXbN2zpHEye","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":237091,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhCyn6CRA9TVsSAnZWagAAnAYP/Rr8+5qtw/pY7pHDL8aT\n+z76isFI5DESc71GSh5j7LGfGyh48eec9bqRpoOMqOtnCt7YzSX/ftyqMPs9\n8LUjUVzXmdN1iMwsId35J35OD9P+oP8jfNHfi67ViUGH6nhkYecqCys2jtuQ\nm+JeE3jBheH2PA1Vp6ncoxqtdQt1gobuecyjJ4W7TL7hr/x25E+3+741onjj\nE3t9g7rAlWQ4O+RccCgnMs7DGKgWdWwM6W2evkuTekTTZSF91jYmH/YwN842\nHRDQbak+Z5qT+I6LzHCe9okmOJxW6/eQamH84SFBODzu8vbZoxKfqpURR6m7\n7X3muq3GT18LztB99AW9YuMQHxd9txlR9eIrpPrf9+zWrFDKUGPwI2FnyYeD\n1yzUDVD92bKDDSsHEyNrPWF6pGfx6JDX8KboBbBwN8hIIAjV1MRpWxUeWm5q\nRQZvjNzEwzjk8VRCECLQVKMyPCqz0FfZPAM7Kj/HqkpL7IH2A8T8iBp/rXnq\nLOGDzHZNWYnr+0V8AvECfvdaIsRwATXkxpH0xpShugQFH4hU+bgnmcMZubvN\n1qAdnyCWfOMTRteZsY+qSqX7+NA9ek84vn57w0bHe3LfoD5zj1ae2Mj3/QU2\nmp4xbEo8SuPceN2whRAmRG286FGKhtIFyf0OtukQepJJb+8NKwx7xgeo/Umz\nz4mg\r\n=zNqc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"cb4d3f1d1d37c50939ed5269748eebb96f798601","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.a80c8b2c2.0","@material/rtl":"13.0.0-canary.a80c8b2c2.0","@material/base":"13.0.0-canary.a80c8b2c2.0","@material/theme":"13.0.0-canary.a80c8b2c2.0","@material/animation":"13.0.0-canary.a80c8b2c2.0","@material/typography":"13.0.0-canary.a80c8b2c2.0","@material/feature-targeting":"13.0.0-canary.a80c8b2c2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.a80c8b2c2.0_1628121594652_0.9737175376569254","host":"s3://npm-registry-packages"}},"13.0.0-canary.3dd611091.0":{"name":"@material/floating-label","version":"13.0.0-canary.3dd611091.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.3dd611091.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"881668f378be8355910752f97f099aebef4ef098","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.3dd611091.0.tgz","fileCount":34,"integrity":"sha512-j0NJLA+m2iGz8ThIeVGnqM/RZ79QoZ5jPW5UKpakxO16ktIjBcBMrIOxu/FNA82aTLCU7GrYxk7SED7EaBenEg==","signatures":[{"sig":"MEUCIQCnXcI0953FSNJwWPs4H2t7napGlVMc8aRVqa7YbTE2vAIge+n3DWLUIOx+xbPWKl6L7YTeGFytnzqJc3BrBKnZXWQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":237091,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhC2FvCRA9TVsSAnZWagAAufIP/Rpj+sS2X2x/qTZr8JrO\n2wZ0lufwTUXxKjDanP+9G5WDoQ/qf34aUflz0K/9kV2wQrkE8uekyc19QOlb\nnY9uL/zZttJxSdBOyg6diS+9/W0DZFYbnTsxdjC+pKh1QeEjP9eoZRWa+dxg\nlbvjQ0xiVJe0g9IMQLkb0BPjcjts4s7wC712dWBUKfzEM/i/8ZbhWnN702yc\nkLRQ6kgWdDGv3UwipsuUHjZ83MC5Ur0v/RiVWKMYb+k1xkZV3TvVkJMCtxUt\nF2Ne1z3WnXBBY7CSH/1vi+zusS0hBw2/qT4rVJXMl2d9y8i4TkNaXrD0L9Cx\nlauCSsW7QxM1auesN2tqBXP96XqrhrgpLioyUpVTxWouHRsvILojTee8bd2P\nRFpJIMFC249E1TjOVONPYz/b8xucHfOUjPjWXOZdt2lmCCodOTIBIw1QeDV9\nl+BA5ZwUm3kTEueeuUl6MrTPlJfIXd5ZXJKxYCzGibxyKwdlpCNeomWrcfUv\nbOZyKuWDDmKh04mV2QJAzjrnBYzoNI/a4+Ypu/NvvDDiJ9DNr109l3BmsecI\nmgdV9SYNuoePp9k+KfUiAAqnTJT5DHi6KTuRQo52QV9PGd1KZUC0wB1pjP94\nQnuEEp1oIWqwb0Jtkk82ay/Uu8IYwZ2O4oqCUgB8nRNflJcP1c9JDUZdIJyv\nUL/y\r\n=pVWl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"fc6a6a59d9c86ac1f85efd94a4aa6a8e4c27c379","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.3dd611091.0","@material/rtl":"13.0.0-canary.3dd611091.0","@material/base":"13.0.0-canary.3dd611091.0","@material/theme":"13.0.0-canary.3dd611091.0","@material/animation":"13.0.0-canary.3dd611091.0","@material/typography":"13.0.0-canary.3dd611091.0","@material/feature-targeting":"13.0.0-canary.3dd611091.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.3dd611091.0_1628135791454_0.25999729436217245","host":"s3://npm-registry-packages"}},"13.0.0-canary.5dee37ff6.0":{"name":"@material/floating-label","version":"13.0.0-canary.5dee37ff6.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.5dee37ff6.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3a2d644a562442ce674e181868b693f60f7942ee","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.5dee37ff6.0.tgz","fileCount":34,"integrity":"sha512-aDGAbnl9Rj1FTmmPFu/pQj1L0D1ts/JMJDSYLNeVpI1OmJzaIRLG4KSW4bu7qSgKUvImaYBiSPWp2G75cqdHWw==","signatures":[{"sig":"MEQCIDVQ43O0OETWm6rttwCtbY/lty+fSm7gKd49VczG2+FGAiBqftfjsD/boJqiq8LTz6eSMdgp+AbOwGqz97lA9YZ9rg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":237091,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhDCMACRA9TVsSAnZWagAA5iEP/0U/Ugsnd1pmj8k7yI/d\nxvRkaVcQ+QsoSy5K0dAxqpDSajbt+enlPm3uuuaw/fB0UsYWRIWUKsOJcqq2\nekL0ew1EyRpoGFuQFPshg22k4G654+n/z+bnlWSAyjKpfQS2UktURqod6ibJ\nNpVHsp34ZEW4TjxBAlVEBTukiCaqnC36wkpzEGcLLWFceULn/1SUXi+Xdr+O\nYvO+x1RHN5elXVWJlmy8nMrM4azM9jPMF3jUdS7D82POA1T/62Q/PPmdNLTn\nVKkc7KvyylUEeKGGNyX0/YMiCm8UTxGHC/kvn4uBirJJCQwiVvvJgkUWWve6\nPaZ6pValWVBRZAMvRltFvwGLM1cRo2k356pwHkzzASKaH6HwK8F0q2u+YTnx\n4nTA/z1b9P2gewyWHYNCBWfNPZotCuJPtRD7f1T6i1HrFUKcomBkJWoQQcCG\npw4Azi1wX2OTORUBg+DQCVOt2NXKF50AOemASd8SfAw+/O1AzAPkEILKz0Mm\nkSpEHD46mqI4djsUu+RcZ45gNYbLYgj5i+Q97TXFPaFddYk+Aj9OvFOtQ4UP\nZehCiJJJDyTFkOgZ8X9kxWDzxxLv8+vm9YBm6BW/+jrTM49EBVY0oPnreF6U\nRbBZHz4srD7uXKHotFyiwVUGIkrSshGwEPfKT94mXuMEBokBqZSheUXogTf4\nkjfK\r\n=1nN1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a7b521f6e807878ddba15c813505134621ef85d5","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.5dee37ff6.0","@material/rtl":"13.0.0-canary.5dee37ff6.0","@material/base":"13.0.0-canary.5dee37ff6.0","@material/theme":"13.0.0-canary.5dee37ff6.0","@material/animation":"13.0.0-canary.5dee37ff6.0","@material/typography":"13.0.0-canary.5dee37ff6.0","@material/feature-targeting":"13.0.0-canary.5dee37ff6.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.5dee37ff6.0_1628185344688_0.6413837245542937","host":"s3://npm-registry-packages"}},"13.0.0-canary.bf405d22a.0":{"name":"@material/floating-label","version":"13.0.0-canary.bf405d22a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.bf405d22a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d04660a651acec7de761d950fbaed6706174fc97","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.bf405d22a.0.tgz","fileCount":34,"integrity":"sha512-U/tkj8bS0hiJnMvr4L+VOg7WxybKiJlSPO+vtC4ZRvNc6hLkq7/Tddp7tLCOS/k14GhwxF4gzuEuNMcBm3vDSw==","signatures":[{"sig":"MEYCIQD3j5leKblWQEs2vWPzLVKQ2VLA5XQeoF8j5JQTAn/mDQIhAIUF737T10BYJTJYGTmxZOUhBslt9EvB/NLtoYrAgtCh","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":237091,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhDEeHCRA9TVsSAnZWagAAxtcP/Al+LKkGo3PfURR2ryfM\np0hkuwfaP+aKH7tkslClvjE0mdR6cgoAseqHpi8uul2/1IjXYc63RAKoCb9x\nj1L10ObsOq8XMQ+6LeqDXM4r0z18xEsoCWSfI/5gONpC9TtHMFKfCV2Ep0G/\nRzGlEmuS2SEx85QwZlqlo1LbImbxayijGrimnHNcjrQLPLC12+r9VZ7mjjj6\na6ASY6nhJrmU/1Or4zVMJQkupyddQT6RVxW8aGxQNLvXscfbjkM9GwrzOj3P\n4+5o8R7GoxtK9uD6XnD4Qx7P5G3iSn8JfIIU1G9Fk51kAE7r4W7FKDgji9ap\nundHYo2TIYNgbCa8gCFLpGDZwO+Bij6XqdATByFficOtTh4n3p5MYDQUHgRB\nWETqjRXbPd3Z5Ddy68ZzFGRw/JXKfaudgOwST7DHErZH+2wR/F1KnAfs/7C/\nswNDQgZ4s+Ecg8TxNL5xeZO5b4j/fE3N9ObnFsnUVLvS+Mx+n4U+kIGIy8wS\nZNabwWIhGSyLOO4sbWzUiAjxu/UfzAraPyU4IE5Q15BMpWwzLb3mW3QowiAo\nl1S+eQ7q/L2015/V3WIm7UUruJziBQ69Eq4bvGztU6GTJmWMdzgUUYPgcS9G\n8jeQWhKQ4kYwHAnABLEMK/EHnrLtfl9KMvWXzTnDlyoVzVR+Thy79+UVDoKA\nW1N0\r\n=mgmZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","types":"dist/mdc.floatingLabel.d.ts","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"00ae15a245c6a46fa0a13aa61a02e5958c0eddbb","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.bf405d22a.0","@material/rtl":"13.0.0-canary.bf405d22a.0","@material/base":"13.0.0-canary.bf405d22a.0","@material/theme":"13.0.0-canary.bf405d22a.0","@material/animation":"13.0.0-canary.bf405d22a.0","@material/typography":"13.0.0-canary.bf405d22a.0","@material/feature-targeting":"13.0.0-canary.bf405d22a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.bf405d22a.0_1628194695462_0.3720249210060591","host":"s3://npm-registry-packages"}},"13.0.0-canary.b47dd37a6.0":{"name":"@material/floating-label","version":"13.0.0-canary.b47dd37a6.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.b47dd37a6.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"39b4e85b842356ca1f350f4078c4c6973127799d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.b47dd37a6.0.tgz","fileCount":33,"integrity":"sha512-+7pUsVQ29r6EUNXEzfg5uPoo4VLz5SM3irBOhjuFur5tzcVWyowQHsyE5dZy2AgHE+1PbCRIHKZOivnmqdoM/Q==","signatures":[{"sig":"MEMCIDF65oXNIYph6ZNSA2PxFsyeNK3OqjPKMy36YRSf2x2QAh9rOLH0ujdpLq/mxSlzEexcqJwi4IgybjZqKg2FrEDQ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225464,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhDE77CRA9TVsSAnZWagAATmoP/0ck2BgzijYcEseiXqyb\nohFklM2wJlu4fy3/m+MySXX1Ykv7LNbnBWjbZH2ETTZ6cS8HQotRkP82yjkh\nWPcAqB5w+3L2qIw4QYiqiyAVVbR04kdJe25v8LKE9SlUHWbb3eO9pbY96bmg\n3MHSBdU71J7dFRxFHOAEywsbPDwRcTKU64jaiguo1kYaqMJxG1nKjRhuFOcI\nTWTApozIPvr5EWvZ8MRwXw6EAd3GfNghBxOF8xt7ym+lc4wIDFrOa7SgkKaQ\nfSvhhkc57X38xB0vSePX4PNbPpI+l+xOQzHoO+KUZizAhEwwpNeiQPTsIH51\nLrZvrXXIcpxgNWq4xa/Hp90z/Eg2xR2vTpR9/1qkJqkvz6Em+nH6qM4CE6co\no5dFMtV/OriT825wPIandSqbYFqvdhsCgxTSw+K380ziD+Pity/96lwqswzL\n89XoD6WkUjdtxU3dNiRtcu3cYCWZ8/YJhHeS25lTAY0SfOAEyeixRWFFkw9j\n0pqq2VtC2fZUiwgCC968YUpwXOs7znmypbQfKYBnHJke5yHtd7LQEvQ1mcFi\nmrUwAos53w5dE5L+Hi4hLNhXxuQOrERZhfht8IiFji1jXt6UKk6ZF8HUEBrf\nOvubFxXIsVJsuFwbgd0YcyNFMp0iy/r/OBf5bM95k7z4GIw1XQ7XhEx2v9+S\n0xV3\r\n=yeAD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"47f67e5fb310c13dac39b9beefbd6b53fa54d1b2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.b47dd37a6.0","@material/rtl":"13.0.0-canary.b47dd37a6.0","@material/base":"13.0.0-canary.b47dd37a6.0","@material/theme":"13.0.0-canary.b47dd37a6.0","@material/animation":"13.0.0-canary.b47dd37a6.0","@material/typography":"13.0.0-canary.b47dd37a6.0","@material/feature-targeting":"13.0.0-canary.b47dd37a6.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.b47dd37a6.0_1628196602901_0.5687301917516334","host":"s3://npm-registry-packages"}},"13.0.0-canary.6c82b965b.0":{"name":"@material/floating-label","version":"13.0.0-canary.6c82b965b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.6c82b965b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"75887d5528f9e0c0a698a65573ec154a72135b83","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.6c82b965b.0.tgz","fileCount":33,"integrity":"sha512-1gXVbt9nV8Kyp0eXSwI+LkclzYe/z0KAMuHSWMtbI1+BWf6Hv25f38ENx58mkmoXPWLKlrLneuFjOUHJWcmjAw==","signatures":[{"sig":"MEYCIQDcXEU2X0gaACQSZhqnR3PxXW9tnYMh+T+3lZCvnH3z8AIhAOqxIJfHydC2P9jocgGklNyRp2GCjomHXIShOoaIqpRS","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225464,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhDWAECRA9TVsSAnZWagAAnzoQAIkZWFevlw06sSeie9Mm\n4G3522M0BmurKjFMfdYF/z8moPiWy/v878Y5ACEyJ0mRDU9ovYz0ceg48s50\nM3jg8eZmMpW3mNy4Cf64XGtSFK4TFsUEtiSnxPsPc7XiUvBqEHIcNvobdwAY\nx1nB7QSjgEcigJM4xX73guZtVPWa14Yg9hHJ/X7Y559qAL6/QDw1cICeYL98\nK4OLo+7jsHgAE+SS703JlV0XbWCeewBcOTeB7z/dUJXrCiP9M357b+yyuCMH\njVVJmadtcB1070pztXHAou7haoxoUIZ19JoYwgsnWT9BtGnzht19ZLRvAzD/\nu/Tt8bYmXd5BrEKjMuL6voMGITLBittQO3Ymbl6emYjtqyOQGxBUmFy6byoG\nbdlGELf3LhVz2NEOC6bgLFKHkjZ8vKDkjH3+8u0csWgNQZFAJ2qWza8p36dj\nPFAQuH0f3fhkGj2bqmEIXVmxhWMTTmhhJTdwsY5eauFf7KFPdUAWnu9hXLhN\nLn5nJcuMcu8CVnwtpwhHfEnngkORonXlIKsyx4UyhrOwWBckycP+aOy0/Hfm\n4ewFFVA1ToKaW6PWO5RhCoFW2ieXkLx53nJSAna1iwg3yXTazH8jRFBhlk+K\n7mXsRfWSiZ1TemrsY0ZEXQL5PgIWcizcBQ97TflBc34/chw9fR5DCz3f1jEp\nJLlF\r\n=bD47\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"434420b9fc9470dc77940d2240234a564be58d02","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.6c82b965b.0","@material/rtl":"13.0.0-canary.6c82b965b.0","@material/base":"13.0.0-canary.6c82b965b.0","@material/theme":"13.0.0-canary.6c82b965b.0","@material/animation":"13.0.0-canary.6c82b965b.0","@material/typography":"13.0.0-canary.6c82b965b.0","@material/feature-targeting":"13.0.0-canary.6c82b965b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.6c82b965b.0_1628266500431_0.8134181962427274","host":"s3://npm-registry-packages"}},"13.0.0-canary.4ca11fe76.0":{"name":"@material/floating-label","version":"13.0.0-canary.4ca11fe76.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.4ca11fe76.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3b2a1968ea9f916dd864d0fa0ebbaf2ebd0cc2ed","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.4ca11fe76.0.tgz","fileCount":33,"integrity":"sha512-UOuAWPtg92Bru88GBfy/ZblAPsH/1tgoHGguxgGToVusXMjABFriZLnLN5cPnPNvGopo/x0I5l4760ra8HD4sw==","signatures":[{"sig":"MEUCIQDmgVZGGGMAom6iduXcXMHPBi0C5hhhmMhBPqB1j5ctDwIgT7agaMhin7C5CoEsHzoJrRA/sD64RsyOsZA8lVrTynw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225464,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhDWxVCRA9TVsSAnZWagAAAUcQAJkW+x9HRnbLRZdyh2yK\nOrA6ZiCsPqRF8+T24M39YmUIRCSu4BmApW0xEZfST9O+Rw2/ZlRMdvkn5hx4\npYGMKOoB4YfQp/L4dhxp2boq/o7DuO9YzJf11w+VoqmFRkKMWBxPEIBA+kz/\nUOnXBS/jsJqFXpFHNzB3u2jJs5LZKtLmuF4I9PjMJXsXtaPCuvkIhGdnmJFE\n0ZIN7ZrNr3NSwMTAI0wiLJ3MyBvkA70i+SNe97qQ/ee1ps7dPIGEJvfQ94Mt\nq1i5WcHXt1JHWAtZ5Fv2I4XmsvGZRAFnYYuMkbLLx4y1k0AyfdCVgQPkXt1c\nGeFppIzhpaxSrw6cMBP2JJ8DyGHMzJpR4HrFWW5URND2iwLPHV9+OZMpcU4R\n4g+MAZ2oRW6VEMiZ8DBU/Rvf0bPCjd423iRKwxqOz22jv9U7WM8offFUnYKc\nHBmt1ZLdLjpvHGC9hMS31/YIwEJZB31RTWpHDHsZ0J2RjkFkuDmR0qZGn/ts\nn9Mmyj2zJYbsGWkiMNKA7CYkbPfT1tKubQsdSdW4gyTmUs+VvNbnvrTDs+P8\nOlOqpUySAEmCdhKOGJKC4PFi5xBkW42n7ZfV2S1IYQKS9qe6P9Dzh7dX8fqQ\nQT5WB2lCeDbxk2R8X1gmygK5bEAFW3H5rqkbt2Kw13gOwpLeS7IqL818EhC1\n5ttH\r\n=Yhri\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f012412147804a7e8c4bbcb205a7a48a045cd694","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.4ca11fe76.0","@material/rtl":"13.0.0-canary.4ca11fe76.0","@material/base":"13.0.0-canary.4ca11fe76.0","@material/theme":"13.0.0-canary.4ca11fe76.0","@material/animation":"13.0.0-canary.4ca11fe76.0","@material/typography":"13.0.0-canary.4ca11fe76.0","@material/feature-targeting":"13.0.0-canary.4ca11fe76.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.4ca11fe76.0_1628269652978_0.44467717429230635","host":"s3://npm-registry-packages"}},"13.0.0-canary.510cf90f2.0":{"name":"@material/floating-label","version":"13.0.0-canary.510cf90f2.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.510cf90f2.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4e7197125265bd6cedd5378bef74f7ed8962fae6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.510cf90f2.0.tgz","fileCount":33,"integrity":"sha512-MwglAG8y7zmLrMiiXej4mb6wL7qEagUr8PUVxMGh0BlhSb+drLytKAG5u3gx/3JNPSp2D2kspYKX+3ePjasj4g==","signatures":[{"sig":"MEQCIB8hvo/N4vqOSwle1rbypW2rdVZaMrLwSzgPRevMnIvHAiBa6LtfP8qlbhgNNGPMC8bf4GW21lPP0dsh3MiSfPIrcA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225464,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhEWMmCRA9TVsSAnZWagAAD6sP/2cr9Q7nLVJAdxaoXMy/\nouNm71Bnin0KVkkIAVOKZlhbwImHe5NZOQreKCrFOkNXgJqXveWUbuLmQpWm\n8i14Paj9E4xKetQyAy1Dlx5V+tb4Bs91tK7aayu5J5ftdpnr66WPTX73zyzL\nBYly+2+fwYU8XZKfZhqlg1ycMXu8nCcizO4gMS2ErqRuFAIcid2ci+xFt8JZ\nV6W5A2BQO+Q4e3nt2mRMO7QWGJuydoYwb/j8X6vqG/49pcrBeyWybB98711j\nBkjoxV8YlcVuesPMOcVp4VaU1KOndfWDHIkk8Fv5UpeLUbKP8QeSHkhXk/Kb\nNXBUka//5c64khDEeywnuL8rJSFRknI0zlOabXberZZQivbavmcN11okRpsO\nKOnl3fYf3KZ2fRSvvz2nf8nQYRfmDOmWXQMu6V1ID+6AqnL82sPH4PPtdB/V\nHaA0FifwAtNJsbr7+uKnnl6EJVrudDCEo/AHzYh2MEB9YKbFLGkvS2yLQpKD\n4Z5IX8ejU0eBJn7boa3tsNS+Y3BftZFGSeU8LbPfBXF8PX1Wg8h2XseAJKWv\nKcs6u9o3/97gAikNoTmcK7aPkatfTYjReKxcRf3ZlAzcFlS/hgamQgKD0Q1E\nEPMFHqi8tMQZxtNUmWdku3o7Fl0pnf6HNxSp4ujXP86GrZ3azEVldV9jvqK2\nur2F\r\n=Y3z2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1e11d1f2c4c830419dc862b62700d4484604a3fd","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.510cf90f2.0","@material/rtl":"13.0.0-canary.510cf90f2.0","@material/base":"13.0.0-canary.510cf90f2.0","@material/theme":"13.0.0-canary.510cf90f2.0","@material/animation":"13.0.0-canary.510cf90f2.0","@material/typography":"13.0.0-canary.510cf90f2.0","@material/feature-targeting":"13.0.0-canary.510cf90f2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.510cf90f2.0_1628529446731_0.4807565415309263","host":"s3://npm-registry-packages"}},"13.0.0-canary.17580ebf7.0":{"name":"@material/floating-label","version":"13.0.0-canary.17580ebf7.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.17580ebf7.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"75aa45cb036397105b9c980efee9f41a4ef17ffd","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.17580ebf7.0.tgz","fileCount":33,"integrity":"sha512-H/SrabxAOETlt2EptpfujLNHo5ykDTjZeeL8qRNXwYm+HW1mzWATyW2qvK9ikSf0CEkYUJjXjLOOia6En7Wl+A==","signatures":[{"sig":"MEUCIQCgEmx6gT5d2gdFSvYH6DYeuhr5WcAhL45BqrK4qYN+3AIgMdPFb2hRT5Tec+p1Egf4f3BFNsBypDJGTcuEdnfvbMA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225464,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhEXFDCRA9TVsSAnZWagAAw1wP/RqefMqU8NfatEZlI16z\npTsVGpKijhuU1LifPouxv/77T+lp+23L2apZH8XrHtomqSv94R2uClhxgbaL\nc1/6LndFYrULuuO1JjcD8uHCbIsdVYEJ1OnppkE6q0ZmKgqq69WTOBzCEroJ\nB4Ujl9IjMoBPvlleQANkA1jowPbJpkuG3yF6i7T+cjzdjSLD9X99cn0AXQmr\nWVc86TvtcIzxe5BAncO7PegRX26vYg4ff1yanetFHfpl/wU5x9WOH388IUnI\nVYN4qk8gdELL3+ZVuyFl5hepfr37VRk25vMvBBRZO/ymxfrEagXUwVQMW3SE\ng+jlR0Sa74ulNgtrv/gsE7RrScNDnqaeNbNDwx7jit5gAVB/Sm4L7Xyk5AqT\nxL4DX8wmXsGxgeEwaXIf+kArIYIcmNxIfpXqi6gGdqVDMsYvpTlCYtQKPgFE\nwfSegeH5XVFoKIRGrjXzwxS6TLdIMfJgycCGWEMCc4wVFyEm23jrVl7VIijv\ncHbZs+B259Z/Th8K4TEGKsKkp4uclJe7/HcrNGHZcUQfMHK39tWIaqYY2U2v\nNHnSSxxsWhKQ2fN+U70Gb1SWPhtcNzroG2FRduL9nznMWIImNgmaWz4rhLNg\nxa4ieePijyOIUTopNl34DZ1JvKiayLC4S2jKtZyR4jqQ8UK0A04SV9HTXAX8\n4KD+\r\n=k3Da\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5bde42052101fa1fdd48d89c3dde8b9e99bdd1b2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.17580ebf7.0","@material/rtl":"13.0.0-canary.17580ebf7.0","@material/base":"13.0.0-canary.17580ebf7.0","@material/theme":"13.0.0-canary.17580ebf7.0","@material/animation":"13.0.0-canary.17580ebf7.0","@material/typography":"13.0.0-canary.17580ebf7.0","@material/feature-targeting":"13.0.0-canary.17580ebf7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.17580ebf7.0_1628533059586_0.811537947015718","host":"s3://npm-registry-packages"}},"13.0.0-canary.7249a3060.0":{"name":"@material/floating-label","version":"13.0.0-canary.7249a3060.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.7249a3060.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e07dc91d8b224c99f0d21f59a37b705b2e29e513","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.7249a3060.0.tgz","fileCount":33,"integrity":"sha512-96K/6NxczyaXmG/Ck/on10QRkj8Dy2tg9TiIrHFDJuZ6iZkt1w6hXp0jgVwAR9JqNY5hLXICZ6rlHa7Yb922oA==","signatures":[{"sig":"MEUCIEpaMPShWJRLWnQy2rz168PvrS6IkRQ2WXGj1LpWlQj0AiEA3NxRcTpK6UWfTtG/I0tkedpEX9bo/rjtoe0SaYwlQEQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225464,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhEXI0CRA9TVsSAnZWagAAMqoP/0wvquijtx1LH9t64rxX\nMP91cu06QN23dbC4JmPZuZO9UobEQTpSPypCiYWApIelj50uJCFZfSfNIvqq\nJmWVRJhsvDytLiZvKDhZKxLp2SFqpUNiA2nyQjWgNydRP2go3gCmXDnb8cAg\nGQ++V5us3NP/NbnXxVEYoIDq1InKA3NZCRDB+oLXVwKfSEfXrNkp0+QAgMTR\nPkPKKLj3p7DdccsqLTRLiAmFN0sllIm7bsS/RmVk3jF6AVsqhbxornt0Wvd6\nPfqhqyYgWjEqndFXn+9IPBvcSLGrrJRsZ3LX8gyMgJu0dw4ViZNUlcyJQVPE\nTP7SZ7MCdlZPZkv+ZfhUdeEQpxz0hbrBnIF7eztnCDydk+oveT0qV3q6oo7p\ntPGdtg8ZqP7XH+Q5kxzVBE+XM/KqL8BC2CmTv111+iAf00/yT/je6tfYKChi\nN3wAtEMxIR3KMhYOPuP/4M2ijsZpL1GM7M6hYywGfc/Xa0thGVp/sxc2g/CF\noJ5VMYktm9L96J0zXRgjAQdTaQzX6i69+CCbiAahWcboF8MNpHSYOZod3FQn\nmX6gFyibHiSAMfShf6ZvEL9Fk3zvttiVj16pN4eShF2mVy50XtxjfqNZ5OAh\n1ET6SiPVzFov5ukEOpcSnSuRlbslXZnlAMwJR0rSnFzfyEvsKd/uzgJoX4KC\nIBLU\r\n=HNSZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3412ad644836acdf464e70d019c36080ab377321","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.7249a3060.0","@material/rtl":"13.0.0-canary.7249a3060.0","@material/base":"13.0.0-canary.7249a3060.0","@material/theme":"13.0.0-canary.7249a3060.0","@material/animation":"13.0.0-canary.7249a3060.0","@material/typography":"13.0.0-canary.7249a3060.0","@material/feature-targeting":"13.0.0-canary.7249a3060.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.7249a3060.0_1628533299908_0.48406316180000286","host":"s3://npm-registry-packages"}},"13.0.0-canary.4c405863b.0":{"name":"@material/floating-label","version":"13.0.0-canary.4c405863b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.4c405863b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b94bddd9042ab8ca451f46bdc02c1cd0714de239","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.4c405863b.0.tgz","fileCount":33,"integrity":"sha512-+XWe3+jfoXLSEEKiSHvtzEo9JWl12kGt/X4h4SvUaaIE2MVQA9n/uSPM5v8FehI55WoNTkn6fWeN1bl82Nv0Ug==","signatures":[{"sig":"MEUCIQD7rI/yKcmOoRruDufaqAfyXVNZrrCExtbjmFngmcLIwwIgdF4zkRK+MX6JMnDMC06LT2omAgYwMq/pkqBIYX9LiiM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225464,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhErotCRA9TVsSAnZWagAAAbMP/3UQv0JkN7qUAGtaawPA\nJKcThBCyCXtQuamJHARX2OmhqpqncdpG2TDWy5hNJ+74wdxegSCyWOb+vWf4\n95PHj3bOVAc3SHDq9P/UHqC75bCtJZ5+U2X1Li2f653hDD9yEJsE10OpFZFH\nFkgSPgHaMQmgrA+geK0QKmuetlbXXKJSgZgXRSfhT1YJItYpZJmken/rNpBB\njlHf9n3Zxl0u8QvQkhFKDNNgaV0jmu6uNHGdWqLIGNae1kZ35d6girkMqSXv\notcaOVeL+N9qSYOoYjao5PqWzNjY7oQoceYn9UTgP3rfhlHUXJxrOzc4Xjy7\ncYrYMUUEzyJ+4uDw4deUBOoJSgG5KwYO0p0q+8M+z/LdZr/5HDLYBHK23To/\nH7MlUEaD3f4Zb8FIL54Mx2Vwy/SyKhUMPaxrjd9AjO3vUjW4VtwCP1sE9CZy\n9h7j6GQK7WuDSBv1N1U90OssYVEQE2wxQoj7/hPZc75l805SnYfMVc8B3AzV\nQ/uBwdfaXWhruAxfVWHRlhO+Ehp2jepFwuudqYwpJPDY4pYajhKmFxML+EA0\njB9iflJbQ1DDMsqRSZradZ+yRnjknrwQxgjtdNF4RKOzd1RUZLCnc3gNYZGb\neNRyuV0HmMrr9zrdjJwi/3mnEAIIfcO7bS4TcBoHPF6kzkEnr3Dwt6COVrYO\nlDNl\r\n=EDFx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b3861554313a19a861a5f6850f9df33ae5bc42b6","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.4c405863b.0","@material/rtl":"13.0.0-canary.4c405863b.0","@material/base":"13.0.0-canary.4c405863b.0","@material/theme":"13.0.0-canary.4c405863b.0","@material/animation":"13.0.0-canary.4c405863b.0","@material/typography":"13.0.0-canary.4c405863b.0","@material/feature-targeting":"13.0.0-canary.4c405863b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.4c405863b.0_1628617261264_0.05720555716695941","host":"s3://npm-registry-packages"}},"13.0.0-canary.f4241a42a.0":{"name":"@material/floating-label","version":"13.0.0-canary.f4241a42a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.f4241a42a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2db2fdff4714f8791ebecbe4fc35aeb955898a30","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.f4241a42a.0.tgz","fileCount":33,"integrity":"sha512-URK7x1TLIflx892ahRSa8STqkJddjzoOz+pGfIdZic0D5cTj8GG3L20kPjim9YTqUiC72jC/HIONy1GlIFmNrQ==","signatures":[{"sig":"MEYCIQDYBYW56/aFjaIkq1RhKScBQ8VlCVK/ckp6hcq/3DX31AIhAPSaasYPb94unGywqXy15BL0s6hihHNfAR5ZUx7W1U/r","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225464,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhFAH9CRA9TVsSAnZWagAA4b8P/iQk7yENB4rH5BGn4Fzl\nvsRoOfI7GVJl5WwzpxlJOBHIEsCKOgNFB0i4A0bObU5rDuszauAHUPhZJXql\nu4Tu4bKALm8L3UuL2aK4go/ImEPy3MYB1lCLkjcZGNs59AIHcSvvRpKbq6jM\n+3LjCAZxApgPyMv1I3/7zXRWWISzljKlKdau9LjXT0b9sURbJigZ0bEFVcgm\n39mCnWB7uNWZ1GtUjXlv9V9wy2xWjkFkEu5nS+Wgony6Xcn+T6OSsr/BckGK\nHBXSE/Y3MZaMioGdk1/RyoBRqJ8x7uTP0ittwzJVsrqhQnWmaqmA2CyHGa71\neRScR9h1fhSfuXWB1EWqyEAF4ytiPWg22JCTMbLtuDawWTEOchttMcH0+z+c\nV33baCF2XvqKr1oFe9TRuWeU33JRuE8266uzy02MwQAN89IxE5E++fRkIw5p\n7tSDWOHDYgY/A1bV4ECTyV0NszmnNMFz6KEQG2JZ5IGuZxGbq3D1GpILSZAS\njOlSedbx7S9skiPuC3mzj3oI8WSO5yETx7Kew5iwI/cLOBBtVqbVCk5adqqB\nr1cBOcYPWDalfEQWNqEPqv7mDIxJkPFRYkA+roneoePolusloskO5FwgE2E1\n2ZOVLbI1rAeA94nF/rQ2hHcT7QV4gvwE+SgZ3UX1fHd/4d2q6grkEZ3ef6ve\nH9D4\r\n=kNtE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"bd97e42dc6a97fb74d92a9cb04e919c5c8af4da6","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.f4241a42a.0","@material/rtl":"13.0.0-canary.f4241a42a.0","@material/base":"13.0.0-canary.f4241a42a.0","@material/theme":"13.0.0-canary.f4241a42a.0","@material/animation":"13.0.0-canary.f4241a42a.0","@material/typography":"13.0.0-canary.f4241a42a.0","@material/feature-targeting":"13.0.0-canary.f4241a42a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.f4241a42a.0_1628701181277_0.5587705218131462","host":"s3://npm-registry-packages"}},"13.0.0-canary.0ad12ed3c.0":{"name":"@material/floating-label","version":"13.0.0-canary.0ad12ed3c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.0ad12ed3c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a7ca677d2cab7c54aff70e43232dc0242f2a8945","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.0ad12ed3c.0.tgz","fileCount":33,"integrity":"sha512-4PF0LJ1RSQ4DuJ/c1vKxH5K5KKFkmw/WVoX6kw3DPlEQYdpLapVn1EZR1mS3KpJMB/AkMmQiZoYvXWosBMuilw==","signatures":[{"sig":"MEQCIEpwwvl2zy0OhHqVQtsY5RTzgVNhmhCFeTULxFnvB5CZAiAq2hZ4sjp8uWpV2eHDEbXkoIqFBFQeSbiL18/O6TcIwA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225464,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhFEEXCRA9TVsSAnZWagAAPIEP/AmtL3zDlVbOJHtiwg0I\n4mc5qm0F3/cIkVdByP2QDDUT1FuoW/BpB0rbP0Q8wk08Dt3FH62ciNH+Qp4e\ncXPWEOlkwikJUX6FgxFbzmQ6EOBRy4ka6GhsemdR6wJ29z62YvZNTFChE+VC\nFF09BUyWO+5jJiaBZtpFspLYPvIU22EoAj/C9N4dFWhKBOPDyesPWTYfEui2\nWtBUb+qsYJ19mKasz9IX8F+3P/OOHakUyP5C4E+7ipLYf3hg3wT5/jUeZf5X\nPrUWs4HZLEhKq62hmLeTii+q5Q4uF4rd2WnW1SDShCBiGxNxhig7HoWVUG8+\n9EyGJkD7wNm3Qd7OIWAp7Za38R1PI9WBTYPyng630qs8U9GMAh/Qplwizf5T\nSwr8nRaAbgb58UrMsxcSlac+YYHZXbczVXQR9U8Vgp1gama5x4RTORiUugTu\nUBZ0+3tYJ6te4GtpuRZiUvdfxucqkTi2A9KFGG0q09h51dCjmW9rcMEqBxW0\nqiaAgpVS1K87MMaxi9awOTwNiuaP8J4/H703eESsTkIpkcy/e9bwW3jcUKYx\nwroq595uN5p9PSwrmFQDtpDBjb+G18xLqyq9dbXKFJdGrbitnh3kAiFHhDbQ\nWLotM/Gz2Eu7/gQ1MDFObaIBE9Z77LallLzMmY2XChz/SagEcEs6SDPHdnud\nyMmr\r\n=S36s\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"db28e7f3596365b1d41f14b53d656a743eb28bf3","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.0ad12ed3c.0","@material/rtl":"13.0.0-canary.0ad12ed3c.0","@material/base":"13.0.0-canary.0ad12ed3c.0","@material/theme":"13.0.0-canary.0ad12ed3c.0","@material/animation":"13.0.0-canary.0ad12ed3c.0","@material/typography":"13.0.0-canary.0ad12ed3c.0","@material/feature-targeting":"13.0.0-canary.0ad12ed3c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.0ad12ed3c.0_1628717335727_0.4217919555638263","host":"s3://npm-registry-packages"}},"13.0.0-canary.077dcfcfe.0":{"name":"@material/floating-label","version":"13.0.0-canary.077dcfcfe.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.077dcfcfe.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9f404ed55b784d917e30adc1c0df8116085efb32","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.077dcfcfe.0.tgz","fileCount":33,"integrity":"sha512-GWKhXJUAJiq5slLYHe/9LIkpuw42OQWUjfxr8I83K1anloaA4q+Vy7kB6Yi0gMCVjEIvgka4YWXHsLI+WgIjCA==","signatures":[{"sig":"MEUCIQDefJlCo9iRAwhrZtEbI79l9xVGM3kHyl/DX75Hr/TZEQIgXXsyqIqky+W38AZeSOfuk/jOV/dKCGr4r4lEH1Bd848=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225464,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhFWCRCRA9TVsSAnZWagAA6IgQAIkQEBBqEdc/PXO7n6WZ\nxNvzG5FScpoje6X8Gok41lXRgCkhkYI5J5azfzVf4y6tisY5I7Vt8/UPIyfx\nNZyjd5p2Z0u0snCGpubtOu+A2xjcFx3ofDypruSJlxoN0cxZngoQS434qzHi\npulqtSRu0gWiml6uraWv9sf5ljOUPPAs2Vz8xOHo9bB74dQgSlVozXKg8BZn\nKl2bzJlNG7cRzd7oK3GiJeuZ/K93Z9+tUXdKZzLB26aNyH+P5GTeyiusHwFS\nqX0UBWAwz2heq+G/Avn84Vwvmw1tIYBiXlDedAp297hDk7Kd/iZxWZpOCWWu\nabPdUJQsDlmaHjwAIqreR/h9UzKaBP/UMrgup9ItvtZPdcaRX9rEOfBWJfee\nOlk8W4gJxFEX6EJsggezuLUg9HyPeyjlYpri/ItYNiklrmfF0htbUxKgyCf/\n2APrLR/NPEmpEPj0vIN4sdEEWgO0mg+pQHMYlDWdA8TXo8ndje1eF3gPEdQW\ntQiONS7K4FEyx3YUqCE0pUjN2BvId3dVMSFBfy/IPs63KV2JEZ2FhldpymYj\nFlqW0MpKXXxZ6vIbeMIbMVTUupUHJiFvDIELsDDVmOV3qaSYJ+ArcgC1rpq0\nnIc6kn0e0nvuJE3Hiuw5JcAquXo83i1JTsO0g/uHSac8wWweK4WIW+uRxzRO\nVxQO\r\n=c3Nc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"0ce840a62c702182bebe1a5f2ed037bc002472dc","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.077dcfcfe.0","@material/rtl":"13.0.0-canary.077dcfcfe.0","@material/base":"13.0.0-canary.077dcfcfe.0","@material/theme":"13.0.0-canary.077dcfcfe.0","@material/animation":"13.0.0-canary.077dcfcfe.0","@material/typography":"13.0.0-canary.077dcfcfe.0","@material/feature-targeting":"13.0.0-canary.077dcfcfe.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.077dcfcfe.0_1628790928880_0.9039775659917009","host":"s3://npm-registry-packages"}},"13.0.0-canary.e3346766f.0":{"name":"@material/floating-label","version":"13.0.0-canary.e3346766f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.e3346766f.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6697bf2acfc5a2baa7764ed2885c7885a3cf886c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.e3346766f.0.tgz","fileCount":33,"integrity":"sha512-V4sJzCwxqVs6PV1iWXK0cIijBcHQkP0Tlpdob9FqUYmbtuJNuiG1aKWY46cn1hIhQ3X2Z0Moi3sdEX0d0t/M6g==","signatures":[{"sig":"MEQCIGmyARhlbPC5JbCAAzogYkIDdi0ZIsITa0qCSN01UevoAiAnXYec17MndQsbpy22cKp0uctsN5M1JzE9XwHmegqv2Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225464,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhFsvWCRA9TVsSAnZWagAAJnAP/3Nho3o4J7lPBwolT33y\nCYyYxBIhtkQ+jQcaAzole3NNZyzAljFT2z60XjjYNYWQnubflNwUe/lpic8j\nFoJKMsOELpoGaYfatyXJhObD6QmEdOd+1XkLkAaSPEEgWdhUnsv/VtotTiJT\nKWjwkQu0O5n+RsCxSGZc3O6wQxOnPQ8oHMNvQZNaLD05nDZ3vzi7xEFXQe0C\nKVtCBWcLy4rHd1keO3FMvCkas3IXsLRfasW/6UD6+ErxpGvYTfsIOLUM6qRR\nfGKp5uJ2MXssAYxYzhFUKTlJqPj9OF9joIuBpnzBp+s7rWXckxPCQ66QcCUC\nraPZGBbnDDI5zm2cPyY57j3OLPSOrf5SE0pams6Ya3vHPTmY+itPSQg1zoij\nLk31V7SD0oQqRHDGQTo6XK6xUuqZP5BVlCVW5+jXcpxGKCGwnHn0Sh9hkjzp\nYHD1/A9y7ZK5YVJ9RQGxnUl8JJe8yoJg97PDpsf7GA7BrbxKdoLNmVtPHhSe\n6rim/kic/r79ixJpZIFV9NsZmLt9thOrkrCb6MAffNi4Kaf1LWsbgQAHNc1p\nQmKVcdbIw3XrK4YtrIyFDyY0taGUnbeP4W8KVVFOvn1tgVOSSus6YICDE17B\nKri7i33dcFMKcuuRPjT6xWmA8qY5WIxgCFQ+iiFTDrCboTO2D8qTtIllaogo\nFdvm\r\n=Yj8G\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"03da616c76c8b7fab07a24f82209f171a2fec41c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.e3346766f.0","@material/rtl":"13.0.0-canary.e3346766f.0","@material/base":"13.0.0-canary.e3346766f.0","@material/theme":"13.0.0-canary.e3346766f.0","@material/animation":"13.0.0-canary.e3346766f.0","@material/typography":"13.0.0-canary.e3346766f.0","@material/feature-targeting":"13.0.0-canary.e3346766f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.e3346766f.0_1628883926365_0.9125257366896744","host":"s3://npm-registry-packages"}},"13.0.0-canary.2fb068fb0.0":{"name":"@material/floating-label","version":"13.0.0-canary.2fb068fb0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.2fb068fb0.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"43bfa592c79b8891141b05bbbb0cc8ff70714ada","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.2fb068fb0.0.tgz","fileCount":33,"integrity":"sha512-Cv1jVM0MULB6RR+G5zfsvWGiG9oDgU8x14KGq5swdhnt0oIWXyDFe53ps9I9LBQoh03NeUlWGlc8Clvqhbfg9w==","signatures":[{"sig":"MEUCIQCZ3TrItQap0s/+RnCDT25kc7wf3g/z0L0pZlIHcZ7BhgIgdehx9LaXzQ++kCVuSHkuXyRcsn9jiUJDi4HfkyqQzus=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225464,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhFsyWCRA9TVsSAnZWagAAFWIQAKG1AygtsFQ2C59oTWq9\nB1qzQLD7jxMyKNUbiXjxYS+Zq00unbSHtKUX/TDfOvY62S4f6poeIfQCtOZq\n4CGs5HG7abYlISD2aMxtE3k+dPfST/pi+X8/kRF99fmAGHgPlfAoj4yW2N7u\nlHddC6XL8h9WYuLUVyw/5dbvGC+4V4L2c5y62TLKPrnJ+HwL63cdvpsUsP09\ny8rUV3zuNITu+ghIxxv1/2QDHeKPf9VUF7eCqc2mnBoT9CGz2v6/4Wzxjv/P\nxLmsLSbil/AfpyLS6jaTNyrBjYAA8fDgX8WSkhjzufkIDRffXvdUgWGmwkN4\n9927bogUJGgqfARM/lmS5xkvHaoQSjdf0EuqWefI2fmcYmXSxfKuUdpt+R5x\nLLe8fuU8kqu4LoKPqlvSV79avq+Ue15UTIdf81eVnBF8y522mHQBrve7eM1Q\nyXcm2D+OM8TCHT+Iac5SDhu1XtR+e6rjrL6AB2bCt7snMvOca2olxwtlysgW\nvngIQwM1ZWfy1N9IpUDT5U29EEYM+Owb3ti89oN76ahdxixBX71gQI5vP30Q\nPfeSNpK/0L69z4OdSDPraTYQyn1QADYF84yWRKYi0r9uKpJFMc8Uz7Za9WUC\nNeT8Cmuiy2tjMZUmkJM0LeQ8l4L6bzG/QjbV3moHlZm5qi3a7PR0U9733TR0\nr5SM\r\n=trQ6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"cd1967c0a3a80639eef1dd76a8e579a4456fee90","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.2fb068fb0.0","@material/rtl":"13.0.0-canary.2fb068fb0.0","@material/base":"13.0.0-canary.2fb068fb0.0","@material/theme":"13.0.0-canary.2fb068fb0.0","@material/animation":"13.0.0-canary.2fb068fb0.0","@material/typography":"13.0.0-canary.2fb068fb0.0","@material/feature-targeting":"13.0.0-canary.2fb068fb0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.2fb068fb0.0_1628884118189_0.9970146407179812","host":"s3://npm-registry-packages"}},"13.0.0-canary.fb76c5069.0":{"name":"@material/floating-label","version":"13.0.0-canary.fb76c5069.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.fb76c5069.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e7c50b1c85e1d4bc262993ea4d8dce7b78953338","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.fb76c5069.0.tgz","fileCount":33,"integrity":"sha512-/ozepTtH4vdRPoLs408Q4V5BArOSHVsdphiR/VaAuPGiUkdzU2juyB60Ha5mh9NExjzQ0yQszmCl+i8TUcgZOw==","signatures":[{"sig":"MEYCIQDVNk59tSLj51OQj0U9wgUF2/9k/mbEZIQCOPxbUG49SAIhAO6xmrAF7uId9uvMBZjjB/g93RnVzwXI91CHI8wt+PcN","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225464,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhGsWxCRA9TVsSAnZWagAARw8P/AsQ2z32HxfeOjbKKuL5\nTwtyZM/74q+/CqXYC4lOLamLHV+T57MIHyMPgSdOttGDCLWVNk3apw6SREBi\nljJZ4Cl2sGAJobLOVeGibYpwB9whH0PnzZLDYJorNvNuEbNAegfYeBR3mWut\nY5EvJEyp9JvaO5ZKWF0eiF5KIlmXBvIZjb5SoXNjLq1Uxww9DypIzKSpvoAn\nHXE3YKbdSqG0bqrBMyqXTZdnnOwS5QU0En1BmDMGa4YBiTyeyzz8IZHfO4MY\nQPHgn7ZWQaFv0Ybo6jdRgGO/w+ZENzPWTKQkv4nLjIDNuNTxHhWNx4V1MYit\nxWuhGaoBCwf3s11AQ6Y40JcU7azrinvR+9tIM/LToJjCXqEkLdlFr67uy5sd\nDDTe19ymgMcC40HfkKkCMXN9hpWTcrIVjABREGLmJF5NQRVt/voWXeoUnft2\nNZKBzbI9AuWV743L01SFAvpk+fHQZ+UB3JQHdPQezSAqmOd6+YVEX/OZNsb9\n8xTif0zkp/t56XXVpMDskBvPWIJHCc6yNXuEh3QGyMd2oRqPG8KIEIjgqXCd\nZ/JmpSDQY1lmf4NTb24ZNr9dAZpYdJPYN4EpFYXmjnYDOEnDZaOFgG3c990k\nFo6JE8hiseFmNojw1J4qepKIYKh55zPRBATGaWT2nMBaUwKeFcurLmArZxZw\n4RsS\r\n=6nSo\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8a969624431e3c1b8d80c2e2a37e5ea5af6bea4f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.fb76c5069.0","@material/rtl":"13.0.0-canary.fb76c5069.0","@material/base":"13.0.0-canary.fb76c5069.0","@material/theme":"13.0.0-canary.fb76c5069.0","@material/animation":"13.0.0-canary.fb76c5069.0","@material/typography":"13.0.0-canary.fb76c5069.0","@material/feature-targeting":"13.0.0-canary.fb76c5069.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.fb76c5069.0_1629144497348_0.5442022696658693","host":"s3://npm-registry-packages"}},"13.0.0-canary.457d89aad.0":{"name":"@material/floating-label","version":"13.0.0-canary.457d89aad.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.457d89aad.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"baf05a067b4ebcaa0968bfb242bfc897960e2bc5","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.457d89aad.0.tgz","fileCount":33,"integrity":"sha512-YatXPXQuo5Y/GEtNZXBFzVDpsqPde+QD0L5H8UvU5kb/TziuEk+vtX56QE4uh5riFhDxd0FoLnmDteGk7+GUhg==","signatures":[{"sig":"MEUCIGiG7zf7TO2/uKvyLSmsGsrw8mlO7dTqFAbFMVkb9ksoAiEAn6hFGFQb9T6Pt8Cn3m5udRreeudE+ZMAW68eofwjIUc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225464,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhG9QYCRA9TVsSAnZWagAAFAwP/2hUZYsBpp63DyUgCebs\nqJK9CzwHnQAvBlSSooW5f1enNysYgayNaBAtPuWhqjYZv72RZkU18s/u52ti\nFGDQQ6qh1xqX0g+dma0RkUILKjoG1ieMynu7AeLtDiZi8hWuI1nKEOl9TpI4\nMujkt4m9Semx8JZJrzHQFzRQrsweajHw5H8FLHqXa9MDHVfMAXKtxW3UQduD\nShE5SuYAmnmf/EBx5HpbAPWAZfeioU1xhQS0FKnsTrAxutUtkB/uUZjTtolB\n7uM6+lDXT2M7GHQvjkaDDtL9S3L7gR/bsI3JKktbguopyB80gbk2fcjssLDL\nzfjP+30hTtVrMyaZQ/m/TLSqf8uxThAYMdGdKptvgYWUDUuBKHvDtOBSR2wY\nEdieOrAEOSaT8kkhG4VJqgf+4lo/dHKfK4A5xLqHnNCY1Oexm5BL3UjlsvP8\nRvdpRG/JPqSYMzg2ntb1TM771W/zFWLlSmqarS/qIyWt6Brp6A7vM/fqs52P\ncgxeHcPhDJbJxLKt3YryfX30TAONXCFKoBONIvahHBDD4wm5uikEX30aUD0F\nzvQWOakdZpvxGckWmZ4tx84edcx2nnEMDXVTp3wGxf99pEPcX49nwgGMx62n\nL0//6q7a72O5Mj5yQXReBMj7uygJ7x9tTOUGFlUhRb0e4XYWpfuAamg05CuL\njLEq\r\n=0Mjn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e1aeb9efe0d3f4d8670a6ce174d17d7528b34438","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.457d89aad.0","@material/rtl":"13.0.0-canary.457d89aad.0","@material/base":"13.0.0-canary.457d89aad.0","@material/theme":"13.0.0-canary.457d89aad.0","@material/animation":"13.0.0-canary.457d89aad.0","@material/typography":"13.0.0-canary.457d89aad.0","@material/feature-targeting":"13.0.0-canary.457d89aad.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.457d89aad.0_1629213720774_0.22141474849468046","host":"s3://npm-registry-packages"}},"13.0.0-canary.0de2f2edc.0":{"name":"@material/floating-label","version":"13.0.0-canary.0de2f2edc.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.0de2f2edc.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7b5748ebef8c2efabf0f172f16b017ac09c80df9","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.0de2f2edc.0.tgz","fileCount":33,"integrity":"sha512-K1MxPF8WY4ENvDMsGOGHI5as0beUWQkpnfkDXELFUXlEd9Q/uHuWISKZ24ygyJ1eOs4vkF/yZ/TdY4QlOXzHfQ==","signatures":[{"sig":"MEYCIQC411z7EAQPB4l6E2K5AXdYWb7BgXRhTkDGwilBQtnR2wIhAPyj6KDbTYhLb/JjhPuuX63KX/HgdAwAFBEUw9ooT5Ns","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225464,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhHCH/CRA9TVsSAnZWagAA/0QP/0MjmNXO/uOj8MpTFye1\n0WvC91FjtJaid2fqzw+l5yCzaH3jZDnmo8nN/Q/2Kv8YwBa4dhxWvzzEtXGH\nMd5srbYRzCbOs/JfuMQMWysxoqG6vXgw61GZAkp56RXEkR4x/wAA3d9w2lw6\neHfylbp1EB0ixfzTiIioYARrzyqjAc0QzwqXL7wWA9yFXpD3uzk7Wk3F9Lgm\nZYFYXIvyQOV/2xLCIAjEzOzFTRuKBZBEWVvaoqf7Y1Gz9SHstm7e+7BQobmn\nyPkgd+I8QMHZx8RMIU8h5JYg1xOYUjTxZlNk4UciUrvJsU1jvqA5Upg8JMrI\nBYixaQzUoJfousDz9m7g3dwAGj1SRPGcHFFEbjZWyU0YlebZnLsJEZ/WNl5W\nc59Fhib1/AaoLKl7EI/0BB+QUFGQWD9D6sq/B04roEkO7T2o7fjo8p2kPtWD\nuBvanDE04pjzGmen9fmwg1YPm0H+QlnQkH4d33cCggbAYn8QTPD2MDNA8zvK\nw2CnIA/djYrKWuXdrHG0FnnIBWujwpWjloBW3fZLknCofLG/YP9Eb5c8ojCR\nOj0kiX29kRfzlSbK4eMqqlYmECWVgjnHPMHBGjVGyIZ3aALnqeJfANheQuMX\nryDqe4QLJLxkmrEDu8XYqy7K5QLxAW/7EcnYHD+wilrTnPyEy+hEuzHowDZr\nnQq0\r\n=ZiJ9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ecc5e8dc0157f612d4cbc7b03507e3779919d5d3","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.0de2f2edc.0","@material/rtl":"13.0.0-canary.0de2f2edc.0","@material/base":"13.0.0-canary.0de2f2edc.0","@material/theme":"13.0.0-canary.0de2f2edc.0","@material/animation":"13.0.0-canary.0de2f2edc.0","@material/typography":"13.0.0-canary.0de2f2edc.0","@material/feature-targeting":"13.0.0-canary.0de2f2edc.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.0de2f2edc.0_1629233663731_0.9822701885016785","host":"s3://npm-registry-packages"}},"13.0.0-canary.1f9259b9d.0":{"name":"@material/floating-label","version":"13.0.0-canary.1f9259b9d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.1f9259b9d.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5108e977781c51db98fec4c67b822662fef12c97","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.1f9259b9d.0.tgz","fileCount":33,"integrity":"sha512-wi82oZxr15IFF8k0+rmL3EZz0fYUBd4g0OYfukp8HZB7irX+Nb1yU0cTs8S+gi8IKGuNZavCwz/zIbkTyiYYfg==","signatures":[{"sig":"MEUCIQC7bR4KjhKn0lkxLSvn/nTtg3x7RNvLLb5hDYFcj6KMOAIgFeCWQ7mSplLN2Kiq0WzRIPmed+N4aQX2iSPzBxFsp74=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225464,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhHDS9CRA9TVsSAnZWagAA/9gP+wcNzCAKKLeovYhHs0zW\ne+UWCjiNGErTdj4cKswp+ReAVXCD266mdXG3sWIBzimY4PV2uFE9g2ONcvds\nOLLN2X1i+v/KEOx1NCyujHVdCbllanq8Wo1KhQWoIYZgoIOYgcG7BM0cmOoq\nz6ii/WAU6wqNLlIh50ySUW7Qos1pPyIhpjNabSCjwk2Ma8UBCBTqU9bhUM1P\npK+P3Nrqu65PjZxA0FT9dyIvkYGY7wND3X9BYnUqCW44iigpaHiMdS0Z0ijR\ni3F0qbVX5gNKgS+sjTYdD/mR4473WsjnOoBIKkpzoQ2gORm2ej/daw5l2xEA\nWq5aubbeMCaT5kbpkeQk8yXXM5btWgTdEwrgknazB5UAD+naN/O2Zgz6R66q\nWlcVAEO+kbU9+FjnflOj0uDzbDhJpaexapPdjFsCu7Ke/SgTqluMeuFULjAb\nA0OCxckovCPyXpszIrsMre7VmDMzEeIhfFoHoCozgNmR19alXjdXzfSQstSl\naXJM8zvppNrdUd9q4r8y+wm9wBdTWyFYKj7zqCDw7RUymqMXrXAxk70DpkpF\nYinQPGxEp17BGModKOwRPgb5C2wS+jDB5U6m9lGLn/rQW6gJZTDuyskp2e2d\nXzxF+cG7xj2KQvpoxdJ1Tzv6qwhJn02JTIDsY6EV1JpfmsJUD2r6MVWekrIf\noeq9\r\n=mzr8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"4c2c9aa7510a4854abb7f568046a44631dfe3e7e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.1f9259b9d.0","@material/rtl":"13.0.0-canary.1f9259b9d.0","@material/base":"13.0.0-canary.1f9259b9d.0","@material/theme":"13.0.0-canary.1f9259b9d.0","@material/animation":"13.0.0-canary.1f9259b9d.0","@material/typography":"13.0.0-canary.1f9259b9d.0","@material/feature-targeting":"13.0.0-canary.1f9259b9d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.1f9259b9d.0_1629238461095_0.921575493008564","host":"s3://npm-registry-packages"}},"13.0.0-canary.3b9290351.0":{"name":"@material/floating-label","version":"13.0.0-canary.3b9290351.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.3b9290351.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6310883c20a389577d92112f250ef88d600007f9","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.3b9290351.0.tgz","fileCount":33,"integrity":"sha512-EchIJCq1h5rTFCUN2B5Cs/qwMq9b0RgKzfSdO3eoftUIn+6dp5qFloUZqgbB2Kuzb9rXNTm5d99+xLABZaVehA==","signatures":[{"sig":"MEQCIEbwxgq3+426xDelJzjtp434bfq52qnsYb1jzNKVYNL9AiAiqVPBIlkC5MDJRx+idSZtjNUIbarL0s0FZN8+o9a7Yw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225464,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhHJlhCRA9TVsSAnZWagAAZD0P/2Le3IaaNJHnBDoOOuze\ng31/MZxycyo17dYUtQJcka6GgniuVrmdVcIPWhD35kSDX1CbOvhlU/qUNlkQ\nYwu1sFq9cyo+ZknoRVHBAmbQKFRYgTEaOkQ08EU9q58LcEwhxGWJTDBntP2p\nNQ6DF4FmtuowQA5AzlLKJXRaLD8LL0nD26W9m1OSJVrrkD7lMoyKPuOPRFUZ\nrFjd4/JTocFR2jNhzbJ9uMcCsWIkze1GrpXOrblfi5DGQTqoVsXquiy7ojxK\nhmocEJB/iJMAQpeQvX7Eb7IqRL6lCWvGf2YqDG/UqaPILywPT4oOu7dCj2ZO\n2QqGjCuvLCMBbA6Vg1J4BNLBGCAK5btOewayCleughaqc+lUhC1CcIq4ZuN+\nAmqxMfVNSM+x6OdRkiGDMUM5nG7bT4FoxJsHBT/+rHcSeGHzoLOuuIrYbVAN\nWSH7Qs5ULQ9lfVgjEI5XRq8mKPqSDOeau27gu0wr241rOND5kcJoakk2xbCZ\nIPIFAfWzYxawZH2X4ujRI2kNcXgdpVoh3Mf3mm57/VV8wHM7iLLhVk1xDAki\n+Nf5eEdG5NIhuzokIU/z5fL6KvyMKiI51aaHMOicqE7n9l0XbMpT81BQEHFx\nUhl+lxBxD9boz+AxTMtSojnU7Q9X49SvplzCFVmAxbAqUx7981TdWuuriF3t\nNd66\r\n=tVWU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"15fe006947f65208dd0e450f8cad53d361b2930b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.3b9290351.0","@material/rtl":"13.0.0-canary.3b9290351.0","@material/base":"13.0.0-canary.3b9290351.0","@material/theme":"13.0.0-canary.3b9290351.0","@material/animation":"13.0.0-canary.3b9290351.0","@material/typography":"13.0.0-canary.3b9290351.0","@material/feature-targeting":"13.0.0-canary.3b9290351.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.3b9290351.0_1629264225292_0.6207201384147278","host":"s3://npm-registry-packages"}},"13.0.0-canary.43d2eed2a.0":{"name":"@material/floating-label","version":"13.0.0-canary.43d2eed2a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.43d2eed2a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b6a05692fb55a608d030f679b6b0b2dd828ad31d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.43d2eed2a.0.tgz","fileCount":33,"integrity":"sha512-FoWVoLI2Wcsz07z2bMVLpzjbMNivWqCrxLjSMzWghTMx32bgYtqzpEt+3DO97yGOt7OvQloS2XJjQBX8o30gNg==","signatures":[{"sig":"MEUCIQD5OHxxAK2eOcXh8z7VJ5dEP2s6s/EwdV7n4URAEUSYbwIgVFvmuP/gjYPEhrZYUt2Kx/H0QyQBY3OqQQ24bD0oSOw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225464,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhHS8PCRA9TVsSAnZWagAAhLgP/1zheUjIu28oHTJLl8/9\nBN8vkDMQZK5QtuqCR24VKsHzVxAImGm2cN0kbcxKUy8+ood/AVNm89iHgKgz\naBUQxXD8N/stSPFKTBj7SMD7/ZbEclf8OEfV3CQCucVQ25h6u98TI1+HYNgg\niBBuQcmDi0ZHfaSssL54J84hhtLETPKFNauUM9qfRoStH6+EVpduTM2ErjVW\nwuaHEy8l+YHdmpCH1YizqQzonIFvOTGwQ8wSL5yjxe3H8wrLQQUUuBGG+GU1\n4HFwxUy0nIdkx6lAScq0w8fVNEM+gN2YnkWKalD1tQzON+idgOYYbz6LyBiy\np2ZTEqweab0TzH09g5Rzz36U2co4or9Wj3TBV+eFjo7l7zIFgna5VSX+Z5/z\nqcACta2TEaPzIlrVwe+pFk8R5VAkHGihbGk8GFyfQ8kTwxa8l/iYrWurx3p1\nAtPxeTxvZPcAKOw5Rnn01zUa3pqYVplsLWCeufdXTplFuuow9rGuCFSIfu4c\ntw+7/q4xc9B5G+501QE+xJLWfx81mdLmgdFWNhKxaW2qS28Vo6gxGdwwEzd5\nZy+0Lse/lMlZ+qSMCysj2P29gtWmfXLqSEN6FUowEUINFYXX0tjwzi9e6DhL\nnDzBs9ft6SKjzNRutYDpilc0X3PHsXvDjs8oPPakivGOojd/0qUDZ4bAJuav\nd42K\r\n=iD/h\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"687e2389ae76da9a31b26968c0cdd837208d3359","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.43d2eed2a.0","@material/rtl":"13.0.0-canary.43d2eed2a.0","@material/base":"13.0.0-canary.43d2eed2a.0","@material/theme":"13.0.0-canary.43d2eed2a.0","@material/animation":"13.0.0-canary.43d2eed2a.0","@material/typography":"13.0.0-canary.43d2eed2a.0","@material/feature-targeting":"13.0.0-canary.43d2eed2a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.43d2eed2a.0_1629302543722_0.11554468683115093","host":"s3://npm-registry-packages"}},"13.0.0-canary.0a9069300.0":{"name":"@material/floating-label","version":"13.0.0-canary.0a9069300.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.0a9069300.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"531b6e9b90c861b6881de4b7ba4be2a69dbcd664","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.0a9069300.0.tgz","fileCount":33,"integrity":"sha512-k6S8RaePyztWof+eF+zRfbRT5Eth6sLQ+HS9cODAIbgg9P6fY10TAYMM1Quky1f4Eh+sZ23DosteCLBujgjAZA==","signatures":[{"sig":"MEUCIBVn5hf4gFIcogq9E5sOizDzZjsMaSNEYTs+XgEmlXjRAiEA85ZklOtpRiahIOmAaINJ2xHvH3bEUcXsL/QZz1G4mw0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225464,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhHoQrCRA9TVsSAnZWagAAti0QAKGIMjZIq7/wtdfuVaz1\nMWH+A6ag7m9qf8pnnZ9A708IVOQJ1oyECChop0zRpxdxR81WH6HzUbAKvOQm\n3++62CqmyVSHnk+p6DRDfvGZ2qkT1PxK7dqcxDrRBMXDNeQz4JnhqUDsIbOe\nuXu0pw0oSqEG3fZfQZYP+YJQKHa7HrLpBVCpUZ/tFzFaKq5NUkL8vQiRHWCo\nbhu5ONMNag01ur/hj4ElqPOh7orghvTJxuZpiedk7Di3sxqwbG/gmKYQU9I8\n9isrIRk++Lw4GNIyDv3GpROvoTF4QJoCRXwK1tac+KCFIeIMu7bgsgO9E88S\ncdDH/Ddmqptew+obX5/EeiSK5szxYQsiwAyJQql2nzS4T5+cpo5yhjyovi6p\nsllwfyJZx0WEmVNIuwBmADR3RDIcDUoZVcNcI/qLfTIsghQLxMtf/Dk0E8/g\nzCXjG9WSmsKuDvAjZM6kWb7RImYlV8ZkcGXYSVT7tpe8jyABmhIvtnKKTFK6\nw/ZlE4y7viOD6k+BC+/YlGAPKfacE79yGg0btc6mCFlX3VFezlZe+GHQ/NDD\ndnPf5KZ1EtVwIdMW29YOzJXDSQp/HoIifBEg9HlsZCah7ag8B+YdWpyTpkVJ\nOHI1W1jBvkF+Eqh/qUtRCIaReolJ/YJpabK6LuFZ9xXrQdNbG14OxD73Qeju\nJ3on\r\n=eC6Z\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a7249c6c2dd2d786b2134e129bbe3b4ca596fee1","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.0a9069300.0","@material/rtl":"13.0.0-canary.0a9069300.0","@material/base":"13.0.0-canary.0a9069300.0","@material/theme":"13.0.0-canary.0a9069300.0","@material/animation":"13.0.0-canary.0a9069300.0","@material/typography":"13.0.0-canary.0a9069300.0","@material/feature-targeting":"13.0.0-canary.0a9069300.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.0a9069300.0_1629389867278_0.9994483730327064","host":"s3://npm-registry-packages"}},"13.0.0-canary.7da413ed8.0":{"name":"@material/floating-label","version":"13.0.0-canary.7da413ed8.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.7da413ed8.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2d6493d771e315d61dde338edb20a998ddc336fc","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.7da413ed8.0.tgz","fileCount":33,"integrity":"sha512-YhZ7OxeP/Ph7WqTKfAcpROKhZqufe9KE4oUmouE/m3wsOVksyojqBVJ7MgSEYL8Aryjd3uFe73E3MLdx6Z88Rg==","signatures":[{"sig":"MEYCIQC/TH0icoS0yw9DKeQ007+KXHDDptEIMuIIWXIWFztWNgIhAKcuTFoct/dBYGjViDHJW3O7skfAtgeSTNCWAYeAB/c0","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225464,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhH87kCRA9TVsSAnZWagAAq1AP/icmc4bTK6e427qIqF6p\ncDMuWbmzqK1eG06lP76Oh1ubcr+63kN3VnMb4M2FTxEOKuZREumu/QHqpspG\nl56/S5WyPxca9hekXNHz7ktXbresMljtmbq2RPyfybCONjF8Z7JH9J1FcIZZ\nY/5cDtJ8qgALvlkBjYEo+H3LanwZwMKHuvgFgPucvF3eZ5nprPek3Psr3ZjJ\nsL+oucSOAfmAIHU3FyTCoGkj8yU/uHlEoBc1h49cyzY0BD8cQn5wk4MVKcDw\nOdIjZOxGVc9T7a+qQlXGFGp4S0NgQJHdLNcCM6TBMLSo+1+0UE6mshsjUl16\nM94mAnKdb/j4sCuyZyZlJJtoYqBGKE4MJmmeOvqWL6CATAe4a5UlS8YiNPJ/\nzg4joySZAF64lGniD1Xwe2TUaJjJkrwiGTlxbhRcCCpLh/h6fDVkW6AXImTy\n8xmKH4ZXDghnQZE4Ixfyh1ph1lMyxZxY5NY6JKOV61I5AfoAHxLTRstGw/4w\n/XT/k9TVG3yPOjbghZ3jZ6D/jRBzac40IJc/Lrw87IgGo/x/VfzmtyEBtQkH\nGR4+tXe73AFz6/gWXP6MoBDKCaga19M1fCJDuFe+IHS8Q9/diWcLMxmx2VfW\nLo2j9rzUZKVtgcRkInxEnfcIksz1meD3933eAgCUd5ZOanQAjoqaewIG2vsU\n8RTt\r\n=oLRx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"66fc8a91fb533a43e898483e7c4e1fac92aa0b7c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.7da413ed8.0","@material/rtl":"13.0.0-canary.7da413ed8.0","@material/base":"13.0.0-canary.7da413ed8.0","@material/theme":"13.0.0-canary.7da413ed8.0","@material/animation":"13.0.0-canary.7da413ed8.0","@material/typography":"13.0.0-canary.7da413ed8.0","@material/feature-targeting":"13.0.0-canary.7da413ed8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.7da413ed8.0_1629474532025_0.07001129124271444","host":"s3://npm-registry-packages"}},"13.0.0-canary.e1e69fd8e.0":{"name":"@material/floating-label","version":"13.0.0-canary.e1e69fd8e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.e1e69fd8e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e088fb8858ed3acae7f2f66b8a2d0f5db3fd2482","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.e1e69fd8e.0.tgz","fileCount":33,"integrity":"sha512-nyeEzKuQLx9z5VxF/Zk5egzgiqBR1wIC/9Hhrh/21P9o7UVPMNUNySdmiNB3VJeAfLaATDUZtCdbrlEF8YfqPw==","signatures":[{"sig":"MEYCIQC8vuiKPNKxoL3CYtLtkAws7Yq+ysdubKE4pJEbtm9LhwIhAI0sygXk7AgeY+ItzJ2bDOtCVrZlHcMIVs9wM5aFnTWo","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225464,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhIANKCRA9TVsSAnZWagAAtBEP/jisvZdto0awf5uXDKng\nZQ0Ds43D2d4BKL5su0fP/JkLP3ZKXpUlq//R36Q7kY/CaRnux85T5j/VyUvh\nFGuEhhxZ3OauLsNN+tGhZc8ufs+Z6XpeZzdrVLpiOtxG0kGUYBZgDknWizEj\nyGXfj8jA8vqRW+f7Wd1KaHFMxVGzysXcKIWAebD+AUwkWb2e0Uy6EddFwUGe\n2/rH6AgXY4LJp8rOJ0GAKgLw/WSzMT0iViu3Kn2GqQb0EDpZPYVPPmO92H0h\n0O8YN29El6DLqh1UTkQiwL2BvGQR8Na5NmS3CIb+YAdLL5sx06Z4DW+9U1up\nKFMko87WWU9c2N4bSTK5ZnDIcXiUceQ7sioaYAlL9rBCfXbcFsTM7M4D5hgD\nvv5fWEmLy+4RetqpD1idhG6+Id9O6iO1hPqIHMpzouo19NMfvYNOoyiSwIso\nOpe+j0INEjMBx37LRADnRCMZfJaS7TCbLNEMT5vQ94qGFM77WmOczhiJoS/d\n6atOwAeB+gHnoRDHnDFM0GeKR8lWpuAdh2kuYiQwE29FRPe13WdVLdc4edKr\nXkZBake5TdwrZGG/RQKehWY7RsSWLOWbpUYjSx+1oYXU7ESEudVEXbWFtQso\niEOg9xOclJ0Ptw38Z7yQlqpNNdaAynKxeXQNtP9EiPuyw8bmUp5PxnXBADWR\nUjC2\r\n=xvsF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e400b9052366c6e1d6e27533a72ad00199b6313e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.e1e69fd8e.0","@material/rtl":"13.0.0-canary.e1e69fd8e.0","@material/base":"13.0.0-canary.e1e69fd8e.0","@material/theme":"13.0.0-canary.e1e69fd8e.0","@material/animation":"13.0.0-canary.e1e69fd8e.0","@material/typography":"13.0.0-canary.e1e69fd8e.0","@material/feature-targeting":"13.0.0-canary.e1e69fd8e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.e1e69fd8e.0_1629487946488_0.2968001981843891","host":"s3://npm-registry-packages"}},"13.0.0-canary.f5afc16df.0":{"name":"@material/floating-label","version":"13.0.0-canary.f5afc16df.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.f5afc16df.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6bea8c56eb609ee55342cb770a6a6da1f6b1a169","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.f5afc16df.0.tgz","fileCount":33,"integrity":"sha512-zEhmYuEYR1ATSJVC8dYxERS2e3vHxMFiKO2kxsCwnPrIyDv0U7uDHjn7cQ6gFre5WvK30t4MRYgjrl31nvGkmg==","signatures":[{"sig":"MEYCIQCm0KqzT36J3VHh42yWhVOq4ZtFkj/hVlfInWcGpAvHqQIhANdtktqFy01fLXKnPwarI2UzYCB+TK8DxA1dgfIAGd+L","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225464,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhIBAICRA9TVsSAnZWagAAmWUP/3Pyt0t6l3/D1riHimuJ\nW5FJPh4+NGIYbpgROX7mgubTlc7DaqnP25suSBpSm28k7+XUO+ObsWKx/Lvr\noafVgVBEbg/L6bbeUK4uVJTGEFcN5f0fgErIV0L878wIvlKw2Zyaz0gLAfqV\nhB8M6N9OdArVm1H1Bt7Seyo4XAX1lXdSLFmANTr/rADvADacVeR/hmzC5FnY\nRTS+sVmry/PaLYNd0Z66UVmVMtxLJrxGWtV2YbG5D3xnLyESylWxoc6g3QyS\nEAubovCTw2pgrgok2bTIEzQv56sZ0vHAlwu7HP2Vfq/pVHfbKRtZthqnlKi8\nm4nbwyrQFjmfDLp0bi9xr9JGMdEJSFaZAKJFDehi6WS6dZESdZT0rW1QPP0E\niQg603l3hEnunI7DrwPYBAVIkZwRh4dievjm8/AhEZ4Gpsf/PG7MUoC66yTA\nlke8y/47lKlwysd0Cmaba7teNr4iqfJ+8Av54cAly5ZAPzvkv9J1c2h9+Po4\nNwP2xp+vcwY37tMdAHptf9TQdzvXgOowrVLe7/+MvDgMS0fNdRDFKMx0hAG5\n6OokOw117sfegjWdwiG/GFDLuCfYwEGk/URUC05N5Q9Ok1Bkfpv8EZU+E5tt\nVYOZa3FOyOmoMqNSwn/shY90TSBRtdxKQ1eQUhhxFPhUDlwq5Bg2+KM/5sAx\n6EdN\r\n=RU9M\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"9a5934ef5d223f46f61452bee68b0b45a21e20d6","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.f5afc16df.0","@material/rtl":"13.0.0-canary.f5afc16df.0","@material/base":"13.0.0-canary.f5afc16df.0","@material/theme":"13.0.0-canary.f5afc16df.0","@material/animation":"13.0.0-canary.f5afc16df.0","@material/typography":"13.0.0-canary.f5afc16df.0","@material/feature-targeting":"13.0.0-canary.f5afc16df.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.f5afc16df.0_1629491207947_0.33389578891104765","host":"s3://npm-registry-packages"}},"13.0.0-canary.28d0d75bb.0":{"name":"@material/floating-label","version":"13.0.0-canary.28d0d75bb.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.28d0d75bb.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b939e075fe18221e7ece1159999b518c197d0506","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.28d0d75bb.0.tgz","fileCount":33,"integrity":"sha512-O8WuOf9eso3jqYrY4fkspCmg22kMSrJKC1SxZ9hZiXpuW7X2UWauo7bEy4Wo6gAYJi1Yp2MnnJAEqfZ9VFNl5A==","signatures":[{"sig":"MEUCIQC21JGS2o7QpuZ/oP1JJViJRkmpQFfeZKRWo2EQS/d7uwIgFH367pZVf1cPAXlW5k78Zk8dQAFFR2IPLn5IHwW401M=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225464,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhICqvCRA9TVsSAnZWagAAS0wQAJt/c89+XOswO0c7Klnc\nydgvwGHrlXBDzo0bCQveCip6Hnv512Yh/5qfhsOQzAi5HSxVX8/DBgA8Z/Fl\n9wj1D4IgIZ96gv5La4TC8Jex0d1QPzjtjTBHNIP2IY7hygj3fA1lSSFifE3y\nvatYfEtbJfQeRay/q+BYzDzSU5Z/SYwkMfTFPVizW1ThpFWoqyKaCatqesAT\n+H0gaaJytAqU5AaybCZVsB/35/y2PHXzgQtzZdeysANdwilhDPZPqJSggCnk\nEsyrnChG7Ujwl8q2AQ+qisgktFsAb+k51QxgTXjzHvfM0YKMRz+QM06oKhcC\n9Zuifp5oF80PVw5G4YFbpyh7Wn/cDrAidsdIsQNjQjLSDWrn0l5tLq50WsHd\nIWI5AXj2y5G/SYdrdDe6lToup1SGBNNY98eUWJ2PT1RHENENPC/srQgm0Xlq\n4sfDtEdpdp0JAWqbUX2OIr3B/SF1qgv6ubQ0BMgFNIpHgt6r4/O3fxrbqH1W\nQ5dtWWM7fKdtQaG/1vc+r3yaW9/+eEXQnGARSn8S6W1GRUyioEIeJ6BgQ+zK\noeofJcLqmV7spIiDo/JoEKRwQ3LnIWijsG0MQGh4A+vA/xuhnkjY6aAkIGrS\nkkEW0xZngrjft928ntaxy9BVMvkZW8THjZeA1sBOV2VgrO1aMnFvNzHI5vPV\nPUT+\r\n=dLnY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"4becb1aca9e878d432cf8308ec0f14cc50e9699b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.28d0d75bb.0","@material/rtl":"13.0.0-canary.28d0d75bb.0","@material/base":"13.0.0-canary.28d0d75bb.0","@material/theme":"13.0.0-canary.28d0d75bb.0","@material/animation":"13.0.0-canary.28d0d75bb.0","@material/typography":"13.0.0-canary.28d0d75bb.0","@material/feature-targeting":"13.0.0-canary.28d0d75bb.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.28d0d75bb.0_1629498031497_0.9109244341973695","host":"s3://npm-registry-packages"}},"13.0.0-canary.21ece5360.0":{"name":"@material/floating-label","version":"13.0.0-canary.21ece5360.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.21ece5360.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"396856746281a1a5973e3fc3eee6c79fa652c040","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.21ece5360.0.tgz","fileCount":33,"integrity":"sha512-tFX/hzjzfQeAmoq58TPJPFwWzzd5muOZvwqBIomNxPGDFBLzILuwMZj7iw9BHBQ0pJmNlDDLZ2DlMcRn478D3A==","signatures":[{"sig":"MEYCIQCarSHPWDJOl91BHFbxaD6U7Hdnq65K6/VoohqLLBjLgAIhAJ23stbkxMLqV0Wb0ypbNGW5RrdgskS1uM/mOTyouvOI","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225464,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhID5ZCRA9TVsSAnZWagAA2/AP/1rgEnOJEnKSBK6uynPY\nbOcgLytFeMSU8JP1a4zxVCJgUPtZ1hsjbzLOb1Enzttfz1N81hR7S0SYebyM\nSkvwkaI9y6AInCxA/xiQyhHLSCI9lSDM7nQsbczrQhBd7+sP3TbC7tNyVjwY\nMKIehrbOTUOY3cV879BoUsWgwM3E2QGnGlpdDNDkkC1it8l9sXtINIgYIz5f\nsqWfLm8RyL8AtN2Dd8Lgjb8YuwxriIfJkxnG0TAbq1Yfw0lJFGb1LLvRzoq1\nBinbd2Is2/tcC0WQiWmK+2F7Ykcd4WY+2j9I3aOPBoATQEWD5StsFeeRMeFq\ndjMgp+2w82WHZU4N96V/WrJZg7VvirnnbcU1zpVL468hUg+b6xQ4PKyegCuq\nP5fbtuiuZ1rNputZ0YnxkJqRkmuUcczbbOq/GHAnhoNAtbqbDql/1GDpgpT3\n8FNt2rsDO7Lm6wgzgN7SXP50nAiziyHFPEvpRB1VpYmntGRjP3v2UGBuJGxf\nuoGRhk0qMyNed9WG4DVHnhIlR3Nqri1KJvnvg7CEdtp4J48WUWKjdf0/qtnK\nL7e1NKWXZKhq4vYGRuMmDK+YPr9juu0C13JV7cqleuaNb2kzU0S7SwJyQ22z\ncp74tvbYXnlggPyqNOXAsBBnmaiMDiP3Wtnv2WAJk77vg+OQnQr9irmSF+YO\nf5Ud\r\n=jPi1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"9625caffe59fe4a84aea358993c2811ffcf33e74","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.21ece5360.0","@material/rtl":"13.0.0-canary.21ece5360.0","@material/base":"13.0.0-canary.21ece5360.0","@material/theme":"13.0.0-canary.21ece5360.0","@material/animation":"13.0.0-canary.21ece5360.0","@material/typography":"13.0.0-canary.21ece5360.0","@material/feature-targeting":"13.0.0-canary.21ece5360.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.21ece5360.0_1629503065060_0.16668209705050807","host":"s3://npm-registry-packages"}},"13.0.0-canary.8de07c02a.0":{"name":"@material/floating-label","version":"13.0.0-canary.8de07c02a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.8de07c02a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1c523f674e8e18b2e8fff2b93830d7bcd5e4e0c3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.8de07c02a.0.tgz","fileCount":33,"integrity":"sha512-Ln6SX3PJYWpgc+VeVmMWd2VhRv6nPoRbJizyYLK+RPSbNthTLKFZtnLwzGngSr2tcXOnyPc8OzQHFqcQ4eyBQw==","signatures":[{"sig":"MEUCIQDjmN4ZYHDvwIJqp+wNyKweaCaKBXpUHokl0diMC4RjFwIgKM1RUX1o1FUxf5XahBR6oMTPEjvWQXOuESVBNNVY3Bk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225464,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhI746CRA9TVsSAnZWagAAL4YP/3WKyNbT7JfpyqSaVmAi\nhhPhe/1VZsSUBd1Fi32JEJagIOZAYYjrXj+b00/8/yqK7YiFpKRAgOQoktgP\nmlrIRQo6Z+JYbw1dXh1fXrWqbH+l33plarBW7fJdFlYhiMas2RttRyVGKFGM\nJfx45tMuH0Gu+wTOwA2ebq5L1Hgl5hyW+2cQ0b6RLA/sjB1HCi+X5whtKYmP\nL6r7W2wECU6WNTXqcPWJamial9KDNClQ/KKS4V9fy0xyTnDhXIeopZssvuT1\njF60W+VlxQP5Crd/6gG8UCCx9rj8FfijtIBFNlgk9WJ+vPQSXS/0TVeuTRgR\nwCVWZfa2f6egFJWqlfGLC5zBy+6HHXUHyoMboO1jFr0gOM3IF8tNaAPpzg3z\ns3YgzrdOTGBOUhM2fkcjCPBrfwlIKbdBKvwl9ACpe7Ev8//T9vnN0CYEyUkM\ngs/LQJDkoQGtNrAbYmomq9lleOrcJ58L6Mm8f8PrEZD1BH3hpnNwveF62Ewq\nB9KmEWFAOwS5eZyffMUN7CeN74wOrWOlo3DAaZ5DUMkqqtPAlrqzxeMPYdB8\n+biP20cMCX42UjvEKXOCACHI1V9ADm5FUiGB1CrSCbpQNJe1wWB2EzzHBD6y\ni89Kb7OpRQ+6f4s5dQsobwnApc229ZefXMbsYzS6emasTJa8Hi3bARrEZKqQ\nVMKb\r\n=AXN1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e55081eb44f85de06afceb7c0d189f0d358ad60c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.8de07c02a.0","@material/rtl":"13.0.0-canary.8de07c02a.0","@material/base":"13.0.0-canary.8de07c02a.0","@material/theme":"13.0.0-canary.8de07c02a.0","@material/animation":"13.0.0-canary.8de07c02a.0","@material/typography":"13.0.0-canary.8de07c02a.0","@material/feature-targeting":"13.0.0-canary.8de07c02a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.8de07c02a.0_1629732410613_0.7458231935976964","host":"s3://npm-registry-packages"}},"13.0.0-canary.65aa63b0c.0":{"name":"@material/floating-label","version":"13.0.0-canary.65aa63b0c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.65aa63b0c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9f4c8d36394a038f6a94ba78b95a1d2bfab0ca82","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.65aa63b0c.0.tgz","fileCount":33,"integrity":"sha512-47l12NBhq5iJeWn18mAjMSSx9mpG3nzD++WJu0WzfMjukjhJN5l5g1ZV2IF6qKdB9/cuQpD7qXTpMZmEwXqBsg==","signatures":[{"sig":"MEUCIQCLMTespm/uwKgm5N2KWlnW/kLMJWiQHMNzBiDpK05zhgIgQXYk4xiei4FwxOw5GrTTUykfTg2rB6Pu9Y7INpAZX7s=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225464,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhJRAtCRA9TVsSAnZWagAA2e8P/1Dqy86MvaZjt/fG5hvk\nGB6omI+JUEKTpDdv7Mrx/jfkycS3E18ofLG2WHCNYK8qItp1ZwzXsArg3l8M\najuQ7ZVATv4uHRFgbESYv/bd9ij1IncFScJ+/kf2SEyU6Ts25NxTzAb4Cizw\njMdVl/e4GNRjuyjtBFC451/FeK2c8gmSEQhmK71wbxRlT4wPhrW2psFOtzf7\nICLGCf93mLCVZP+DlSW3czgEhXuSs8vbQR7sAO+IE4J6ZXBHCgApimqjRyR8\nCbP2TiyYd9ArwwLuNpIpAeAH+CqHtEFNkSUPERF3gkIGJVpm1Yzqtm5Ofu4m\nsvwA/yVHWs84d9bkviRmrooI6PCTvZkzr2c5Ok/1q4bjzhdHvBnRp5vpbyT8\nmyFGdn/zYQfbE6ZlQxpsH9f/m6FUp7rAWolpbgaIBLtRl7h3OMKVZbQu7Hqx\nh86teUVGcbHgPgj9nw2mJSWTyWO0wh3J7LQrP6a/IhN3bSuYUyl9EhdClAeN\nV4HTREHIioqk7GXBOKmu+uITw+AEZK7FpMP8Yq+yppkUO4fZFY4QCEbwwxi/\nx/kIqd2nb1cnbgItwoYOGrWoq2ARVn8wRYQ9mS0y9FGFr7xIcpSjBu87XuVT\nEHuZdHGo9q6CE5YlkGpcY/z4m6aKHFFP0WB6RhyS825bRYPtDBZjywjVjB3D\nmpz9\r\n=gNlB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"0ac2dcf03064da43ca7eb352045fd4da0af02200","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.65aa63b0c.0","@material/rtl":"13.0.0-canary.65aa63b0c.0","@material/base":"13.0.0-canary.65aa63b0c.0","@material/theme":"13.0.0-canary.65aa63b0c.0","@material/animation":"13.0.0-canary.65aa63b0c.0","@material/typography":"13.0.0-canary.65aa63b0c.0","@material/feature-targeting":"13.0.0-canary.65aa63b0c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.65aa63b0c.0_1629818925199_0.6974476331081365","host":"s3://npm-registry-packages"}},"13.0.0-canary.15981e9d9.0":{"name":"@material/floating-label","version":"13.0.0-canary.15981e9d9.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.15981e9d9.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"61e99f0dd8e1100e87f743f50c11980ead24b2ad","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.15981e9d9.0.tgz","fileCount":33,"integrity":"sha512-fr3Yvl6XbgcBqBv/qb4gDma+LOsg4VSZsfSUTcLzg9/TxS4onwLeTfIQu/LAm5RK1UqZx/crdVnCaoDac6B75A==","signatures":[{"sig":"MEQCIEPIilXCpKRT9Rpq3/x2CE92ffPAvksd4kQJG7JwGhhaAiAduOu46IzK2f3xgV983WztWka43IVLv8Nnr6iWUU6X0Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225464,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhJRuNCRA9TVsSAnZWagAAtGgQAIKGKlBGwBQ5ocslKT2R\nQCou6+x2dZGm6jfMkVudQhsEm0m/N2C70nNFcofFD9GRZ8gT4oHUEzIDL0BK\nzDJbmDFQGaODrPbJBsoVcHSxo44yxmaQygIF0rAG2pV4q0sH+IlAEiOXlVMl\nOMQo797STCpr3Ed4TDpmM01dsIisFpFCCGS+4RQ7n1glSv/giYftaTBYrmmL\nrtzF5eJ5vbVuzN53VR47gjGtwMRQfXhlL1XuFpmaw/lzixhDz9RXNvncrLkP\n6DN5X8SZs+W5mg6cxD1TcLxSjCpwIpjp4Shmsm1//OKPbb5F4ch2BanVjEEB\nIa4pKISC74iHfhB11/4FRPgJquYAJyDG0DhUjNrCEUiCS2kftCAnalEaSlQa\nQhF4yr6EdrWpwFWwHFq41myQuSmGK6wo0+zL+RgWXy6LcLaoDsnw0mG7Q6PQ\ngtgT3vtmzkdt2PGmhCV+ZPHqXWd8D5ZCpL2msIJGr3kILLSHY777rcgy7k+f\nwcPpDpK3DlJZ5tDoRqY23DmktwSdL6G8KN6YR85IjSQtKAPjyH5p/mUPfZ1r\n+oegVYQetzmEXFEmRJVgIZ5284wY6lvd1zRXaPgHmN5/W5m9/UaEK9x9OHe3\nqid/LfSxEasjMJY8Ga8hnCEuBgixUv0PEwPdS2Xz0UbJm9IyjNg0x1lTVfzD\np3Zu\r\n=w3+u\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"93acc5a9963b30cedb03f35eefb49cd35c93656b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.15981e9d9.0","@material/rtl":"13.0.0-canary.15981e9d9.0","@material/base":"13.0.0-canary.15981e9d9.0","@material/theme":"13.0.0-canary.15981e9d9.0","@material/animation":"13.0.0-canary.15981e9d9.0","@material/typography":"13.0.0-canary.15981e9d9.0","@material/feature-targeting":"13.0.0-canary.15981e9d9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.15981e9d9.0_1629821837600_0.40806847813905156","host":"s3://npm-registry-packages"}},"13.0.0-canary.fa7520f62.0":{"name":"@material/floating-label","version":"13.0.0-canary.fa7520f62.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.fa7520f62.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b6e43e5426ea570872745d5fb5e2b50e6169607e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.fa7520f62.0.tgz","fileCount":33,"integrity":"sha512-4iew5F+/gXesTofUKZaWfaYF9/wjb9XQC56E5+s5nTwt486k10UI783ONQ2mPdOSmgMANIsviib1cyVxAh32oQ==","signatures":[{"sig":"MEYCIQDrsBCWkBAOOidkYtWX2VJ65n/dRlE4Q+xGCGNJVKEb4wIhAM4DZB8qSkQ/O7A1hxY61AEp+cLgppfBbfw8QxxVuA/X","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225464,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhJXJyCRA9TVsSAnZWagAABjUP/1FKA6GcYZbBWf6KelHF\nMj06NsttDrTSTvFK0a++yWXY7qCbyBm2tgP4WhLd9cZVoqUr1KXVpBWUs5zr\n0Oea9iJ0nzoSOjsjQ5mSfkqOMWYsNJKRx9e4HdWA2YGEIwc5LjkSnghujqsV\n7llR59xQV2HvYCK8Zl1A6G130GH2bom0HKFxuQeuvByVr8qF+HqfNURqe95E\nwMtgd1KFmJ7Et946dnnmrVbTQIDZpkQ7B4C5eBbpyXzWSiVi00pnubRu00ll\n+ydaNBFFLNj5WBHG3CxTmDBfA5IuPhvnqtxrf1YvtoOR9+96Ck1gjAN8D57d\nc3SnQrh5At5QiYpSkhqIHUWO0IcluyNdyGtr/bkIl4FftLkE0Mz5Uel08Acx\nEzCIp10xGLK4FQCeMDgge+PPdXP5B2/WznMz9DzCB+z6xi+G2v8DEKmeue42\nLhfnsFuFKdzQObd85xTfDupZrtvjda2gcSmmjKcNgcwDzQ3ry8bTUqxqHXya\n2QbswiZsL6/MxEKW20/IBU0AnXNnvuLIwFWDhWFQ4rj0ceb2zGwef5PdKzX3\nCHtsITmtz7hmr7yhNKfO6DALxsQ8xnilTDXXHFQoYkmZmFICuUEAqjP3wLvv\nF3VECFG8bfju/Ee1leuNW4G7Ymz0A8bSp9b8V8C3qR2taRonkJtEgV2ROdw0\nu1Bk\r\n=k3vG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ded8a7ce355618969092a7bffde0da813aeec162","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.fa7520f62.0","@material/rtl":"13.0.0-canary.fa7520f62.0","@material/base":"13.0.0-canary.fa7520f62.0","@material/theme":"13.0.0-canary.fa7520f62.0","@material/animation":"13.0.0-canary.fa7520f62.0","@material/typography":"13.0.0-canary.fa7520f62.0","@material/feature-targeting":"13.0.0-canary.fa7520f62.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.fa7520f62.0_1629844082516_0.14684392091895027","host":"s3://npm-registry-packages"}},"13.0.0-canary.ce25bc3ec.0":{"name":"@material/floating-label","version":"13.0.0-canary.ce25bc3ec.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.ce25bc3ec.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b57a5b33a9c48b73e89955d45b647193baf2a3ce","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.ce25bc3ec.0.tgz","fileCount":33,"integrity":"sha512-TFCcIVw3E3kjw1wjMRZscFcOm3h1RnCh0s3ng/YyuozAt6wJM2S+RoRXdGax3Xf6QMZYLJZgIwnPJ6PptZIGZw==","signatures":[{"sig":"MEYCIQDQMn6JOWhpg/jl2z9xbfhO+i+IPpWgreCwua8eD7h0IAIhAIVsnKfoogPN6TflMZcf/zSv8W3tb0HaGHVyrnKl6v2u","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225464,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhJXdJCRA9TVsSAnZWagAAarwP/Ra2TRV4+RYkMLkivO1J\n38Y51qyHJp3G1duR3jATK4HNyzT+FcuuydNpwAhIfGNP1gq2BPJddFKmS7Gn\n0RyWcVSycrD/5Ir7sdbezpL2FDsScjja65Qszam3x+UfmsQa1TeaqquQKWwg\nkEjiHhPcRdh546gIxeu3flY3CKb/blsx77U3y2OxEkvKyR3fsm6RDp1p6tXP\nLBK7VcNrCTgC/kUN1U/FpvJc9nW4wrIKZJes9h510Yse2nN2RO5d1LtRHPnZ\nrWeGeCyE8kYoVbs6DWgdVO9nToomD3nkD+ApkSrwRZULkXR7O/+xq8ZxabZZ\njtgfoL8tjJb+wKqMh0Iwb/TeuqUV5CzAzbAnUfmfsLrnwUSlAXye1Wa5A2+f\nBsbW3otjh3+6ez31G3xi2w9Xp9YgmOG9UN2yGK5AHR+kgQ1XrR+0/TszlmpK\n7VcvOvK58rbohXWd58HDcsHA30PPiaCvBQauS6XtsRItKIsUTsrWAULFljwQ\nyo7xe5TPvRNExJ6OYyalglR6riRzFzhCmpigt+LLAEpLZG8xipla5jMiTyd7\nFceghLC4CkQSpbexMb6bQsqTDPuNfYhewpkqk81F7huyMpmmJvCVA15PME5L\n3MRSnxAlsr9xyOfNLheWGD8ZD5ze+IM6wjZXh2dYXNcjPLFpQBcP1M5veJHh\nyJeO\r\n=JKVH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5296a1abf91023fbe0806f06b5b5fce528c40509","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.ce25bc3ec.0","@material/rtl":"13.0.0-canary.ce25bc3ec.0","@material/base":"13.0.0-canary.ce25bc3ec.0","@material/theme":"13.0.0-canary.ce25bc3ec.0","@material/animation":"13.0.0-canary.ce25bc3ec.0","@material/typography":"13.0.0-canary.ce25bc3ec.0","@material/feature-targeting":"13.0.0-canary.ce25bc3ec.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.ce25bc3ec.0_1629845321310_0.028341383643895712","host":"s3://npm-registry-packages"}},"13.0.0-canary.12f5622e1.0":{"name":"@material/floating-label","version":"13.0.0-canary.12f5622e1.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.12f5622e1.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a452b2864815832a00425993637afc1437cb953c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.12f5622e1.0.tgz","fileCount":33,"integrity":"sha512-FDUtIPMK/WCBVNv+GlY45w+UJxduSqVTot7E/ueWSKZT1x+q7C0kSS/EMA9nH6kBlQVeh14hNhgARKT6GYIUGg==","signatures":[{"sig":"MEUCIQDTYCV5ivmTB80T521hoX85cfjiQT+uD6d2jHoNSx9wfgIgb40pBPa10bEbisNfeojW4jwuOG+wtEX23g+aDWDWPFI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225464,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhJX47CRA9TVsSAnZWagAAfpcQAI2WZQ7u+44tvPHlWESR\n+K0GtE3uaZ6gW7FsMUfFnFS1gYwElZzc6NZAixBR+zV2C8/JBHBAKnF+M/tZ\nNfvluNffzqQuIbxmDbxFMBCYCU3D2fjYGRsGwkTT2XvndhNK9KH6Yj4oh60T\nild+93RAVbSM5zJQtLXcPtnh59Tf+wqeIsbphNR2Sq+/me6p1NAcD7goUits\nPQ4sXXGAuGfbfni8UprtEptWbC4oIFfhLorUv/DgwZLSU4oHAxD4uVRGVgWb\nopXsMAwnPunhPaRWYdTVui/i4K1FOGRJ8JP0oK4Nu74vYxBUwyck2xOIj6iX\nrIHWC+VJDP21/DRrmfcAeETrYqhGCGDZJo/F8GD7yARYuxsq1IXLDJZ6aEzi\nTcHJHrUNusNbQwqhWc5n96CqHymU40+dtKZ09hl7JIjvJHT9KhC5VLY3qgYn\nXq9bokvOPkseMHXkM+2yO0xs/toDsCqPc43KWOmSVpgWAl2qX4o+SzJVG5iD\nN4E5PKZzDs8QoIOHMQc9ABwKdhUwU6W+HEkjs+qJUgLTBLNsNOOJXPYk3G0J\nUnbuqUPvN/FVGggSe6pUj85iEW1+hCA+eE4RyrPwQ3K0fcks+W+kWSbB4T9H\nZuXKsVqmZGUVgwJCOs+9sgJENWn3/Vphqwcx+OGLkFvRU/SJuRlY2FmZCy/d\nS2e3\r\n=RGzU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2cfeb72e6002a5f3cf296794da5216b3114fbbc8","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.12f5622e1.0","@material/rtl":"13.0.0-canary.12f5622e1.0","@material/base":"13.0.0-canary.12f5622e1.0","@material/theme":"13.0.0-canary.12f5622e1.0","@material/animation":"13.0.0-canary.12f5622e1.0","@material/typography":"13.0.0-canary.12f5622e1.0","@material/feature-targeting":"13.0.0-canary.12f5622e1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.12f5622e1.0_1629847099021_0.9871240674234538","host":"s3://npm-registry-packages"}},"13.0.0-canary.d97f8f133.0":{"name":"@material/floating-label","version":"13.0.0-canary.d97f8f133.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.d97f8f133.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b7a7f1a50e23b6f946461392c5eac169a5239b2a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.d97f8f133.0.tgz","fileCount":33,"integrity":"sha512-9YpHyzldWgDTIYYdAMpRXmXhhkzdE0T3Q0ooI8vmz5dE9LpFt1BkTDRftgoCNGyanqLG3jPSIZP/mBa2sh8VAA==","signatures":[{"sig":"MEUCIB+N0ApgBulrjAtIQ4aAFZIhH3WTYtcN2FMDjh1dJJR/AiEAgXXFnjN3vsppjftE1BmZB6EzavuBblDUhQSFNscMgEI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225464,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhJoz1CRA9TVsSAnZWagAA5bwQAIFDWkRZOBRcgiRQIpKY\nkaeeaVzJVAze/jLFWcVVRWHuU7sWu3Z7jTvKLDv2Ze8nX6MBrZAYcrKhKh9i\nmU7IKyA898fuc9yacdnvKrYJbfF9+5jRCP0w7E92PgzYlwWtZdWUOYZjfpsH\naWrEVgvdRwUQ9ylW3zfw+trPS5Jm2/TzwISPOnFwdTBtL+l9Ak4E8pAd/HKD\n0+ADVbQJlELFNt6r0UZAp1vKTrTUpxjO9T003IP9AG08NF5HjP7zdiInSLtH\nwaYYjnXfEoTfhNb6E7bJXn78ePKePu29RzwRaXJzMk/DwsPYC/jknIlooPnJ\nVVxVer8Mc906GoaSyy4WnPjEbyCgpLHG3FraT5MjCGT8cy77gdIGdEyjdSEd\n5am/HOaO+PzoCqiNLd9RV4p1Wrjt9J6JA1uPAxgxFgBTU8yNS/fHgmmqJfku\nnD0nrbfi1jCL59b2dMRPS/vRVZaTnyjCEmKMQgYyl8QjdVZhtwNO4j3dGPwX\no3O3zLWkcVS4C3vroXiJCM9aPeQage/OLtu7/a4bF8JJHDHs3reeisKkSD2w\nY7akJZBzQ86obe2kGS8x5VLfCL7dXM8xAH+oEc3DC3OP9vlWb5SrqJG+TExh\no45sDO6GEnr8HCyGuTwIw8s1mMup1hOwaHfObOA0g6HuefE2m9qQYa1GB/T+\n1yrH\r\n=7E2e\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e7295f4786bb26bbc05939b4d6e3e42f011cc033","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.d97f8f133.0","@material/rtl":"13.0.0-canary.d97f8f133.0","@material/base":"13.0.0-canary.d97f8f133.0","@material/theme":"13.0.0-canary.d97f8f133.0","@material/animation":"13.0.0-canary.d97f8f133.0","@material/typography":"13.0.0-canary.d97f8f133.0","@material/feature-targeting":"13.0.0-canary.d97f8f133.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.d97f8f133.0_1629916405205_0.7791624974675833","host":"s3://npm-registry-packages"}},"13.0.0-canary.d86fb6fac.0":{"name":"@material/floating-label","version":"13.0.0-canary.d86fb6fac.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.d86fb6fac.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ee50e360ad90d5524d5053308f995a6d510e7a4c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.d86fb6fac.0.tgz","fileCount":33,"integrity":"sha512-zmxlSUc8c7dhQjjt7CbCc3KraPxd8BFoHvAVeCwyq+vJTKytD0DNAS7jvE6BDSlj4VUrbhbD/VnfAbruF72Mug==","signatures":[{"sig":"MEQCIFnqh81GydVqU2aOmU6OVxUOrsyuDv48G+P3oZVrhz8oAiB8e5xFIMSmgcqwlYQA6eK5c0PYmoOW26xcGqf7zI3qLA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225464,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhJpHFCRA9TVsSAnZWagAAvoUP/A7bn6rd79L3OwtV8vtS\nmiB4pSFYuB5UoQMsg9zmGE4l9XxeicUCRffnTMpQ4VUp5KJ+8OiDttYqODI9\n3JKJsQ3rTD9ncc19OGvIViNB9wbJEm5qXWYd9xcD6l+wVF5xJd0j4CTErXlq\nrk+ztLQS36jRYh4CY8jminBkVQOEEARHLrP37zX3s/TtL534cZ+g5UUBEH8D\nuSx6pfq6ZbFVXc1PPaSTryJH9PudzYMvJ7nuM7JzWEDqaENt4+W6Qx68ye21\n0RmpRwjkfygsmsQsbWAu33HBYxvXkKPfDitCIBGvkR3LQAjgiovyDQBEtJhQ\nHsFR1hXuB/ABwau/cHqDBE+E6x1BKMkKAJlorJcJlGDpcQvSGPcNlKaMFglk\nmyK5tSDaFzvd/jmcluWMXKGio2RGB0AYFE/qo2i9yOfZ+7K2k14u6dy3i+O3\nEf6ml4GHOdpwyvuPc5VIVzEo9xq9pqDY/oXFwExNJa4LSYWILJd6Oq58QVRV\nGfv7HLAUmUxqK08Z0cQ1YJzG107sDaWkBpgSV61IoRDcStxzAHKF3ABbhci+\nXuiMn2tVA5xHDyPPM5KYyzMZTRJ78PZV+wzCz5moholcIQQ8Y1/IeAjh/wo+\nQi88iPyaYlCt96I/TuoLII5K81YuZ31MQ/1fXzPF2r8qS1odkf90JtoOcAt+\nWeik\r\n=I2oX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"35d13d1a20fe14c295e8589fe5960bc9b4da1925","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.d86fb6fac.0","@material/rtl":"13.0.0-canary.d86fb6fac.0","@material/base":"13.0.0-canary.d86fb6fac.0","@material/theme":"13.0.0-canary.d86fb6fac.0","@material/animation":"13.0.0-canary.d86fb6fac.0","@material/typography":"13.0.0-canary.d86fb6fac.0","@material/feature-targeting":"13.0.0-canary.d86fb6fac.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.d86fb6fac.0_1629917637384_0.8008075767164424","host":"s3://npm-registry-packages"}},"13.0.0-canary.e8554dbbf.0":{"name":"@material/floating-label","version":"13.0.0-canary.e8554dbbf.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.e8554dbbf.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7cf928030660eb1c813e710ab9e3aded48a3c1e4","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.e8554dbbf.0.tgz","fileCount":33,"integrity":"sha512-vtLConw7QSiWKSYvOUDvrRi6+zxQZlSCWkSZG2+7DMkYJuC69mrDl5xWwqOVSuu0lXOO/JUu5yak6VFhpci/wQ==","signatures":[{"sig":"MEUCIHZVW1kNvat5K51OQ13AlWaRVhdfJrkTyswUmvfNVCkeAiEAjOtdoWlvb+X8SP805neiICvMZx2Gzvm/gUimWLn8P/E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225464,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhJr1JCRA9TVsSAnZWagAAN/4P/3VEWXXtEyD81jTBPUT2\nfw3Iw/wWtJthaCeU+wBGbAAbGLDcZKVT21aBqvQOgy3998HgDNi6sBaB05gj\n6yd0BaFUFeNd2kXM6HeFsOqCORMuGipqtMgOPYf7LCW1JlRtrEhFcHdXypKy\nq3M+7UefOKVBeAlutWV0NOr7yg9IkeA9+vz6CD9AwwdxKSuSVatUqaBQOkWG\nxXOj1E8JHnftiGb2Rt3DsWrlf+FhwPvxFzKDbHNTiTTymi1aR4Szl4qp4RzP\nxvx+d/zkvL808Z1jdopRCYTZY6xaiMf+6Mmh9KbLzTye0hrQCrnuy8yuu6ro\njMyNTV5X3lOemh3n/rf6Or2nqayU2o5V9TOyF9uMYrOFxuWvE47aPZmPnNtG\nDj8tzZVHE6Jca4GvGWzTphiRegEgBFKLHo/VVLuSIvwC839FO/WhYX9OHlur\nktev71mgY0mmrilI8jlI765rakOhF6WyQxwbzATz2X0iD6Ce/uwaW/SuoSVi\ncOBemyUR9/2kLv4f6FVloD2fsnx4An3vnW78maeplZyvxbfFKYrW74BR724v\nmLhHkBR6Uyhs5bqLXo7AcQ6rhzroA1Cf6o/e1ZA+krCQWScWmTWoFwN1bZ27\nrLCZfaV38qFuvNAIrWHKKrEZjNu6EN0+c0riwkEKN+YEc7tS0kKPhQuIOiE/\nFGJb\r\n=sCXD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"da636a8d32198c6289df3bcef39340bf76cf8265","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.e8554dbbf.0","@material/rtl":"13.0.0-canary.e8554dbbf.0","@material/base":"13.0.0-canary.e8554dbbf.0","@material/theme":"13.0.0-canary.e8554dbbf.0","@material/animation":"13.0.0-canary.e8554dbbf.0","@material/typography":"13.0.0-canary.e8554dbbf.0","@material/feature-targeting":"13.0.0-canary.e8554dbbf.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.e8554dbbf.0_1629928777004_0.8521623414010513","host":"s3://npm-registry-packages"}},"13.0.0-canary.877e3fb0d.0":{"name":"@material/floating-label","version":"13.0.0-canary.877e3fb0d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.877e3fb0d.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e6618f571cdc22dd99724f0d2c792312468941e4","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.877e3fb0d.0.tgz","fileCount":33,"integrity":"sha512-yJMl+Htcx2tFBYAcOCE81B8DpSUOjwGwlqQj7K0wA9cLtu08RxaioRL9S5U82xlpzZa6Kf7FGAyuUl7UfpsUow==","signatures":[{"sig":"MEUCIQCG+Pv50AwcjeBeaxGoJ4BCvfs5iBRqi4b0MAsnna/6cQIgTjNNs9nOraKGthjXn3DbDORBzORt8A8eKrvxHXJncCY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225464,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhJ7VnCRA9TVsSAnZWagAA8JAP/jkI57yMx6lGjd6hrrb7\nlkcPqureDXWoapzQ6I6Le1mftsCjrsoumrwgspdxy+4kGqJvSTo9x8I0yHq8\nLigjI03+yiYvbmxCTcUsMSXf6VCSlTdhqUoezDmjNGUQnoNr7Qy0DgK7VRqg\nfC+BSq2Nvyp75jUDH3DTm7bKNQsRjWG8XbgpVt3rnOqEg84J5RfObs/nfTPO\nT5UOthAEcsX5fjNnLBhGzANFp5xjDcv3YkJhXPei5giM+4Zu5iK9Hq2PnUk1\nzoDQQCfm/0VAY76Pesw8o7mGGLa/WaiMSdIwIspZc7ArFQ1V/RFG1rzkgziF\nPv5WpD4aEa4/tOuNKdM/X27KBX9cqMSg/OfLpzSdKEzS0Y5sqJWMoRrmJsPo\nlHXyLC/QyhiYZBzBg1TMF45dl20M9f6xWM8e1jC849fUdsrmlWptAxL/wEhv\ncZHcVXnee50bC8wXw8220bK03cFSdHmfC/0r0GPNbYCgBUhLLsz8F+jPEUsb\nTbRAXr1nU5lAKFuiwEp/65ZnCyAAFewzvV1Rf81lj0AFH7bbXLrrUOSy95xy\nOuhf/OU5Or1OS8EaHBDnxV5MNZgArKVqmNM8KWrP3CxP9Ic0sqhuL5Tdl1re\nNbENgTa/DOFrt0TuK7IaI3bnuQrP2eP5JnDITn9Jg1Ur77voDJnWTFdwY+00\njq/J\r\n=Airh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"849a956f7ad3e0da0840469b917eb66537c875ff","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.877e3fb0d.0","@material/rtl":"13.0.0-canary.877e3fb0d.0","@material/base":"13.0.0-canary.877e3fb0d.0","@material/theme":"13.0.0-canary.877e3fb0d.0","@material/animation":"13.0.0-canary.877e3fb0d.0","@material/typography":"13.0.0-canary.877e3fb0d.0","@material/feature-targeting":"13.0.0-canary.877e3fb0d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.877e3fb0d.0_1629992295142_0.2459607972280533","host":"s3://npm-registry-packages"}},"13.0.0-canary.6236f3576.0":{"name":"@material/floating-label","version":"13.0.0-canary.6236f3576.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.6236f3576.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9a9473b2ac1de18e3581a2a8bf6c4c87dc239b44","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.6236f3576.0.tgz","fileCount":33,"integrity":"sha512-Y0tvpH8WeynYog5K/RxfNntmiDnlrhBzbm0YV0kpD32lZ+3++ZEB/bQeNlUtYATxo/DoT7ezI8brV/itAdCngA==","signatures":[{"sig":"MEYCIQCWOPVjiWC+u7bUEgdHVJ99F3X8Sc9lVxy0P2E1btvnAgIhAObSR0kav0JWulUGj7YIk2SJXWMR+A368OPLzXrOUvsQ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225464,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhJ7vlCRA9TVsSAnZWagAA7V8P/jo69hvO6e4uLtjVcigg\nnLPZBMXcZVKSRVznhLtz0HADE1Spz6qB2K+U4DXoqdttK8NMlrNSUnAaA2PU\nFUcLWRrSs9tmyBM7IYBVPIUOYA7CIQsHdH1s7ZY7iObDdC8GK+oHH5abGVhY\n1ApGfKFN+UCpLhHi6Afg0mJSeywKsBsfCiaIFAf3tBkxFECa0yizB5OvtPRb\nUXRIi9ETXABAd9CbIEFdvxGzL7CQK7TCo8J4AkFF/sOKxtASBmFMnjeMZEPM\njDeZVDa9Ah8GpZFrQNdDkj3CGzbpYnbp/HKMACxQL8nMK8sDEWJb3buxlJCE\nIbodEKOPXM8+GNytSMR0vj7VsS0quI2vRlh8rfNaOARxgLnAkg5tQuKJiKOK\nj3FkFsBY9aVYdMOyQ0EYoXKBK95mlhMr3H5zQ4fmZMy2Nd//lK9+b2lHTrRx\nueO5nxZ2mb8aQvECBsTbuWJN4TkXgtgX/NveqdcZRfYYErpFXkZR5X9VogVJ\n1P2vQwNBVzqGvaqtGFMFODNIluL1sZWi8Hu/pxeWwYLPe0YnHzR1luWiy3tV\njWOqHUlTEY3Ey1Nq/b5fbVcMwSYxbsNHAe6/ESyHFZa463sEsen4UqRTVta8\nrY720ZQZISXUDnWet/CbtVMLlz3vw7qqJbp0OVYLSzZjLZLVsFLngfq0R3Ig\nK/bp\r\n=FF+N\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"27220fe16ebbbdcba193340cb99388e30976a2d7","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.6236f3576.0","@material/rtl":"13.0.0-canary.6236f3576.0","@material/base":"13.0.0-canary.6236f3576.0","@material/theme":"13.0.0-canary.6236f3576.0","@material/animation":"13.0.0-canary.6236f3576.0","@material/typography":"13.0.0-canary.6236f3576.0","@material/feature-targeting":"13.0.0-canary.6236f3576.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.6236f3576.0_1629993957724_0.8674018501794594","host":"s3://npm-registry-packages"}},"13.0.0-canary.1d19158a1.0":{"name":"@material/floating-label","version":"13.0.0-canary.1d19158a1.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.1d19158a1.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"297c7377dc552b919521d7b02059ac88fb404b02","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.1d19158a1.0.tgz","fileCount":33,"integrity":"sha512-+UIg+veGxXcDDMxkUz4BIVcW7NRJs6EDuHStnSJvRfQQ+y28+d8NhzrOjijjk2kkgdOKwdieJgsv9ej8VBsNSw==","signatures":[{"sig":"MEQCIEuRyaT9+XwAXTSFkiYvP6IDmWj/vgiAxF5rlrSb9Y7HAiAwWU24PB5bog87yjbK27gVUNFQRQMDxGIvGcoz8Amkaw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225464,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhJ8q2CRA9TVsSAnZWagAAwBMQAIXns+0CeQAwjdgQ4hvb\na4PNNyxzy8+79rtDM2rtcXq8nThj5q4+SvHSwL2IOpbVDBFSJKLHsbF+LWWv\nSpw1WBapwphDNjTf/Nrc0RArItRPVvaZZdhCzTy1KK/icgw9ZmTn6v9awL5L\nxUWDvgT7D+2gjkhRhl8pr/FfAy8D4iJz5vXOuJep5SVWslxZgpU8hM102eqY\nNGr4RmCw9RyrkOSjsIL+AmoZKIg/o8fEkrmPQyXM9Iz5cihVDEOWOa/Bf9lp\nQ+vsZgzZre8TfST7DfdXsbdA0pD9rKkCQDvKcAlASNX8G7hZi7LyZYh0qIuL\ntTBFocOUgLIIUTOZLSrCyblzCXLhU3YhsUhKALGLpEqb3mrJfoWQgUVxMkEe\nTQwm1FbGFn+lm7rm6nkMx/SMbqXIgql9YqGosUbrZ62thD/T+kdZr8obePGc\nJYRZSTxeoOuHkmUa+tdqk89VjHVRXSjgjdDwwdoChXEekkNMJJkeUrOYWCJ3\nrwIVky9FdNYZB0SME9NTXJkXYL/fIlyXjAy338QmkXTrSDFtl1K3+ta+inT0\n66JHaRAw5XpKMLwI4fWdCky8Mtmi83fDjAkgd0DbzWhDoKykAtWDKBV55lT4\n/Iy2luanM811Ybpkkv5NaZgdtbHNE7npweIPjWVZduTX12sjGJn2OppiOvKb\nFfKR\r\n=pOYI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"451d11fe02e89db73e3ac79cab01741c3da63ab6","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.1d19158a1.0","@material/rtl":"13.0.0-canary.1d19158a1.0","@material/base":"13.0.0-canary.1d19158a1.0","@material/theme":"13.0.0-canary.1d19158a1.0","@material/animation":"13.0.0-canary.1d19158a1.0","@material/typography":"13.0.0-canary.1d19158a1.0","@material/feature-targeting":"13.0.0-canary.1d19158a1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.1d19158a1.0_1629997750155_0.6108871548721295","host":"s3://npm-registry-packages"}},"13.0.0-canary.6adc9e83f.0":{"name":"@material/floating-label","version":"13.0.0-canary.6adc9e83f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.6adc9e83f.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5ed727169cf0801a2a6242cce5c9f44848d46814","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.6adc9e83f.0.tgz","fileCount":33,"integrity":"sha512-WQ3ur/HvbzvRUHlaGBU9EC79fkMjzx3+1kSuSuqICdHlqqoEkfIPOOXqELiZsINU+ruCLHFhAYxRF/a/2LZblg==","signatures":[{"sig":"MEQCIGJxucPCv2oqpf7nsIJyCfIxS7jtpIbQ+z11wklG+V/mAiBdeaQu7jBsys8p8DWyyuht7fSM0jw06WrHpTArYl3glw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225464,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhLV9OCRA9TVsSAnZWagAAAasP/1S5JJvyzyLQDlT0q6yi\njDF2bVO2KT2rFctjOO+891+ioWUo6hl1q5TM3jMVz/3YoeKR0R4/0Q6aXbZj\nm401NVvqPwtSlQp2vDpoXC2uRtgtuZIx1gn+pjDNOlKro9iGDLO5BiQTVwJI\n0Wkll5J65EeKzjhhCzeAmNfiH67xv198vKVXkByE5jt/+bMnGzHpt+LW4it6\nzhNL9LlNUrvP3H6MxgOquqyYT06NnSIeN6gcjBVrLcqxBmeGAmZLCTdPYmYF\nOkyYhDR2vZRGnIKhEQmplxHSZo6Y07FgDbEIw0yAhyxAdi9igzKkVWG/gykp\nXDhkS1IH0J5XC38BxwNrQug/hpBMK3Tg55hRaHEg8GK2qrpQ3UZ93ZJIlMBY\nruHOx6wnh+Nj0WrWPB9hWEFplp0B+AqdV/Qlx0BWoZOBvNZ7FsulRj/vvB8g\nUodTtc1eO8G57LawTbmLm647cmW9rkKpKmUwDKwZ+/zsMxRtIcXiQJp07gkC\nDRmF9zm7/24ZsDMu8PR0s0GsUycPdY/nMvTxkfBd37YqeJhNKDRDv7lzHtR6\nrnpqjaFwo3GSRLaz7hpqHcocntvxopGVFQU/ZcxOr0zAuSiSEm9OYUSJyPwV\n2X+A0nkN/x+sNRANsOLjlUqVE7D5BSetyzrRscQDTCaHS+cwWqTXfFXy6Mp/\nvKST\r\n=KcJv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d3d9f017c96584c46d77544b9f0dcb6e22eeeede","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.6adc9e83f.0","@material/rtl":"13.0.0-canary.6adc9e83f.0","@material/base":"13.0.0-canary.6adc9e83f.0","@material/theme":"13.0.0-canary.6adc9e83f.0","@material/animation":"13.0.0-canary.6adc9e83f.0","@material/typography":"13.0.0-canary.6adc9e83f.0","@material/feature-targeting":"13.0.0-canary.6adc9e83f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.6adc9e83f.0_1630363470480_0.047255771767261034","host":"s3://npm-registry-packages"}},"13.0.0-canary.d082790f0.0":{"name":"@material/floating-label","version":"13.0.0-canary.d082790f0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.d082790f0.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"8a5ad52acf3eaaf389632b5720b47cf1585e5871","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.d082790f0.0.tgz","fileCount":33,"integrity":"sha512-bimhnHfZO080L86sbIHpmP3FU78aPDKE+jodeV4QvSJT0GrDVo8L7rxJ2lcTQnmIjtvCsxvPtR4kX9g9FajLUA==","signatures":[{"sig":"MEUCIF4NoOzEqm+Of5DZnof4Hc1ZzHPO1ioR/0IZuX7s+/uEAiEA6LeFgBc26QJQnLRSwHsxiHZ8G31XP1g4ycIEzGMV8uw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225464,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhL/aYCRA9TVsSAnZWagAAAVsP/2ehGg1xm9qeqboc0Eqh\nGX8NGnG5y+5HOn/tADC1g7wArQ0uUbTjPh6niIbaT3pDFxNhWEvXGayCQOdq\n8B2+/Ia05h3yb3Gxu7YoSU4kz1h+h8qMp0QhVAfc+/W608RtJZkBk6ZtnDmc\nL6RaJu8hySPLkyq+N7YXTAeacwq06Qq1iGod05KAE8UE7CWQMC61esc0gjtU\nq1mTkVnHVjNLA/SuYAAlb82coTtNYvi2+vQX0/A2gYKnqfX907GzniBmWba/\nB/JE1YxYFU2he0De8p6Nt6tyAKhPhVjtVbBv4vRHhn9mm75oQcMiH4gAJdrg\nds9B5SZkdBHI0/ijaBMEbehhncVKi5ZEo+RhBay+ZXKh4T6qo7nUGBfOZ3Ll\nJvACxsRccrKkRyCepOLAwD9PcgORElgl/ALoz3Srzm6LspdWrvl9Mu8qz6xF\n8xxwB3pHeL/5Es7uC+ye8vC94eJ9G1wYdeYNhJh65dgPIbvhq5oHZTT3mgK/\nuYX1Fqe6cJWZMd4QAMERhmqNEcFyU7oj1qsHj+fZJR5fArfHx/Te6nGjI0bu\n3O0NGo64QbzzdObTwhr1BRh88rPrfCNzakw3JJD6JQ7VT9JinGKq4FzJxWbT\nUYcoByl8WWpUMjtPeV2C3Ay13U01QeQnNJxwhn/YEF7Sp5MLwMMvHl/FPUUp\nDGDj\r\n=sXRs\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"77212852cf39af4379f15c0daae076eb8b562c15","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.d082790f0.0","@material/rtl":"13.0.0-canary.d082790f0.0","@material/base":"13.0.0-canary.d082790f0.0","@material/theme":"13.0.0-canary.d082790f0.0","@material/animation":"13.0.0-canary.d082790f0.0","@material/typography":"13.0.0-canary.d082790f0.0","@material/feature-targeting":"13.0.0-canary.d082790f0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.d082790f0.0_1630533271800_0.8643020107416295","host":"s3://npm-registry-packages"}},"13.0.0-canary.e2c4f0196.0":{"name":"@material/floating-label","version":"13.0.0-canary.e2c4f0196.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.e2c4f0196.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d0a81adf823031bb2b01646c9b014222951b7263","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.e2c4f0196.0.tgz","fileCount":33,"integrity":"sha512-RhP7mTD+CjVhMSXg8K+8BPDO9yI4iVRx3HzI9MknN1bbqkXmCEJB7Xxqaa8YemsKZn92zoDxPdhMw/pFHi+N6g==","signatures":[{"sig":"MEUCIQC35LvgvICKULy5vjfhbEUQ5AqkE3i3dkoCZnbDA0592wIgcC5SajJEtn7ZifyrSq6s09uvOiaGtDQ3LwaQEEW3WBw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225464,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhMDLUCRA9TVsSAnZWagAA0nwQAJlUvO6Z4nwRUP7wq0pm\nIG5LtDPUw40mgrOiHa/UXpoOa04RGgrD7TCxvs4GMtjpvIhW9s+Vl+N1UBFu\nWTfaxsMTSCzYXHAJ2lvA3PPWDkob3PUNznnB5SKUyipSWodT3SZiTOB4Hb9l\noD26STVg8qYyIWPBDdl02HIGFBrWT8hjW+0pi0j4lA7OU5DI01tMDHQk667+\nN8LsoByBmTKle2TLP0nNUIe6zVxjs78YqShrAceH6tFWtYXQq9RppFu0JIMc\n77UvJvOYHTaRJNCWBNZtQdSv13WrlRme3M1HrwY78ug03YaW9obc67a87blf\n7PFLIe1LA1IeBE10a1HNpS7V1Zxc4QoFlUzvE2zpH6tIThPkCW5RQlIMkYTO\nRed5bHe+jO4KwuNhuCcgLppl6WHMwBejQPrW8GtQ6QkSq5zgck4eA1SmLjTB\noz6pYIboqnHkzynQJDvHWo9LYh41r4Ok74v9wUtQO3O82ZBEz4zNB5SOSbMq\nWYEVCVEDJmkh8gRsXqalEDhxasdwjy+HOu0SoarC7uGipSgj4cMGI/1zmfiy\nYLJaxA9VarVQzcraYS8hSN9UXdil6qgqG0Xds2k0YBCWc/QgjtIvXaPK2Bhk\n8d3aolPqlKZZ2/Q0hWRx3OQKuSPiJaTJUq0x6UyCdvnjw0pfSJZbB9mb93NZ\nRBMQ\r\n=eusH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2100e21debb7fbebda0966c953fb24e1964c19fa","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.e2c4f0196.0","@material/rtl":"13.0.0-canary.e2c4f0196.0","@material/base":"13.0.0-canary.e2c4f0196.0","@material/theme":"13.0.0-canary.e2c4f0196.0","@material/animation":"13.0.0-canary.e2c4f0196.0","@material/typography":"13.0.0-canary.e2c4f0196.0","@material/feature-targeting":"13.0.0-canary.e2c4f0196.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.e2c4f0196.0_1630548692735_0.4882070462421293","host":"s3://npm-registry-packages"}},"13.0.0-canary.611db508e.0":{"name":"@material/floating-label","version":"13.0.0-canary.611db508e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.611db508e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"deb032ddb7474a39c3c0c44c2ca6c2a5aae98888","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.611db508e.0.tgz","fileCount":33,"integrity":"sha512-3dJGlGEZQHkHqVlvqX4t2WW7GmAJX3Riafso+bq3LVMZpPSgGBdtppzq9Wi9iEs88QT4Peqm/6enbruHcuI9Jg==","signatures":[{"sig":"MEUCIQDBNSmEdZ2RFRhUIRWIja3mJ1KCbS06cCrc3mSXs9Y9qwIgeCB5+KHtP9LjSHe4pHwnyAOGUjsJKKgr9/8bEVJxO7U=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225464,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhMEHCCRA9TVsSAnZWagAA4NcP+QGjORyyYcQr+L3AX1R7\n9EKJXzPYaJsc/qLJluC6KF+j7qHqaG7DnPdMkTVqL/U8asbmgocXUVu3fasG\n2JWCEogOTyU7XQl2WdnTogBPULQF8Giwc12FttbuIy+475UVlMUw48lQcKzU\nBP1aqkl96K77ApivmHIDRZWpxGwZSxQUZSdl3UsYs+aflRUdgoEpEmXFlWJD\nXwE8X8EBdvZaNtPFM2vfDGe4oR5S2YJq/qNpd9pQv9gZygEarPf6T5OW7h+M\nnchZyIA8TD7Excf4+slircQghR/s6gBIhCPKlqn2JCF2lV3nAe5+PpxwEg80\nRWbyW7VkmCfpNFhkG/xUDt62FD0KMSiPS+XmUnUZPAMomfRftDFsg9cYx2Ir\nWf0quK3D/TBpLRwyFSVmW5G5cOcLDqQWo1AyQAKuuVyIEPQRadc+aTwHidza\nqSpST/qC8cU05FG+lUTPW9n6uRLZLlYnQnRP5jC7c5lfxsQD7j5++6pGJkOv\nZvV2FYPeUUBKqWAZoMLEBO0ueOVL0mNyABB1WgsLk5r2loXSFZEX4EBzrC/R\nWwRWc3pqMTzNDMZ6UTHRAhsk3gZsXmVZmSNtr0tL/NE9fsuwF7fJks5lCaqa\nUIXK8j/S/BreQYPiN84t+9rVhtXnDtBcYZhbnCDsQ7msEwYtR5R2KKoN/SrS\n7eho\r\n=FQ25\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5d75be4b0e067fa5d6477869a053c630a67cd643","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.611db508e.0","@material/rtl":"13.0.0-canary.611db508e.0","@material/base":"13.0.0-canary.611db508e.0","@material/theme":"13.0.0-canary.611db508e.0","@material/animation":"13.0.0-canary.611db508e.0","@material/typography":"13.0.0-canary.611db508e.0","@material/feature-targeting":"13.0.0-canary.611db508e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.611db508e.0_1630552514324_0.6868441884322884","host":"s3://npm-registry-packages"}},"13.0.0-canary.d4706933f.0":{"name":"@material/floating-label","version":"13.0.0-canary.d4706933f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.d4706933f.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a14e98ac37159ba33d6fcebd2cd4a19345ee34ee","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.d4706933f.0.tgz","fileCount":33,"integrity":"sha512-YpKP1RMQS001BIKF7CYftlNAA7p+ZFNgMA5EDcun6EcJD6kJJhWMcoBzIAI4Z2rtEbbdHdblWB2Sj+phQlI2VQ==","signatures":[{"sig":"MEUCIQCpa7+f/NNjRd06krKW+uTQLBdT7wJY4sOWND9cN1wYRQIgZYX9zPrLJNI6qQamD7s8FntxxDxqKXysOLQ12/+NP5M=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225464,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhMO/TCRA9TVsSAnZWagAACpIP/1S6u11W3BmfLdUxO3C/\n+SYKEdsGPmCh8NEgX5jk55aG7h3IaYBhRPgTAHmaO8nZHyha+6qO2pRlkI+Q\nsAFd/0L91E2jTCOQrdtxsspxfbOpE9Ir5dq/dzpPAhCdoWESvD9AipVuOCrk\n3sQyn1B891hmh2FpuhGVCYPcqqxUEjiHJ73U4COz1GIkBPKyG+mMhttiaE91\n04s46/5nNC83PdhS+Y8ejGUN0uuytWdTd5q2up6TElNc2jK5ghT9Vh+xOEmY\nzyHGmsigZ/wOudTN6eNIult6lH3GvD2P/4Y9N5m+Z9bs90zEUHkInQ5C6uMO\nZIgv38nxmpYbLVPcyRJcQVBPGym7NTvPft+6Ay7asnbOzKyrcYhIQqQq565s\n3mOYkP/wvX0FhH+zXCHWYUwLlqnjCzSqctTVKrcJhlJ+lZ0qwniv9uLFwkef\nk3fafMKWcxWYuFJQYK+Zr7zhmCEr3cEzdaCxxDpoOsOkR1AwFjDhjYw77dV0\nVdhft6kSIcfZyuRuMZBsitrQ/GuwzFL/u+egdnRW/6eU3m3i6TwOblGMLhpN\nFWPVlRT/fQObPXWGKHbz6Lyhwm9pmahFOb5fB8wHsY0qIlCTNhAbj+rRLUv5\nB2Nr+yk8cE99m0veE2JqAgnxr7Hq7hqgrqUgD6yGlbgkUQLaNejXcclTbBwy\ngoc3\r\n=1ju0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"9e7edb1e0621060d55bf2765cadc8f2ffcfa0f30","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.d4706933f.0","@material/rtl":"13.0.0-canary.d4706933f.0","@material/base":"13.0.0-canary.d4706933f.0","@material/theme":"13.0.0-canary.d4706933f.0","@material/animation":"13.0.0-canary.d4706933f.0","@material/typography":"13.0.0-canary.d4706933f.0","@material/feature-targeting":"13.0.0-canary.d4706933f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.d4706933f.0_1630597075736_0.8268159756670619","host":"s3://npm-registry-packages"}},"13.0.0-canary.c16fe03ce.0":{"name":"@material/floating-label","version":"13.0.0-canary.c16fe03ce.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.c16fe03ce.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f484d9ac83b861c1afffa752bb10bf18838bc175","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.c16fe03ce.0.tgz","fileCount":33,"integrity":"sha512-ozKq3z8RL62rEp3PWTdzEP/p4dLBeRP94Cuiendgid0PStRRh+VMlNv5SHFrzz/v3vcXK8ZY6LxCdn78nJCEuw==","signatures":[{"sig":"MEQCIEIl5CPzQkfpPLxoWpeKETCGutURhW/HN5WdSvCuDT+FAiBcQ4xqFI99GpSgLsWu/+nPt1p0pT8QD3BRvITd8fRggw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225464,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhMQ2aCRA9TVsSAnZWagAAWcYP/iw7m2tSQiVgIWAJlgyB\n53fQ54I5Qh85WxJz2jQMotH7RgUR+fO3D3dStSpssfF7jA94rzTEKK5oCCsO\nQWkd9qAY48XfFEWKy0/Cjwsa1hzIXkau6mefSDrkW2SnbfjHmbkrDBc2OwnL\ngFBSii1GLRzPg7kPUuOlWj9P4TzSm1yEfkPm+/XM/oFrnRiiK7lkucBMeCv1\nHcUEOIMoF989kHFLkWe4vPczVHDPfxaYjpO+/+ZXaqwx+6BiBwnTqeOfC5I2\nFmho8Mlxs5H6xpec0XK9Kn/UvfDkOoJqe42eHJqHN0nVP7AbquWg23NcCH7i\nmN73ty7eBNQr4ol7/ISS7v3Cq1MODScOB41PRVVWKlzj1023z9Cv/ym7FYGP\nGSq0rHImF6EMyF8PcMWXLi0sSA5CW4kTi4ND6afvT41lN7NFOEbKErCZrAA0\n6VwqjcbLcRliK+sYf/RN9izlmuM7mm9taYy6uI1xJKvY3urQvWfhhyQn8APs\ncGWFowDN7DjnJSlTEs9aJju3npRSzGAtNv8WwCuE//vmf3xvtyLg/UC9LlLm\nxluCuIVldTNDgvUHRBfEr/KH5/cOaPRuYgNiStj12MfmPmo7YaMcdAPKsJwq\n5XzU1fEvjaFRDBNmnNqjXBGRHaV5vrNXyeiL0H7XWbnTSrFc+IgiZm9A3Vhn\nHbBc\r\n=6C2m\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"28281c91b41ff8002401a21d1210e0fc629d55ae","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.c16fe03ce.0","@material/rtl":"13.0.0-canary.c16fe03ce.0","@material/base":"13.0.0-canary.c16fe03ce.0","@material/theme":"13.0.0-canary.c16fe03ce.0","@material/animation":"13.0.0-canary.c16fe03ce.0","@material/typography":"13.0.0-canary.c16fe03ce.0","@material/feature-targeting":"13.0.0-canary.c16fe03ce.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.c16fe03ce.0_1630604697921_0.32648478590510166","host":"s3://npm-registry-packages"}},"13.0.0-canary.9203a958a.0":{"name":"@material/floating-label","version":"13.0.0-canary.9203a958a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.9203a958a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"725e3c460b12530700e0c9c19a1b8d47fb94a8c4","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.9203a958a.0.tgz","fileCount":33,"integrity":"sha512-roOiIr7V+kBOYxErvcSFIb2ou4wMealnIeQAS2OR/Dh35Hc2G+Se/xJkujz9tcwXtCkgayiidPimWNWvTyq6IQ==","signatures":[{"sig":"MEUCIHWqJ7m8Z7ngZFr3CFau6tB0Jppj2y8Rst4Ra1PFv0JXAiEA3uee+PruuC8STpn5wTNYoneuXgaETRRNO2LxGasM3pg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226460,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhMWJSCRA9TVsSAnZWagAAlFIP/RTBn5AfXCs4v2wv5shn\n1mh7kP2SxkKIqYHCNY+zdxlAnulydeADdHnBj8MrtiQPBaeTnRy3ALrx/z9D\n1mEHoe782vrZoT5f+gGQDZRgA/eaalqOmvPfpInYWHIXRhKvbkG3WnEFXUpX\no4l9FAIVN1Y/19JsfUvVJrsKeQXaFUl4sduMwAc8Rtxsf0YlgdCce7cP8Cc6\nYTtgb0COvitkdyvnEKMUavAfCJWjX/LmgiSjrjeGJEQSEvvpWNdgroBcbe8g\nfj2dNuChcMqNB5mebC3ycMGny9w5L7ekEuRnhfadchcwmm2lZLat8snwmp1h\nJ6HVztxp//jhBFNBRrZEDO9RNybYMwcIhW9E1E5aAgVyKZcTkTVydgvh73av\nN0+ayIpFf3LimQPvv+8Fbd1jB/vYLm1Tf28jmb38VwU1cmJlotb+N6dadU7G\n1KOhoX7VDwiesHRi7YJn3jpUJ73/YR77n/k4nNs9d16V+Fb7ZgpNghnMbQPo\nB0J3ytcpfBmqHuZ3x8O4nLHNeHPsb8s1TO+4X/GSHe+86hbUfCSP4vPo1j01\nLP/GyTa4OIvafYmGcyfgO1yy0iWkYWHWi4JRcP40tGBxYO/qqaIkLum3hWag\nIJOf9IYxyjrelWJuegYTSK65VtOWBMsYuTOk1C79OLTsldZJq1Bm3zqw4srB\nk02Q\r\n=TRO2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2e0f9de34d700b0d1eabd5186c5b5cf8080eaf74","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.9203a958a.0","@material/rtl":"13.0.0-canary.9203a958a.0","@material/base":"13.0.0-canary.9203a958a.0","@material/theme":"13.0.0-canary.9203a958a.0","@material/animation":"13.0.0-canary.9203a958a.0","@material/typography":"13.0.0-canary.9203a958a.0","@material/feature-targeting":"13.0.0-canary.9203a958a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.9203a958a.0_1630626386170_0.8753259993847937","host":"s3://npm-registry-packages"}},"13.0.0-canary.fddd5ae93.0":{"name":"@material/floating-label","version":"13.0.0-canary.fddd5ae93.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.fddd5ae93.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9491d0aa66d4f702ab3c22bdf4fd2d035373c9e8","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.fddd5ae93.0.tgz","fileCount":33,"integrity":"sha512-aLMUApNrsHiL8oR296Gxmu04OHgzUntNN3C4C7fHmamGT3uGAaDWHzguYeuX6nPJj7xHBs6ozHg1Axi+BYJlZQ==","signatures":[{"sig":"MEQCIFqYvpB4Ouru9wpLBX67WxThEeAPIPpVIJb39zH1iqhgAiBY6wTsdMtRAma3xXK+2Q5xNGRyecepmxLjcQYMepLBrQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226524,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhMc7zCRA9TVsSAnZWagAAQZEP/0ClwrMIFBODNmb5bDh8\n2Xj3/dlJ8HRG1XeZwFDM7RMzO17wSChqO5n6ypBsnzeFA0gYbeyKqNZusQFW\nyPEmY6BHWqBSTUl8udvXhHTltWxbRIN0kEHJ9z26+A5MrNq/br7fNc1OZgdy\nFppdGaLNL0wK22bQQFnEJfTqwnUXUfO/c7IwRZKytiCuOcgqabXrM3yC+s20\npJ97j9TiCoimJ1q1EuPZPX2HJw0vHTk8MnmqADFL7CkQs6m1YAT2BQFAwxSg\nMgQ3wqf3q4MMUnOM2D1/pgu6vLWphhQBkEN7xUIA+uass2dGdWyNXEhP9unj\nAYVdahveiRNrDn4q1PMtvT6zDsffbNJZ4UqnNCT9wQLG+wD2okP3cL8EzS07\n+NWYJLIAniCq7nlDTdyiWAm9tSgtylj1Wi2B8ofGejbTPFNIC1FuxVXY0qLg\noU2SA1dxgLbKaiHl3+TlofEtD8ppTVyXIriggK4/B1qwOY/v1sLNlmtVLsdm\niSVpFL9+c8+4v6s4T5fAKT5wsqEvzvu8Qat0XXDaSAQDDKVxz7E6nwQLEaas\nc877/XOJk3CRBfDkK2iMKk84OClHToxHivjls4C2zXh60PTy0cbf2/MTrwRi\nK9wmQWa9kDSV+ghV3BUtb2G7n8MT4cc4ZDDD+qrqWI/TI2p0SqgBuTCZrufo\nIw80\r\n=2Wy+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b5407901afd7b18f851e64db0350e0c38797ae29","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.fddd5ae93.0","@material/rtl":"13.0.0-canary.fddd5ae93.0","@material/base":"13.0.0-canary.fddd5ae93.0","@material/theme":"13.0.0-canary.fddd5ae93.0","@material/animation":"13.0.0-canary.fddd5ae93.0","@material/typography":"13.0.0-canary.fddd5ae93.0","@material/feature-targeting":"13.0.0-canary.fddd5ae93.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.fddd5ae93.0_1630654195706_0.7624936089871572","host":"s3://npm-registry-packages"}},"13.0.0-canary.117599a8b.0":{"name":"@material/floating-label","version":"13.0.0-canary.117599a8b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.117599a8b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f23ef9cbfa623f033d20ca4d199d8e5cbdb98e97","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.117599a8b.0.tgz","fileCount":33,"integrity":"sha512-YamF61yuoGEyzh0aULKwT5eEa2zmk/yqRZBk8oLBBH9y6elBa8tYZEun/JKrTOD7w6vNbWcWXSEwladxXkXV7A==","signatures":[{"sig":"MEYCIQDxAFujx4svNblDedU8Qng5lyHuVzTLBwl+cAi1d4kDnAIhAN32AzrPa7wCbqfuqqNwkfG9keS1q3IO2lrXDhX5gUYU","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226524,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhMc9VCRA9TVsSAnZWagAAYk0QAJi4LFUSOJcPi0bT4lyn\nzZ+ZJExyfe8Drunze0x8PBChG13urXieOzo7D5L57maKZDclts61F3FbwfWT\nRK009N6FuxziNeSziTDZaWNEqK00jgrO+93MEIrD0DrBGzmGJwxIKwMRvWrd\njNRmKc4P8rhXbuTQhWb5TDSwTV2jHXWUKGWRL0Ai9fFc8KNfCbSTSAOJg07C\n5hIAJl2vIdp5XUbxZp58Fb9vmEFRaHqn13BbtZOKFHN5Xrm39KGwNgoilkpL\nPxtUVsZTVdB14FsGRyhgpqvLxhVy9sbLaXTcMq90coY0TnDeXRMFVDQzibvm\nFzbXSPJX4+brWQiiCMuiKKC/zVy7WXqcUlafL5xcFsmwnd2V3H1cmnTPw4R2\nbvHR4i06x/jSvbvhxhiacnSK0eMJ79HkZ5H9eozYyhOUyvW4024hEjTEg72Y\nZZqwU0FQiO3NOV5wXdhH4S7Gn+3wMSFFAR69oZczc4ThzFHgF6GK/MDqvQvq\nO1PGfbbJOCDSo/IQqEWpuaTgaSmq2gAfP3fqsXmm88fl2tY7i60hUAp07n8K\nlXAFwTVZDig7u6sGzBKX7LI5LrqhFe8b2Md3KEg6kGWFXBvCSK6D247j6j6f\n+REIQSO9h9u9y1mRWNWg2FByhyuQShz2xZyKl4+2g/rrEMqm7Z9abmzEOODX\nOD2L\r\n=K6TR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3dd17eaeb796b36aeda593de120f16c60ff06a0f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.117599a8b.0","@material/rtl":"13.0.0-canary.117599a8b.0","@material/base":"13.0.0-canary.117599a8b.0","@material/theme":"13.0.0-canary.117599a8b.0","@material/animation":"13.0.0-canary.117599a8b.0","@material/typography":"13.0.0-canary.117599a8b.0","@material/feature-targeting":"13.0.0-canary.117599a8b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.117599a8b.0_1630654292973_0.1177482536556298","host":"s3://npm-registry-packages"}},"13.0.0-canary.e4180d07b.0":{"name":"@material/floating-label","version":"13.0.0-canary.e4180d07b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.e4180d07b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"abd3d1f5cc8d414ca2b3dab141cd5e812fab8338","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.e4180d07b.0.tgz","fileCount":33,"integrity":"sha512-Vvnz6emhoTkW42wwDm8xuKdXlJla0z5tujUgJmAMZjjNszvC7wNk040PNXs36N6bfQpnfcZUpr1hOo/cuhxctw==","signatures":[{"sig":"MEUCIEnC6MjpyIOy07WCXjelsp/7AhC4VidlDLctdXfsrZunAiEA+upyT/pUV11g1vhIcpamSmFY8JYy7hvJn+d/MTCeKP8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226524,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhMc9yCRA9TVsSAnZWagAAL+4P/2t15TFyYQAr8dZdTtvr\nx4sbNCzqtXSGrE5bJ/53lz858fjwS5IB7K2UseXW8PWlomASuQmSeVM2LuIL\nF9IHsDflXGsf6lHjtRUkfs8XtP6LvjSYUsiUlz8mYb8u+6I9Dy3PM1Y6BfhX\n/6pExtY5dh5yR+ZoftMliHykRV3BwThTVk9aIShGWrayKVNyRFtrHKzAQ9mu\n+loQXFkvYodasCWMvtAnmlDE39iHiVJB/zyU++WYxR6M0leQbQNECyRjnDAj\nEyk6wrDqlpjA9ND0QnUlkfcRaxFrZNenPzGb1hOTyrf7kk9xNf9pDyMsDzup\n/5xyyCI79RZBZukZaovCcV8OSrVCtoJ9F415HTMUgOHU2+I42q5ZMR/4Ly8w\ntyt8brtwNJ/Ajxu5dCd3eXrpHQ1c2iCS8woFZpIUSyMDAsmdpA6Y0Ew/VOTw\n+tgm/bcZM9LvI+mQQb91WvaMUeqppc3Mj0uOk+eV95m3wZPeofRpvc5A3A48\nn9J/7oKdYHcfOHZjWJZVkVx9sDFge3dvdIXg1CiwcAKhqyX5RO4VZFQdN4RG\nwxm2eqT0wTfmg4S4KRAWMpquCVzGa9fYybaBK8J7tssP/6DmCNCdxASDa41+\nW96dbQELHwf4mM51a4mCrXMn7n/UWuE5NkW0peF13iGdx5B27eBoY7SLQTr7\nk2a+\r\n=TwCM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3b94d02f75df256cd0543dbdf5062823ee527d4f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.e4180d07b.0","@material/rtl":"13.0.0-canary.e4180d07b.0","@material/base":"13.0.0-canary.e4180d07b.0","@material/theme":"13.0.0-canary.e4180d07b.0","@material/animation":"13.0.0-canary.e4180d07b.0","@material/typography":"13.0.0-canary.e4180d07b.0","@material/feature-targeting":"13.0.0-canary.e4180d07b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.e4180d07b.0_1630654322062_0.31041113842578905","host":"s3://npm-registry-packages"}},"13.0.0-canary.42d175efc.0":{"name":"@material/floating-label","version":"13.0.0-canary.42d175efc.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.42d175efc.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"60fce76b3c85c398773b8931310b949ad3c843de","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.42d175efc.0.tgz","fileCount":33,"integrity":"sha512-r3Fm9IcSjQomwdbLmT5Gh3QVw+rSod5rOxtvCjh9DpyTO96EXqo85+MW+T7cQJaEAKs4Dt5W5t04UDpXSx05DQ==","signatures":[{"sig":"MEUCIGNOQf3PTSm6Anf1T/sR8OLbuomckiJUm86disyJ01sxAiEAx3xPcHrloHUxubHgcEBQefZYifLGBLJPILI3oo2AhB8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226524,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhMkJ9CRA9TVsSAnZWagAACMYP/2V+mpr+e0ytJLvmOGB5\njnIm38J4NDU707fsQx1h0CueW7hA0tuXg0B8Iu4Xfwdd9w7fmYCTLRY0y8bU\nDlhV2LJkEFWyjMuW7Nt0GCAwOZlaPBaFz0hihBKg8vt61a+t6bq8BCDMzcLz\nYuwtDzgmYYNOXBolvJAMw1SekNTe67xAXgYgXuG2tJd0i73sx7tA/SoJ4+nb\nyBbQBi4R9YG0elpGweBbHMekRqGjopsxnRX9Ruc5W4JGHMb1ms1dOohrZTkr\nRtmL2fl/MVuseLPnvM2jTMfLj2O7T0sQL3WgNOcYy/92AE7cAFfSj/5rHMbm\nLdBojrXMN1x2I0XJuQoP/3KZO3+VKs+McXmZtDk7Dx7LrwuxtNrsbKkzSbiN\n6LU67QBAjiTKjvz0KsaBx3I6vz0A2uQ885giebLhn18gJQgpnOI9otFbx1c/\n73YsOKk3oZVKszzx7jRvTft+8TDK8qnIy1mmu8MxjRCJ3xW/BgBedi+gtXKp\nI8PzRx4AOgIhsyD6BNENWTM59ZAQ8EwkF8PaRDvzJPECwSOwTWICp4jYYSFT\nk6MI8i297z+3RudFHF6ZHBypJQC5r1Ty81uClnuF2HX2plhB6s9agZw4EPx/\nPse5w0mM9LDXl0dzsa2JyGnVicCM8GHlwGTlLCBPfFTnZ0/flkcKEHBuzVZQ\nT2A7\r\n=UxFC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"64e749d9e76a60e5559d8b19e4b57da1f44ebf0d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.42d175efc.0","@material/rtl":"13.0.0-canary.42d175efc.0","@material/base":"13.0.0-canary.42d175efc.0","@material/theme":"13.0.0-canary.42d175efc.0","@material/animation":"13.0.0-canary.42d175efc.0","@material/typography":"13.0.0-canary.42d175efc.0","@material/feature-targeting":"13.0.0-canary.42d175efc.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.42d175efc.0_1630683773077_0.4765691349905734","host":"s3://npm-registry-packages"}},"13.0.0-canary.72464476c.0":{"name":"@material/floating-label","version":"13.0.0-canary.72464476c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.72464476c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b87d5466b01fd0bbb4bcb3f7993f03b578245647","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.72464476c.0.tgz","fileCount":33,"integrity":"sha512-wBOFpbqO/y40CP61jl01j8RNBrv8+cCvzSJXlgfkFQmk8pgvgdiFNJTscY9CWdliUnn2G7uvP16qjflXhVWcDA==","signatures":[{"sig":"MEUCIHN9L+Osi7tvoEJS8YHk4svcdfHznmY2f6XiPtynJ2HCAiEA88r229LvVdnSYohwIhAPg9sN1P6eMhjyl+N1rNxoTOo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226524,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhN4Z3CRA9TVsSAnZWagAAQLMP/31kYMam5Skn5SGjpzzV\nQKoJ6MI2UwIB/MeQeCwRftuL57T+J+uf9sXAmxzPtN1hNWObSoPMUjbyPslE\n4J9IGBPogGghPS9cGjW/DHXeFdrrkLyNDGTXOGnv31MbsIsCRP7trHViGfOV\n1W7pGeE/z78cJ9q9TDPrqLAQNxkSc/vF7QHf74UqA3dSQEHP0R7fydEpy7wx\nqF09s6EynId1chfEVwcKeXv0I9iZEsnqfOfi7yP3n4S/pOz4zjze3eYsmR/M\nGwITomgDE8F+470uKTAAeh74fxq6etMREAW4yt5P91/2NDM2I91I7M0COobU\nPLPKUChxVoLCheOkITINwq9WB74AsYx52hmevquoQm9ZLzXw5hkb6NvEcl5L\nuTwtdaRe1xlwdB4K600Nc0teVQ29oCtsS5+eUQoYmEjPtEKt4RnWiC/+juBd\nJhtjed7O6Sr/1CWxLxMVdnom+qjTavP+0EtluOOeZf/YHb95jL0bSmJHiJgX\nI2IiFoThMsNyfCPMw9BEMMwToTH6wZrGnjyNhtblCEAU7NgQiiV+qHKeW3A9\nuvFsfjkoYDzHshzyRKWlf+bRjcrvVg5xVPenRFuVhixsgbkr9gcyH063EcIT\nXk4lV7pfZvePDvIrYk/HIlYw5CIDhZWQC75e6HEYKLpBIDUDyAqB7CVE0Obw\npU29\r\n=0/Jv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"4c409a18f3ef0a7ee6f9b223a514471c0515b639","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.72464476c.0","@material/rtl":"13.0.0-canary.72464476c.0","@material/base":"13.0.0-canary.72464476c.0","@material/theme":"13.0.0-canary.72464476c.0","@material/animation":"13.0.0-canary.72464476c.0","@material/typography":"13.0.0-canary.72464476c.0","@material/feature-targeting":"13.0.0-canary.72464476c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.72464476c.0_1631028855065_0.276436391465434","host":"s3://npm-registry-packages"}},"13.0.0-canary.37d4db866.0":{"name":"@material/floating-label","version":"13.0.0-canary.37d4db866.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.37d4db866.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"11e173cba111ed7de34ca2d41c6218cdeb5a634a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.37d4db866.0.tgz","fileCount":33,"integrity":"sha512-Tvw0OEbPsw5hl14NVwScXdt4w7Vq8mt7Wbp2G7qU5nWj7nmlQPwT1hUw57yXndfiCRykGYXMGgCG6ARgZLKp0A==","signatures":[{"sig":"MEUCIQDya8NRCjLrDgNq/TVy5E0pH6usTEQe2QFrN6CJQ9wRJQIgLIkFgqGQ2UCp+VqhAvG+01sl3TRp2Ojc8oYRCUw/Dns=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226524,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhOhs5CRA9TVsSAnZWagAATz8P/38CvHcxHXzFxsvJAsrI\nRriC2zXOsRd3lR5Y9fr0Y3aX+fBskmqqX4D0kyqR9qsXvFNe3KmTrzvxSBxx\nW9vYiaue6xt0VtVpJE/uyMugzM/bnXWf6/zc8Xxt8IDRSZFoj5EmL5d0nRfV\nLbF/mCsSyhmWiW7uWk2OsuJZO9CqJwaOonX8mwaNfoi7y01FYlLTqxRNWtRJ\nRJ8M8pJqt84jiTgBVJEW/05uZM5yk4lr4HTABSUnCcdQA/ufxnSvXW8cL8m3\nAJOhgqr/VDomeRHBOO8WmAs5SCWP9qmiuFPRwahTOijJ/maOnP2uYWwtuv5k\n/5wY4yy+JvDokWM/yRwmKffEt1z+OxbfTrYwMEWFkSCMDvxrEoAUMBzFK8Zj\nvXZmGTkrwGeIYCigl4ZhOduzNtnDsCy9n66C5XlkyRZ8XlLzUz14YqzeFlMF\n+54MamRuaF1adlbJz/01nDId+gNgvmd5Y47cqKE3Dah3fkAlkOz/ThvMEIci\nF5MmRnlOMvrB6doKZnoma3+hbfMxXiX9QKHCRcwlLb8IEX6G+GUahFA7GPwu\nvWUXA3XA1opQZYIT1ap7BbNCTGuHhn1+ur5nIG0cmyFsFNB+iTTWlefJVUmP\nNsekNJqSaBmpE9Kf/DdvtQImFiJhOr74ZqtCyF0PMygBGN4wFGxGtld90iQV\nEOOP\r\n=GYyL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"25270b452713f831fa1adf302fa3f2c357ba759a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.37d4db866.0","@material/rtl":"13.0.0-canary.37d4db866.0","@material/base":"13.0.0-canary.37d4db866.0","@material/theme":"13.0.0-canary.37d4db866.0","@material/animation":"13.0.0-canary.37d4db866.0","@material/typography":"13.0.0-canary.37d4db866.0","@material/feature-targeting":"13.0.0-canary.37d4db866.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.37d4db866.0_1631198009257_0.7753889508904126","host":"s3://npm-registry-packages"}},"13.0.0-canary.6df682e74.0":{"name":"@material/floating-label","version":"13.0.0-canary.6df682e74.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.6df682e74.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"aa2f5aa681d5717ad0c15be7d91882ccc97a146d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.6df682e74.0.tgz","fileCount":33,"integrity":"sha512-6pdIGrZWRn5L/UoU2oKw2SfpoBbjNjYDDadEbBkfr7YD6i0R/fuY7r5fnhff5KoymG2A6k8Gs8F+IHeK9L/dag==","signatures":[{"sig":"MEUCIE1kgaLpfeJVNx4fqyE/85VIBQN4wk/HbpEDAqpSTpzIAiEAi2Ud3h1EAo75/BRdVl3+9zZNL/RkqJtq/1jb3PlWqnI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226524,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhOiuRCRA9TVsSAnZWagAAhqIP/27vATzq8Tm+CsiWWPPO\nuoaSQONGT/P9jTSBxfRg/SO9b9HK+V5mHWFRAt5YCzDYqs3dXxhk35A+dHB6\nyOrltrYeTAPnNROgDO3K5+NlR2f02pJRkv/E0tFc/3t/AdPMSVut7ZylByvn\nu9IxYJ5oj3WwnE+qjH5SF9bXLctmFy2awctKqLeVIeHNuT1e3f69IZq3zh3A\nzyiPH06sn8HiDwn/WmAdzoy9jGiYKE9blCekKt/nCZ2ksvn0Ktjf1HDWSFpH\n8+kcb/Q3upQ4bLfgDrS0hshIH96YU6WqE32DzPKpjSj0KSOZHyB0ANlzTFhl\nyspptzgHJNjfeD3WyIKrgM2xiT5r4+Uv4c6YfooLBUndIegCqIkJW57iedkh\n0bgIuROsEdnC1i7FdZLAAwYugxDpVcQ/92bYdSc75RVByYns+kw1EhhxdHh+\nT9sPD1rH2a8is+1O0kwqZE+2ZTkmGLzgiT1kgL79yLEry3GSRfCU3u/zui7k\n8F0MRy2VeEqPqVaYRX0xy/x4G7NRTYxJ+wPmD7kDWtDdi+CP8TfibibHLwYa\nlh5OnFnpN7fraXqGQXCGp8A0jUceV5501y8fyG5QcpeCG4hkeGQz9o3OiTWH\noFlvdR7mBpxg1dTmngPx6zaek+jKOfO3wNN1p5GJGg2GWiIAc032gkKimxmx\nKCGX\r\n=jpNT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f8640926b088e6e6fd8688e2bf177fbb60e83f2f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.6df682e74.0","@material/rtl":"13.0.0-canary.6df682e74.0","@material/base":"13.0.0-canary.6df682e74.0","@material/theme":"13.0.0-canary.6df682e74.0","@material/animation":"13.0.0-canary.6df682e74.0","@material/typography":"13.0.0-canary.6df682e74.0","@material/feature-targeting":"13.0.0-canary.6df682e74.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.6df682e74.0_1631202193526_0.8680409337515691","host":"s3://npm-registry-packages"}},"13.0.0-canary.b49359c35.0":{"name":"@material/floating-label","version":"13.0.0-canary.b49359c35.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.b49359c35.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"cdaa9fb6a38ee65b7d5fc566903883621424a753","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.b49359c35.0.tgz","fileCount":33,"integrity":"sha512-rlc8ijb302pnGb7rd+89YVZOVZ2Iq9hk6tqEUTuGbZeFB2KIYRatAVPwfXVlVD9GnCh6S1Ha7Yc2pUe/a1CaUA==","signatures":[{"sig":"MEQCIDhcEUMfCcq83cMJR1GamKJIGnZbXS1LNQgfwfGceMkqAiA/la1kEnxoc4gYy4+NWKWns6oQacCIeZRNKZxaatjuBg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226524,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhOkXiCRA9TVsSAnZWagAALp0P/RJJbIID3C+J17WwygSN\nanO71lz3LEWSyijwMeAChuPtWMWmgEg84rRReURYisB/QerVCEbItTg+7tGh\n3wAyx/BjFGpAz6Pl5WppeJgw3zzHaY318IhaCCxIq2WQhNtYnNO6pq3pmCQC\nZnq7EXA21y+NqCRDAT8d+ORTsWMgEImKHx/yh5mbL9fo1gFV1PZQLMqCLOSb\nialG2qWqKtHSjSZ14kJsXUDHV4z/WhRXbuLTMsdqlHcZ3F2LDhyVquUlASHg\nceScM8W8s0FgxoJQcVjVWWIOWoUDXRuHz4OEUAwb/CdSNZOe4Sv1/6qlMhpN\nCmVAzBSCtpxaEv/zK7+PzG0As9T727hn+EYAvYV+H4EbmUAn2d/Xf2Es13j9\niGMbffmW5j2lHSgFwYleBzk+jnXyqGHrEUicRgTbnWzGdcCjEZj1E9Ev72o7\ngPLpfPLn0c15fIPd7DJiZ6btB/X1gfW09Oot+NMsIXQ7wzty/RnQTBwxDnvP\npTVsvk4GDdlnHmqCweUpk+I/481VuNoGVOxTL0GPQ8ZlmPEnDMpjefxq1k6Y\nY9C0x+z0V4RevcLntbF2NdFCvkyWkjFL0/LYZ9QyPlCHeBTUc1J8rbvroc6h\ni+0CD+wtikrc7N8//Gf7Kjh/58j/srtQqz713xyVCvxfqVQ72CQFkvZ6Saj/\n5DTx\r\n=K2sS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"817b18da85c93007b9b038927a1ae036f98f686e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.b49359c35.0","@material/rtl":"13.0.0-canary.b49359c35.0","@material/base":"13.0.0-canary.b49359c35.0","@material/theme":"13.0.0-canary.b49359c35.0","@material/animation":"13.0.0-canary.b49359c35.0","@material/typography":"13.0.0-canary.b49359c35.0","@material/feature-targeting":"13.0.0-canary.b49359c35.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.b49359c35.0_1631208930387_0.23878662970342557","host":"s3://npm-registry-packages"}},"13.0.0-canary.470bd34e8.0":{"name":"@material/floating-label","version":"13.0.0-canary.470bd34e8.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.470bd34e8.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"52636530cc8c0bbfb096895dcafe4e822616f3e7","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.470bd34e8.0.tgz","fileCount":33,"integrity":"sha512-Yx88kRnfDJV6QGOstXtHzWGYrkqy+h5rGM4vJfte2JwisWVWH8NUEdxJyHZIToBykTSOykiZKQNomewZj6NO+g==","signatures":[{"sig":"MEYCIQCuXUR7SLgInLJmwcax5DddSYfWFr7u8tnKsv/mUlX+SAIhAN9EMo7CuCWOjgMLhYcdHZU8PHg8Q9QPvYOnF4lvKT3Q","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226524,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhOkvjCRA9TVsSAnZWagAA16YP/iVq/tb+X1qyQzmJ0Tvm\nleYuSc/J2FprKcHugCv7IuGc/veqVnz6JelZUYTAgK/3/WtLfnJ25Fd0fDVT\nmAn1hviF352wmvKjYDWdZ+57/CvuyLT0cl0mTiKY9yYfsUEGW3ih4cBMYYgo\nJ7YN5BlRRqg6e+nEFLUquAXFD5QtVGtWeNl1Ne854FtijeLGEX8XiNIbTz0R\nk3h3DAD1U+8QzNaW9xbmyUcjsGpU+iQmug7Ew75sjC9UA5Kw3dOYjgpFmnUz\nU8S7kNMO0P6qzWoT9G1H/PaXNhRhs6AmLVUMYPWMZXSQUuvi6YJjkijxAAo5\nvJs49EHJOAzYWn3bkwZ6+ooq2xFdeK4K+uCZe9DqzLkpXKgDjKVOpWBVIU/0\njnmb42gDqBKsFAYoiXkJYLhQwZnXIEV7eXtSZ/DLeuG9PFn+3FAUGu5y4azV\n+Yv2jg4+e6y+EBcXqBfhLeAz0KLSycAB5cWrnGPDws6WsA0DIp4oVrQxY+WQ\nA18bm4yCNawUf26JCOhD2el4muqs7aCj8RnF0X9H5tjqacp2htJMkNsKUSAu\nGBZQAYyEojie3/OMVnG/rbzhONv80+DaS+J0Bzui423rhrzrwOU/vjAxrUlb\nid4JW5qCYb+SKSa3j7bX9mHBbzbzYiK9DkJRgcq/Wu9tzF01asE5CDisyPgi\ng6We\r\n=XaTQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f249b00e3cc067fbfdf722d71dd85392d031ca0c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.470bd34e8.0","@material/rtl":"13.0.0-canary.470bd34e8.0","@material/base":"13.0.0-canary.470bd34e8.0","@material/theme":"13.0.0-canary.470bd34e8.0","@material/animation":"13.0.0-canary.470bd34e8.0","@material/typography":"13.0.0-canary.470bd34e8.0","@material/feature-targeting":"13.0.0-canary.470bd34e8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.470bd34e8.0_1631210466720_0.5910767256477019","host":"s3://npm-registry-packages"}},"13.0.0-canary.d48a01771.0":{"name":"@material/floating-label","version":"13.0.0-canary.d48a01771.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.d48a01771.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7274bae1ac3ae3af474b1b9765c6bf522e742228","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.d48a01771.0.tgz","fileCount":33,"integrity":"sha512-yobouv6EsDqDMHBLLF6uVWjV0hLNGl6AY3sZImnbrD/7HBmnZYaAHdPI1pkFlwZKMRt7VtNdZjmPH9JddVB5MQ==","signatures":[{"sig":"MEUCIGNkbsvuGuxKHAU4N9kzxVErl0wxwsh0bw43lX7TrppmAiEAglM9PgCPyt2H69plZ2izIsLqvtFjiCQzV9LuhD00spU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226524,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhOk4PCRA9TVsSAnZWagAAGKkP/itcFh+u4m8zsD9Wn85Y\ngH7hnDDrSKi1l5U3cJwhaAgOZvj7uLYpqWKFaNl3xHijet0QETk0AaUpebPu\nGXAq9p3pAtA2DKGwQNvdshJkPJSDW5wN0EhPr6GVaje+Ixnwst0aeXfx6l2X\nAp8GlfaKL3Hx33i2hKkG8qghATArJls3YoKZ8fg3/fPJWcjZZsqdlbuiFokY\nai7yLeE9aH66kr3ZyFm6wKIh7z2Qooas41+MNe+lIURkMU6CSG0UDjrXcihB\niuaWuYV5bDr4UptehDOlYlxx3mOhV2ud8q6DmOyUPEYzLQzjVOLsZkJNppUH\nWkT7Ul7Ee9Dtj51h8EigbgVm0Rv36Ud8ATH/q+5q/VqWKgpJcojo9oe6lHE4\n9Fy0ke8+9xRAD7pALqI0OD2DidRoRpK7p6fPHJvV2HeK6l9fMT0AzjvABKJ6\nSKy5l1vuMcoZOWiCyLaXv8J7nkCoc/pCWZzNM6ztC+I1SDJhFjsJiis9xgcf\nSrV3vG+jeHaEkMCVmBudGCSvtZaX8H3lbeN/g9l7zV174WeZ0QpFjdHBC0Bi\nzxYoSihvj/FW63jgLc2JH3xJsa9LKju3sD3Xi3PYb5IRwFdpY+Pi1poRQtBE\nb4wwvlRfAoqwoaL5KXgVUwotnhfVpNXfGf8hpdotUxdtuDRgwjw+gEl+yrge\nBUQa\r\n=KSol\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"6796441e86b583e99919b207640bd02efef6fdeb","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.d48a01771.0","@material/rtl":"13.0.0-canary.d48a01771.0","@material/base":"13.0.0-canary.d48a01771.0","@material/theme":"13.0.0-canary.d48a01771.0","@material/animation":"13.0.0-canary.d48a01771.0","@material/typography":"13.0.0-canary.d48a01771.0","@material/feature-targeting":"13.0.0-canary.d48a01771.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.d48a01771.0_1631211023341_0.34807989248648763","host":"s3://npm-registry-packages"}},"13.0.0-canary.13db34b34.0":{"name":"@material/floating-label","version":"13.0.0-canary.13db34b34.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.13db34b34.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ddceefaef48024fe56b517e4a20ea5ce0a56a616","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.13db34b34.0.tgz","fileCount":33,"integrity":"sha512-xnIbx3hBbmMvE6q2PLju6mvcmQQFdkuo5PHConrgGcZohs+H2lTpqycL/1HSrMyXId2zcu/ZQjmfeTZGg2oUcw==","signatures":[{"sig":"MEUCIQDfyYmmG9KVE2o0hJRpvE56y0JOQqoG+7JwDD6vs299SQIgXf3qfStzbCP4yT6mOFIxQ6/kkZ+i6J0B7KAc8TOnbY4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226524,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhOlGSCRA9TVsSAnZWagAAjqsP/AwU+w14WY3gBs5y0xns\nKszMcga0/d4OMBjFXdWGVM2VEn9XJUjdXsCZKFKqt/lgHK2/ck5UTxSagOJH\nyJ2jItz4Yv/BVj7Ki59U4Q7a6CcsfxjZucomo15nlwSOU56ugnW9L4TZcQ+n\nCCQEZKeABETBBRhuLPGdxEFhAJ8ISkMN4IPboMjkLybvvWQfKYkSce71dk+x\n6K+G4FCoMm0OIBDN6jSvF2Ym4C9XUTerGj4AYWUE/tijgCwas3nxlpWjeCRd\nrqXdZdUkGSa1NRkXbGtKdPhXCAIzxG4+lrNF75UaVEkHB6k6U+104rLjPinB\nwJ+R0CCcNSRxXt6CMD7Awh20OA0kgl+IMjZoedkYoguxRlzQgzhbh2lcIMdG\n5GzC86TRfu3pknXSkqUE9XVuD8uhkp/0/rCfTIwemOXIGdbwUdbaX2NeK2kk\nWcFwfQ9GmCj4MruOW8jkeI2sFL5KdrWAqphdhKfg2YExIa64/yaxF9r+8JDE\nOElFHQEXyOF186lq3PpHOa5tOmJnXfbwipwYUXs0e0jJLMZKwN5U5ILS2KIm\n6pjqT2bNRJsJN4d2n8vMpDcyS9oqzeOrV6WE7AbjpWl/pKoByE7RjDnb/YKX\nbXVK6JakL63tkTz+u4pp8S7iFzZcTMUJyClSBks8w4NtbXG2iDsnIHEP0GQv\nqnKD\r\n=81sc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7883b32c9c6a3280e801925b874df667e1055809","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.13db34b34.0","@material/rtl":"13.0.0-canary.13db34b34.0","@material/base":"13.0.0-canary.13db34b34.0","@material/theme":"13.0.0-canary.13db34b34.0","@material/animation":"13.0.0-canary.13db34b34.0","@material/typography":"13.0.0-canary.13db34b34.0","@material/feature-targeting":"13.0.0-canary.13db34b34.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.13db34b34.0_1631211922173_0.12435477850213994","host":"s3://npm-registry-packages"}},"13.0.0-canary.864798678.0":{"name":"@material/floating-label","version":"13.0.0-canary.864798678.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.864798678.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"510b2ea9fa8abf2f11e4efe7891f88def7f0ddc0","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.864798678.0.tgz","fileCount":33,"integrity":"sha512-QK+2GUpN/SJZJz/DaST/7yNoLktm0lhezm9G5gR/x7DzQp+XRJ4k7mFTj8WOpq2+OKVq+OJcam2PG6KGPkwfnA==","signatures":[{"sig":"MEYCIQCJMN2fEd49eXo396lKrzjjNFbR+3iFwbYNX+xcNe574AIhAI4sOEVAJLoS33tGVjaJxRaknscxc7LfpCknMj5yOWQI","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226524,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhOlQ+CRA9TVsSAnZWagAAkJ0P/j6Xp8H1Cmo3WI7HrkH+\nWiNwc/+h73WFkiA2xQc0673WdnglsWORUMLdOEQl7+qSSJxxBnuyhR0YX62Y\nv5SBQeABvAA+6FNnCnhKXS2WKXeW25VFeJpM4VJiS18UhMaT2IYl/6KjkZKM\nt5aar4FIPQ5hhWVsdJG5L79HSxDFj8uLCElvNs4ZOpDY85gTQZUAARbFWfch\nMvZDOen91h3VHI56bO5jCbvw0Dneg6mOpQWeBH6CWdSsSXiDCTIGWKlHoeRx\nZQA/z6FYTM4bANhusbkmnrXgDO+pFtg8vrLNLGtkhWIZacM/hWt8iOBu0TKn\n+E2posCNDkZyTAbZ0ufkSpotFCCzLd/7JblDGbUvVQGv6ur0V2txdtvGd6sF\nbDXd4kNVqcPVMORB9Z74/GrQyeF9PeIg7dbBX7OaZsLeo9GqUzf0UAZeAN+V\n2Ji/uYRIbq5iPpdIdYiGR+9q9IOD7Hf08628G1tP9ol/h6qhJsaLUFl8PEYb\nziry6+9WvYecuFzMO1eGR/eknT5Vi9T5GJq51Sd2tJICeVIIOYzjxdppEcHU\nThzKTsp9jm3nELyhWV690NYpc0cYtM6e3wGCtZUOOemHZ1825EQSWFP3qJ+n\n19oXJdfpvkq4Ah8zWbjdPbL93OjHXutOJqPswWKg9R+Y3I6NMEiaVPOxKCCU\nk1a/\r\n=RWmN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"08d2ae683a56b5e86f7a54eaf5a2090fd4288df1","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.864798678.0","@material/rtl":"13.0.0-canary.864798678.0","@material/base":"13.0.0-canary.864798678.0","@material/theme":"13.0.0-canary.864798678.0","@material/animation":"13.0.0-canary.864798678.0","@material/typography":"13.0.0-canary.864798678.0","@material/feature-targeting":"13.0.0-canary.864798678.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.864798678.0_1631212606172_0.6689633292792323","host":"s3://npm-registry-packages"}},"13.0.0-canary.d04bda3fb.0":{"name":"@material/floating-label","version":"13.0.0-canary.d04bda3fb.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.d04bda3fb.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"51601f4311717a208e7acf5e61c19cb2a3580998","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.d04bda3fb.0.tgz","fileCount":33,"integrity":"sha512-t7f7lrx+htq/P/LBYA+LPNzToOFxT3nilcADIoBzTB9iZP7O7ZQKq9Ile8dq88ZuvlTptjOnnXqotdHhpBeFfg==","signatures":[{"sig":"MEQCIHYWtofHFPBWep8n1jEOKfaDW9St64/DXMpRN4E+U7aEAiAWdfAVBkyN1CMdB2EJZjb+LwlfmUCWBRb8LvjgxxMWZg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226524,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhO3f+CRA9TVsSAnZWagAA67YQAJLPPH2psTcauXICfq/H\nZTlqo8mJ2Ce+p5LbmQBcsn7h7+GJl7ytxxi3zb6igIPb0oia3SYdXZ5KBIEl\n/ABeqXQYQ03cZe6wK22j1bjqQa9zsLW7PGzFjw6QiTG2vJta4BFCFYizZZMe\nRpn764Ntnz1zMPL8iHTFXeoF0XTeUF0WVJqsjODQhAVvFpvWcsn5pJz7g3q+\nisTu6b4PkCZt96EkwJsHIVVqN2DaBUN4K16Z3ycehUkQUp2qQopnMUzViLk4\nuMm4q5NGLM0ufsHcHG/UjUBRC05H64yMXaXrYVAnpGzQB7OXXgZvVd9gjFga\nu2f+Q9ZMhyOa7jWWu4Cg0tFE315sHAhXd6bElGpTuSQdF+rtTp30fi3eybE/\n4lzJE6L+U0DWStx/S7f8YplCqOS6hN4ga1oRTZH23cEdEdMIOwQy06WrQeC7\n0yxZR1BNuFO+WWw2nnp4D87JrMclol8USs7UTMkpf5xPFryjlfNm79z397Ay\nEwcgyaDNFRMwMgxFAVKwm9SzSHqSLwIrgR8ICDjuStbmuO+y73uQqGJC3niF\nUNkjq7TlI+mZB4BOX818x2E3HDVUmq9Jom6IBBcll47ze9mGfafmZVYrPADa\npzP9wK42uIVpxJIqFslQ9ddv0FQAbCc5wRZObMNhs/Onto/KF8BEZm5V7Xa9\n3ezP\r\n=yz2J\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7dcba6a47b77f0011a1f0e22b3540e2a70b285cd","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.d04bda3fb.0","@material/rtl":"13.0.0-canary.d04bda3fb.0","@material/base":"13.0.0-canary.d04bda3fb.0","@material/theme":"13.0.0-canary.d04bda3fb.0","@material/animation":"13.0.0-canary.d04bda3fb.0","@material/typography":"13.0.0-canary.d04bda3fb.0","@material/feature-targeting":"13.0.0-canary.d04bda3fb.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.d04bda3fb.0_1631287293943_0.2074982915636212","host":"s3://npm-registry-packages"}},"13.0.0-canary.5533f73d3.0":{"name":"@material/floating-label","version":"13.0.0-canary.5533f73d3.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.5533f73d3.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9f6c9d11d49c6ec770a7a23f9bf1fe682655fee5","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.5533f73d3.0.tgz","fileCount":33,"integrity":"sha512-omfxq5BgRlh2Ef4wg7XMQvhPzmf6cXehiWqKDOOLMMpf3TshoEuBszRn2rTx7Q2YW99g/ueKyJKyM+LUb6w7ug==","signatures":[{"sig":"MEUCIBX3dslx4XCHO9qF62Iv6r1/PKsMOCum6Asx7casCNjGAiEA16zRkCPf2bUYfXWLo7Nukp+Hrnl929vQTAr30AUjQD0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":228834,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhP9jKCRA9TVsSAnZWagAA3QAP/24tECi/6p4PoallsSPx\nQqf9yNS9gBLxP8rHDQdvfYDerCrF6Ni/zzJ0G0uB2GIt8GRdluh8+XUlVUmI\nILm3s/aPU540aSGeVKZCZ/wZcWUmLdcTcpM0hEjY5HgfYon2uORgtdU4u6FX\ncfyvhq7H+XJTdhZnldbSPYasxoPWUPMp9VYOjkfBcL2e+mlFHOWgP7ERXiUu\n2K1Kab0zLCJMA5RYMBpkfGotDmg9p50HSNpAk+H4xzy0yaEFaY9mE5Q/kAct\nrAjKyDwhLynrS08HmElizKbaa2j49n4pVDbQ/mMtYPkK2UDVh/vOfhfEZwF0\nDWyi6TYDFhC4WgtkcaQBkAVZb6eJ1RXiVUsiEFFB+2s2q3bC5ceh3g5PWSp/\nr2XkHoznT3Dp2EQe75e2UPpVMdu2+NFmOUM+E2Q3bN1Za8jxnkCtpnIXWAik\ne+MejqjH1tZdTr5ODKeo1edR42VlyO7aCDsEyr2C14uUNc9/d8kmG/bVF/KK\nqeHIps3GLkDDpYywDz8xQqF0D4yVO/mBaJVLpXChDQHUEcDbrXj56z7wcsnt\nis+oJ5/o4navp6P0IKXv2wCIpeIJfoHY8jtCvLuOpMAquApCzUDTXBy34Pbj\nK1ZAT5RgRzrNhzwxhIoHmaY+shX2lMSU9OcEHhlA1ZWXV2YPcHa21FENi6G8\nkm4C\r\n=2Cae\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"20bf1d151f241eb77dfa3233eb61f4e35d5b2838","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.5533f73d3.0","@material/rtl":"13.0.0-canary.5533f73d3.0","@material/base":"13.0.0-canary.5533f73d3.0","@material/theme":"13.0.0-canary.5533f73d3.0","@material/animation":"13.0.0-canary.5533f73d3.0","@material/typography":"13.0.0-canary.5533f73d3.0","@material/feature-targeting":"13.0.0-canary.5533f73d3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.5533f73d3.0_1631574218203_0.08590264690103844","host":"s3://npm-registry-packages"}},"13.0.0-canary.08398f880.0":{"name":"@material/floating-label","version":"13.0.0-canary.08398f880.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.08398f880.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a91ed8b503e13e10bc56f72db15a4f8e57b20ebf","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.08398f880.0.tgz","fileCount":33,"integrity":"sha512-+VE02FXj0rZIhTS+zEbq8hauxd6J308QCsaLTI10vYSM4Rlm0KaMiDq0Vjv4gxvVnDvSdKC/eTMc6aZRhYiUtA==","signatures":[{"sig":"MEUCIGqYIBEgB3r+zg134qFXouHwA7VNcSWcRK1RqlmRlB8iAiEA5ZH5L0PuNzWRdMW1IMrytqbqdHe3Gi3iDAFA0jz++vk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":228834,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhP9/8CRA9TVsSAnZWagAAy5wP/jEQSQwVNi2u+bzHaPNw\nyChscF7cICWUIpwgdX1KbibgzHYezqks9RLmkSRxWwZYdqmzt05SsAACyMiL\nHUoHeib8bBiMDX/sgIO3dzYqJ47Ck8cmlOGgOr3O6xZUnUZA96Ivd3MKTMVG\npQ/oHnHEdcqa8C5G/hGPHlVhk9sBFE0uNxNfpAkvBzpwIVoA0g+Qb1i5FUE2\nr3D8CHra79ZKMrVQa0JzDCiqoU5rzd1lnFR6lkKuDDvgI0ZnVw79hmGcr2XA\nzAH3dftAJ1SbNTlomoWzXy81p4UzBJDXCaSWr0VE/yKbq8mTCCG6vZ2EGgN4\nlTtDRSYYpVIDHo5lPHNPWa5EgrhwydfBuXi67kzCXaHDx3g0SWOdVR9+SKqu\na1uy2RY0zjfsq3fGzCF6fdXw2MgwHyBmbw4KNWosiUQoE/0GnCzuxdlt03b2\nvw48HW5z3SWiVntXfbF71psnvfLAEWGGGNDyeH3qRL0NXCzUMRWboe23R/AH\nqXUAO1MzNYOZowgHyhRlYLVZksyTcMLPpgn90DxbmRENmPZALdDekLbe+lyG\n15WErOi8ozcBL5PAwgTS4WrAA/XIZtL/pziOf2jRU1aJ5RWkGLozuSM43QUw\n0IAC3oYOjzcPTHDxDWr9MPMsCd5Un6xLvx5ebRdIJgpuTICk61Jl3OdOui0z\nY2pR\r\n=Jmi4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1a993a7d6bd4a018cc4ae230bf1cc3fecfc16d1b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.08398f880.0","@material/rtl":"13.0.0-canary.08398f880.0","@material/base":"13.0.0-canary.08398f880.0","@material/theme":"13.0.0-canary.08398f880.0","@material/animation":"13.0.0-canary.08398f880.0","@material/typography":"13.0.0-canary.08398f880.0","@material/feature-targeting":"13.0.0-canary.08398f880.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.08398f880.0_1631576059881_0.003662496706367868","host":"s3://npm-registry-packages"}},"13.0.0-canary.818f4ee93.0":{"name":"@material/floating-label","version":"13.0.0-canary.818f4ee93.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.818f4ee93.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9ec0cdfce79dfc15a55f6d94466b6d0f9773104a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.818f4ee93.0.tgz","fileCount":33,"integrity":"sha512-nGI8h7K2x5hHtZ1mRZzcmahpqYz7rB22PtDRX+N6E6GbQYTsfzJVzZdKDdDwYeltuNUoD9b5AdkfVvOlVfdeFQ==","signatures":[{"sig":"MEQCICE4zJinQq/oupJ5uvxd83MKkXS8mU68LbBclwfKYByYAiAfcAL3Rr681rdYVj7RnEZJex2mIfSgsVRlbIukeqk8Bg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":228834,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQjJYCRA9TVsSAnZWagAAw5kP/2jd8Gam5SzzhMyD5tQL\nKau6NMGTii+oT0n11vWXcXxTCOfVvpp5niYoKQkCHq830HtgenoevzTZFJrZ\nPNF50i2iFItF1T+5LpE0I7pyRbSq1xN9chqw1O/zBjYN1KC5Cg2iQjpLj6ZU\nc0SPJr+9NbyLRppuFRwHPN6Ca8IS8/0v6FxPVwTfD1e6vyQXJhMxfbDEjQKU\nuNSPQzdZEXc0f6JDe7ecuDkBNNoGIRSjzMOyhJ2oQz7nOgKVssIXYduOUoJ9\n4K9aOJI4Vui3gBv1uHdA0NX6w3s7H+jp9sSIdJn3lmAfyAqVSn95QES1EUg+\n3zxDY6Mk+5BaDRZvSRQAf6pDtdiTyUhHEj4i/P9LFbocVZOqdMPc7vN/dLIy\nEE0ceeg3F/1HJDodGkLfIhppMMCLvJHrNq7lK9vJ2pTwa2dOl8zYJFiYeygo\nbcP6vHmQ0pfovuRrVNtUucJua79Y6sXirxjJYOnZUwAkMv95NaGEpRFp/y+0\nfLwcuD5fSkK5OArrIjBv1lLVDz9Eo9XSDwOEEOr7puKvIzU1gL048jSjA/wu\nShl9J36kOo0SWtJ0H9WzxaQ7WXAiQ8Nec2h/sgkwVi8t0j1D5Qa998yUH16H\nAvwQh7vjloD8NQyQdqQA30cAwui94XICYo4ZjRSzjnOCe6iNIEp1tBnqCdXC\nI3Mk\r\n=ND/m\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1d88a726d331a878c9a8721e3237e8cf6df49f1a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.818f4ee93.0","@material/rtl":"13.0.0-canary.818f4ee93.0","@material/base":"13.0.0-canary.818f4ee93.0","@material/theme":"13.0.0-canary.818f4ee93.0","@material/animation":"13.0.0-canary.818f4ee93.0","@material/typography":"13.0.0-canary.818f4ee93.0","@material/feature-targeting":"13.0.0-canary.818f4ee93.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.818f4ee93.0_1631728216540_0.008653368078672896","host":"s3://npm-registry-packages"}},"13.0.0-canary.8355e14dc.0":{"name":"@material/floating-label","version":"13.0.0-canary.8355e14dc.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.8355e14dc.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"648575753ea88c03ffe5438bf969720f155e7ced","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.8355e14dc.0.tgz","fileCount":33,"integrity":"sha512-mbeMHWMseC9LUdMcRdis/9kRVShAwSRbj2/B2NmR0ZyswHDp9j+MmQBbBJMyFNM5U2v4vYON8QFgb6TwOHxDcA==","signatures":[{"sig":"MEUCIFLKvE4Ct0ENsp26CZxHZhPsJTS2L/bIekvGJ47hjcT6AiEAlaKRE2zJaT8m3jqkC7uPFKm3d/1KqH/u127OA/FwNyE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":228834,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQkWSCRA9TVsSAnZWagAAlgYQAI2UrIRkB5xCD6yAoo5p\nXrVhCksHYv6/oXZVkHD5CpjMnz6pEbr702hxn6A/fMFK7CXrTcYP/pf7BQY5\nmlQgIwb42yROz64Oips1Kf+s8SxP5FiP13A+FH0yGOC4vFhn1nvOv9lZYi4G\nRIsHwn7jRrIJHTeeoLJXfsaRyyZVKN+iM9wrw9ffe09YkOFAq8EvGiTt4H9V\n5ehELlkVhrsfqQ7gXz+YoHOM4tBx/d0bBimwcw7lthZ9bzFXu3ZbjM0jNLWb\nvw6tlbWb/viJNu+tVqqBFKkNi3lNMXYvcHa3ONjlzNQTw776akmVS+qkli6M\nioRBZ36SaWdqqz8Rf45OXImqVeccs8MXZb0Fpq9CivZzan70HEUcjnY6X9cI\nNCM0a0Z3wDXIPgYJg5Cn0on/baGf5V4bNyajgNGBnya3GsWX5oH4e8Vctu2x\nvHx/JDxEqbOYauIpBMhnYQK34e8W00heG2mxzDBrP/OmgNskPS3jnHVara2a\n8Ck0WGhdO04Lzf2TUQrSZZYLcxYOh04kZ2F7SvrED+9L66C9fmIRC0wWfv6m\npZgnvD3rbUkqJi1v3F24lEJOKB/b400JsmB8JE6N/V29r36C0mZyE4Y5Sr1R\n5nEiLGgkP3X31iBZOErWFOFcf1nID8K+oWy91QtfP6/1cHhHbV04Lpeehwe+\n5RN7\r\n=0uzw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"065f64e5cbd54d86f092d8d1406bbd0852b2a6a7","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.8355e14dc.0","@material/rtl":"13.0.0-canary.8355e14dc.0","@material/base":"13.0.0-canary.8355e14dc.0","@material/theme":"13.0.0-canary.8355e14dc.0","@material/animation":"13.0.0-canary.8355e14dc.0","@material/typography":"13.0.0-canary.8355e14dc.0","@material/feature-targeting":"13.0.0-canary.8355e14dc.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.8355e14dc.0_1631733137974_0.5001254667097377","host":"s3://npm-registry-packages"}},"13.0.0-canary.d4e16a6c4.0":{"name":"@material/floating-label","version":"13.0.0-canary.d4e16a6c4.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.d4e16a6c4.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"71e74db23f35f8087d973014d8e8fbebd682ed81","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.d4e16a6c4.0.tgz","fileCount":33,"integrity":"sha512-VqLaMGBFW4ndtJv/HtIfvStTYUb6i6Q+zq+W2FfSaw0DGDAQZShqe1U97xejIKn4upp9aAnRihWMBwpks7fE8g==","signatures":[{"sig":"MEQCIF6O4AN4gf37soKYf8sYeY5R/Ct9FW9tW4SEdkKHO4YVAiBbnoAI6x0oeYVq4GG9WDd29Odbx6AXzivwu/YnSWe70g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":229936,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQmymCRA9TVsSAnZWagAA9+0P/35TO2wFvgyOejL8hoA2\n/bQkrWRe6kFQKEgIZWFrzxb5bCMCq1RJPaSZEHentn5QsLQwY7eV17QootNH\nthLGOXvoJ18VX+u7q9qAJWXPg/VnMoCd41zGsG/kN6dJM+AJ7flw6cvfAFjw\n1UXeG4S1vSQ88EmJnf+sKg+yLtBTinKMl5iv1cxX2TJofFquxUPmQwMX681e\n5R81ioL9b5hOJuZvxl6CGh9fLgGb2pLZwlaDHxUrbRvhD54ugmcUQs6rcaNq\n0yoH6nnv6YTHHv2ILOFSCSZLOXrrtMv9H9TB2Si62A8j98FDw4HRcnTEbpJZ\nmOD3axw7m+kXO/RjPomTO4oJIUCYMN5vcBnYw1yP427BEMmxkWRSf1Bzf7ZA\nwczMWg9rIYQBnyrm/AUUTyOQFwWZOmwj8xDj++g8vLi5KBq+IfZDUIV75sii\n984KGyjGasrp5HjRxnauRXr8mQMTmKkm9koWEWDe0h2qoZ2yoEyXcjD+q1sC\nwsbNEL2qysuqRSlL/WCKX4eaM7qbHwhjTNEZ+YFUKvgGfPWf+YNfTk2bQBNh\n6RrtOuxEPFUTiyJXAAWVb+6VEkJxZ+hqdv7SeT5Ss+Vc0Sr3S2I6gtkcY9PR\nNRk4dXsjg88QJH7HxSIrkD2EUSloi1SZanAhlVih6bGGc2uht0z8DYo6+1Qw\n8p2f\r\n=SFDl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2c2d0c3f7c18e3a2b581679df71df5e7a0e2fcb3","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.d4e16a6c4.0","@material/rtl":"13.0.0-canary.d4e16a6c4.0","@material/base":"13.0.0-canary.d4e16a6c4.0","@material/theme":"13.0.0-canary.d4e16a6c4.0","@material/animation":"13.0.0-canary.d4e16a6c4.0","@material/typography":"13.0.0-canary.d4e16a6c4.0","@material/feature-targeting":"13.0.0-canary.d4e16a6c4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.d4e16a6c4.0_1631743142514_0.7887917682299068","host":"s3://npm-registry-packages"}},"13.0.0-canary.65125b3a6.0":{"name":"@material/floating-label","version":"13.0.0-canary.65125b3a6.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.65125b3a6.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f40608cc51c328985869df69476a3b8eedb552ab","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.65125b3a6.0.tgz","fileCount":33,"integrity":"sha512-HFlV/dnEa2uHcA1tdW6ng8IczhLwHsg86kmfZ1221OMj8CbOhN5PZCPbLvm2xFZORPORYHnRj6tbFeRS2khRlw==","signatures":[{"sig":"MEUCIBagleANXsU0CYY7mQPJbl/4C4dVMTyFmUTEplxHEE8+AiEAiHMv+Vs4vm1a+Ge2FxcY+YJZOvMQfABNLMstmce2bgU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":229936,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQ7RgCRA9TVsSAnZWagAAFnoQAIAxkP7lmOy2KPqh/lLk\nlCvlk3Kr0DfkBoOMPpKKeGwLiNRsVaEQmBHzChAcH6MFScGgfmaeKvb+5YAl\nxPeW3wb4eHdudutL6Pfxb4jQdSqWFsl5+trV3ZJIrAe5JgwujbqOguf9uA6A\nLQvutq2Zr1TL/7SAyBks9BoSxWZaCpSF/lZ14Ubl28CmBOjPp16rnkMV/ST8\n2H0Ni4CvxawuxG5IHpb9w+gR3GSl9Adz49pUPNgiyzjnnlgv1Uoe6abU5uRy\nFNo6CcmMPAHJO6eEei0Himnb7TnkkuUYhPKRO6/rCPGUJaGY+C2Wh/s6C5QM\n/6Ps6P77rGqlEL4uXlHbyCnOuWFVQh2eCClmxhcGMR+1MBYLzRgHNc2m00Qj\n+o/J8zSX8RvRyHPW4ye6N+6vL/+UsxJTOHrqC5hRGFqRW+SFqasbbYd5CXoH\nOsbocLNWavJx8BXjpMfCb5ek06b9jqCb1pDEp7CSRSNE9MCDIoRs0EnF4ojg\nDxYT90tlXLI6iUd9QTBAYYkBaK8ecM0/fPMksRYT1kclsg3WrTF8+6G+VGiJ\njTg5Q5Hew7pM80vMqaELbTYAQh8p2U6fbWe0SvA4JUB0n3P/3zfMS6m4PffG\nh1KV8OzOb8Cwe2fOHJlBc3noxAplX/yFmMemB3OV7ztDAafvY5T0AuPCtvQK\n2w7H\r\n=Gp7D\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7f141fcd82e6061ac62fb457dad40c0ad70e52d5","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v10.24.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"10.24.1","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.65125b3a6.0","@material/rtl":"13.0.0-canary.65125b3a6.0","@material/base":"13.0.0-canary.65125b3a6.0","@material/theme":"13.0.0-canary.65125b3a6.0","@material/animation":"13.0.0-canary.65125b3a6.0","@material/typography":"13.0.0-canary.65125b3a6.0","@material/feature-targeting":"13.0.0-canary.65125b3a6.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.65125b3a6.0_1631827039830_0.5036841616227576","host":"s3://npm-registry-packages"}},"13.0.0-canary.80a583365.0":{"name":"@material/floating-label","version":"13.0.0-canary.80a583365.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.80a583365.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"bffbfbfc13f7afb15424bbf660ae7beb3ebd1bf3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.80a583365.0.tgz","fileCount":33,"integrity":"sha512-0PIMx6fIK0jY/wl6F4uE2xIEsDHqXlm3llAJU+xUL1VRGIKG4ug9s3PCI4ndFW9oU5ij++lUMXUejpbQwdSjzw==","signatures":[{"sig":"MEYCIQDMawMYF2cw8wP57WM4c/6zp1/hsslkC4cU0pQvXQHcdQIhAPC/ZUYdBdAwQT0996KmIuxMot/PykvoM1J0quFKuqlP","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":229936},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c174baf193216601da7fe07831dd2152585c6beb","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.17.6+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.17.6","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.80a583365.0","@material/rtl":"13.0.0-canary.80a583365.0","@material/base":"13.0.0-canary.80a583365.0","@material/theme":"13.0.0-canary.80a583365.0","@material/animation":"13.0.0-canary.80a583365.0","@material/typography":"13.0.0-canary.80a583365.0","@material/feature-targeting":"13.0.0-canary.80a583365.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.80a583365.0_1631910937650_0.8182168496459024","host":"s3://npm-registry-packages"}},"13.0.0-canary.83900936a.0":{"name":"@material/floating-label","version":"13.0.0-canary.83900936a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.83900936a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"cc9faa5b6259d225a11326f1f1d83131e386f9aa","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.83900936a.0.tgz","fileCount":33,"integrity":"sha512-QCKt/nES8ic+PSJszX3neYEq/1MytCx9+3EjARBcvc1uWJn7rjpeiZT1s1qUcelp0vibLQnCe/zLPlJQCU0qRw==","signatures":[{"sig":"MEUCIQDE1shuZtT9rWcBCwNl+7ekxxlahfNe6ksQtO3R1cOaXQIgHPpu/BKnURZ9RqobgaraV79YnR6KO4sRghhm3uimzkY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":229936},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ca6026fb6b378ac9a4f14997612369fe29f31093","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.17.6+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.17.6","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.83900936a.0","@material/rtl":"13.0.0-canary.83900936a.0","@material/base":"13.0.0-canary.83900936a.0","@material/theme":"13.0.0-canary.83900936a.0","@material/animation":"13.0.0-canary.83900936a.0","@material/typography":"13.0.0-canary.83900936a.0","@material/feature-targeting":"13.0.0-canary.83900936a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.83900936a.0_1631921050590_0.7840808556083063","host":"s3://npm-registry-packages"}},"13.0.0-canary.860ad06a1.0":{"name":"@material/floating-label","version":"13.0.0-canary.860ad06a1.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.860ad06a1.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"668817ee469c5f61934722705a984db4fb97c1bf","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.860ad06a1.0.tgz","fileCount":33,"integrity":"sha512-9+SdajFyKxs1vSMSbayfm6IXQfSNv+NFS8ZKw26HNWAUxq/e7LYBAgGapC1doZVEkSDRWa+e3cyvmVdfkgd49w==","signatures":[{"sig":"MEUCIBq+fkmYilU/JTQP9H+adUfcx+066l9EGxcz0NKg2ud9AiEAjxW4N7P0rKXbjSe0l3/qA/uhjHjsHrhOMW/5bTA3GJg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":229936},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8f156ac018a526d53d5f5077762518483bfa7dc7","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.17.6+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.17.6","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.860ad06a1.0","@material/rtl":"13.0.0-canary.860ad06a1.0","@material/base":"13.0.0-canary.860ad06a1.0","@material/theme":"13.0.0-canary.860ad06a1.0","@material/animation":"13.0.0-canary.860ad06a1.0","@material/typography":"13.0.0-canary.860ad06a1.0","@material/feature-targeting":"13.0.0-canary.860ad06a1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.860ad06a1.0_1631921749945_0.5930707082253082","host":"s3://npm-registry-packages"}},"13.0.0-canary.3b8d4429e.0":{"name":"@material/floating-label","version":"13.0.0-canary.3b8d4429e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.3b8d4429e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"adcc6c44eb7f3e9cc194942400aadda93c151131","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.3b8d4429e.0.tgz","fileCount":33,"integrity":"sha512-NhB74yC6y4Gs35RckNvfg4BE/gp5Wli7W2CTEzfmqXv4L/Yk77r4mHXlHatmlB4qjExvdGQ8svOMKsxgbD3jxA==","signatures":[{"sig":"MEUCIEXra6QvWqbdHkew/HlO+eBnEbMLMgMOXf7W7XUH1YtzAiEAjIKe7ry96XtWRDLWoTMSh59PeaxmAmU1xHiejGArhaY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":229936},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c548d2fdb2731631683bc92955d6701cd0c2bd14","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.17.6+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.17.6","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.3b8d4429e.0","@material/rtl":"13.0.0-canary.3b8d4429e.0","@material/base":"13.0.0-canary.3b8d4429e.0","@material/theme":"13.0.0-canary.3b8d4429e.0","@material/animation":"13.0.0-canary.3b8d4429e.0","@material/typography":"13.0.0-canary.3b8d4429e.0","@material/feature-targeting":"13.0.0-canary.3b8d4429e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.3b8d4429e.0_1632160045822_0.23988713567451492","host":"s3://npm-registry-packages"}},"13.0.0-canary.2da3606b9.0":{"name":"@material/floating-label","version":"13.0.0-canary.2da3606b9.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.2da3606b9.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"cef4e751bafb41d10e1971a4ac9dd76c8acb622b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.2da3606b9.0.tgz","fileCount":33,"integrity":"sha512-EXjMXBv5ylsy3vO0ObZ4c7bdCZOVBshv8pPDkr6ZWfaY7ZwAjyw/uRbWqkKWNVaQnVEUeBEvwQs71vx0JNgUhQ==","signatures":[{"sig":"MEUCIBaBkBQyUavljtL+IPwTHFWUWwOHvmfTy6ZjcbMDQ6DEAiEA5lQx9Vlr6QfWQ7dbtHTMMQS8s0FS0BgWCesC3SVG3eU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230026},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c452408cf52d900869313ad573c1b84c9d6a3105","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.17.6+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.17.6","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.2da3606b9.0","@material/rtl":"13.0.0-canary.2da3606b9.0","@material/base":"13.0.0-canary.2da3606b9.0","@material/theme":"13.0.0-canary.2da3606b9.0","@material/animation":"13.0.0-canary.2da3606b9.0","@material/typography":"13.0.0-canary.2da3606b9.0","@material/feature-targeting":"13.0.0-canary.2da3606b9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.2da3606b9.0_1632166653470_0.6510332860176684","host":"s3://npm-registry-packages"}},"13.0.0-canary.e8c598d1e.0":{"name":"@material/floating-label","version":"13.0.0-canary.e8c598d1e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.e8c598d1e.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"239f213edfc8685276a6f811477c6a4aef6bf60d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.e8c598d1e.0.tgz","fileCount":33,"integrity":"sha512-u0IilslFuc9WZRsRjYw8GTd1ia3lgSGJshyCHyFKceFOlkzBwBg1JyqIBqWwgB+dnlCj26Tl7IdTDaQRyjTX0g==","signatures":[{"sig":"MEYCIQDX6A+Ds6uPcKc6Mi+Gt7i7khtAky1GiL4gARfWPZSkcQIhALxTOdc9cvGxjqZacj1kkq4Hy6bdC1v9Y8H36WgnVkpt","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230026},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"11ab5557b275cc7f950ff2123684083e6245eafe","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.17.6+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.17.6","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.e8c598d1e.0","@material/rtl":"13.0.0-canary.e8c598d1e.0","@material/base":"13.0.0-canary.e8c598d1e.0","@material/theme":"13.0.0-canary.e8c598d1e.0","@material/animation":"13.0.0-canary.e8c598d1e.0","@material/typography":"13.0.0-canary.e8c598d1e.0","@material/feature-targeting":"13.0.0-canary.e8c598d1e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.e8c598d1e.0_1632172303867_0.921021870483214","host":"s3://npm-registry-packages"}},"13.0.0-canary.1340ee9f7.0":{"name":"@material/floating-label","version":"13.0.0-canary.1340ee9f7.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.1340ee9f7.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"62f37efbf8e6386b3338d391266643f8a0b74866","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.1340ee9f7.0.tgz","fileCount":33,"integrity":"sha512-canfTNAXwafa5Y3u8gyBWwofMCFT9pR2r3aWi756J9XwWRdOSdv6P4VDCN1Hi2p1uSnfPYoaxpdY7AlrnSBoGA==","signatures":[{"sig":"MEUCIHxOyg3fs+OVBSIoTXS+l5ToHs6QA1/IcRNYnqcVIJA5AiEA9QKGH3By3zVxN4cn7imTnGkrg8bVb37gJ+4VL9R1MAQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230026},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c9cbdc93fd9954f12cb74ebaf2cfa5806d078879","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.17.6+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.17.6","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.1340ee9f7.0","@material/rtl":"13.0.0-canary.1340ee9f7.0","@material/base":"13.0.0-canary.1340ee9f7.0","@material/theme":"13.0.0-canary.1340ee9f7.0","@material/animation":"13.0.0-canary.1340ee9f7.0","@material/typography":"13.0.0-canary.1340ee9f7.0","@material/feature-targeting":"13.0.0-canary.1340ee9f7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.1340ee9f7.0_1632333463877_0.9787252657492298","host":"s3://npm-registry-packages"}},"13.0.0-canary.65084baff.0":{"name":"@material/floating-label","version":"13.0.0-canary.65084baff.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.65084baff.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2d3e752a617a58ae4b3267f0f49313c27fd87dcd","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.65084baff.0.tgz","fileCount":33,"integrity":"sha512-+TzOFMIi0X2IOon+67MeFk55r0e9goenKUJyVKiKkpw08r8GrkYM9vrrZFGuut5KFC81IA/uU3CtxfB0gEj5Mw==","signatures":[{"sig":"MEUCIETezEjaMDiR6EC3Lij4rmwxJKa+Xio8kYpiglqTeL4bAiEAl2n6BMUrNIB/tUO5VNbArT5dHmKEepExqsRO3/l3uV8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230026},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"afe4cce0d8c7e5038058ea8198ffd72e99e1c941","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.17.6+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.17.6","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.65084baff.0","@material/rtl":"13.0.0-canary.65084baff.0","@material/base":"13.0.0-canary.65084baff.0","@material/theme":"13.0.0-canary.65084baff.0","@material/animation":"13.0.0-canary.65084baff.0","@material/typography":"13.0.0-canary.65084baff.0","@material/feature-targeting":"13.0.0-canary.65084baff.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.65084baff.0_1632432320487_0.4845754306939969","host":"s3://npm-registry-packages"}},"13.0.0-canary.c79aa0cdd.0":{"name":"@material/floating-label","version":"13.0.0-canary.c79aa0cdd.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0-canary.c79aa0cdd.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e3bb655d2c995679950b8aba60683962f6a92f97","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0-canary.c79aa0cdd.0.tgz","fileCount":33,"integrity":"sha512-hNXSTxLsDF/5t17OnQi91wmKOrEsB+JDaojVqw9JlgqOoNfK5G6XUZQjjrCkz9eqIvxMOF/J94z1KJSzLOfEZg==","signatures":[{"sig":"MEUCIBtqv1C3XJl+1bfGz3prQY8Hph39bgmLqd7n3dMmcgN2AiEArjdIGCNxD/6tHlV7//1oUh5WcPWA66CLv0yJOuSrBPs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230026},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2caa02d38f883966fd5f78948743dabdced9b689","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.17.6+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.17.6","dependencies":{"tslib":"^2.1.0","@material/dom":"13.0.0-canary.c79aa0cdd.0","@material/rtl":"13.0.0-canary.c79aa0cdd.0","@material/base":"13.0.0-canary.c79aa0cdd.0","@material/theme":"13.0.0-canary.c79aa0cdd.0","@material/animation":"13.0.0-canary.c79aa0cdd.0","@material/typography":"13.0.0-canary.c79aa0cdd.0","@material/feature-targeting":"13.0.0-canary.c79aa0cdd.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0-canary.c79aa0cdd.0_1632490903957_0.1530269687540986","host":"s3://npm-registry-packages"}},"13.0.0":{"name":"@material/floating-label","version":"13.0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@13.0.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d441461591101de7821a06c595cbc2ca0ede2be2","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-13.0.0.tgz","fileCount":32,"integrity":"sha512-imAPamD97QrizVCOpxjr3UfQJyDBpEEhDBSbEbKLrCpqG3jQx4/My5rNKKVGWjxUiBYgBA1dhkn98RRX5tGBtQ==","signatures":[{"sig":"MEUCIQDqmgU6cFxP7iGzHQQcoB+E5zgI+R9AhSLj90f11VYq0wIgdDs3Bp7XeGdcpZkmS3lXbngtujwzRyleKPmQxXxka8g=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":229496},"main":"dist/mdc.floatingLabel.js","module":"index.js","gitHead":"198431fcd8ff3028934d2cf3a5b292f8482a4570","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.17.6+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.17.6","dependencies":{"tslib":"^2.1.0","@material/dom":"^13.0.0","@material/rtl":"^13.0.0","@material/base":"^13.0.0","@material/theme":"^13.0.0","@material/animation":"^13.0.0","@material/typography":"^13.0.0","@material/feature-targeting":"^13.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/floating-label_13.0.0_1632512741055_0.39286417617186054","host":"s3://npm-registry-packages"}},"14.0.0-canary.198431fcd.0":{"name":"@material/floating-label","version":"14.0.0-canary.198431fcd.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.198431fcd.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3a4a2bb48bdbdc7a4b30d0e76adf50c73e60468e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.198431fcd.0.tgz","fileCount":33,"integrity":"sha512-34OQmcrZCqiGktaGRk5c2aJjIKRXLQtQsjX90qyW1oZfYniAgm/pSToehOb+ergvhNsKWLCuAm/cEtR46fyM9w==","signatures":[{"sig":"MEYCIQCbu/Rc2ESjqnBUejjCx1YIOK4ylqoFtxV2PZQ4pzLuKgIhANpGMdf+GCF2CEcEHN65wu+kc5cagIjGjXxg1dWWYXvC","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230026},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"34242e3354729334618dc12d6bc959e0a8f14dd4","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.17.6+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.17.6","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.198431fcd.0","@material/rtl":"14.0.0-canary.198431fcd.0","@material/base":"14.0.0-canary.198431fcd.0","@material/theme":"14.0.0-canary.198431fcd.0","@material/animation":"14.0.0-canary.198431fcd.0","@material/typography":"14.0.0-canary.198431fcd.0","@material/feature-targeting":"14.0.0-canary.198431fcd.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.198431fcd.0_1632512785909_0.5045787848839938","host":"s3://npm-registry-packages"}},"14.0.0-canary.9a02b6ef8.0":{"name":"@material/floating-label","version":"14.0.0-canary.9a02b6ef8.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.9a02b6ef8.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d5402c711e51ff2a2759e77276185457e63a544a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.9a02b6ef8.0.tgz","fileCount":33,"integrity":"sha512-/R0BtDZ7G3A2iJmN4MvHyNwRLZ6EfWXhzEQOUrv4r6ljUQzSxVAWZ3KEWYwc41sDex/im0Gtx2iHrv6Z/t6Usg==","signatures":[{"sig":"MEQCIC3G8ylePrwpS5Drauv/31JsdhjIe6wuFE6LUL/w0FfLAiATCkML2ZRkgYMb+FDDdEcIkqKra/ipm1WqJnE35ZYmVw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230026},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"13e91b1150d6339b15d71c44c8743eb9e2026eaf","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.17.6+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.17.6","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.9a02b6ef8.0","@material/rtl":"14.0.0-canary.9a02b6ef8.0","@material/base":"14.0.0-canary.9a02b6ef8.0","@material/theme":"14.0.0-canary.9a02b6ef8.0","@material/animation":"14.0.0-canary.9a02b6ef8.0","@material/typography":"14.0.0-canary.9a02b6ef8.0","@material/feature-targeting":"14.0.0-canary.9a02b6ef8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.9a02b6ef8.0_1632575451814_0.5398679842245535","host":"s3://npm-registry-packages"}},"14.0.0-canary.758ce31d9.0":{"name":"@material/floating-label","version":"14.0.0-canary.758ce31d9.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.758ce31d9.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1afde51df683ea7c42d87fa8ab1b787a678b3f3d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.758ce31d9.0.tgz","fileCount":33,"integrity":"sha512-rhLdp83xEmht7g888C0sr5tJh0zCFWKyMgXsmJ1v/F9rMtV/RgUkfCiLueNlR4vrW+WpeOaV17+sAL4bw1KcUA==","signatures":[{"sig":"MEUCICZXjb7CgAYZoWlixh3KCuiUoPYDaFCAsk/UkgiCzfFoAiEAljxd3+lGCPYRa6+jeFmW8bEKWGragl7n2C7l/Om4bIA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230026},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"09083795b738aece76a37f8a1dcc8daf958204b1","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.17.6+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.17.6","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.758ce31d9.0","@material/rtl":"14.0.0-canary.758ce31d9.0","@material/base":"14.0.0-canary.758ce31d9.0","@material/theme":"14.0.0-canary.758ce31d9.0","@material/animation":"14.0.0-canary.758ce31d9.0","@material/typography":"14.0.0-canary.758ce31d9.0","@material/feature-targeting":"14.0.0-canary.758ce31d9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.758ce31d9.0_1632763745674_0.9995284873784682","host":"s3://npm-registry-packages"}},"14.0.0-canary.86b50ef74.0":{"name":"@material/floating-label","version":"14.0.0-canary.86b50ef74.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.86b50ef74.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e7c1d028c45c4cf4f97a0130e2feb4770b40b773","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.86b50ef74.0.tgz","fileCount":33,"integrity":"sha512-rvJL7RxwnKkKrdIiQRbStoVkns8crw8ceDmaaX3PzYSP9d+3zFwbt5oTSN2VM/NMI044RsdiE+6/adDBocOJsQ==","signatures":[{"sig":"MEQCIHIlbz1XgpRXSaqmQt1dmhU3AAFZfZsfnfpg/2l/mt3aAiAVh4WOnbk0adD4gUsSVFuGiWWhNRPZgKTFMTo1F/uVrQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230026},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5941ece7c1e494e720865be940d098a5556de149","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.17.6+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.17.6","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.86b50ef74.0","@material/rtl":"14.0.0-canary.86b50ef74.0","@material/base":"14.0.0-canary.86b50ef74.0","@material/theme":"14.0.0-canary.86b50ef74.0","@material/animation":"14.0.0-canary.86b50ef74.0","@material/typography":"14.0.0-canary.86b50ef74.0","@material/feature-targeting":"14.0.0-canary.86b50ef74.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.86b50ef74.0_1632850969186_0.45206345629005806","host":"s3://npm-registry-packages"}},"14.0.0-canary.b2fe3528b.0":{"name":"@material/floating-label","version":"14.0.0-canary.b2fe3528b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.b2fe3528b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ad19097efcd18a7a0975951c38cfdd8909481d91","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.b2fe3528b.0.tgz","fileCount":33,"integrity":"sha512-2Z5mUgAX9RwzNAPl+ut03AW34iDPXB9GWcTKXRDe+OBOSyjWEEqbF1FyEzitcqOz2ptAd4aDjBSPqfz0fMyzyQ==","signatures":[{"sig":"MEUCIQDrSinXIn9N6ATanwn9LfRp/YMW45Fv5tBJ+WYwCl1EawIgScdzFheClaLogc8depZ7gg0WkpK29WR/ow+S/R8hVM4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230026},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"cce11b1c181ea84c0bfdbef26112377518afa98b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.17.6+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.17.6","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.b2fe3528b.0","@material/rtl":"14.0.0-canary.b2fe3528b.0","@material/base":"14.0.0-canary.b2fe3528b.0","@material/theme":"14.0.0-canary.b2fe3528b.0","@material/animation":"14.0.0-canary.b2fe3528b.0","@material/typography":"14.0.0-canary.b2fe3528b.0","@material/feature-targeting":"14.0.0-canary.b2fe3528b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.b2fe3528b.0_1632956204541_0.6990792994774644","host":"s3://npm-registry-packages"}},"14.0.0-canary.586e740dd.0":{"name":"@material/floating-label","version":"14.0.0-canary.586e740dd.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.586e740dd.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"683f89f825eadd7f8a91d6e8089719df50eda304","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.586e740dd.0.tgz","fileCount":33,"integrity":"sha512-hplDzfpLWmLdwFIYcPjIUhL5/rGHEUZoLDfQhSllkC7p3gjDW9fK6cousma3SexTpmGAJsns23z7sOQWfDFkkA==","signatures":[{"sig":"MEUCIQDW6LsRJwdlh8yGSc+Yh2qAP8nlwUMva/jmT4gD8Ag7qgIgQqrlcCxbieUYS2YnVLQpMKpmvmtNU/cNKDFofKBF/Zw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230026},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"6c765889db11456de00c45d7bb289b6c7cf3ec27","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.0","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.586e740dd.0","@material/rtl":"14.0.0-canary.586e740dd.0","@material/base":"14.0.0-canary.586e740dd.0","@material/theme":"14.0.0-canary.586e740dd.0","@material/animation":"14.0.0-canary.586e740dd.0","@material/typography":"14.0.0-canary.586e740dd.0","@material/feature-targeting":"14.0.0-canary.586e740dd.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.586e740dd.0_1633019468915_0.6221023614427241","host":"s3://npm-registry-packages"}},"14.0.0-canary.2ac92d766.0":{"name":"@material/floating-label","version":"14.0.0-canary.2ac92d766.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.2ac92d766.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"02a505d3ff4fee49b01c59a33636541b71845fd1","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.2ac92d766.0.tgz","fileCount":33,"integrity":"sha512-SA0rIziAAD1JIfhekVvRnFgbcEjZOCiN/aUlOcNPfl/roJNDq88yfpsC9DDCT6naVfjipA+lj5xPFf0JRA8G9Q==","signatures":[{"sig":"MEQCIEIVjgVncAoEef1apbeYMaNG8a7cNEcxTlCK5WkE8oq8AiBEqzB0nftHHVh3+Qo/FCsaTXXLcKDL+1pT2A+Idupq5g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230026},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3a797e3a01110aeaf8270a13c2cc32d0871a8bd2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.0","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.2ac92d766.0","@material/rtl":"14.0.0-canary.2ac92d766.0","@material/base":"14.0.0-canary.2ac92d766.0","@material/theme":"14.0.0-canary.2ac92d766.0","@material/animation":"14.0.0-canary.2ac92d766.0","@material/typography":"14.0.0-canary.2ac92d766.0","@material/feature-targeting":"14.0.0-canary.2ac92d766.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.2ac92d766.0_1633462102433_0.1011080925103569","host":"s3://npm-registry-packages"}},"14.0.0-canary.353ca7e9f.0":{"name":"@material/floating-label","version":"14.0.0-canary.353ca7e9f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.353ca7e9f.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"557393c0789bffd8e68cc1335f5985e76e5edccf","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.353ca7e9f.0.tgz","fileCount":33,"integrity":"sha512-PC/eLVRjTra4mv45I23Pg87m6sBYDkpZqbQQvmN++nV2oFArTtATOROkPgWrcuOuBX7CzdLlPSLop5PHFKan5g==","signatures":[{"sig":"MEUCIQDj5vTgVKAYyzGdQSY+4OKxQR7yQJGPMxKY4D8wPsojGAIgFKmxJ/M8GzlQeZCYnZ0ZZkOXcwrZrrXExdHmMVnifPs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230026},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"4f091efbfcb52d523712f9b99808d737b06a60af","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.0","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.353ca7e9f.0","@material/rtl":"14.0.0-canary.353ca7e9f.0","@material/base":"14.0.0-canary.353ca7e9f.0","@material/theme":"14.0.0-canary.353ca7e9f.0","@material/animation":"14.0.0-canary.353ca7e9f.0","@material/typography":"14.0.0-canary.353ca7e9f.0","@material/feature-targeting":"14.0.0-canary.353ca7e9f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.353ca7e9f.0_1633718806486_0.4119448084843158","host":"s3://npm-registry-packages"}},"14.0.0-canary.c78ff0429.0":{"name":"@material/floating-label","version":"14.0.0-canary.c78ff0429.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.c78ff0429.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"84c2d40f6f242758a6dfb616ba2160fdbd52f8d7","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.c78ff0429.0.tgz","fileCount":33,"integrity":"sha512-4IYo7qO/QCKyaZqeI2bt1QhO2u//bRC5c7HkYhreD8KYEceo2VCBw1Xdh9xhU3qtyhDDxutyNCjCqil5vBxvvA==","signatures":[{"sig":"MEUCIEM4MX8fRy5iiSE5InKhxDX8GjDUE7k2IFhEaLtt5bIrAiEAthYaB/wwjLt4GsJXQ6mDHuXT8AMluyJE7KTdQSvtGaA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"55d918ee5ce9842b93075fa0d0ffd2b64b5f3ed3","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.0","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.c78ff0429.0","@material/rtl":"14.0.0-canary.c78ff0429.0","@material/base":"14.0.0-canary.c78ff0429.0","@material/theme":"14.0.0-canary.c78ff0429.0","@material/animation":"14.0.0-canary.c78ff0429.0","@material/typography":"14.0.0-canary.c78ff0429.0","@material/feature-targeting":"14.0.0-canary.c78ff0429.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.c78ff0429.0_1633972913578_0.25405900883573973","host":"s3://npm-registry-packages"}},"14.0.0-canary.261f2db59.0":{"name":"@material/floating-label","version":"14.0.0-canary.261f2db59.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.261f2db59.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"aaeda764b6db05d14fd34d70c11677e13929155c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.261f2db59.0.tgz","fileCount":33,"integrity":"sha512-Cp0/LngkW6/uZWbEDTe3Ox143V4kYtxl9twiM3XLKd6a67JHCzneQWFzC0qSg90b3r5O+1zOkT3ZMF2Pbu2Vwg==","signatures":[{"sig":"MEQCIE/HSBh3djDfEgOXHlGMmAHbif3z154Ai83zk6uG8HGCAiBX8XQUiQ39YE3ExCWGrce4M2gBrBGVm5a6WLF03Ik7Eg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"22c1cb4091a589b9a53b844da4e8d98309c75acd","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.0","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.261f2db59.0","@material/rtl":"14.0.0-canary.261f2db59.0","@material/base":"14.0.0-canary.261f2db59.0","@material/theme":"14.0.0-canary.261f2db59.0","@material/animation":"14.0.0-canary.261f2db59.0","@material/typography":"14.0.0-canary.261f2db59.0","@material/feature-targeting":"14.0.0-canary.261f2db59.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.261f2db59.0_1634749171767_0.5189433949519819","host":"s3://npm-registry-packages"}},"14.0.0-canary.9803d2dc1.0":{"name":"@material/floating-label","version":"14.0.0-canary.9803d2dc1.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.9803d2dc1.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"545a121768e538d5d1d28fa86b650b14b23ba037","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.9803d2dc1.0.tgz","fileCount":33,"integrity":"sha512-AtSq27lIYIFMI5DxC+MZ2oGiaQyNXwU7SCERkrmSbZS7bgzNTmWIQk/c7azIJwxAAYqKF2DW7sszCN8X77q76g==","signatures":[{"sig":"MEYCIQCdbgdh0am24udX5CkpJM5KJJVUV3IBQnA1RmPkzAZV0QIhAJPOMObQqX6BhfiMCO8No+xSTlJi1tMZSfM8VUOUhe5O","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"4ef0574fd4b362b2609f5dc9bc002ef96f07fcc9","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.0","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.9803d2dc1.0","@material/rtl":"14.0.0-canary.9803d2dc1.0","@material/base":"14.0.0-canary.9803d2dc1.0","@material/theme":"14.0.0-canary.9803d2dc1.0","@material/animation":"14.0.0-canary.9803d2dc1.0","@material/typography":"14.0.0-canary.9803d2dc1.0","@material/feature-targeting":"14.0.0-canary.9803d2dc1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.9803d2dc1.0_1634757701264_0.49189844690424445","host":"s3://npm-registry-packages"}},"14.0.0-canary.348665978.0":{"name":"@material/floating-label","version":"14.0.0-canary.348665978.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.348665978.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ce264a62d5c3b82484e68597d4f3e2701cef16a8","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.348665978.0.tgz","fileCount":33,"integrity":"sha512-qff5j151xnvVTISMd3HZsJiZv31xVrKlRVQv8SbvISP6vDx7nxFHecoARKG3mT7F0wpTD4eMXq/ARgUXUP7j0w==","signatures":[{"sig":"MEYCIQC1dPZIwPEv62KdL/q3Rpazl3aymSn8GUgIYzTvJXjcmQIhAK9QNlWY7mpFldy9K3LAMRb+rbp4UXwkoSMwqH0Qsitt","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"bf16d95c07dcfc371fc864fe30028299a2d5d0d2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.1","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.348665978.0","@material/rtl":"14.0.0-canary.348665978.0","@material/base":"14.0.0-canary.348665978.0","@material/theme":"14.0.0-canary.348665978.0","@material/animation":"14.0.0-canary.348665978.0","@material/typography":"14.0.0-canary.348665978.0","@material/feature-targeting":"14.0.0-canary.348665978.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.348665978.0_1634827829343_0.4759508181774801","host":"s3://npm-registry-packages"}},"14.0.0-canary.b2b979a8a.0":{"name":"@material/floating-label","version":"14.0.0-canary.b2b979a8a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.b2b979a8a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"abd0dd166718af99ec72048f666dc192b0d2119c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.b2b979a8a.0.tgz","fileCount":33,"integrity":"sha512-C896Vh2fFjNLlkSLmWYP/lBKADMSKqlAU/OZtoIP3nSmQ5KL4KzVj7InvzgKX9ZUppvfPYEd07H1bwfFHGwn8Q==","signatures":[{"sig":"MEYCIQC1wMyAHBf7v3ZWr77Qn4gYHz1OX2vXEk+QpPt0rewUmwIhAIaH0aY2t0IIBR2Mm+7lzkxdbXVvQX0+hMeSEC8RJrfV","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"08377359fe2dfa41ac960f776df2ba00e50e9819","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.1","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.b2b979a8a.0","@material/rtl":"14.0.0-canary.b2b979a8a.0","@material/base":"14.0.0-canary.b2b979a8a.0","@material/theme":"14.0.0-canary.b2b979a8a.0","@material/animation":"14.0.0-canary.b2b979a8a.0","@material/typography":"14.0.0-canary.b2b979a8a.0","@material/feature-targeting":"14.0.0-canary.b2b979a8a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.b2b979a8a.0_1635433925404_0.6967345804693472","host":"s3://npm-registry-packages"}},"14.0.0-canary.1af7c1c4a.0":{"name":"@material/floating-label","version":"14.0.0-canary.1af7c1c4a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.1af7c1c4a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c10e5bec1598cdc2f640aca92bdf22a4d9cae6af","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.1af7c1c4a.0.tgz","fileCount":33,"integrity":"sha512-ELj4sbCLJKLeh93xFOIE36UE7RlvBPeWPynzl00AslQhRIBgH8Hkta2j2sKPBbAgsYWaq+59oeryD52qQjlXXA==","signatures":[{"sig":"MEUCIA6BMc958ka/3kAbMNoghHCYp+87VDwU9LcK3PacO9E9AiEAi+e1QtmP5wQB4MKj1BLsfLocX3YZBWo2xLZXxh27Czo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3673ef3144cd47c5faba873a239454e11e3d72eb","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.1","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.1af7c1c4a.0","@material/rtl":"14.0.0-canary.1af7c1c4a.0","@material/base":"14.0.0-canary.1af7c1c4a.0","@material/theme":"14.0.0-canary.1af7c1c4a.0","@material/animation":"14.0.0-canary.1af7c1c4a.0","@material/typography":"14.0.0-canary.1af7c1c4a.0","@material/feature-targeting":"14.0.0-canary.1af7c1c4a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.1af7c1c4a.0_1635443559732_0.22924074986619414","host":"s3://npm-registry-packages"}},"14.0.0-canary.4afd353cd.0":{"name":"@material/floating-label","version":"14.0.0-canary.4afd353cd.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.4afd353cd.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2da71baa35af8c0a9a3fa2de7ba947411aeb2e4e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.4afd353cd.0.tgz","fileCount":33,"integrity":"sha512-EFnryFVeTO4b/lbN7PpXsTjAoK3GehLYAxg9r4dRwPSxNf8garTnXDKLL9OwUPiARfrWaoQCruH1UdysSHexZw==","signatures":[{"sig":"MEUCIQD8PDBNSN5i738n8q6FSdS4BgucMbe/Yu4lxJ70/qXTZAIgZppTDAGy3ptCFG8mg/EQMBcypVEarF2RU9ddv49GUro=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"491d940b4e97c65f274b1b4d42b3842e9bd3a4f9","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.1","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.4afd353cd.0","@material/rtl":"14.0.0-canary.4afd353cd.0","@material/base":"14.0.0-canary.4afd353cd.0","@material/theme":"14.0.0-canary.4afd353cd.0","@material/animation":"14.0.0-canary.4afd353cd.0","@material/typography":"14.0.0-canary.4afd353cd.0","@material/feature-targeting":"14.0.0-canary.4afd353cd.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.4afd353cd.0_1635519683975_0.5120376763089012","host":"s3://npm-registry-packages"}},"14.0.0-canary.a986df922.0":{"name":"@material/floating-label","version":"14.0.0-canary.a986df922.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.a986df922.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"8325836d7f266baf7379cbe5449081ade6ee1144","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.a986df922.0.tgz","fileCount":33,"integrity":"sha512-NZyklJ2QSmt+YvEnApk3S05xTNf7qtqSNroYyFWY50uyd05PMOdFl9rkYNHojG0HHXH8qoPyO6DMx8VqWLOZFA==","signatures":[{"sig":"MEUCIH9lsgsxBU/p5J9Fqo7e3iDWceA0VbwHlL3rFj7JV/8yAiEA9OFV4ciJfzo4+7EagcQf37bgfReYQy/EXBkPPCtPf6g=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"6fd5c666012fea37f8a5a820b4979cc66e59fe9f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.1","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.a986df922.0","@material/rtl":"14.0.0-canary.a986df922.0","@material/base":"14.0.0-canary.a986df922.0","@material/theme":"14.0.0-canary.a986df922.0","@material/animation":"14.0.0-canary.a986df922.0","@material/typography":"14.0.0-canary.a986df922.0","@material/feature-targeting":"14.0.0-canary.a986df922.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.a986df922.0_1635543292957_0.268067757288071","host":"s3://npm-registry-packages"}},"14.0.0-canary.c3cdff07b.0":{"name":"@material/floating-label","version":"14.0.0-canary.c3cdff07b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.c3cdff07b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5209742fee606669bdda08fd763e88984b400e69","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.c3cdff07b.0.tgz","fileCount":33,"integrity":"sha512-mYRvCnCS3Dmlj//PccFxO2V5ug8JPln3dW1fHNx/mmuXZAvYVkLrDFyGlmVWuWEBx+kpY4pPC9mMH02U0Dss4A==","signatures":[{"sig":"MEQCIHjA3zpWdIz/+cmgXPNpw8c4ek99xnKhLAd1vi4lEXShAiB/0Ed7qCn6TzNletwAyZRgEgLu9WIwyoZb+Wj0n02yfg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"078c19c333e3161ad6b51a3fdc993d883bdc19c8","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.1","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.c3cdff07b.0","@material/rtl":"14.0.0-canary.c3cdff07b.0","@material/base":"14.0.0-canary.c3cdff07b.0","@material/theme":"14.0.0-canary.c3cdff07b.0","@material/animation":"14.0.0-canary.c3cdff07b.0","@material/typography":"14.0.0-canary.c3cdff07b.0","@material/feature-targeting":"14.0.0-canary.c3cdff07b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.c3cdff07b.0_1636484744403_0.7069733044472346","host":"s3://npm-registry-packages"}},"14.0.0-canary.468392606.0":{"name":"@material/floating-label","version":"14.0.0-canary.468392606.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.468392606.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f03eedeee9a49b49ff2c9b33e14d2121e4bac516","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.468392606.0.tgz","fileCount":33,"integrity":"sha512-+1LCOecGQrRmHp2gd9d1nqW1V1pArOzJa6o05YIAB6PxtRP+QmbCct373Gn9fZ5EY/c1q9wuHKJJ4WZXshdC+g==","signatures":[{"sig":"MEUCIQCttU/Hw8xRI0yvuTXUPWcdxVadfYXVXKsFODiDRUwRMwIgUkr5Mv1UPH1wKR+P4wfiFj5hqqLxl0UdW732rR87MLY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ac451ce035a924184caaae0df5252896a7392e33","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.1","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.468392606.0","@material/rtl":"14.0.0-canary.468392606.0","@material/base":"14.0.0-canary.468392606.0","@material/theme":"14.0.0-canary.468392606.0","@material/animation":"14.0.0-canary.468392606.0","@material/typography":"14.0.0-canary.468392606.0","@material/feature-targeting":"14.0.0-canary.468392606.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.468392606.0_1636659598050_0.48500120397752156","host":"s3://npm-registry-packages"}},"14.0.0-canary.828f9803b.0":{"name":"@material/floating-label","version":"14.0.0-canary.828f9803b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.828f9803b.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"87ad7c4808f1ead5a12f0fa0af923c02df0ce214","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.828f9803b.0.tgz","fileCount":33,"integrity":"sha512-skXiUqDA8MuuAvn4SNs/8rnaU4vyK8FbYNNnlAeJYnAVMGO50NliSDs+Wnnl4wd4yRPmy/L1FMAJgbjZQf+twA==","signatures":[{"sig":"MEYCIQCb7ZhKNIeKq5U6hn1LAHMH5Q6PUs+dPNrkNjHysS2pUgIhAP9yjm3kmIjY++ToDtHSHNN6vZHfCB3kATui8SzFmtXF","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c64e9f941d45dc823621c068481be90a0eaa0f39","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.1","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.828f9803b.0","@material/rtl":"14.0.0-canary.828f9803b.0","@material/base":"14.0.0-canary.828f9803b.0","@material/theme":"14.0.0-canary.828f9803b.0","@material/animation":"14.0.0-canary.828f9803b.0","@material/typography":"14.0.0-canary.828f9803b.0","@material/feature-targeting":"14.0.0-canary.828f9803b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.828f9803b.0_1636660241270_0.3323592504967847","host":"s3://npm-registry-packages"}},"14.0.0-canary.8795cba87.0":{"name":"@material/floating-label","version":"14.0.0-canary.8795cba87.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.8795cba87.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2a94f30f2e0e9c763a131b1f75b597078739621b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.8795cba87.0.tgz","fileCount":33,"integrity":"sha512-gga8N2hm3LXmRhenRIz+4Ac1QtaGNLcVGRnPAKX7aNKU1FADgZK4twVdYqRb+gznc46vUo/Cfcl4LTD0Y5qsFQ==","signatures":[{"sig":"MEUCIBnMGvbPSWJmmNMSZenh2SKnz410GeT3Ej0ECn58xJDBAiEAvNL2aXI2Yz1Kb58CzKjeT/PrrQ/ZCsHmKbsPNJjFO0Y=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"12c2e8ee797434819828bade998610af66a528ac","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.1","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.8795cba87.0","@material/rtl":"14.0.0-canary.8795cba87.0","@material/base":"14.0.0-canary.8795cba87.0","@material/theme":"14.0.0-canary.8795cba87.0","@material/animation":"14.0.0-canary.8795cba87.0","@material/typography":"14.0.0-canary.8795cba87.0","@material/feature-targeting":"14.0.0-canary.8795cba87.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.8795cba87.0_1636660598100_0.048816650309451814","host":"s3://npm-registry-packages"}},"14.0.0-canary.cd7f8cace.0":{"name":"@material/floating-label","version":"14.0.0-canary.cd7f8cace.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.cd7f8cace.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1159371f992ac8ab075142b2a1fc8de24a19dc21","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.cd7f8cace.0.tgz","fileCount":33,"integrity":"sha512-L0G+3OXwjjwtzabiCoOWBs62bJEcrtJKtJ9RZw2Gmr9g2zYIpT2BryMVz87Yfgy8Wnf2Mxe3QUWs1aG4A1w7tg==","signatures":[{"sig":"MEUCIQDkdQtrSNZfjXF0zqaAPmHyEHJstBHAVkXr+isX7T7x/gIgIgnlEHV1eNXVs5SiipLgcUSUOpfEnx1P9I8QCZUvo8s=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"6f1e9f39fe9a43e01e67b849cc2a96a5a31be67c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.1","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.cd7f8cace.0","@material/rtl":"14.0.0-canary.cd7f8cace.0","@material/base":"14.0.0-canary.cd7f8cace.0","@material/theme":"14.0.0-canary.cd7f8cace.0","@material/animation":"14.0.0-canary.cd7f8cace.0","@material/typography":"14.0.0-canary.cd7f8cace.0","@material/feature-targeting":"14.0.0-canary.cd7f8cace.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.cd7f8cace.0_1636660698539_0.025659102113765764","host":"s3://npm-registry-packages"}},"14.0.0-canary.207230eb8.0":{"name":"@material/floating-label","version":"14.0.0-canary.207230eb8.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.207230eb8.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"112a0afa46111e8e6e5b358c9ab626c208ca0250","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.207230eb8.0.tgz","fileCount":33,"integrity":"sha512-eUy5ebLm3GY+/QmAJWdx7b3DO1IlmmdgSUCeq5ZvkwWZRt+whRzaRCE+mZgY7fuzITuxTEc6LaS8dysgTBBxkQ==","signatures":[{"sig":"MEYCIQCeRkhDmglkzK4eVoWBJAALdGb58Eq9YsMrviUTMqPtEgIhAP3qORgKe+TNafEP8z1CcW9oWRAbPvUPknq3eJ+EYwYY","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"de1b12d24234ecfbfbf5a665f46c26b71016be2e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.1","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.207230eb8.0","@material/rtl":"14.0.0-canary.207230eb8.0","@material/base":"14.0.0-canary.207230eb8.0","@material/theme":"14.0.0-canary.207230eb8.0","@material/animation":"14.0.0-canary.207230eb8.0","@material/typography":"14.0.0-canary.207230eb8.0","@material/feature-targeting":"14.0.0-canary.207230eb8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.207230eb8.0_1636669456057_0.05419368958012516","host":"s3://npm-registry-packages"}},"14.0.0-canary.991fb99f7.0":{"name":"@material/floating-label","version":"14.0.0-canary.991fb99f7.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.991fb99f7.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9a309d2b90f3645c2f32be960ccbb5b47ed92cb4","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.991fb99f7.0.tgz","fileCount":33,"integrity":"sha512-dqnXVkNZpv6TpcArU3Ed5PcrLpq2onJaK+tsl6ptFu/IPdKvUxfoJC7YqdSpOUeUkUnev9gmMT7lXnz69EHkrQ==","signatures":[{"sig":"MEUCIQC6rBxAlJcL48MrexPCUcWcGf5+pJuXjjHYxtShr4n3lAIgIChSQA+YfsmuchP4sAwE5F5pdtIm4TQYWhiy6U//eoM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d13dee60c11cfef5bdcac33da4fff6f13626c05b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.1","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.991fb99f7.0","@material/rtl":"14.0.0-canary.991fb99f7.0","@material/base":"14.0.0-canary.991fb99f7.0","@material/theme":"14.0.0-canary.991fb99f7.0","@material/animation":"14.0.0-canary.991fb99f7.0","@material/typography":"14.0.0-canary.991fb99f7.0","@material/feature-targeting":"14.0.0-canary.991fb99f7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.991fb99f7.0_1636670177909_0.7972355900974943","host":"s3://npm-registry-packages"}},"14.0.0-canary.15db4f164.0":{"name":"@material/floating-label","version":"14.0.0-canary.15db4f164.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.15db4f164.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1335788897d3fac5e3a329098ba5989e56af0b77","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.15db4f164.0.tgz","fileCount":33,"integrity":"sha512-5Za91AoRJJSiR8PTEfZagoaMxs9UieZ5lZx9t1xomjMmuAucVdxB9QbHXm+O/guEKS2HRRROObOqqOiIHLyb7A==","signatures":[{"sig":"MEUCIQDce4Vxb6ouwQ5hzqLRjZdpPxJ0SFz1X3xbyxWarGq58gIgPEaYZUMTmNQiYUPPdcKNacKhzk50RYVYoJNk34ZU6Jc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"562e11bb445a0e51783e848adc61b690a7a1ba3a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.1","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.15db4f164.0","@material/rtl":"14.0.0-canary.15db4f164.0","@material/base":"14.0.0-canary.15db4f164.0","@material/theme":"14.0.0-canary.15db4f164.0","@material/animation":"14.0.0-canary.15db4f164.0","@material/typography":"14.0.0-canary.15db4f164.0","@material/feature-targeting":"14.0.0-canary.15db4f164.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.15db4f164.0_1636738178993_0.6907040832929678","host":"s3://npm-registry-packages"}},"14.0.0-canary.8fcad5a3c.0":{"name":"@material/floating-label","version":"14.0.0-canary.8fcad5a3c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.8fcad5a3c.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e9b0b6cc90f89df608ea622cbf0083eca3133186","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.8fcad5a3c.0.tgz","fileCount":33,"integrity":"sha512-RBJSXnccK/qVmOC3jGJ+Hr1mpzGu0dhSQt12PdtrHfvshk/veQONOHkyix2wYr9t9Zlz42t5hrbU8XAruYnvxA==","signatures":[{"sig":"MEUCIQD9LUK4IVLYz5Xew7iPCtYYP5fX2Hm5k86PPult1iVTewIgZUddxeym1BF/tOTbepqHgSN/rnzMoCBb1QtpPXVRdrs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"14b654013dacdda833d34b73c1a94811202298d0","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.1","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.8fcad5a3c.0","@material/rtl":"14.0.0-canary.8fcad5a3c.0","@material/base":"14.0.0-canary.8fcad5a3c.0","@material/theme":"14.0.0-canary.8fcad5a3c.0","@material/animation":"14.0.0-canary.8fcad5a3c.0","@material/typography":"14.0.0-canary.8fcad5a3c.0","@material/feature-targeting":"14.0.0-canary.8fcad5a3c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.8fcad5a3c.0_1636744419791_0.5706258293207365","host":"s3://npm-registry-packages"}},"14.0.0-canary.f81fb1d23.0":{"name":"@material/floating-label","version":"14.0.0-canary.f81fb1d23.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.f81fb1d23.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"19d6dcdfd0695b2f89ec1c0a88a20ed7cd1d43b5","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.f81fb1d23.0.tgz","fileCount":33,"integrity":"sha512-RbDsn8MbjXFAZq09k8eaeNW5OvCm5ArwPwhoQcSUdy+8GXl6ssuFl73M0tCnV8En11bmv8CGy6LS8ZapcxCexg==","signatures":[{"sig":"MEQCIEpAUyndH66wrRxsgryL2cb2F/LY7FPc0GiNAcywVrbsAiB6Rxwt34QNK0pv0ZD7MVUq3X1McWgR4dL+8HlfpKk8AA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"60600a1b8cf651dddedd6881a54b20db7b75cdc6","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.1","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.f81fb1d23.0","@material/rtl":"14.0.0-canary.f81fb1d23.0","@material/base":"14.0.0-canary.f81fb1d23.0","@material/theme":"14.0.0-canary.f81fb1d23.0","@material/animation":"14.0.0-canary.f81fb1d23.0","@material/typography":"14.0.0-canary.f81fb1d23.0","@material/feature-targeting":"14.0.0-canary.f81fb1d23.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.f81fb1d23.0_1636756807618_0.6577181673354284","host":"s3://npm-registry-packages"}},"14.0.0-canary.783f6fd5a.0":{"name":"@material/floating-label","version":"14.0.0-canary.783f6fd5a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.783f6fd5a.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e8b1052e136865380299a877797784f781bcdaa8","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.783f6fd5a.0.tgz","fileCount":33,"integrity":"sha512-P8RGhteH65xPyh+Va5GtfiTQRjgJB6YJ9j9Mywl69U+SZl5lgwQnSzUI9UhYEwy+eNFAZPp89+Q+0eimx1Bk0g==","signatures":[{"sig":"MEUCIQCKDSeOXiddPOEbpt3qn80jr438jE8DqcRyi2CwR/0nvQIgWQb4R25AGfKM/elHxVOaVskMpzjNlwP+zQJlgG0jqC0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhk0aBCRA9TVsSAnZWagAAcmIP/jagyEZ3TyJ/hnFstO8c\nZcnCV8bTlAssxrrfnHlW4+spicDKnpbjXP+bBijpzlEzSaAFER0tPFQHjH88\nm2rxUep62FiLaroalrXfPCHxDbXQqDVeQ+lr4Y+bgf5BHTPD8Vx2aclHBu0Y\nJLOQjyIMjgKZUE3eH2qBtz1rE1oSesz+9tb/v8y8etMFI5xbyfEgKc82J7Hx\nLLqMQrXydn341HgWNXLaIMllYnbJAOkjl5SXpjBuyDtQ1Ck18FUvAdxAPIFw\nglCVgXY1gQjHO6ugdzsD21LpJsBj3NibwwcjELaFkPoSHDjhdg1UdagUKSJ+\nuaDXh+TUjy/RCG+Naqm4+8mKEVV8ikqqZcz6RKzMqgvLLXJy4YtKpRCqAhOl\nRmG6v2D7h4UXpmMWPrTLhr2AmXvJeh3c6pB/OI2jnyiIUsvi28VMS4e1Ml15\nBpKyO5oZoYl5Feky1824B7PygzoefUZdyElf/Abr6Dpn5CicbHiNy5b+/IM3\nVCrB29Ax/wceg8eU4pERPwu/icfZESrGE/Twjitnl1MYlEOFzHtGPiARPErg\nzUEH9oZNyzOYsttsJSdGnx+ZNBJeVg1GwimKljiSIWH97BdSO6QgWgCp367T\nPSqA+9A5NAqlId6mE1klnf9xjb60ccdcKj2AMMwQcDkFfZtY/0vVJXLGLXDk\nLI2b\r\n=QGmN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"29ba9297d5424f35d235c8ff87e393874c1b0a25","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.1","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.783f6fd5a.0","@material/rtl":"14.0.0-canary.783f6fd5a.0","@material/base":"14.0.0-canary.783f6fd5a.0","@material/theme":"14.0.0-canary.783f6fd5a.0","@material/animation":"14.0.0-canary.783f6fd5a.0","@material/typography":"14.0.0-canary.783f6fd5a.0","@material/feature-targeting":"14.0.0-canary.783f6fd5a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.783f6fd5a.0_1637041793426_0.5696636906726043","host":"s3://npm-registry-packages"}},"14.0.0-canary.d57ec74c7.0":{"name":"@material/floating-label","version":"14.0.0-canary.d57ec74c7.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.d57ec74c7.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b80f7b6f66c3e2f96cd2bcb3c303bbdf042e5c8b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.d57ec74c7.0.tgz","fileCount":33,"integrity":"sha512-idri3TgPP+JCMoZJ/kOuge+LLW9Q/VrCuDT8/pT+ZKV9ThH3jSHg34wrT+cUw6/APYTqwn1KpfutQj63tkcEwQ==","signatures":[{"sig":"MEUCIQCiCRg3OGDMQiqo+kCYYz4qUqLdLOmzD7BtN/jVZsOL7AIgFD7U85Op36TBwK9cyNOEY7JVTyxEdQZKWo8awYn1A+E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhk9lTCRA9TVsSAnZWagAA8xQP/3yuTUetrXpYF4IfvpxA\nhDSqd5EzbamVrSKEW8vmzPEJPH53mbkPNlNww7GnsSVWp/SBj6S6IkEliZII\nZYDUa7nHWQk0fK6wLbEh7OYJ8nvHjojodQgzdho8HrUW+NqgPPBE6CDDoGDG\nnNUnddVv8zVH7mZHTeOJsP+4kKEhmWPYQ4lG/9WD40AWlyle3mXbel/ef/48\nl1QM1pitn6J4Kc24NvKbLf70NRmpXVEJXFyCCSafQ26Dcq+SSsm3ZKtCCutG\nPr1yR7fJstenFK/5H26Gy5wC9Nj8d0QpXxj6sApX7F/zIL4bk75BK87g/gl3\ni4lbTaBKz72o5H1sNl3Zs+1RWMP4QnO9pS0nvMC+qsrC8cDUZrqhOWLX6G4y\npcmvnZrCCzTzY+rHnC6SDy40XfwrvQBdXP+HTJIu/q29MWp8tJXbQoryNPSE\nS6vzwTWXLnw8ext8DOn6C4v9DH5JYLuu5fdC0xm1kJp32q8ZpLAj8KvmykqJ\nGDDXHcmzW7goB6owRxa1c3EHQZ8xyPFyoV/UFoEE2hqgLI6RT7nrzTaLCInw\nXDgym54GeU5PriXpBx25sELvHiYBMsY6vDIJ5aA51/SqNWd7OSNof5O01Wez\nT8iIW29VRZntHeQMD/er311np+vjmr9Ai/pkKSsLkecf2gUuGcFSYG3+orA+\n9QxQ\r\n=sB17\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"dbbd8db21de66e88b3e713faa99419e6b2f53c68","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.1","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.d57ec74c7.0","@material/rtl":"14.0.0-canary.d57ec74c7.0","@material/base":"14.0.0-canary.d57ec74c7.0","@material/theme":"14.0.0-canary.d57ec74c7.0","@material/animation":"14.0.0-canary.d57ec74c7.0","@material/typography":"14.0.0-canary.d57ec74c7.0","@material/feature-targeting":"14.0.0-canary.d57ec74c7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.d57ec74c7.0_1637079379434_0.9138911864765416","host":"s3://npm-registry-packages"}},"14.0.0-canary.554c71829.0":{"name":"@material/floating-label","version":"14.0.0-canary.554c71829.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.554c71829.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a9d5357048ea2ecb29bb86326834edb3fa57e3a1","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.554c71829.0.tgz","fileCount":33,"integrity":"sha512-1pxMFO3GBNlxuIdguLAQkbJlz9zDBqgX7z9N2hNAQUba8PJ/FOKhKkRqFYqSUfX7LDtwLuW95e9rQqe2aPODuQ==","signatures":[{"sig":"MEYCIQCjm2YEdztS9ol5BcO4J/FCmxo6Bic//kxialAGI+4aMQIhAIbfDN/Exn/cuwxvC0KbgWl8qBll1akCr5MAPfPYzlq+","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhk9n+CRA9TVsSAnZWagAA36QP/2AoJmXQkRmefAAR7FGA\no/w7aSytP5ymRhyl5D/75y2zzNx3ipR9pkM1lo2Q2oufr2pn2NJNcfepWxbS\n7Tm6FtlPJp/VtCcrouJVneb3+RjKy9Y9kk3uMh8OkeiMYjhbJKzTqp7yMnlv\nkp9I9WNtmfmg+XV7X4dRvuQ8mdi5YceTJ8+/TnOgNID2yW6i69XMFAtIEy/h\nrMsn2Wu/8QMFIXB+CWOm0mXvAH1V0GbtLZhsmcFMxLpv7WmT64F8vNBaMrDh\nbGiVbyrU2YW/RP7FLS0kl3GeRthy9bg70+DpW+5FwbegQkMB7E0XDvGUf97W\nP72PBGvksMnytR1dLi0+HnEpSg4Q09WAZuRD5Yz2LNkJRWVy6hQ1gpK4KE80\nHFh0xxkrXHVPn9ak70LLeil7TFfMB5nNnYfdsW0MBQaubCXtNRD3N5AvI0wV\nYqY4H85lkcAmH8ig5HijZeq1GcAfg20t2GYAH1UN08C3ugLjvSoRyWkDbkpx\nPc7ZGTFw11ky8qXtBZdfIV8F+UZpajbwNWEOj0iOJMIAkAFHx/nqts6PK8AW\nX4sH9dBtFGz9mFnzOARKuH/2f/cIdRMeA3SpYanlmY82OFuBFxmL8/kpzQq1\nqF6akAnmeW8z8NeS/jwrRFF0uJJdmpe2ht6YQdLTEgC5sswFQejIxMv0h8kb\ncY3a\r\n=418C\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"be0799ddf10fc34b46ab20d754f7ef73d9efbefa","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.1","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.554c71829.0","@material/rtl":"14.0.0-canary.554c71829.0","@material/base":"14.0.0-canary.554c71829.0","@material/theme":"14.0.0-canary.554c71829.0","@material/animation":"14.0.0-canary.554c71829.0","@material/typography":"14.0.0-canary.554c71829.0","@material/feature-targeting":"14.0.0-canary.554c71829.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.554c71829.0_1637079550426_0.9733098066212675","host":"s3://npm-registry-packages"}},"14.0.0-canary.3ef470efe.0":{"name":"@material/floating-label","version":"14.0.0-canary.3ef470efe.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.3ef470efe.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a97e112a379c07b0d1a5ff65f1c43542cae99fbe","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.3ef470efe.0.tgz","fileCount":33,"integrity":"sha512-l4R4h6BlLXcFrAvsjX+zlBPlmvFWSCP3BZwS+mMQYFncD7btDPdNgYwi6seEli5O68DXFENx6EIzKYLED0n2Ag==","signatures":[{"sig":"MEQCIEwfoC/jfivbg1teXtOVEPMbwH4XBFq0DXb0LVXpxcGhAiBEypXfVSzh3OV7b30ad8TsqAJsygfgmOdZr+NpSG1jeg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhk9shCRA9TVsSAnZWagAAMn0QAJtg0RYrpq1iUL4F9Hrt\n0C/sqt/reAJZwbBWWQJZ0SOSe3bJPmAIXCwhpcPxu9URKMmsYOhO3Bh6Rihe\ncWFHswrmTjX4B5WAPtoC9hSXc1l4Sm7/+tNQdKdf+OTwIs1SnY1c784TEKJl\nl5PBSdV0fL/Jz6RI3nBXuldL13YKt8X+KZdNT5ZJgJYElEHyef3i3kFJXpIY\nc4nk1bW+ezgUHp7zrL5vCPYBU7Xe76nAxbpV1SqYp3zUAIzNfDzBHCd6MqOd\nVC7K5lbZnQiF7q3Sl/SHyI4E8MqXFBCyCe1wzrVdvIJP/rE/kY8Hz3gAJnT4\nd2WCV1zAT/mca4S1Ca6LUAlw8Xldv3az7eXsGJfzp6ceIATF5NhG7DbJY3VS\n/KyG1ugA+07mABv6v5wkKx00J6n5lMyIyb38zU6PuEkV65YcK85CwtD511Fj\nA48Zih25B+6F0nygYCyXP6kKpe1XfFqpgd0USPJOkhNlhCXdp1KRonaFjX+0\nFSXsF0vX5UEfNQH4WkBypC1bJuUiMjfTTMbeWZZySpnYgRcgd6GryrEEHbkQ\nQrk/T4QOxGP+iXhyiGkdKWDEFBhhOE7NqFvizf5o7rVZkbHiVRea1jqEDQVd\nUGRwRjoUGQqAsVkT1xM+iMdccK6FZ0+JFkCrhEQDfKs+nlULn3LrVKqY43Zg\niZeD\r\n=LdUH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"49429a109e0c13bb4f9d8fce0142cc5f142a6afd","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.1","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.3ef470efe.0","@material/rtl":"14.0.0-canary.3ef470efe.0","@material/base":"14.0.0-canary.3ef470efe.0","@material/theme":"14.0.0-canary.3ef470efe.0","@material/animation":"14.0.0-canary.3ef470efe.0","@material/typography":"14.0.0-canary.3ef470efe.0","@material/feature-targeting":"14.0.0-canary.3ef470efe.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.3ef470efe.0_1637079841104_0.3735471589511199","host":"s3://npm-registry-packages"}},"14.0.0-canary.61a28b2b5.0":{"name":"@material/floating-label","version":"14.0.0-canary.61a28b2b5.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.61a28b2b5.0","maintainers":[{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"bwobrien","email":"obrien.test@gmail.com"},{"name":"lynnjepsen","email":"lynnjepsen@google.com"},{"name":"acdvorak","email":"acdvorak@gmail.com"},{"name":"kfranqueiro","email":"kenneth.franqueiro@gmail.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"bonniez","email":"bonniez@google.com"},{"name":"moog16","email":"mattgoo@gmail.com"},{"name":"williamernest","email":"williamernest@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"30088c7b29f19544415aa81b6fe9e0244fb751fc","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.61a28b2b5.0.tgz","fileCount":33,"integrity":"sha512-ArOJdODwBU7vHBEWJ5sBH5DTM3ZRyx8/4RGaaDBOyNbE5zEI2UnmY8lv4+HDlOMoFVWEoLp1DMAYB/hgeKZ9jA==","signatures":[{"sig":"MEUCIQCunFv4yfTN5+ex8/y25zNgnZ1bcUC19S57UF2nD8tEZwIgNFklnopR1wQzXwHPwzF2e1Q3QogaFu6+A37471zMEmg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhlVD6CRA9TVsSAnZWagAAAhQP/AyYTGL4qQQPYijy1h//\npcPV4F4ESjcjn8477lj26lQOh/gqpy5JfTGQM3+3pDr4bXjhpgthnuxj9fq8\ne1hCONQlo01M7+sRBp35TEMowSlcBMCI7ytelSS6J7xpfm5CQcckx0nLj/RZ\np5CM9ZOPj2tPHCPboCzYOm5dencXSth6+kHkDHlRCPFnMnSwl6rTPtNUR5ze\nJkPFrAr2qlKZJzSvR0kWklYfNUd+izho6Hp0mOGFSUg+Lblk3QemhU6szsyP\n0QKTGXcLb2y2e4vBcpqBZiFfYbaJN4byJ8OT4KQnibBgrJwwx/0gZh57m109\nlLCy1LqEtzhkp3ib/ZZmg4JtMGKphNpqi90DIRw3KsGtZ6qBq8CmX23WtVmq\nbJCYG62LHgy2TABpgj5y2km4+QerO0zE91aG/RmMMw/zVaS5AqbomuniwBf1\nUoRFl4I1mOS6iDEBgRS6VrBOwQufCXj4SArcJyZS2rJYOD2kQMrWDn3SQs1b\nIkSVuC0IpWGe/IiUyFlCX9n8hiajCHWulo7uTRVJVB+7u/eMDEn4RQeLPtlJ\nBDKEg+ZE1cWzK/h4gTGlfhwAdawWddwDK4yuA5nTFKKcnx16cV1NfvwrNpFU\nDLkTTnWhTvgqn1fbGpRwroI30YbCD4e9CuoyEx7lSvaQlSzVMU2C/S4FObGk\nL/sH\r\n=qIEn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"314b98aa8ec5a35ba8a45706765f4cd7496dd803","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.1","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.61a28b2b5.0","@material/rtl":"14.0.0-canary.61a28b2b5.0","@material/base":"14.0.0-canary.61a28b2b5.0","@material/theme":"14.0.0-canary.61a28b2b5.0","@material/animation":"14.0.0-canary.61a28b2b5.0","@material/typography":"14.0.0-canary.61a28b2b5.0","@material/feature-targeting":"14.0.0-canary.61a28b2b5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.61a28b2b5.0_1637175546558_0.4691820459974725","host":"s3://npm-registry-packages"}},"14.0.0-canary.fae6c652d.0":{"name":"@material/floating-label","version":"14.0.0-canary.fae6c652d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.fae6c652d.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2c4f70175da57660b7c5bd072124fb6651ce5fd3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.fae6c652d.0.tgz","fileCount":33,"integrity":"sha512-i1QAc+uuDA8xQZNqtntNVeF4ONspMmVnVSRZmqHiqd5x7stWppgzfgakC4s3HeuQX7epPGCavjus0st3tJGPmw==","signatures":[{"sig":"MEQCIGWaScMPTRvC/SJuGedszT+HBwtO5NXQe9GAa6zrXA55AiBpGhLLDJmXLB9gBgBY7f7GjpZu2oF3GyxBt5oolHKNVg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhln5VCRA9TVsSAnZWagAAmD4P/iZ3nAtbcmp8B82EZDdS\naxkPIleZ1pRpbDt74FrfHW3c8puFdX10vPsOxSpd6YMDG24RpJROJjcWYbp3\nVtPv3FkWkVeOV+sjhPPABc2AgXlYj+9VbMzmxlxhDkoCM6YJdGcpqSixCcjf\nszl8tDzzkhsQqQb16GOGH04k2hKw2wHMeVLefIpiej8Gae3zfwNRXaN7sOW/\nPn5AWDVc6naYLKznq7Ha7ZAH9HHLemxbm6j0NCpB1F7YDZpNh+sQhW7Ur238\n69pM0oyp1iMTDsIpBccOvOUKDnZca+254zsLmCTrhjux0B9GiXzJR2LyPVKc\n/Q+z0CvnUSZXVwWNQif5b/s8DwgNInIG5qK4A4g4G0Ys9XqERI8pAKiksRMy\nACkKEzNybTF0gP/Hwfk1TOyHkcnQ8bJJoPI0emB8/cLRwnxB4R19I84T29H1\n4MOmDjmvutSUNLfHTf7RTdvasjhpvcqR6UR1taY06WvFqZQL+jPpnqbC7XFe\nPOFoDrSLbS3WNFm6gp5R0r5Rc4Njq+1Mk3TCuazHGlFVXTux4cR2dc1UBrSz\nyv899po4V6OaHHFLbyVllqeN6a382mn5kltJvPIdT2TQ543NLNMzeAQz/cuL\nqwHio71my8VtRhhJ+ZofQt4VEG/nkguPHtlmKmMWvkPqAuY0DQCYCZI5ZLVl\nw4E8\r\n=YN/V\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d27c4bc9db002b9009b70cb7437b393ce59b9992","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.1","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.fae6c652d.0","@material/rtl":"14.0.0-canary.fae6c652d.0","@material/base":"14.0.0-canary.fae6c652d.0","@material/theme":"14.0.0-canary.fae6c652d.0","@material/animation":"14.0.0-canary.fae6c652d.0","@material/typography":"14.0.0-canary.fae6c652d.0","@material/feature-targeting":"14.0.0-canary.fae6c652d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.fae6c652d.0_1637252693157_0.09709349660586652","host":"s3://npm-registry-packages"}},"14.0.0-canary.978a3b5bb.0":{"name":"@material/floating-label","version":"14.0.0-canary.978a3b5bb.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.978a3b5bb.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"0dc002255d519cfc2bad7b494ad0ca15c1d86c64","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.978a3b5bb.0.tgz","fileCount":33,"integrity":"sha512-P99h8P6dJOh0m8GWNrOaGnJdPNf4J4fQkm2yqpfHu7TriNYYkPTPoihWLeKlKQdwQ9cCACRzb2fF+xHApERPQg==","signatures":[{"sig":"MEUCIQDibaGwhQ2gPXeC08UYy2hqLte8Z3emZYAjuBBr0wbuLgIgcI3IOe35XJ/UklmJ8+hvpPN58OPJ+gnuK4lQEwV9mFc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhl/1bCRA9TVsSAnZWagAAhGIP/2/sQ9maPxwfIuIjElRp\n954/jhw7mp6VAWBj44C29EqdSKwvgdN9yo4VydUSnpm+mzpD6LCXMEl2VVhz\nvtbCdvCgrOzzEBg0ol1jj9lmXeuejrd9wnz1y+95z1nKQITk1pOtr33Rv/gA\nGH5es5gGRAF/OlhWGj1UMEYrcD0t5+gGSL3QsbSKYTgF0aWn9pyeeozldHwm\nlEOGeZMx+FrmIRsuE2xKZYBCJquZkvmvxHXyKajfgnZi5oAj/IP/xFBcRm7R\nQ0L5N2wJl9/6JICnbIcZLd7XgCcfrU30jbrpGY+tTiHbjno29mCydM4dVZsR\nnwxjcgdZzI7tthYVwkONoJUMOQsdxCa0WRe8adGLm59mkPAyVRaUbaTfF1E2\nNhOPR6LD0JjJyjeKXR1Gqsihl/cpsGjJDq8o47O8A3Qx76H8fxs9kSW0k4sq\na+N+DJ9py5ziK9lPqcOP4nkecT66/UQLqaTicq22xcP8frKGLcmOFE2gO51p\ncpBiM4Cz52CLlG+sZl09307D92mVPfHCYKgjZJB7PVVx5k/AFE74ra/HCqVh\ni3oZJP950xyOkGBg20HZoOoVcwg6wkL2EYW9VtXiDQQEkaw/PKLhnRIPnfBj\n9sB8Al1sM4DYbvBOXHPvlcC5A8734KonoSUyRStdtuaC0Q8D4O6fYHWqNv9P\nKqDN\r\n=6HYu\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"0d21a3472967f5ff791662e03961fb034a9227d5","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.1","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.978a3b5bb.0","@material/rtl":"14.0.0-canary.978a3b5bb.0","@material/base":"14.0.0-canary.978a3b5bb.0","@material/theme":"14.0.0-canary.978a3b5bb.0","@material/animation":"14.0.0-canary.978a3b5bb.0","@material/typography":"14.0.0-canary.978a3b5bb.0","@material/feature-targeting":"14.0.0-canary.978a3b5bb.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.978a3b5bb.0_1637350747367_0.2147370039528962","host":"s3://npm-registry-packages"}},"14.0.0-canary.e6f43cf44.0":{"name":"@material/floating-label","version":"14.0.0-canary.e6f43cf44.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.e6f43cf44.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2270fffdd77c298f307db502d727e25909676dc2","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.e6f43cf44.0.tgz","fileCount":33,"integrity":"sha512-TDKh11m/IpEp7SfhDZ0Xnska55PJD2arRZT8z2IuPch7Hkbuvm57FZWZB05V5Y2r1wt2YNywIwpXW/3wk5ZlMg==","signatures":[{"sig":"MEYCIQDKSLk57946jobJOQov2TLeDBcoEMCQD9hae36jb429SQIhAIy/gQ9WsaA+KfvN0umtwHtaB94pzGCvZP6BD1HQojGw","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhm9TECRA9TVsSAnZWagAAkZEQAJ81e35/edNclr+Hj9I1\nCThRHiet+OJLYOK+sHMW2DGnIwGnDzpsK/RetNmPYd1DNMLD5SkmC9Fdcpd2\nYxbPUDnf4LXh15/6lnwdZgwSocJ8hAQRBk+foUYhu55LOEVyQQWqxkhy0IoR\nqVVMEV1CMDB1f0NbEX61n0YDxRoUoZF+hFPRlmOl5KnjtjZWT/Y2+lW5bI6A\nsFdPxO84sKPs7dJf7aJqXg3aIF1UPx62EetKdL4+/FzNWv1PQxH8C3T+VZF/\nBkBtzZ/mL9eruleDf63pcTivObuiCpBBr/Kr/OdHOtXe1L+y8cMbqFzrjgwi\nc91b4RKZ1++BTchotAmYyScgOSfRCvCRw3LoQjBxu9HfIRpxzp0WDcBVQKKA\nflfG0y1J51xEYSpALsmC74hu4c+Lj1pkBs9xmFob3p+EKS5063iFiLIEJJPo\nQ1Aqa2SXJGBIB9NebsN0L8iiuO6+GLUOC7sbrypd42Fv3zOWEClUg5M9c2RG\nukjcUArOLW5UeK5I3Fcxk74FUKof9lttKYE/bnQNaQ0C8PNBreocVKkTZ+B3\nfNOoHA5hOQCgMwCJzldenfaQlKVlFgLcVVaC5IKGJrWnk/a7JT/Im+bP58JB\nCC/50PSslEKH6C6o2oKlUoPy83cLWDAQaCgQrgRscyqr40ZNqiqpqOFlErYw\njPFW\r\n=RcT/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"36200e7acad50905888cd5fbe17075663a96ef91","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.1","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.e6f43cf44.0","@material/rtl":"14.0.0-canary.e6f43cf44.0","@material/base":"14.0.0-canary.e6f43cf44.0","@material/theme":"14.0.0-canary.e6f43cf44.0","@material/animation":"14.0.0-canary.e6f43cf44.0","@material/typography":"14.0.0-canary.e6f43cf44.0","@material/feature-targeting":"14.0.0-canary.e6f43cf44.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.e6f43cf44.0_1637602500756_0.03924491458741497","host":"s3://npm-registry-packages"}},"14.0.0-canary.39cf14bc3.0":{"name":"@material/floating-label","version":"14.0.0-canary.39cf14bc3.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.39cf14bc3.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9f459e2009f6a84de49af3b838893d6203d392fe","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.39cf14bc3.0.tgz","fileCount":33,"integrity":"sha512-lsrECpZDKGUdrcktkZLHwkf93Km+8XJWfG0CI+OW0kTGLRb7h2FaxRvhpN2zG0RVcEI4UFSEFYdMyfa9+02Vbw==","signatures":[{"sig":"MEYCIQCp+T3HA5QfULaxxIv5MwQDESO/PgdlFKcERnqrS8B6sgIhAJw6S+KuOkEEYruq2aGIA73xRpkeyEKpGF9VeuQNZPQX","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnCH3CRA9TVsSAnZWagAAUXEQAJYst75C5y3DsvHkEyUy\nVHI6J3WsME780PNDlEvHq5qfzSZ7pBZINDLHJvy6YZ/JuGOek/3MNalbT+t0\nteD2qSB02GxCT/iMgYdIbA/uXWi1FLQHwwiMDb+TV3ftRcG0JIj5NY68j9f5\nsLOxL5E4hGz2GzdpfvqJ6lgE4JItatfcACH58Qa2Uz+Rbz2Q58IK8AviNi1y\nNigW+GGFOjCE6US5DcmItGqU0ALLeFAQnZgPk0eNTme1mQITuKvELCDO3O1J\n7WQMGfC8JK5qwVwD0c47pPuaZrGuzWtNYwSHphkLSa4Smmg7z2cKD3LRQbf0\ncWx9suDOCcWshC/4DS+y/UaWO2PFknonp8vSaq3rNYn3/3RMc0HJnbUYi8ne\nLZ0NKLuJrzCenKjVwvndKfggrXtxQ4cIevgBcsHxVg5XHmfPWrcjGiKI5KtV\n8aoq8CFomsxICn6RLPyKT2iLvdV3tm5qjGASHNvRPHyq5uUiJ1+K4zaEQuZz\nRMta6LcD4yPk9F8U5ZN6SYsgmczEDyCy10ev4qPZ+0Bthf99ovkQKoaGX1yc\nCdi9dg4nGuK/ioBVCK3mWaiEi2vqwRtYl3GoqIKO5K23rErOTH2WBgyD9gSe\nN3ipJHWQN8rZ6ckC29HKWxDwQSNJtB6VOG57vZamNyAlklM9rzErQpw+t1EI\nhxFd\r\n=+fwN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7a4dadfef1095fc344517a394b0286ecb59751dc","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.1","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.39cf14bc3.0","@material/rtl":"14.0.0-canary.39cf14bc3.0","@material/base":"14.0.0-canary.39cf14bc3.0","@material/theme":"14.0.0-canary.39cf14bc3.0","@material/animation":"14.0.0-canary.39cf14bc3.0","@material/typography":"14.0.0-canary.39cf14bc3.0","@material/feature-targeting":"14.0.0-canary.39cf14bc3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.39cf14bc3.0_1637622263198_0.9838798392254517","host":"s3://npm-registry-packages"}},"14.0.0-canary.93134d453.0":{"name":"@material/floating-label","version":"14.0.0-canary.93134d453.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.93134d453.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ff96010cbbd16a3a61be1c21ad1d24b9f552eae4","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.93134d453.0.tgz","fileCount":33,"integrity":"sha512-JD/XdmwJ/qCk2tXcE7w1XC+Lf1xvL6xpOv3dyGUpxbELXpSeh4mmJyV5DrQxwiWUVtkAclBZkOL131TeuZ5AiQ==","signatures":[{"sig":"MEUCIQD/UDue3tUC+yUjYkQ0uDaOVwaB+y1pKwt8atRbRUgemwIgLuAxrWvZEbaVs+m+q9t1hlyMLmOYrZAg+dMNOEN/+pg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnQsRCRA9TVsSAnZWagAAZskQAJJvrNYRVtTBNrLotVcL\nYX1KPS3TxIgozrwZNxZVxz4SV2wmet+jymXHIG5kN8mmvBs55FmM0zaFR+yQ\nD0huKqSWniFw4B+eeDtpinR3bhT6Mcc7147F3OqCH+c70tVt+uVnnPdGCQVY\ncuO9rBrQI0Sh5jRNYGWaYdKO3eUE8Sz2ZuGiHd1ORVAmT7zS91Bt86kcR8u2\ngdQacioAQYTPoNoz5qj3Nc2nCK1n2VWpRAUh3pPLfen2kS9+WjcvGRxcY5kY\nH08hNXDzIONPCrzYTOcjaA6n8FZyxJ7IH5M00JS0BmoPJuz20a1nuaEDBVCL\n2dchNBi4Ul+tj+Rulon3SG0ZInuLa1O9ZqbsZ29jdq1pLa7t7ER7LQTY3RSr\nNEhBdbogc/GCQyrWSyzajB+SQ+mEQag6iGfRV134joHO9NA7bF7OhccW6pqv\nAk5kNoQXDExcFr77aww5+uWktxDfSsZbgU4weVMLUH7VLU3vwLi3SK43x4GV\nM9ml9XHM8xNwg15eoPBzrmu/kxuJLGwmCkm7bPLnnAJ4EezCDh1ue0lOCUPf\nueFf9qw89dI9NYoOXjVAPQmsTE+EHZgHrJQdbOGLVSRjmxnNRVb/HlcqnlJQ\nL470qnLS5ScqKN85XunedC+CUpUKl42sJ4srKbOMrmekE01G/oZrODIO+nk8\nHebj\r\n=4QXu\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f37d4e46e027a3258621f6950e12796013661afc","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.1","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.93134d453.0","@material/rtl":"14.0.0-canary.93134d453.0","@material/base":"14.0.0-canary.93134d453.0","@material/theme":"14.0.0-canary.93134d453.0","@material/animation":"14.0.0-canary.93134d453.0","@material/typography":"14.0.0-canary.93134d453.0","@material/feature-targeting":"14.0.0-canary.93134d453.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.93134d453.0_1637681937206_0.6201089711500294","host":"s3://npm-registry-packages"}},"14.0.0-canary.bbd11268f.0":{"name":"@material/floating-label","version":"14.0.0-canary.bbd11268f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.bbd11268f.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"cbf3efd522339b38707fceb20ccf8b5045e14d20","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.bbd11268f.0.tgz","fileCount":33,"integrity":"sha512-lFzHs9Oqepv93R+HDYboZiNJ0XJTyfzZYUqoLkyw6mMIJqRt/DbXbNrnnyerFUYqKssYEDx+wW3OosGW53RPgA==","signatures":[{"sig":"MEYCIQDpiQf68Seqckt3xpw+jgLT1jdbjP1QTQqTRqGWUS7HBgIhAI9hszOETrR+y4BLo0GybaJBnWSiKtzD3sdEltRDCyWd","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnWvpCRA9TVsSAnZWagAAMqAP/jK6NY0/tllbS45qPr0H\n/NUZ1+i0NLt2/BOenQ0hNuuxA7+hhK+xEonrjmGYzBCjCaGX0XJgyb3wpuQL\nVFfOZsc0c0okLMa6TdhnKdkgURlE3kP/sKOIZCqJyEg+a6+VetJvSlgx0sdk\n38p5mSNT5Cyoq40UfKM++efQWUoQT6S0MJ1t1tnUK9fRoWVwJO59tEo21OLI\nLAimhrstf3pCq+/N1zRgaEYNuzMY9d8NkyVwsi2+JtJ07wzYpLVHOMeATEWT\nP7f3+eKjmKLboJdueG4DP14If7I/6hcQMCMo2nNaCgHsIpt9s7r+2RT/+xLk\nb8b9mpGSpqx4zwPkzLjI9W6bc4ebxxTmFwoNiFBdzOpaY/vwNX/vndePURBJ\nvXcMNTecZuIu86hcJNt8Ycb52m56jrqU+xL8EzeCB4shisQ5GF7oW4BMzi5B\nlSoM3Ux5g/RHQKqsP45nfl1CaFl7UVQpV8iRFBqxpiUrj8+l0OQujEfRTr6E\neo3gyGOF4zEYmA4Wse9F0fm6vhWwIV2cefEV8FYxcpX/vz2NNqkbS6lgR3dZ\nRTMAzKjMJcKYr9uUXjqEWVt6PHgY7SuqfKgGITQprvGTkbInnuDhAUgh1THA\nNOO4CWhzN39Wp3walzfENJkew7QYqxsZEUpAPFiTIfNOd4Dmn3TgKHtcIh8a\nequb\r\n=U6gg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"46484a77ecd0c6d7b548301f4e92325ffc4f8010","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.1","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.bbd11268f.0","@material/rtl":"14.0.0-canary.bbd11268f.0","@material/base":"14.0.0-canary.bbd11268f.0","@material/theme":"14.0.0-canary.bbd11268f.0","@material/animation":"14.0.0-canary.bbd11268f.0","@material/typography":"14.0.0-canary.bbd11268f.0","@material/feature-targeting":"14.0.0-canary.bbd11268f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.bbd11268f.0_1637706729010_0.934137908640857","host":"s3://npm-registry-packages"}},"14.0.0-canary.3db9c4d3d.0":{"name":"@material/floating-label","version":"14.0.0-canary.3db9c4d3d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.3db9c4d3d.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ec46628d0d64925b2c16fa008f35667109dfba2c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.3db9c4d3d.0.tgz","fileCount":33,"integrity":"sha512-3oB9lpwlsMCjypSI8Mip+KobdH7cjTjuh8m+WJoCSXZ9nTbs4aCF7TWiVLb0eEuTJyWWbwq2sBO5eOfeWc94+Q==","signatures":[{"sig":"MEQCIFSJIYMNjwBBK21dh4CmhrI0iDYY6gKr5nvP53iAGnUcAiBa1TKjRbMV78TNHdntDXGM79HUBqpdhQlgPj5lt0810A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnlwtCRA9TVsSAnZWagAACcAP/1e4S6571Fbpd7mNoE9w\nO1N2rMPYdDg7uy7jffdTpF+pgxjF9UNu+oGlU2LBg6qZc/obwzQjVPyWDbPq\nTAWHCM9WV/T0UYTTx2Rv6VwtKzt59NyHPXrTwzFnnsWEwHZE2YMl3f/KDgcy\nGHx6uGhhB+20bfMF1A/82q0+CkQP+jRs65ajXDc7Q5rzNHXAhdP00BdMoBnD\nK1iosDra7wCCKJEGHHzuDSKpXigQ6CdjORSrdWPfamkxkEw6EEJY6dE34zpT\npHbL6I0wul+KjLPc1mixuhAsUetwsFZOegO83gFBByiFnhMxIqUwMULvLgGQ\n5johC4GCm0DKbuP6ArUlZUs2MvNsakRG77i0ZD1Oom9kR3FBhXiXqrjKXm8o\neNZUPF4f3w6YRmKcgL2xnWMW1IW69ZaScYXLZKOtc/cCxGnZm8SibVvNdfZ7\nl8DLpyiq3XfOeUW7EirplEO3qVUifhPiYrH9qP6jzCpfeOnYlUxkFd0K0WYH\nq//4vi+sDu3pZ+ynIFO22lGIgDjkX5Pzw//L54HY5gHizFL5FUg+IOWvSOKA\ncqy20qlX6M6tz9q5lHCwUWrrtsmrVXbeY/+e1/AdpBG+79K1gclUH0BSf6gz\ngYDz/FGzcQKC8d4boy8BHJpe9AnKa7dO2rQ/fLpOMzPlIc2QmnXd0txd9X8y\nxbjO\r\n=1AIN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"61e9de8c9bd6ef83a5f0949cf53ce4a8b689f158","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.1","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.3db9c4d3d.0","@material/rtl":"14.0.0-canary.3db9c4d3d.0","@material/base":"14.0.0-canary.3db9c4d3d.0","@material/theme":"14.0.0-canary.3db9c4d3d.0","@material/animation":"14.0.0-canary.3db9c4d3d.0","@material/typography":"14.0.0-canary.3db9c4d3d.0","@material/feature-targeting":"14.0.0-canary.3db9c4d3d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.3db9c4d3d.0_1637768237715_0.3596697023217241","host":"s3://npm-registry-packages"}},"14.0.0-canary.78305b6d5.0":{"name":"@material/floating-label","version":"14.0.0-canary.78305b6d5.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.78305b6d5.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"dc633f943384f871b85b50b06355cf1a17004ec6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.78305b6d5.0.tgz","fileCount":33,"integrity":"sha512-2FOaJu9E4TqId/BRv7dGVaM4NKx+r2xCGBYi/2D/u6mAas+UlaG+48wHtrbhGxHKjkK80kM1b9sIf1o062gNoA==","signatures":[{"sig":"MEQCICPflcNGaF4BmOoYQ2dD2ak2sDf3JTwdqGwBkjLCy9gDAiB3TMsImrNK4BYXEf+aTa1vU0snO09VPEF/KsU+bBNGiA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnpeICRA9TVsSAnZWagAAUn0P/2NiZPQUaVNZFARsDICp\n90Y/h73pPasFKAF4ZaaQTTJcekIJTMnHY4xn2OQUUrAPNf0Y5QIinSw9E8H4\n/OHkUQ9NM+DCufEF8Nv0ruXMZaJVSECsHELF0lcwW7bDtb5XYPMXzAw6TL1I\nebnFUiJxVRkLgBltjnjF++x1QCh/xn4SFBTG98Ipm5cSqVbZJ0F5X9PenHLB\nXeUKPd6hVn6AwqmMX10j91jzGP53YapommwjEw1j8HKTb5Bg36XWvJaFszm6\nenJdHwRidpj9GdyYLluSyg+Ir0AyGvQdm9Ij/A12/3waN+wBzcH+t97mRJIG\nedmG01mk7/ToJnVFhq5K8YUhcVsW9lIWRZVtoxMiHRhFwOuMMuuzj331yFN5\nD+MPuhWcV99/Ivy5GQVmX9G4fILOURVPfS5vxEvPe6lyO/Gu+Yx/ffmXXnJ1\nobPGLJxBjiDXFjJPdV5F+Wwderu0SVuXk/Nhcs6Ru+11X6TF+xP1C0SToYDz\nXHK6g2VqUPPYR8w0LQbYgqRQkhkZT8P6IvMXvVvaqC0rruyd9ycE4PVSgOT8\nz70TXQpeIqQkFKu5yOIe/HoE0qFzC44INAFwzjfozmcw8i5kwnQxUkJZ/+mx\njdSNdHcCNm9lsQMHSTMWBRdrIQ2sCYhDNhAe+cKzCoQ867mF5gQy5ksQIph3\nEzBo\r\n=d83+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2885de69eab36903fec52b85e7001eb561624eff","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.1","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.78305b6d5.0","@material/rtl":"14.0.0-canary.78305b6d5.0","@material/base":"14.0.0-canary.78305b6d5.0","@material/theme":"14.0.0-canary.78305b6d5.0","@material/animation":"14.0.0-canary.78305b6d5.0","@material/typography":"14.0.0-canary.78305b6d5.0","@material/feature-targeting":"14.0.0-canary.78305b6d5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.78305b6d5.0_1637783432335_0.37209925027956325","host":"s3://npm-registry-packages"}},"14.0.0-canary.43d08ba77.0":{"name":"@material/floating-label","version":"14.0.0-canary.43d08ba77.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.43d08ba77.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"188bf6c8d0fbfa8ad2cbc4c1e10047938a095b5d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.43d08ba77.0.tgz","fileCount":33,"integrity":"sha512-jEwf2o5/U+pAc3thITwLkfgBePgL+RAtbX2O1y8sR/zBlYBo8mql0UxLwsdNuXwFaHFczS42Fl9qOXKj4RwmEg==","signatures":[{"sig":"MEQCIGMw4Aa5iCgOFZ11b5hP58QQwkVkOqqSEPPRc2zWqxMCAiBXGiPK14V5s7Ev56dVM+rJ0FJA8XLcDyx5QUc7l2tgbQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhpqv8CRA9TVsSAnZWagAA+P0P/3QswZNbzDLz7o1KWdWq\n6vRwieMFTlHF863dY5Na4HT83m9oDkJekcGeZ4L3zNOCSE8Sy1oH+LG2fPyk\nJJM0MTLPGSk3k2Z6Owo8azTx2WgoRbCNQfMh3d2lFmlcaPb2PMDsF9hXb2TD\nTD5I8DsYn9DJUFuWGNq9csqXhC4r5isZI4oFermAPO9O4Pt6iCHCNAA65jjL\ngivOY2SR01LuD6wpzkzy8tPi/jxb60JMOoAUgfov1v59eZxIngE4yFHLHah8\nqSjYrL4g79aLRX/ci2baaPq0HBpde7fyodJFI3a+/jfgO/9lUUPgzMqVOTlo\nrY7dwPfQ8InskmbkCGo6fJPGEWVfmEJ5mv/22Amk8uPjlsDGmp79/G4bMJG1\nE+FKRlFzQibgdk8YrzbbMMYc/EcjoU+htHNCV476hsTJav/yc+5wbZxy9Okd\nfdx7qXyVCJpKMp4amz6VAi/b5ov4PpcO4V0UX3aaHzAvQ+RCQfoQQnDd4ltl\nHf6qJfGoyTX7ebJNxdRMycpZ2vMmYAk6ZZc9vSZS4ZaeuXvtJnuThGafVuoO\nx4zCXEklLjW0tIG3Lhx+NT9CyyeceTKi3d/k8s4M76OVq1mG0MCX/0DqKcFn\nGgMH85qGP2BKQPhZR7AdZU5/64AJoAVtnG33vFkabjHh6JWp51Vt9jTDnfEh\ntAcq\r\n=eqYG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d1929fe60ad2c7ba249562f1c1702898df8f04d2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.1","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.43d08ba77.0","@material/rtl":"14.0.0-canary.43d08ba77.0","@material/base":"14.0.0-canary.43d08ba77.0","@material/theme":"14.0.0-canary.43d08ba77.0","@material/animation":"14.0.0-canary.43d08ba77.0","@material/typography":"14.0.0-canary.43d08ba77.0","@material/feature-targeting":"14.0.0-canary.43d08ba77.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.43d08ba77.0_1638312956686_0.27510880783215974","host":"s3://npm-registry-packages"}},"14.0.0-canary.17a072535.0":{"name":"@material/floating-label","version":"14.0.0-canary.17a072535.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.17a072535.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b41c62ff9a00739830b22c9803b0be0fd1632ee2","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.17a072535.0.tgz","fileCount":33,"integrity":"sha512-JYoUtkWJR1Esn0eRprNUTKkQKofukyhYyXE7Y1WHCEsTFZ6qaP0uwduRqOYGSWnx6N83XSs4JEbhErNTzgvsMQ==","signatures":[{"sig":"MEYCIQD+zkZe6mZjNVpZ1eEMrXfNdu+IaQke+lq1XxmP0uU0bQIhAIbaEwlfLIL0Tx31/B8nhkTgXPr1CKWRNudmZ+VkST3/","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhqQrTCRA9TVsSAnZWagAAmf4P/jE1iseaemfsflAC+THk\n/tW4YzFpf3GfdvaNPENrpGNXTyFoQ1m4i9lGbGgD/bM7KPRjomaqk9e1GzxL\nyP3xaCfvw/bU27bx336JR0fe31rrEHVu+l8TMLt/SlEn55YqkSVRMkrfpdoo\ntv+5eD2WdWv4tU9UwZVBgYW5vBmtx34t1uwN2MHkC2yoXOToKLWvn5hXDjM1\nVgo05s42pDjb109j46nDsDbkQmWtDFqbZ/KkcFL0oV5AawJyMebyRPfUl2OZ\no5pcUPQPlV+Ri2Ht/VRPQPQY8orveh7n+OrYL9a/AKumdnMMl4e6OTMt82pg\nNMKs0zofzYZYibNGrM8mylXtLbSVVMd+iytMeqMznZEYbxlddyENAqi4tUu3\n1IZGbVhzXOfWwToxHGa5Nc28aFnDkVnQcBAMrPk4KbEh6kzRRHQhFJL5iDK4\n+3jE2A1zHY6yc+W9qrUaaQhNkNplG2ywFBLC540sLCRjalL0HMv+BBHaxyDq\nv1o0GbrwXMHbMo52U8XqQj+lUK8Ydoj7d1K1NdMKtF2rAIp1NkM+4RUY4pg9\nKQQm4ro076QFXO5Ca4tsG1/qxgS4xYdjTOvv/cfXrUb6x/vmFRAit5Lc6CB2\nyHntoWcAlo09QHWRmskdfac0YFFmQCNFK5jK1QZtmVZmXErWqjCa8RTlF1Fa\n3lC3\r\n=KgdV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"317cda93b55159038a12575fec5c35e9ff5460a6","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.1","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.17a072535.0","@material/rtl":"14.0.0-canary.17a072535.0","@material/base":"14.0.0-canary.17a072535.0","@material/theme":"14.0.0-canary.17a072535.0","@material/animation":"14.0.0-canary.17a072535.0","@material/typography":"14.0.0-canary.17a072535.0","@material/feature-targeting":"14.0.0-canary.17a072535.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.17a072535.0_1638468307790_0.6795282248932617","host":"s3://npm-registry-packages"}},"14.0.0-canary.5d809696c.0":{"name":"@material/floating-label","version":"14.0.0-canary.5d809696c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.5d809696c.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b6c083e85b21383e4570c895ec2e4a5e95ff6343","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.5d809696c.0.tgz","fileCount":33,"integrity":"sha512-x+cDBd30bzcrYzTMXwVWOQJODcR9KGhQXA3i+zEhY7zzmPM9b3AtyQJ7l1/zPmQ4iG7KMqGtfgsUmiPWt+EnmQ==","signatures":[{"sig":"MEQCIBqq5IIMWPaOusJTvP/edpENnTMFravv49RLcyPsOI9MAiB2Vcj8MCcqNL55hnXBJ2LAaalBo3B84VAJz3hL4kYwWg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhsO7wCRA9TVsSAnZWagAAmGQP/3vWv5UY1edImbvOUG6B\nR6oSdDh+E192lSewlEhZP/tk11P/wDqemJQqgR7mUKv8w96M3sodIkl1Dkzg\n10YljxjgMocmaOioqA4lb6NvirRcmriKWxS8RbSh7TiGSRFzwHzkEMUfdISY\nnoy1E3OJVGvBFhavv3Pbc6IAi0Jxav9RGvQ1yGJhCddINWV/8MyQxlnktE49\n5baRoYKpsMW+nSViy1Y9ellazLzJIyPS2mU/NR6hh5QNNIO3fLhqHv0HfSYJ\nLdPr5w67UHJWD0AdTbPIGtdU3HEBDw9Suh+/uFIhkRrRQGKWItWo6+vl9fZ0\nZvOn5y/VUXTktFi8f9MkEw+iQFc7Cc9Et+1aHxz1Vy6QJWJsN7tC4dlqqWA9\nzmPWNaXkhAsImvMOSvaJuOF0CWQPZkXnLBIPCIbsyzyekS1Vp/q1WX42vKUQ\nhoxP/BOrWdmlu953X7IMsx/EknauCw68j6iN7brI1SRhPPFTvtcWl47Co97H\nSogscMjsVB5D8EKwqk+DwWuMf0aBK5r9/AJ+s2wwjz4KR0siNuLcV/HlLSGn\noo6V0d37G0fD4YoW/8f/bzBx/XOW6R/eji0RKL3zDieSOQwJtgOfzqSIAqyv\nxQdU7ej3akTfMx/b8BXNnD4yDodCCo5VWN16a52/XGHEymdSX4FdYxCxXQfY\n4tOC\r\n=ajVk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"955aa3e4252f722f096ceef387b285a197760b82","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.1","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.5d809696c.0","@material/rtl":"14.0.0-canary.5d809696c.0","@material/base":"14.0.0-canary.5d809696c.0","@material/theme":"14.0.0-canary.5d809696c.0","@material/animation":"14.0.0-canary.5d809696c.0","@material/typography":"14.0.0-canary.5d809696c.0","@material/feature-targeting":"14.0.0-canary.5d809696c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.5d809696c.0_1638985455859_0.32919774123307244","host":"s3://npm-registry-packages"}},"14.0.0-canary.b6510c8c1.0":{"name":"@material/floating-label","version":"14.0.0-canary.b6510c8c1.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.b6510c8c1.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"138a90dbe1c4a0669e4844ece726bef40958682e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.b6510c8c1.0.tgz","fileCount":33,"integrity":"sha512-gxgJAdJwqX4Ac/13BT6z9HtbV44AE2kpl6QZ7FAjVFfHF0lqcP2ecnAlaCgvQl1gBirL0e78/8grNfkCnMVrdw==","signatures":[{"sig":"MEYCIQC9FnAavxoXMmyAB+/cGjEKcqcznb32TQVc/p5s22vP7wIhAIoNYRWK2qxuYMgi+OSyZQoXSQiQjSxXo4E+5iqtCJkC","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhsPQbCRA9TVsSAnZWagAAJv4QAKMVvJ6gwJ9PBab5tOxm\nsIpY82O48dIQSstjE6zOtpJvtsU4CocGdhqhvzM8gICOEEWjX9rRLRGeTib4\nFlQOJ24e/pnAjJyP7N+nQEJKa3kihdmAhlCqeJi1VsDMNR074cmvXETTCqPE\nVcmqFuw2fp0RdaLl1bIG8n5KznABiVxP/ZjCGAD0NcwIA+Rq+uy/yxHCJwD1\nCR5XLwZf1IU79nbzgANMxTodJEpHu49jzZbor/llUMQvYyIk8eRf082UXxrk\nC6i6wgCXOd1dXwRlAgVo4qaYzCXwu8po6RafBQyXg3qG2gABUxH/yTxhhU1x\nkC6RaDVFspNaAF+WX5DRzk0kOhw28aF51qBq983+yJPdBh9pzkLJpvP/HU5g\nK+93wLtUOJTEZFDCVU8be7YhEl3h4AQCboBknTpIkyrv2ltsnNg1+oTChpK9\nSe5DuNnhqVWe2Klqnkro2SafAQSrheT3rZ+kW9KdBXypu10wZz4s3Jckp5KL\ntf30JNGy/F56UHns9fNwc0jeOZGKmOsAdiF3ptSDd7thFzdYLz3sxzeSdv0G\n77TFau0TCgqztOBCWhWWUY2Hmf+vnDHJkYMDN4s12unVGYFfeZQHyLNpLAN9\nL2tcXvgPorO3WwzLfBm0etUgvmcGl948gZ6BAWgNIN5Hwhwz6x26iFsScqmp\nIcHB\r\n=iSFA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7b9b6695d55be857206c67de94ea9741aa48bb38","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.1","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.b6510c8c1.0","@material/rtl":"14.0.0-canary.b6510c8c1.0","@material/base":"14.0.0-canary.b6510c8c1.0","@material/theme":"14.0.0-canary.b6510c8c1.0","@material/animation":"14.0.0-canary.b6510c8c1.0","@material/typography":"14.0.0-canary.b6510c8c1.0","@material/feature-targeting":"14.0.0-canary.b6510c8c1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.b6510c8c1.0_1638986779776_0.26347218534835637","host":"s3://npm-registry-packages"}},"14.0.0-canary.f460e23da.0":{"name":"@material/floating-label","version":"14.0.0-canary.f460e23da.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.f460e23da.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"991c369776ebc9e47a43e512eee17a073b29be94","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.f460e23da.0.tgz","fileCount":33,"integrity":"sha512-A+RiSJp16UwQkVh/AQQOLiy10USJ10FHOOla7PDYjaEPP46utNp++asSPJZfmz97mx3sc47T0WqRDJMmly/ItQ==","signatures":[{"sig":"MEQCIG2Nlw73WZdGqTtGX6l6uh6AURn8t+zjdMjlRBx+Bc5TAiBzETruN3jfcb/YHoPVNJ1UgDXeeJ7xTcB0OiM+lx5I/g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhs3FbCRA9TVsSAnZWagAArYAP/3sJtRyXIJxvfDqCU4J6\nkmC3EC9DjeCOvsqnmq+iZ1q+YZaWq1PvqUNaYRijaRVAjNfoi5fvvObyNSF3\no4r/8cVS21bAyB1pYp8pRMjD+2ZaJ9iW/LppHSKYeZ4fRXQ56UBcEkkKK5Bi\nyUX/QJkQo78ESyTjhA+5KbMAQV8E3wtkDVzCIMwgK+oor3w4A8oJ03AIYIjL\nTc2AiJ17LdhRKAUal90aa6w9wmJAC8yKhP7JonROlfNM4LwZwqEOuaKiNXdZ\nL4Ie+NeQqrDygJTjr8pq93kWPBVGxCYHfacgXz4ALvjr7wPMyhV6ljfky9xA\nhfhlVlatVEdf/pEajdr80MrFUVvxYbRWdKCV2F9LnOb8+H96H42KTzYdMBLi\noENzZC7Anv1bfZ/HkT6L3vlnqxuIBmHsh1hyzNeDVHTtpCs4sdP1a33icnNZ\nTZhLz4Ng1CUUi5eVz2OoC4ScKWCe8jRyZMMYN3SiBaZLfaUFeVUKXvk9CptB\nr8s9o2UFP3SsDZ1wgB3H2sridF1Di2HDd+55KZmT+R/M0rSZGzkoacbGVulq\nt22b32zR1klcdZe2jh9vr1FSUz3tOP2JYV8RFsEDTU8EnYbyXOSMR35iBUQP\nRVgtZpksgZ2FdmxkKO8m4yo9+48njE1uMUradZLsilGUi7Roq1JNvL6B1o1j\n+Nzf\r\n=lfY1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"6d994090cf732fc4f1fb93f91d64e265cada1b1c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.1","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.f460e23da.0","@material/rtl":"14.0.0-canary.f460e23da.0","@material/base":"14.0.0-canary.f460e23da.0","@material/theme":"14.0.0-canary.f460e23da.0","@material/animation":"14.0.0-canary.f460e23da.0","@material/typography":"14.0.0-canary.f460e23da.0","@material/feature-targeting":"14.0.0-canary.f460e23da.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.f460e23da.0_1639149915343_0.4500445561504445","host":"s3://npm-registry-packages"}},"14.0.0-canary.7d8ea4624.0":{"name":"@material/floating-label","version":"14.0.0-canary.7d8ea4624.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.7d8ea4624.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c34f753befb2457ee1b0697c37156a6c2d8c8d75","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.7d8ea4624.0.tgz","fileCount":33,"integrity":"sha512-qHcLFCcEbXByht3kFnA1ukWu6kuqFT9dVuCmfxuESJQ9D7+4WIB3ghBkNNLUTEWCrsvEwHmiiBvm9Tj7MHhSIQ==","signatures":[{"sig":"MEUCIFO5PtC7UmJeJuCcl/ZMiHNf7Q0jrQLxWPe4Q2ZD2pd5AiEAzOSnUu1HDAxD4LtHBWKYh+49/ncz33uoREtkR0bsQow=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhs6qDCRA9TVsSAnZWagAAF2AP/0CsOD/JH4gAAE/IeBuG\nYCw1U6OP9ecg/bt1ZaqufgC7NJUmIIYbkuOpyRH/itlizbp4mk5W2DdkFLSI\n0VPcu5vInHoKaNdv3CXeEiBt+4BXgbNNtGvMGS5YzzprmmdgiHdjaNYGQS8d\n/2f+xSmz+4EIIcD0S2N0FvsujKuzIbj/QQW2R83ZvrcWW+uSad3/yE3LtAly\n+PbvsYlP2z2ffw370tk6yRYZqWmnKoOMkneWYzoykELSfcuqINLn8yj67ytB\nAtOv7Tr8hPIMAfS18xMVjUC3kiLVRzgof3HTkTW9sZ/e+9MHZIDe31/C/qHr\nupN6H1a6ujKyqftrzNxFugx2skoST+cPK6VwGFeHVnt+Wf3qeKdMJINSgjKX\nupboroK/+/usr1AbEvJGZeQ6TfmtcdzJFh+WzdRf7KtwqXZ8EshpCRFflMUj\nKBtKheRcKYWoj9uk68bRGno8f9PoA2KKxdSXI6sniYIlwLH/mE0O2sRnaeiz\nSv0X9jfgysEMO49/mw1U5f8kUxOZ/0W0F8CJgcUi+ZTJp3OIp2/RwT3Df9LO\nPvTkaLPm0MMzhAtZ0TJrFFV1Yo/Pxjc+0DAMZPFqk2ie6th07aCrW8N38EcT\nspQW50geIRLwRy7WTGBAbWEIwdyxiJq2sqdGA5PBAYotcSIYa4dlzjWQ0pae\nQY1o\r\n=n4Xg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c5733baaefa11aaca3bd6f32fb2ac29c20894738","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.1","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.7d8ea4624.0","@material/rtl":"14.0.0-canary.7d8ea4624.0","@material/base":"14.0.0-canary.7d8ea4624.0","@material/theme":"14.0.0-canary.7d8ea4624.0","@material/animation":"14.0.0-canary.7d8ea4624.0","@material/typography":"14.0.0-canary.7d8ea4624.0","@material/feature-targeting":"14.0.0-canary.7d8ea4624.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.7d8ea4624.0_1639164547391_0.0859643867503701","host":"s3://npm-registry-packages"}},"14.0.0-canary.8fffcb5dd.0":{"name":"@material/floating-label","version":"14.0.0-canary.8fffcb5dd.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.8fffcb5dd.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9e0069eed498b721ffca827ba0ef91fa5239df6b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.8fffcb5dd.0.tgz","fileCount":33,"integrity":"sha512-Vhs2hhTAYQ6kBb4Sf8p6ml9h6XMk2CEoiU9Z54g4EVOwqstSH7cZTXUs3gWWovn8pJX8IybTnfEm4/2YsPT8/w==","signatures":[{"sig":"MEUCIQDRNeOV6BdqIEeGEcToCoZdeg1JuBkUBGzsQkjjLNKV/wIgXjKfm939lGlSYNaRuHo7z+tdT/lru/qhcDWwhQ0FhGQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhuFvfCRA9TVsSAnZWagAAMsQQAKBhxf8v+db1P1zlxIgL\nWVbKTFbgpAVsX8F8mff2rmMD7hwjX/+P+ft6EkLL1DR0pmcvGStN7TF/hCqq\nYl/3uUAzSBIkG4PMhYNR3FFmjtyAi6bv1i4ZrVxwjLSczqOXeAz991Vj43dr\nA0gFVOMlHEZi3bssbPKm01KnTN8609RBm0lAvfWq3Elw8y8fLDUZ/f19ETfl\n4H2b7IT7u0ruSOKD3fldX8yHXz0axwKcBwGM88XsMkIdyjbjiAklkLVDfrK3\ng7GjSZsQtwGkZWmcuzuZg2yJgzwe9TRIQg1+iyjxOSwMbQc3d2jU2q8d0wXN\n/tg1a4OoP1ZnK+h9HchXOXoVMX2XsDmHYHX3l++EWc2xBIINnrIwU14mm+Nd\n73Z3ViVvez63IB2OgSwPLQPPvHavOfmGnpwVqnKB0r7rJEbpCYso/sUeUfXj\nujXDCSWVwTLULNcqyGrwsamLlCTeambCzwUtSRJuAgRlt+oC9765nzUQM5id\nbNzPpsbh5hS+dAFFqh7DzhnBfK7kEYksXy65M7wh/qrxwemaFVOyHbhEzYgD\nrEZuRODwYp71EaAcnr+0d4pNIzd5wm7u3gjAcMfbmy41mukPsa/jysLl6cIQ\nvlSL+HwinCmOmnqKyucX1hsGL0r/+lFmmnzSYCO8FY0XKjJdo/zck3Xc3Kuf\nqjYI\r\n=XoIL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ed22e4daefd7bb5e95668ab484a3a4a65793437f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.2","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.8fffcb5dd.0","@material/rtl":"14.0.0-canary.8fffcb5dd.0","@material/base":"14.0.0-canary.8fffcb5dd.0","@material/theme":"14.0.0-canary.8fffcb5dd.0","@material/animation":"14.0.0-canary.8fffcb5dd.0","@material/typography":"14.0.0-canary.8fffcb5dd.0","@material/feature-targeting":"14.0.0-canary.8fffcb5dd.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.8fffcb5dd.0_1639472094832_0.7611085665828778","host":"s3://npm-registry-packages"}},"14.0.0-canary.21e1cb9be.0":{"name":"@material/floating-label","version":"14.0.0-canary.21e1cb9be.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.21e1cb9be.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c5e3619305cda417373ebde44ba97b2afbe11fd9","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.21e1cb9be.0.tgz","fileCount":33,"integrity":"sha512-I6IvF6OO6NUjKpwYfjFPng6DVM+Z48WGLFsuZtUUnph6vJsQB7grS21ogtjXBYsrjk97vFsovkMTByrxFkQ5oA==","signatures":[{"sig":"MEQCIFPFSoauo1WlHy6xEkfUXPK+SB2eOUiUx5WqO4usSV6jAiAiTgBKoGfZs74Vt13yU5MFnb9mmTn1HLx4jjqeHkuhJQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhuPL+CRA9TVsSAnZWagAAtxEP/1N2QP7BCPLEvmAwb/f/\nQWRc4JQTQUa91NY9qGMBBXo3Mo/W7bFjVbVUu94vdqIE3o9VMIQrwL798exd\nVRZeNdTFNfHqYVlDQ6zqVCsiMZYY0t6NI2a8+mw8LbH6Y/bIz2YC0QIzG4Uh\nNNO0cIz3XceeFsYrr6iAZXnudLstGFTxZF7ftPaeJq2iycre95oE4KzUun/Z\n55A3AsSmW/9XbYYyW4/63OOgTQwFdx8wrWLZdBy6O1oZlSgPtj+ujWbX9/xt\nBUrmSaxVtySAxIpXZGwT2tXW6BHr3ugp3xtlQs6gRjY7MB2UtXRMloT/kBfZ\nOyT7Dl6cFbbtRbk0ss9wd5cCvSUVS82/W4M/FsPIej2sMg1zzB2JwH5eh5Vh\nr5YlesNitvlspFMb7cNBTp3wsA9YZSdlJx+wc04EiuDUc0EAMnSnnq/cOlLk\nOcGZrgQy2HEv7I7qxvxtS6L8FnzPpe5sjC30f1OR4JN2FTjkEgz0MjyiRrw2\nKPC5oSkTU6vUe68g8PqyNfE55rL9tWZ0folu2LlZljAiEJnA/7TRIJFbpXz7\nzT6Qx3zXJUlsVsIz72zkeJrHhNVeyR3MHgDLe2w5QkrAv947D4XrlXXHXVHC\nsbRmSdPFeohn9YqoUWL+CBfvZ8UUTzVUdklZVftrOg2thY/7mmW/OE9Gcrb6\nIO+U\r\n=OqH3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"091bafb203d13305d394af0cb6817b1bf05c64af","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.2","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.21e1cb9be.0","@material/rtl":"14.0.0-canary.21e1cb9be.0","@material/base":"14.0.0-canary.21e1cb9be.0","@material/theme":"14.0.0-canary.21e1cb9be.0","@material/animation":"14.0.0-canary.21e1cb9be.0","@material/typography":"14.0.0-canary.21e1cb9be.0","@material/feature-targeting":"14.0.0-canary.21e1cb9be.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.21e1cb9be.0_1639510782846_0.65362260948765","host":"s3://npm-registry-packages"}},"14.0.0-canary.ba78e8724.0":{"name":"@material/floating-label","version":"14.0.0-canary.ba78e8724.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.ba78e8724.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"41bd2cc635ab0b87db3e137b011da92dd8645923","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.ba78e8724.0.tgz","fileCount":33,"integrity":"sha512-RXX0SOwbDTEshF1EiJG3sE3+gpdQZF6ms7/NK4YVixp5x6c905OEYsAwkc3gSFVU3hQi6zF6XeSpWfrXBL2M/Q==","signatures":[{"sig":"MEYCIQDuwk33p2bKNqwxKUfapr+fCXYzaNqnpWo0quQxA44vBAIhAIdbSJPEIPWFaiRpyQ3fKQly39WJuuOuQJsTdab5MshR","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhumhkCRA9TVsSAnZWagAAlnIP/0c00GiR2pmbD5muYboy\n80Y70LEmZt7zafiZtS9brooXB0gTq8NzcGl1QaqroQuj1JjsX4QIhCB3Qca0\nB8EhpF660c45elYILMVOQBwALlrxJ6ATfFZq/6FPn8kwlZhVfG0YKIt0RLCq\nUHRE3W/893F7deuEhnQv7jtMEYPRvCi4Xwp0xs5eipNdh513Ms8htsgWlbqT\nuWmjbBDm+7QnTqf6nMGQtSGnQ86GJ81ir2Y8B1smSgPS7GyLxLt+6nrKg8ls\nK5lwv+Y+jiNaC4ZhOlRL8eq8QF9tZqFW3kKW1FwIaEVk3qKlNSd1q03D7tGZ\nEM3eUuVASHJdi5hkI7AIkuydmR1Md74FcDcM0rrjMmEqyPFs+IsZFlAm2rJd\nT2XIdA1uiHtyfQn1bEEXTcYUCZHEHUANRc1fHchcjja7AIv7MyyKAwoTKQsb\nI7UAvRj/lGoiwbtD40v2IC49p51l+oozAFPnGH9KtHdbgfrLALjEX5JRqEYE\nEdGUcASMoZZzFnWxZw8nc7wD51SI3JV/8rWxD/Juz/GvQuZ+76MAofZUXgys\nc4sJHt76E30g/t1IFay+ltQolXrX6cq4PwoA+cGWHAlnyl1wltyyQQBwSDHG\n802JV/R+UnW0DeHbFKvRMmby7G/RcEy5HONez4GURhePr8D0LZT0vH80Yz9W\nDT60\r\n=gqhM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"396b66ccff73478ac662f95bc36087e71ae8d980","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.2","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.ba78e8724.0","@material/rtl":"14.0.0-canary.ba78e8724.0","@material/base":"14.0.0-canary.ba78e8724.0","@material/theme":"14.0.0-canary.ba78e8724.0","@material/animation":"14.0.0-canary.ba78e8724.0","@material/typography":"14.0.0-canary.ba78e8724.0","@material/feature-targeting":"14.0.0-canary.ba78e8724.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.ba78e8724.0_1639606372218_0.37410876014475036","host":"s3://npm-registry-packages"}},"14.0.0-canary.e3e073c00.0":{"name":"@material/floating-label","version":"14.0.0-canary.e3e073c00.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.e3e073c00.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"176968ab6feaf636263ad948f7c6196d88603c30","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.e3e073c00.0.tgz","fileCount":33,"integrity":"sha512-THf+MLHM7mJhZatf1INNrF6qdtI4MeYbBo2PlHvUNB/CwjcGVmx0Dm5wcEtaYEBCzVOe+AVzpalHYigb604aKQ==","signatures":[{"sig":"MEUCIQCQgz3882fv2kSMo9PnUOxZouvBI7M9pt6OcND8w8YgPgIgZA67aBCnfkqY40BAOB2+29gAS6LsBxU9bNdHBnHxll4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhwPEPCRA9TVsSAnZWagAAhgsQAI4FG0S+MEU36WsSZf3F\n1/xrDcFBuXaYbMVS7J3ZKip2huNBqIUYGGJZU7iJXPQFWmxFesLXgRZJWrTE\njopac25EWdQ1CftJTjI9our1zyH9wqwxy4r0QhlUT3VzLr/FKnFAleWvYNUi\nHC9nBKr36vCmB7UBKaMZb+ZzBb8AC5jlo0GUpSJ0AFEiCuXt3E1qxaD0KrSl\n54KAfS92GZCQtlm4IgsBAefeMWEsYn7h2fOroL6+SFkPd3rA46+5hUBX/qJI\nr72qBIq6kbv16VF8fNi2U4Hux97AxC6d8iZ8RKYY137PJeVLluLfRa2I5YjW\n9EcPXMa/0QgTNx5W/tdVl4z9nWmDdkZBC3tMHcMjVw7ByjCOMpOM/BDRkAGg\ngpRqrflYgJqz62AGDUzeYemytwHQY47//0QoaOdB5oyaeOhSHmis/RnD2q43\nneyHjsL0sVbOTHHnC5P/Rjb3YavdxDKbfCDZE/OSB0C+dJvEF+k47RqiBSzf\nlySFJe2UuvpjkY5hDtYvsQ70hIkOteQ712mqrKK+lAdQSUq7mJlwSO9rF+s7\nreyq0XasxjPlLLfQwtC7tYIpxkwXRwn65WwYuoZF/Kfxow3MGV3YTZGd9CMn\n4JJxIK4IL1nzIinIPNBXeuONyKCiYi2DcKlilfdq01TdZJQEN43Yh3TP8js6\n6YQA\r\n=Hri+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"6ed0d4833cc10e9b5406989bcd66b072aaa259d3","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.2","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.e3e073c00.0","@material/rtl":"14.0.0-canary.e3e073c00.0","@material/base":"14.0.0-canary.e3e073c00.0","@material/theme":"14.0.0-canary.e3e073c00.0","@material/animation":"14.0.0-canary.e3e073c00.0","@material/typography":"14.0.0-canary.e3e073c00.0","@material/feature-targeting":"14.0.0-canary.e3e073c00.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.e3e073c00.0_1640034575748_0.40280347416042717","host":"s3://npm-registry-packages"}},"14.0.0-canary.3366a71d7.0":{"name":"@material/floating-label","version":"14.0.0-canary.3366a71d7.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.3366a71d7.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"898f11c50509b4d8c79d123e2cc0dd5d20cc65c7","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.3366a71d7.0.tgz","fileCount":33,"integrity":"sha512-xX1tkb5O8BtHoi7bo9g1nSSrveK2tkYEmsAK4NdHoenCt6E1gx1y46gu1fGG/HAGC3OtpHncOPIH2dyUeess6Q==","signatures":[{"sig":"MEQCICb5pRF1zYUTV4tEj2fxf4cIADxpqgfmkXBbLzE61IpEAiADl8qI12DyMVKqDNA7VbtU1SPUtL+N+lDrwfkKEN5sSA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhwxrUCRA9TVsSAnZWagAApGEP/i63GMFNS3VpF3hGHk8W\nKXOSPEKjnad2CcWLgmspvuRiYVpidRbiAqmLchCnHkmfZlJ+fF+cGOtLaF7X\nNJegoIgaPNClk9zgmfcWqk8Lbq/3cArvJHk/fRya1Dnd7OBVH3BQLLmtwUJq\nLGYzF/6csZTlOYolfkJM1v0skTC7p1tcKmEFmudzq4IJiCVCZlL+0luZEOXI\nZ1SxSEnMnN2rtK4tOkGpK3ga71Cr7aUdXcDYMkB5TgFDZAD211s990dCeoh6\ne5xbfxJbxjZuKtWYiany80ZXy4t4vDXcWumJ3CCUfWrC+HCt91llVFX7mv8O\nrR/VoAItGg9hEGPn1s4mlRe84ozJTD67OCwHjlKfx8tpZidTLkVpGrZIlbEF\nX0Uwl2ci7htF5VDVVHJRQplNz61tFDFnzQo24et6fXTw8skNmg3zMaQ4EGUe\nIiIOlgNOlaAc6CcI5pvWOOax5yPUXsIvmP611s7pvoeDd7csiOfZ4Av/E/4f\n0JQVR8AFZXTrlX8RsndEkz4fRKWdjK5xZBh2RFQve+0AMF9uV8zjnhgeGjB+\nkebR/t06h6WcGesOSb7Oo7vqd6vzhd970UOwiu0TPf9jwsZYMF94EctxRcXl\nUXGL5C3INEKuu8qmS4uJe1ILQ3va47HJ9+QF78coqeth7EMFQTHuOnBdYNmv\nGWsq\r\n=3nDF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"36f8040c2829cecee06f5c8f52e08e9cabc9004c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.2","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.3366a71d7.0","@material/rtl":"14.0.0-canary.3366a71d7.0","@material/base":"14.0.0-canary.3366a71d7.0","@material/theme":"14.0.0-canary.3366a71d7.0","@material/animation":"14.0.0-canary.3366a71d7.0","@material/typography":"14.0.0-canary.3366a71d7.0","@material/feature-targeting":"14.0.0-canary.3366a71d7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.3366a71d7.0_1640176340090_0.41401351716137547","host":"s3://npm-registry-packages"}},"14.0.0-canary.c047f7c19.0":{"name":"@material/floating-label","version":"14.0.0-canary.c047f7c19.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.c047f7c19.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ff4e400b88790fbe353f29446d4869ea4d57aec3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.c047f7c19.0.tgz","fileCount":33,"integrity":"sha512-gw5b9qRf2F6zLD9I2IyAIAdEt3ckFAAoun953T5lvMWaPQN9jjQGfeT224Hhm5Z3Te53yD5xULIZy7RbhJyzDQ==","signatures":[{"sig":"MEUCIQDVBSSTDhGxkZFi/eIYd780NNctc0mO56j2kWIh0KVPwAIgKAcQ6nnmKLUnrxeQtTI5N8OofwNyZYKJ+gtiXNDw3pI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh1cs4CRA9TVsSAnZWagAAJRgP/RsNfWqVkQwhfg89oy2G\nTDKsXLi7zCUaZ2TNSxnosaR+MzNvbI0pfBNavqk6+yIa2W6eRJqJPU2jTrgW\nOUxTqPw8S9tTSSrjXNmWqEtkQN3M468iYkt5GeR/bFjk47sDOtAu0xg4p/8i\n4QHj2jyRoy+ICmq7d7wVKBTzRxb2WDHWRSK9hB801cyQZ7SvMqtFnTxxXgLJ\nhc2oaMuDA2L+GByj16L7B4nv02VynzBrzkUto7EUt4TnCNtiEuvHCpAgDOPD\ncZuE+PSfQDpFzWTZHQPNWBJyDyn/6EnrY+e0agpF/AGs00XfbudrVZ2ST0yN\nOC7sjyiZX/uZzvsThPm4y33HlLrUyDp61CAsfRnRXWZIN8OxeEGgY8zh2o8l\n77h9endsdHVLObXvO/zCxcQy42OpYI8mX3keP4MAu+bBT8mOeQMeQDvYvIEQ\nq72ftWLaxonjxoVL8hCZcfHT1U/QWJQnj18r0l8jwh4rHeMJX8J51VsoDb4y\numk2CI9d80sJby/AwKjyzu20eGsEySlpWsIBVV21dkedIRn8854pD//PY95X\nxOwC9L13k9mchuq2Hg6XXBFz8ZR88NpN4imPv6mAGobuZauBoE+sNJYJlZZb\nSJF8+onoKZ9hF/ditFUPwY6nKKbanDJkrRRnahGm4AqiLmc9x9+T1K9r2e69\nqFIv\r\n=+1Cj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f89c0e152ba1bb64d7b262b279d38cf5d93dd788","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.2","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.c047f7c19.0","@material/rtl":"14.0.0-canary.c047f7c19.0","@material/base":"14.0.0-canary.c047f7c19.0","@material/theme":"14.0.0-canary.c047f7c19.0","@material/animation":"14.0.0-canary.c047f7c19.0","@material/typography":"14.0.0-canary.c047f7c19.0","@material/feature-targeting":"14.0.0-canary.c047f7c19.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.c047f7c19.0_1641401144202_0.31090883085673515","host":"s3://npm-registry-packages"}},"14.0.0-canary.05db65ec0.0":{"name":"@material/floating-label","version":"14.0.0-canary.05db65ec0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.05db65ec0.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"eb31456df3cf31401783f3d63da6f30d46399e70","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.05db65ec0.0.tgz","fileCount":33,"integrity":"sha512-Dm9A99qXn9ep/t0YxIoKYf11W19KRKMFReMYWUmcHXfkpcax6lIUry8a6vvnnKNWyB9gxuq7MiMJ3QpCO1Qzqw==","signatures":[{"sig":"MEQCIElfikr9c/jDyOIiApmXMfUKwiVqw/MEW6hgXG5zoeCUAiBbLaNwv4bSD+SD/PBfjbCzDrmo6bWUvY2chhH1A6PSTg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh1yNgCRA9TVsSAnZWagAAG74P/20o3Z5shirXl2eRZXts\nUtzjaCSIfPIL48UYNGZBlIgz/NrYvFqxlE9OUYkkDoZMceTvRyBxnKu7HDaq\nqGaY1xmQThb+fKfwXJwZSUxlJLPkKdCH7SsnsO4YxKrMB+/hjmYVD8IWzcPT\nVcNz99ACsnIsDOhkan9ozzjgIbSQ56180Xwaog4u+ga+wj/g671Planj6VSj\n9XRA20MV+VClEjE5jWfkcfU7RwjRxfgPs6tvDzaPTj/E7N4yVtrcpiaQZCsO\nvt+SxA0ls+T588Yz36MyIE9xrQueEUalsKWlmN6WWB4S8bQb08MkLPyyjBzz\na1iPlGFEQy9R386VDIYjRi/KMIGlUFTmfMGxj+Njob0gVNrmjKVJewpds/MA\nWq1/R1umoFatTVfr8i6CP2SEYbBjhLvKxq+bSLGwaIUD0IvHKO5ANT+u0RK5\nvZYVVQMZt3PHBLBXXtmizgk03OmRjWtGFcykHOchpvI0w/GtBTomwlRG8nUO\nOzqKiPu+IeF8Dn873VxOgTmqY/jmfLFlJtQZOYVoEtGhXqtjyd8G4sbFJVtY\nDu2HHln41XxNjJq+0HFuHzEqc09zD0RD5LGxmGaayaCrzGj4jEiJait3BcXY\n3qp9OXANPSDfrGLJhrUuTKBlMc69hBDQ4gGukMqqyDxT8osHd+ozcSV+FBkT\nkGts\r\n=ocTM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"4ee3c4fadb795ccabc127e2a968744c5bed23d38","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.2","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.05db65ec0.0","@material/rtl":"14.0.0-canary.05db65ec0.0","@material/base":"14.0.0-canary.05db65ec0.0","@material/theme":"14.0.0-canary.05db65ec0.0","@material/animation":"14.0.0-canary.05db65ec0.0","@material/typography":"14.0.0-canary.05db65ec0.0","@material/feature-targeting":"14.0.0-canary.05db65ec0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.05db65ec0.0_1641489248281_0.308863145870802","host":"s3://npm-registry-packages"}},"14.0.0-canary.6ca8b8f85.0":{"name":"@material/floating-label","version":"14.0.0-canary.6ca8b8f85.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.6ca8b8f85.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d5426e34a9156f4f7bb6a1cb0eed2c7e03a4b178","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.6ca8b8f85.0.tgz","fileCount":33,"integrity":"sha512-slaJNKvF6qbDVPe846aYSsltchU/IM9qJRCqdS5O19aR8eiMnuMegOqTE4Zt/6JpM+JnvBu/gxWVpQNr2uPRXQ==","signatures":[{"sig":"MEUCIQCuog4m+Z2V8fdXuqfclbowxePLNC0HH8WByXc00dwbuQIgTUppw9z72ITH25WCcwPOHLdpFghBaxtB03TTeHUmu1w=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh2GO/CRA9TVsSAnZWagAATsgP/iOnuTF91+9p6tpQkc9z\nTg4OGydXS1k+taWfyYIIareDuMxc3iRp4Wg9xWHOhDr4ejVIl6k1dZ/Mu1Ac\nARlJEr2akMUVaw+JhRx/7XosqOO1UyaqeDntZScnm7sZ2tte2QWMrY4QCgRx\nTqkEUovmrOEn4g7xDnhZ61mU8p4inRU/Rao9Fjki1H843Z8wk6DymTNyrBOt\nA9uICmkmCtC4jes3Y+7eJb54gkvTfNoSZ5D8ik55YnuLbUpc7MHfg+DaOlCp\nJxmwmACC0gOiqkqxRfhlkiBUVhhIa4gd7oBqAf2rY/eKwBoz8FH/RYotbhDW\nZXfG3AHLAPah6Y4MNJP+v1lcvF5SW2Y4MlwgMD6Di57XO7llFa9if3/+Ml+S\nO8X+N8PZvjbCHA/Twj0lTAtKEhLvNQovL8ABnx5J/ys/ZjHAKVFzx2e+pLFz\nx9VYEEzbqIDqIPD6Imwcnmfuvwnck9TipjWwLB3kk7r+pyQpCCZ1BBrsvtaq\nq+mUeKH9eRH+RvVlAGtDH9Wo7LvdKHLsNcAsJKTXPJ2wlKDa2TLLHFlXFiiV\n157zxkxxYMYGAo2U7mLdI+o1TNMJ2QcON0OwlR8uro/BWpcEa6vDygOfJzmC\nckBdAg1AdhB47VwRkKw3d6Q9DWcWy742ypJyt9OICB/ZixvWlFpwPpAVtTxi\nYevb\r\n=XeKE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b3237bcea052016fff824f201904a358e2cbeeaa","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.2","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.6ca8b8f85.0","@material/rtl":"14.0.0-canary.6ca8b8f85.0","@material/base":"14.0.0-canary.6ca8b8f85.0","@material/theme":"14.0.0-canary.6ca8b8f85.0","@material/animation":"14.0.0-canary.6ca8b8f85.0","@material/typography":"14.0.0-canary.6ca8b8f85.0","@material/feature-targeting":"14.0.0-canary.6ca8b8f85.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.6ca8b8f85.0_1641571262786_0.30836621835461764","host":"s3://npm-registry-packages"}},"14.0.0-canary.173ee7a7a.0":{"name":"@material/floating-label","version":"14.0.0-canary.173ee7a7a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.173ee7a7a.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b00eb256c3ba9a10ebadd8e318e1a716cc0aa6d8","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.173ee7a7a.0.tgz","fileCount":33,"integrity":"sha512-GktAS0TYrN6WUPAaQ261bHh1R/FJyWRd7l7YWcz/ICZt+58mSIjhy3KjCoU0YH/ng8dJLh4t53PJoudZhMI5cA==","signatures":[{"sig":"MEYCIQDTjdmJiT0OzmrUbGBoEkCuB3fmCc8fiIzvZwGMVWdp9gIhAKLInBq10JdZksBBFMxOH0JCpJxyXrfsJGAOBK3JyfYu","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh3GSvCRA9TVsSAnZWagAAE44P/2F8usIywcjVMsnmCCLk\nGF7lLt88io9VC9KqIWAdqzve19jA9dKQwU/BMjlMa436s4UemE4kU6vZVr0J\nhfKEOB1KcQudxONYknRPwv+Zcn8IMqVl26sZvrNH0x9qohUtMxAkAKi+FrUr\ntXXtE4GrSYWJ1O8tEPa9W9B5vROLqUMKHcPN5DrBVAW9K4KSllE+MQ8uldI1\n2sl8zBfuhazTh1pVD/rudpSuOebF18NKQYY71W6DF9POmrnv2ghc2GtauCLH\nMI34FKCOPP5U7tUJ3uhQKjGMTAZDoydwyY8PxV24YkWGcHMtWAV9VFmj0oiu\nDTIeFYO2gwPj0SQ38pVYs/fSvMeDUATzT4L6U9E0cTAtakA1y6NnvB1yu3EP\nZijlK6wfG/BsrP+hIIqjw+mI1KHDosUpiKTqdDbkY7xguRQfFqjbu1Bmbl/Z\nkuPOE3aSpAHeR3Dji+FeVeZLfTws1LbSyOeuwLcHo06WZ8eHy1mwDeTwt1pW\n9Avn0aGCKBfCSU3du3hh+0z7rFCW6j4rropUFaCJRhExgOWXK2e/XgPxIwmg\nEJAquc+qaaHI6yLOxyfdK+zzdgTGtwQFW1aTYDorAUhECdQ9NEyiZ3af0d4I\ndsTFjLVxWypR4EGQ+zyC8gBSqSzgJVy+h1040Gow8cWZZqVhhlpW5Yr50YZ9\naTyj\r\n=A0db\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f034f9d63d29784b9608c7c25ea586070efbd27a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.2","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.173ee7a7a.0","@material/rtl":"14.0.0-canary.173ee7a7a.0","@material/base":"14.0.0-canary.173ee7a7a.0","@material/theme":"14.0.0-canary.173ee7a7a.0","@material/animation":"14.0.0-canary.173ee7a7a.0","@material/typography":"14.0.0-canary.173ee7a7a.0","@material/feature-targeting":"14.0.0-canary.173ee7a7a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.173ee7a7a.0_1641833646850_0.6509937711189298","host":"s3://npm-registry-packages"}},"14.0.0-canary.b704e4dfc.0":{"name":"@material/floating-label","version":"14.0.0-canary.b704e4dfc.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.b704e4dfc.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e0a451ac358e0053ad98b560a4e3330534c6c0d1","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.b704e4dfc.0.tgz","fileCount":33,"integrity":"sha512-CxsbMWJ6JiYtKCoPgvlo3PldBDCUusiMlMrK7/UI8epVMmfyMdbg2PS//zCMbv8asZETfoFUAphh0MtUAs0q9w==","signatures":[{"sig":"MEUCIQD3r7cg3OHyLlKimPfzta7aAmtTPNSzUQCYRq0u6gBaNAIgUOCB+preJ/w/SxXcBvIs54j6qG+vHqPDZYT5w6oFYGM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh3HvYCRA9TVsSAnZWagAAFQsP/RnnDXLxdV7HX5uZSOoi\nF3qUvo9bljuiUCCLxYB5VIRyIjSLB1m/xpLlgkKwkORudjAMdRDZBSADyWRN\nFqPsB3g+pRjsCuRGmsRoekHJgxGkAqFgawLSVC04eXA6Oj/78OdPe4s7DOTZ\n57yjLpeEL1ylNFhxVsunwWisH/cWlbc5cigqBMrRWse9AluXsNI7DaTfTplj\nlPPg7S50OgHlkyrEh4uGPtLZjWYCm5TDVudhr718hRI+SI72oJTSoVmkz5f2\nNu107xyVxWUZDe671ObzxQF4PNbmA1TLbL41dkbFBfBOizoLTkopCT+HlFxY\nS7MJVHqwJd3iOu2maSv7tqwXhJGKdsqQax3QXJRVDtUh9xB5+akDv5N5eKeH\nZxzsJtKpdmsV8AQfN+buOfHTSgI0yR20watM7NckiL2zKrsqoaoJ5SW9aRzo\nlnoFFLuIzkVEDyc6CerdpqRFDg8Xp6DLvmGD7hA7pY07n0vg2+f2CHhkT9hO\n/KGSXpZIPMTPvP3ub82uY3NeTPwwx5J2xzpW3IVvk1cBLVRHboJOrc4Tj5uH\n82Z5VggRJcmPqG5hXX66BZUPVMU1PHLgh/dVeFr87Y16FVi4n7SP2OF8eU3U\nPv7A+p3UyOps/+QBPsSxFwKwvpUE153PbAe36A1UsaeO+Nd8gGIb3tKbGYeC\nxtHo\r\n=fWSX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7aa8626c10b7e0fe9826c55e7f08c4ab0aa493bd","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.2","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.b704e4dfc.0","@material/rtl":"14.0.0-canary.b704e4dfc.0","@material/base":"14.0.0-canary.b704e4dfc.0","@material/theme":"14.0.0-canary.b704e4dfc.0","@material/animation":"14.0.0-canary.b704e4dfc.0","@material/typography":"14.0.0-canary.b704e4dfc.0","@material/feature-targeting":"14.0.0-canary.b704e4dfc.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.b704e4dfc.0_1641839576322_0.5129518642994166","host":"s3://npm-registry-packages"}},"14.0.0-canary.c14e977ee.0":{"name":"@material/floating-label","version":"14.0.0-canary.c14e977ee.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.c14e977ee.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"965b1c4663feb1efce19969f140fc49545e87511","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.c14e977ee.0.tgz","fileCount":33,"integrity":"sha512-MH0OlqSZw34jpc0lwVeTmzHTujA6DtTaDKcSL3UqWRhM6PlvgTG3gjMAsWOeGsoULnqAqWQFXwynzNHbMTYMjg==","signatures":[{"sig":"MEQCIGDMgxwSI0ASV/Kt/X/BnzvIMkCxHX+jsHdO5IiYm+iCAiAheuCQhmQJ5AFsCEoIuoHXOt5HLPHWnmrl/OriJHTqbw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh3acJCRA9TVsSAnZWagAAnYEP/2+EJUT0gppTIPu3XdO+\nS/LB8JdUvPrIilFCDMV9eEPg7qal+DF2/ZfBp3Ls0sZ0kJsEdgBBXh9Xt87S\n3LZN2VL8h+YYI6WT55hK+FJQBkfR01GFlqCYsip7U3qaE2iaGsRB+5zj6A1V\n0DtrjrwE0GHVB9P7/NVTjUDuSOn204tf8E0eGiTa1INRNT0YJ0JhEpbKYvvc\n0ZWCHFuW1kjxxG2ztIe9cDsPCw0l4n1czH7xpgu2Kc4QacmtMQiriniiCkvr\ndAbLD0+ugKSjkLojlRMrkUBHt4p9By3wbQXl22VlzlciHkxxk7iO8YjLAF8v\njyoVGTNViY7xcS4dQWq6i7BPEvdD71IbpTsaKmk7IF9sBrDoizyXjYG6H2JW\nzfgo5VF4mlQqQCDcsGH0jC+p+0RYN++2NnFZLQtLC1wBqprvgRWc+mUru3uw\nFByIkyxGa6F2CugQIDThaRCiUuIweCetgwrGS48tq9wA3Ql8B+990AB3kK22\nHmu6Bj/UzauV5Z2VkPDzC3w3Q54ZKw7zJmlM5q3QoancrDcY1mi29+eo5SiY\nEADu6TzGPvNhVHi8HVs/17zZ5hVFhqii7ymUROAWXwMfHlS14IlmCVPR73XE\n05AkA3+iEVK/T1GfxMCveJrhPeHR1dW+EHgefLf6ErejoxI7lbwiFaCD9QWF\nA9VR\r\n=fqsn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"9f7e1b7371c604a5d4692bdbe25aecc578fb16f5","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.2","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.c14e977ee.0","@material/rtl":"14.0.0-canary.c14e977ee.0","@material/base":"14.0.0-canary.c14e977ee.0","@material/theme":"14.0.0-canary.c14e977ee.0","@material/animation":"14.0.0-canary.c14e977ee.0","@material/typography":"14.0.0-canary.c14e977ee.0","@material/feature-targeting":"14.0.0-canary.c14e977ee.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.c14e977ee.0_1641916169667_0.005763437108939451","host":"s3://npm-registry-packages"}},"14.0.0-canary.b094eaa4e.0":{"name":"@material/floating-label","version":"14.0.0-canary.b094eaa4e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.b094eaa4e.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7c6a3887cc32184f6a46c913f0efe60d3a2147fb","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.b094eaa4e.0.tgz","fileCount":33,"integrity":"sha512-5E5IcWLZjabnohdpKe+bxHia5AZjIUXG4l3U43i5TF0nJtzEcyIfKbWS0cc5kDb9UKHiQdLgJil2P0YjQHVegQ==","signatures":[{"sig":"MEUCIQDKfzcUM15mK7n72hcR9h0T1L47bQ31lczzao7jwlii+wIgM7js2AEixBwPuZM11DLoNHLbhuSSphJFn9JzTLH63Pw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh4cQFCRA9TVsSAnZWagAAgUkP/3Ovlu4VIkEks6zkNXzD\nptijuGOKGLSNX1gAnlWF41TJu/LFLHbbE8iNNJd6FvN7JxUeNoF/n4Dsjpxd\n0c0JQZDNPuLRzXBKGnf0gub/2+a9d1s1Y9jilefPAhWYPuqQrGVXIS6wTLVp\n4sKqdtkKAhR+wg0gfRLtWzyZ3VXa3y3+wHAqXUh7guEIuzIy1BsbsTmkz+R3\nxc4Ag6UxhPK78DCXzQ/S7Vt2Gz1NpLaDRNf/ynY6Zh0dPmyPZrFgJUgZJY7P\np5iQdK8SjyJexobEQpL4WvEuA71O2bJXG6pj4P9EWHu9dxGvunEGFA5oO0lS\nsaikz/8Y5rODFJkioL0hNK9FzsVD+LMoMnSeQjktjTYF0oQeXT7CaYOHcsub\nbzLa3kVZC8UNVnY9GlKqulG7AWOkFmyt14XvNwKa8M2SZcPhdeoJR+6JdQa+\nSw2qct0YUliwaMsQcfM8dmnkYaq9iJnSkpjGJcteXlUaDyg3X5mZ0HWSLT8M\njVZqhUGuM7IynE8Ud1Zb+4+ITnOw4Zcvo1ZzGE8v35b1Lk8xkWWmLt60p5Qk\nqtFYfnw4W9Ucu+bmoYlAxBrkzpjgxjKVWdVGcDZzNdt9zLdnUcWCqoQvKDLN\nftHDNnzr2oBjUWNhTF9vCFYOfay/Su+GRHXaFyzw5HexE2H9DuVM2GaSzFF5\ndsxS\r\n=pkV4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"6b11b48b933746de14be90d79974d10e1fd48289","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.3","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.b094eaa4e.0","@material/rtl":"14.0.0-canary.b094eaa4e.0","@material/base":"14.0.0-canary.b094eaa4e.0","@material/theme":"14.0.0-canary.b094eaa4e.0","@material/animation":"14.0.0-canary.b094eaa4e.0","@material/typography":"14.0.0-canary.b094eaa4e.0","@material/feature-targeting":"14.0.0-canary.b094eaa4e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.b094eaa4e.0_1642185733369_0.7619931257610564","host":"s3://npm-registry-packages"}},"14.0.0-canary.390220e42.0":{"name":"@material/floating-label","version":"14.0.0-canary.390220e42.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.390220e42.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6dbfbdae10cc7b55014a4fbb14cc8e333da6a442","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.390220e42.0.tgz","fileCount":33,"integrity":"sha512-bBSAch4OxDoyDSlpFPvWSvM3FY+v8vF1xDWNO9Ijk6icW+Ps0UTkOKAfThn8n/NcbHEtwXZAXuewUbvjR7V9ow==","signatures":[{"sig":"MEUCIHVURFiNfzuUu8MIRJkR70sENPEQ1nQZitLqJQW/TW9TAiEAqo3I/+mL7HSNB0EWQbfRG4OR2jbkDaTLirFepAoM58o=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh5Z1LCRA9TVsSAnZWagAAz8EP/3NQYaE6VxROT425K1s3\nb9/6aqzCImxtaNrXa7lqAizJSym3c6GklP7CVS3ATx+/FmB4SeHxbNwVIVgd\nJhrZKDkU3BbaACXKoF9I/1scayG+uP4b0RhceEgmJgp46s+uq61yqQgLfRVe\nIg1HW/9u2g/Mei1ANnC1qTo39n2Y2m/ifIs1b3XQzn3W/WtjgjujyLYvhNfv\nYFODCZ7SkhYjULE/t3Gmh8EGxke1gReb7rvISJn+/f7L5LafKVk1CQBG7Odb\nZQZLgWPl10NJASc03tOkhgAZtwmTnl9svLo6wQSp87/uQYpCufcxSAI/zIG0\nDM7AXfcAb/Mw43CTzCxXzC06n7iUtOt4zfz0PHFFKNdMIq5HjsGPIAyJxjWX\nrhVSaPUZnQz8bzJSxBTLxeBXsB86RffGh87zERJOH5Shdbg0EdX+62arvCMI\n21s1czQMcmu5gNqdwGxr5okY4eA8s5ABCeWa/QxT0/BpjFJ8KKbCnA4Fk+ke\njj9R91OgoxFwAVpowS8e2aaKajqfjL/tpCeB9LVStD67DxD/8j3eVUK1Owp5\nhmYtMqWCVxvWf26nlPWWzx6EepMK0mpG9lkpgdixZnrkiU4Qjap8f3/Yt5zw\nci+uKnyX7bGkygadH/ltWI3oV7oJ+TfnZ/rngWHRys/RHMh8ZulNj3iADQUo\nEAx8\r\n=hUbS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"dd9f4e499bf257838f40df3957ee3c321500fe37","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.3","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.390220e42.0","@material/rtl":"14.0.0-canary.390220e42.0","@material/base":"14.0.0-canary.390220e42.0","@material/theme":"14.0.0-canary.390220e42.0","@material/animation":"14.0.0-canary.390220e42.0","@material/typography":"14.0.0-canary.390220e42.0","@material/feature-targeting":"14.0.0-canary.390220e42.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.390220e42.0_1642437963265_0.04869754071312493","host":"s3://npm-registry-packages"}},"14.0.0-canary.4b5391f8b.0":{"name":"@material/floating-label","version":"14.0.0-canary.4b5391f8b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.4b5391f8b.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"386b0825a1ae77b85553b940025d71861559d9d6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.4b5391f8b.0.tgz","fileCount":33,"integrity":"sha512-pZWW3dMoS5FnyvyyG9HIel7jiRwkL32lqRRehK6t6ezYIJECVgd/UwJ7EmRLbDJmqG6fhdMSQgFMBoHgOzU66Q==","signatures":[{"sig":"MEUCIQC9EvMUhVbeqxUEOlm0/KW4lvs4I8WzqUHJZ+xMDSGwVgIgLlQGG94DwnD/I7zMgM2oitYS/NYdTix02CveDawltYk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh6KRICRA9TVsSAnZWagAAhV4QAI+Riem5C8WIF6haQNk2\n0Hladw9GYOub+P9J00bE3ManYMkqFNPh+0sTjZiTaDKNMP8/hJ3EFWiuoXqC\nPgtTHSWRuWvptbHdOv/J66Id6CtrJzI3+dLRwJ+dE7ZwhXmVZdL9PSRagvox\nL8PqGScQS4OwMRCBIX7uzIohUjvCz8tRWFVDPWSEWyrmJl5/+E3CiS/NMTCt\nE7WZns8ibJ8WjOH78K2eWsAdZJmDsrkbgxrLj1fqo+eQ2f3RGh5OK+0R2O83\nOt2T4214YMni5yjmmSg2b+bb52XAOADYoVerFyyb7O5SLC2gaDVhsfJWApx/\nrO+uEaIPA3kpWgRvLqixHQUucnC7IUzCLm5qMFZjbTui1Abx7EyzZx5OySoE\n41xqp1QwPA2DTmCHa9cRMm1ke3uS3fDkZ88N053gEmUvsG/QJSFpALandM7V\nyqgUsOacBwSo1FyM6sVe8rYUt9svGHsffPp8Ny1d82UkHU3KjbYiGfPagZI1\nI0hivsWd4xh1+0yGPQxJxQo0QJcMDfJ1i8I0dvlIDeMOLhLgOTQ553NT0S0u\nBHR38dJG26gtesh9jvNVPVeB1iBVtbbtgEp04+Ij0Gmi7STlckce4m+ipR0a\nvkpN/f9/jPhU9tF4x/U0FNZMr3fPS8/3A3OUF+i4+tWzVArBlaE71QYRZC9x\n4myK\r\n=5qgX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"09410b4524a4005be30dd18c47d4214d6eeffca0","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.3","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.4b5391f8b.0","@material/rtl":"14.0.0-canary.4b5391f8b.0","@material/base":"14.0.0-canary.4b5391f8b.0","@material/theme":"14.0.0-canary.4b5391f8b.0","@material/animation":"14.0.0-canary.4b5391f8b.0","@material/typography":"14.0.0-canary.4b5391f8b.0","@material/feature-targeting":"14.0.0-canary.4b5391f8b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.4b5391f8b.0_1642636359971_0.21264448188034746","host":"s3://npm-registry-packages"}},"14.0.0-canary.cef6bc623.0":{"name":"@material/floating-label","version":"14.0.0-canary.cef6bc623.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.cef6bc623.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e58e0ea3e3eea2b330565eb26e9a66f7dad4120a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.cef6bc623.0.tgz","fileCount":33,"integrity":"sha512-zIielCImeQObBkd+Bx7a8byPxEveJu7SUuG/wh++IA1mB87jWQKqaEav4xIXwIneGI9bollKhzEXCk+U5rNPJQ==","signatures":[{"sig":"MEUCIBpj1fR/Ufe+AwvA+kJXi14mdvv6noAXzGzinyNcTrdSAiEAogrFNebnnkvYMaegSTOalthhLF0jilRQPnKIoLyzwf8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh6KoSCRA9TVsSAnZWagAAuxUP/RZVgEJcK1vdKi+56pWC\neDLbjUMRaJoj72guLiFab67f7bvde5KlBBNGB0FGehxHGD9CdatmHYYSeRzw\nNVAXQHuhWH74+MlLp+Lw1E9pStqDoSVlz9ARe9ntABLpP96CxohnooelRLip\nHzZEH0b+Jdaiif+8wiV49vfYnOBr4yFQq5V9TdCQTBF8xt0NaBNs/+DX9Dy2\nFsWgRx+UiRxDP4P+CZXQe/XWOKCq4xxYF41fVeHk7irior8eKa69XDdzhil1\n50g+nAQACYqsbiB8h/PGgtI5uBxb48zSO7SdBbmrsh1CqA4wJezn4YFNW+RR\nmhGw6mqUVtygDidahS9mzxp5dec5QewbPFGIP+O7qH6eCxR7yn66w6wK8f5L\nxmJJthhGW9o5yoD0YD05FcvrIPnMdWCEvAESkCKwshfg1fy5Q/MOxHjkDQGX\n3I6zceBxSRnBiwFOihxefFsSo3uMAT5AGc0is+2wzvezm4NuJCRcjqOsTUf/\nRBT3WNolDvCOvSTpHW6HeMJJzgTbO7jboNsBY2JCvQG9u48lBAa3l09kT4b/\nx4IWIbtejsOmvnGs1pa91v9dmDwE8G5RAJDtqunc7Vl4lX18WmudCHHOaJwE\nWEUpqRlAAiKdEsMGpOlnGVkbLusJzWGc+2z6YEM5n7Ssi+pt9yfKycXMEV1w\nT3rz\r\n=dJVX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"6bfb214d1f6768cd968026313c7de32009b2da1c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.3","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.cef6bc623.0","@material/rtl":"14.0.0-canary.cef6bc623.0","@material/base":"14.0.0-canary.cef6bc623.0","@material/theme":"14.0.0-canary.cef6bc623.0","@material/animation":"14.0.0-canary.cef6bc623.0","@material/typography":"14.0.0-canary.cef6bc623.0","@material/feature-targeting":"14.0.0-canary.cef6bc623.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.cef6bc623.0_1642637842617_0.9773061573281094","host":"s3://npm-registry-packages"}},"14.0.0-canary.0379179c4.0":{"name":"@material/floating-label","version":"14.0.0-canary.0379179c4.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.0379179c4.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"28953045b7714a3fdda267ddc0bc4b9eca6d7c0a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.0379179c4.0.tgz","fileCount":33,"integrity":"sha512-PI89PxL5zPlBJVg7KWTytfIVX/4yUkPcb5xMh+lgZL8oZFjRwPmx6ZEQgJyD0krplSsEESZgfSop0K5QFm0JfQ==","signatures":[{"sig":"MEUCIBAu8D/p/JS+tif12WVaNLsIkQ+pwwPv3R5m659oNvjjAiEAv8FFXIp4Bc2cogZMzg7bhsxAczW+5pn4CR+Gt0kskUs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh6a/ZCRA9TVsSAnZWagAAsMkP/0AymWDnrEtYVvusih6o\nac0LMrk+SLzyV707YVN4crRHJoRPqqaYZ8JLeyYjnfa/xpuXTso0ayOlSI2D\nDT6PUG0WV+ppn/JWGzDI8jAqmHW9i2uKy2jzJLfnomDH9qNlZ7+fDToHiVEB\nAJeOFAW6yu910JIb49GrkR/8O5jEBDM3OINj7d4kx9tNw4rh/ZOSedhQJCC5\nOkD3r1FgMGpjTcMYlo4I74ju/HQOEWh8wz3u9WPIse9CdaTVQamSLYwmlR+E\nSJ93nDaDHbTpa38Lcfd93h1aS4rfRxhqdMl/vo/XiB/vHkkDkP7JL9+o1CZs\nEClhmVOvCE/ZjNhDJe/NML5+5lfAW/W40kNzLpt3YHjB98hLAmNuC4Y+QvvD\ng/ImJuae/l7GmDr2gNnre8GbC9eKufq2rzdsXq62KyuE5fbdCmR5mf4xi37k\n39XYlf0m7j/2JiCuKl1t7LFIPqJHNiBHa1qV5yjd4o5e9eJ1KDeqMy2tf02U\nrG84DZSvDEmJ1Kb4+vtStRCyH5ITM5y7rPEjgKcp5YskiWoi7FleMqglGFol\noDkj4DDJMtTw4Un4N1djI54yt4zMyuYYeCSvqKufNAMIaXGAuVfzBnvxysDr\nIRbxBrWq/tuDvCzXzLQlOrttwiP1HTdGF88ZuHSjt9aJatXS9uDLkKD7HXA9\nWrt9\r\n=ZSfN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"fd62b4e352900f807c8308b282906b51227baeac","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.3","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.0379179c4.0","@material/rtl":"14.0.0-canary.0379179c4.0","@material/base":"14.0.0-canary.0379179c4.0","@material/theme":"14.0.0-canary.0379179c4.0","@material/animation":"14.0.0-canary.0379179c4.0","@material/typography":"14.0.0-canary.0379179c4.0","@material/feature-targeting":"14.0.0-canary.0379179c4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.0379179c4.0_1642704857374_0.38608638233713233","host":"s3://npm-registry-packages"}},"14.0.0-canary.e62f3dabf.0":{"name":"@material/floating-label","version":"14.0.0-canary.e62f3dabf.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.e62f3dabf.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4e6e455f635b8ca30f0487f72beeb94799eef6d9","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.e62f3dabf.0.tgz","fileCount":33,"integrity":"sha512-oe+DofWywsQRSDnKY5qMdwqsW4CiWgZ8c5xHfi03CW2uE/VEu3fqqA932Z5LxDz/2hHPD6AgdsR4Ad2KmXfoHA==","signatures":[{"sig":"MEUCIQD8n8QzKJjUXmnlDWVVWHqcTSpK5azDkrGSrm/njbP5wAIgD947nzHeTQzu9K8KK6VGHZCXpy5twgzVVWbJn9ZpPy8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh6zuzCRA9TVsSAnZWagAADWIP/AibcpTuKfZcJ1BHnr2m\nhIx64waw0hH03yMq/O/QIxC6yXD86hC0ZPkxmeq0BNFcFQOKTdkiPjQZMH20\nHQyRoHOgfWORmktVxEGdHDu+/gK941PwJLUKJKeCZWlCAlpJ0a9zMZM2v/tY\n+g6qX877N5GiSnQLwXvfKMY298huTt7Nuu2H85nllF6QGXs+eeN6EcV14F8j\nQbIwEZ88VuBphqmP7Gx5LRzeWiN1RcSR01wWcO9pMNfvtXPXn4hceFb3+bdA\nkPAnOHxcyQpIYdg2ZzFSFsUstpXcdD0l2x7sFd+Sbf34A3F81f2bV/vsQ2z8\nGVVmZUvQPWjJnqVqIBmb9rtyfFAnI9XLpEAzMmV+RqR24Kwzd6Ttll93OBHU\njGtSWD1twQRNF2ffCLjzcSMrYVJ1DjdsLqkCA6ApqGAA0CwGKdsh2VbaQAQ6\nrLDFv1JaIquqhq/FK03zl5LKMSMYBYiBvHLZeAmgLkLiGJ1TXwUXf0nlyFT8\n2Ov3EAsvfiUt0fpdzNGEMbx/lLXqmrOniNZ022iX/jmtd6GWDWbIy1cQ5Edt\noBmcvHe+oW8tRl+dv4/5xfMAAT3ofuWtO/dH+DeFA/wGrUotk62fWz6pt4/6\nI25rp3gOaRd7Is//bFcCP0pTRrjn834//7DHbvYgUdphqlkuK6JZ/kBdCnKx\nJ/tv\r\n=rC4l\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7f7d12458af5eaac6bd913db605b5afc3753906d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.3","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.e62f3dabf.0","@material/rtl":"14.0.0-canary.e62f3dabf.0","@material/base":"14.0.0-canary.e62f3dabf.0","@material/theme":"14.0.0-canary.e62f3dabf.0","@material/animation":"14.0.0-canary.e62f3dabf.0","@material/typography":"14.0.0-canary.e62f3dabf.0","@material/feature-targeting":"14.0.0-canary.e62f3dabf.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.e62f3dabf.0_1642806195055_0.8614502992302824","host":"s3://npm-registry-packages"}},"14.0.0-canary.3e20c1de8.0":{"name":"@material/floating-label","version":"14.0.0-canary.3e20c1de8.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.3e20c1de8.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"dfb8fd53dc0b8ae0f94da8fe86ce7b2ac56d7492","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.3e20c1de8.0.tgz","fileCount":33,"integrity":"sha512-lZUgIKqM+nAF15axGbm8VcfBy1Y/7x1yKeHCLtlX5feQ4cWM1gu7Drbxz7zi2Nv8KS8cXHzd34AgtC7PyXSsnA==","signatures":[{"sig":"MEYCIQD5xvRBme/VH9aT/g/S7DLmT9QzS70kdNhyw0oZhehyfwIhAOys/m/PdXLZGf1gi0fsEyT4FcT67I0L3nW9MpVzaMyI","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh8BfiCRA9TVsSAnZWagAAZOAQAJgYiVgiMQGBpzHraswl\nxGZLi4c4i3Gf2cUNXK9ZtFV0Ex9XXbpyKTHIt6ATecQoprqVLkaiVS8deqnx\ndUD7U+0k/mZF1KSuIDWtb8fPVlriRU/UrGhc15rKWivVDtTzoj7kT5wnFWTy\nC/26zQGFOZ7nHj0cgU8MWZKQ07Uj5a9610KEcb5ziTBlkLKUqQvbhjYTQn62\nDqoSQS6qjnVBYYcxbRAFgiTMPCplGhKMwAj0eJ/wAvhHsHXgRa+PACf+KzVv\nIgOcjcRW8HFzpsB+TTUuScv8UzcMy6Q2gghYVnYjmySqTN0yZ4d2HSVbuBiN\nL9ULCARBJ1JSmnjgyKz0vq4tgWAChI/7fQQ7sSo5E2rjRRwaw6aE6OCegHE6\nOKUtxZAaooSEgJC8b2tj6KJ+fWEQeqVI9RbOwKaJ+evPl4CakxpTjtl6L6we\nbSmFFEFXJ9J6tzw8Z2ShSdn35vSEP6yT0XGFkSQ5NECy+CeVUpOewnxYAUXH\nwJbUlTIXKBETO1p52F5fnm4Zm5XJD/hCav4UJxmuzlSCeKwby74aQjP62UOf\nd9TGcnI3Npguvb2emmDjnzXTEg8eheYrT2XYOfNaQwoSm5gi4lRXk/1IMzJY\neQoYKD4AM+anQnJeFpLh0ys3tDsYIW3fv6qnXpMAb2O8TuUcZKks4TjDlqJe\n9ycK\r\n=GIfk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"29fe61f3aef5a85c7a462638b6c2b809a3be57c3","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.3","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.3e20c1de8.0","@material/rtl":"14.0.0-canary.3e20c1de8.0","@material/base":"14.0.0-canary.3e20c1de8.0","@material/theme":"14.0.0-canary.3e20c1de8.0","@material/animation":"14.0.0-canary.3e20c1de8.0","@material/typography":"14.0.0-canary.3e20c1de8.0","@material/feature-targeting":"14.0.0-canary.3e20c1de8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.3e20c1de8.0_1643124706562_0.9556746383161361","host":"s3://npm-registry-packages"}},"14.0.0-canary.9f9d928b2.0":{"name":"@material/floating-label","version":"14.0.0-canary.9f9d928b2.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.9f9d928b2.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"71e2c2ab28274aea7f1cb27172028f9e2060763f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.9f9d928b2.0.tgz","fileCount":33,"integrity":"sha512-m7AQ9/BN8gz1KNCqQHeq5v4kjnAPsy13AcJlXPg6U3/yNRvCNx2GKnu/tkMO0j1Q8CHOEmxKpfyeizHEaHa9RA==","signatures":[{"sig":"MEUCIQCdlTSi8FRgAvVuByUWbDR6RzitW232o+3V0ADv53yr7AIgTUiOoFGQpGUAAECP/ChHkHZb0Uq4KFRXS50+oLn82+Q=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh8uCzCRA9TVsSAnZWagAAOWAQAIQsKmsrJLVN8cZHuwav\n8B//4/IHerwSuG4tKpJajozaleKZx8OV2onIfuuzEQiO8NS72lcbrbI/asIL\nrwYuOOG7cbtly/s5iHfzUdnG7151vlPmej/K0TtUb8TV7lN6Qw7gcgdrMki3\n9suD/Xx4XXyVcdreynM6oYTit9vuGhO97Uxh230dC3AZct8q3hFLX/OdFx3H\nejTJETz/TtMWIKPx+Ib3yHRkF4/wNp3Tg1F7y3Vl0FbQgicuCAJDf/GHVcly\nOHaCRNIK2WoHVb6cV/tWc8//bF3bKjeoi9KFxrkH2TLhvxW8NAo+4AHmyFGR\nogp/9Lql9+EBsAEZdrx+72WDOqTdMdHHUITNoSC60izHS74baLdR6r8NLNhF\npX+ihfdfiZPkDBOAG/of7KTPBKUBfsL+p9jy2figdbK5L32RAyT2I8Www5Z/\ndNOLB7JeXciamQRvezTXXTLNKVFHE4nYB56e8VUHN7hX+NFLjYZMDVN67VF9\nV2thtLC6e/R7Eagotj3JlIfOVYeoEHRyZykZjjuQk8yhJwGojvwRfBQ3/Zjl\niqj+f4vTZh1kaJWy/cVGg3hKtLCJ1CEakcx3JdPfluHmYgCk9wwvnaNOfln/\nV88Tq2KYfqlkbb0GoOSczNUhY7rZ45ACnlX1+JdCRcnjmFHZFTIoQc2W3Y3x\nB1TS\r\n=o32m\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2983c7f2f01e1912809d6004e47ff0c7c27de38b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.3","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.9f9d928b2.0","@material/rtl":"14.0.0-canary.9f9d928b2.0","@material/base":"14.0.0-canary.9f9d928b2.0","@material/theme":"14.0.0-canary.9f9d928b2.0","@material/animation":"14.0.0-canary.9f9d928b2.0","@material/typography":"14.0.0-canary.9f9d928b2.0","@material/feature-targeting":"14.0.0-canary.9f9d928b2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.9f9d928b2.0_1643307187244_0.30464530439955984","host":"s3://npm-registry-packages"}},"14.0.0-canary.a2bcb065c.0":{"name":"@material/floating-label","version":"14.0.0-canary.a2bcb065c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.a2bcb065c.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5ff86859c3809359117fe110644593e4ef3bb720","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.a2bcb065c.0.tgz","fileCount":33,"integrity":"sha512-hjVbF36Do3JDQbwxdXc5F71A2KPS7AaLt7zeJjsqRQdecKdZ9xLPp9PVtAlz6uN8PAECB6fVPCVIw1TZ9X+w2w==","signatures":[{"sig":"MEYCIQCI/HiwfpjCxFBbpBy7vTDDLlq9rxoKJi8GqzF2SiLYoQIhAOO1lKjBJUdtC8DK0/E0rimdGyGlKTF5iZpDK9AdqGHh","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh9EXZCRA9TVsSAnZWagAAEGQP/2Ed5DiFjuIGizhWDLRR\ndUw6nol+TyAg8V1/llzUdnw0h92uzFYTPX/C84HnrqTAbIppp6i1FHCD1TJw\nz+9SIm4tphIs8WHxJL01t9LKufXpFX/2O19J+7yyOYHLcTFjjLxWUGl4Ey0W\naNTa4zHjGLLQDC51KL7+QjqtUkSzQwvgOV+QmeHM2pvGL/Y/V0QbD6zDB+Ib\nQwTH8PSW4HVCGpZGtEa48KgCDkS+h+BNmaY529bGJbxNwmi+uQFgw0FPygAk\nX/GtSGDmD/cZYwjasFAfS0WGAw87jH5ePeG+p7ULn3jcUn3LCvjsRJ6Pmw/r\nSWAyQ5b1iy9n+VeOgqi72yONi5ZUiGZRvWJeNpx8617/MDVE9G5HY9TlbopH\ncjWj4dM/cYnRb3YY+ZSW+Jw7nE8sMZBR5JteW9pDfa32AnCtB3WZ5WiaMex6\nuAt3hQo1HjEvGXtXzhCBDdNcViJZQlaffVYDVc2vcDwzN/cOVY+aXJo0McOW\n2mRc9er5kOn1jnikLUBFEXPQTOkuRpJNS/sng6GfW2xs0ktzNsNgAUPSJ7ca\nYuvKVnarkyWFTTMl1Fe1ehORP07v/74YEeD4NheDTJQvW24CumB6ZF0HxxyB\no5IpLJ8+2E1CKWzUfECEXAvQ0ko0GiDyEevDN7qUSmUUPgaEeyEEaA/r79Iq\nyxoy\r\n=m8vA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7f175ca37545bf0bacc2b94f7a18a2a3fbd5eec5","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.3","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.a2bcb065c.0","@material/rtl":"14.0.0-canary.a2bcb065c.0","@material/base":"14.0.0-canary.a2bcb065c.0","@material/theme":"14.0.0-canary.a2bcb065c.0","@material/animation":"14.0.0-canary.a2bcb065c.0","@material/typography":"14.0.0-canary.a2bcb065c.0","@material/feature-targeting":"14.0.0-canary.a2bcb065c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.a2bcb065c.0_1643398617784_0.055201768439106624","host":"s3://npm-registry-packages"}},"14.0.0-canary.4e66fb2e1.0":{"name":"@material/floating-label","version":"14.0.0-canary.4e66fb2e1.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.4e66fb2e1.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"0704683bc50f65b707a15a90bbc790822d42383f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.4e66fb2e1.0.tgz","fileCount":33,"integrity":"sha512-FUtQ/e706BbRgheI2ygqA7/g6vQPUKBaZWr2Go9meQAd0f+mvOZFCSTcQar0duy4d+OQ9JkQlK760+oInGbT6w==","signatures":[{"sig":"MEYCIQDoTyZKE92hP7ez5nDkh1rVkmbJTv82fqwZJqLbyf/H4wIhAIVbaKY6qWiJZxVb0Uf7y74Wy4ubmYnaF9Lre/PHz7tu","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh9EbhCRA9TVsSAnZWagAAB0wP/A246xLe448bMfZ18vWf\nMCuRxim12ITgu1CAowGk52yxglFGVbs+o+a6zyn3X+K2tAkxqzDXzptjCFHy\n65ScEVpVVJQQVxoKEzc+W5MSrV4aHiiTQTtE+m7abfudzFLfrnD+FRRiydII\nr5C0PhyzJhKvNvDhflNPJHb0RaX58CXaDgOUTuCd/Dq2kwELq6sHm4CPd6Vo\n8rvQ1kAObofEkU2QTmbE3Aat3WQyVRCxeS19V46PPyv1TMW8DaBD0r+cpPn4\ni7r1MkmGzkp6q+BnaVYt5tcdHpLTpJe9v4jWJMGt/rXQ605Jh/ARugM3RsyF\nxKXE6sWbXGZLnT8tAAT4r7oXunL39KnTaI5Llc0qvm1LcR1A2Zii7FwynKdZ\neK2h5cusvctoIjdLtIayWViFTlK1YETw6mJVbEC9mP3QIWOpS4PisQPP7p+9\njdBH1B0Kf30oELCm+fLnb3ZOuslbr1RxPzSnDDq2fDapw4HZN5ERFieIALM+\nvusQ65FoH4TYz6WEYiF2nZyNmbnmXKGBGsnP9TynFKNKVhribfFUb8jMgzAw\nORvRQrB2bmDspq5itLBj34lAylRVtp2F247y7Ztek3VPyRjGxiCW5Xn3YbrB\ndS+WlUIbytfEreaGGB7+o3oZEpCoV2joHozxXvs+Cm7C9wsowF1r/LXNwRaR\nQdQS\r\n=2cUg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"edee6a64c210815507bd8460fea3df2591cf0d65","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.3","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.4e66fb2e1.0","@material/rtl":"14.0.0-canary.4e66fb2e1.0","@material/base":"14.0.0-canary.4e66fb2e1.0","@material/theme":"14.0.0-canary.4e66fb2e1.0","@material/animation":"14.0.0-canary.4e66fb2e1.0","@material/typography":"14.0.0-canary.4e66fb2e1.0","@material/feature-targeting":"14.0.0-canary.4e66fb2e1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.4e66fb2e1.0_1643398881165_0.45351511048429716","host":"s3://npm-registry-packages"}},"14.0.0-canary.9736ddce9.0":{"name":"@material/floating-label","version":"14.0.0-canary.9736ddce9.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.9736ddce9.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"79ab074e17481d8d32ac3b92426695959567b357","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.9736ddce9.0.tgz","fileCount":33,"integrity":"sha512-ubrZx2P6VSzfbm+rtMXLbrpyWQqD8EteOHPyOySv5IaxNI75fK0KvNBNF1DFn8+yIoMGzxf3V3bBNy4Oo/oC/Q==","signatures":[{"sig":"MEYCIQCoBnh+egNa9T2BYyaRzdd6sE5ha3SIVoLpOW4aQ34uigIhAI+byopMWgAPn14sXgAgO6vv2pMIdkb2RuZTdf9xEbrD","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh9Q28CRA9TVsSAnZWagAAAOsQAIzxMVWiv+TaLsEV6IKU\nyVW4OsCYOEaDO9QiLOucfHMUp9GsLv9OX6Se8PvmuZwYw4dRqOofz7VxKXyy\npnqx6R7Fdx3N10t3QJmrwKSHj03NPxP0UsCCGF0RPPK1mg3VnTBRhSLmjT/O\nVvountMD7YQEpZhbxPJqcW7jHaRbSy/7hdAb6hD7xW2B6Xyz3byv4gARYUw8\niDjLvS8HCEdzKZ0FofbL6WR4iWL7AJ1rq/8OlzISEzsHIBv3SSfuZG6VOTSg\nQM6Hz4fzF3wAMgDUV9Wk4r3GJs6HbBWnGOSD9VphmjuQsa6ZcCyw3gtYfEV5\nhX3nLps5CwlPXiaG1cZgUYkPUF7TdMBvID0yh8vtx4ZG35i7efukxeEtVXVP\nBlSpKflB3UedJcFJWWHYLkw0wxSl1HtzcNfQw7iP8DWkBM++F/k9mdGP5hwb\nFjg/8xnIRjWq2OvjKhz++oSWSV52tIYYpcHwjqpTZhUuteu65ALnKfUsdYkx\n+RRUeblhgzzN0Y1VqhKUwYRckH6XHrVN5eUiFR4PBkzV5zofQ8n3pOG9dp5F\nK/rwrnxNYhjhUjF9/TwjDfmpmzNFjIcWX6hcmoICR6GxtyBIXtMum4lgnwZS\nYF6h48/K0eLSOSkazcDZ8anjbVLAkMMfernq9pQ0mr7FIZinmvLoGJAcBO7I\n61vl\r\n=3Ilx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d76de36ce796a981bf5e48388104bdb581d17529","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.3","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.9736ddce9.0","@material/rtl":"14.0.0-canary.9736ddce9.0","@material/base":"14.0.0-canary.9736ddce9.0","@material/theme":"14.0.0-canary.9736ddce9.0","@material/animation":"14.0.0-canary.9736ddce9.0","@material/typography":"14.0.0-canary.9736ddce9.0","@material/feature-targeting":"14.0.0-canary.9736ddce9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.9736ddce9.0_1643449787812_0.5134243834828285","host":"s3://npm-registry-packages"}},"14.0.0-canary.cc4ed13cc.0":{"name":"@material/floating-label","version":"14.0.0-canary.cc4ed13cc.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.cc4ed13cc.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7cf4edbf07d97d488c2ee974ed3e922ffc55bc93","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.cc4ed13cc.0.tgz","fileCount":33,"integrity":"sha512-GqZF6Q4n9yXJFvIZjjdrJbxfInDnRSFME4elvrLcOUTGGNIfhtU448gjgCbl9zZPctUZvjuhokw9kVJpt2mjNA==","signatures":[{"sig":"MEYCIQCY02cs2FQOltY41I+MzGlOCIdHAGLORaPDjOiqt8T71AIhAIxnG60uRUScEj/tSPNbzPpV2lb1d6kX9oVN+OtH1Sa2","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh/W7tCRA9TVsSAnZWagAAOvMQAJxG2716ujK9HTUxS/av\n3ISfGFJEsWPfc7tiAeXRRnH836qjnXSxRWIYoV/90xm5M3jb+6UyTzkGUkdD\nw4lAgxpu3lkE41eDgclG3SwH+XoruBK66LMxdz0eazqvjx8x9qMhqMINTj3w\nCqNbjIZIIA+3Z24zrYHdaEC+duL6/dvx0/2+pMpQ2BXU5bzVaqg1/DwYpAVB\nGla1y2OKjsZTEDIkpoN1CDrPU3Qih/gIWsuTkMTnyP10X5Xu4bmcCgUiy7pd\nISipYb+bDN03SCld66CeVlmJB78gI4PW3sOKcYENQ8KrDE607LFoRWznn4cW\nHeLlNELuNl3kWdVdrOeAIJWWYNRmjVsLFvo420hEG7/Kd4FrMjQDhnucqkpr\nbfvH1GQ4JaGrXX+6/Rn7O+XX0pv+KjKSnIuGsYotIJrWA6pQG3dObI3cIUnw\n3kWk/AFsnr6h7aoF7ArmKEWfVJqJQ+TsomaiM1X8gbxxscXQQU2v5iYUEJlK\n3bMSr/h6WcG89/ds9SG8MKIAetWz6NrHaFpB0CtvYO6wX0Gh7Wex+bxvPeYJ\n+JOp6VHarnnulaBXgtTbTLhNpPV0Um7Sr9dO0xYAZONawJR0c0eE7Zq0aKJX\nsnio8+hyLT/AlKSw/36AmeC1bdQOZtt5Q2cfwkbymdrwpwjlxci+dVXNplUA\nfmWF\r\n=spyJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"15c769412cb0230363c372a7d45bc6bc10eff8e7","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.3","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.cc4ed13cc.0","@material/rtl":"14.0.0-canary.cc4ed13cc.0","@material/base":"14.0.0-canary.cc4ed13cc.0","@material/theme":"14.0.0-canary.cc4ed13cc.0","@material/animation":"14.0.0-canary.cc4ed13cc.0","@material/typography":"14.0.0-canary.cc4ed13cc.0","@material/feature-targeting":"14.0.0-canary.cc4ed13cc.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.cc4ed13cc.0_1643998957725_0.006122256175833174","host":"s3://npm-registry-packages"}},"14.0.0-canary.dcba26fe1.0":{"name":"@material/floating-label","version":"14.0.0-canary.dcba26fe1.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.dcba26fe1.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e5a62bd1fd19cc2b5df9c03fa2fdcb71baac8823","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.dcba26fe1.0.tgz","fileCount":33,"integrity":"sha512-mihqr8MdKEmmCtZiTcVukLfkUarbwSgVc3a4BtYbZIs9ZUQ07L9HIs0NtS6HdYoemoedAeNZ7zomz+8H7XyYyw==","signatures":[{"sig":"MEYCIQCuXIjyhP3BKaNz93nHnjKGzuuiHohM+I+bdbCHYeXGUwIhAItK2v2C9hY9NEHmH+b8ZMa8mubifbfLMOH6Z/a/fxdo","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh/aEwCRA9TVsSAnZWagAAzyUQAIMKlNZyDyduhzJWRnlC\naaHulrpRQo4tbbupMIjO1Gd13dwT0JVzArfQVo79OJehCYxfhaC+PRjSiKNg\nXHapN2nItD1XR/rJUh/4+4t1BKpQi7+I4znAVj+HNxYwaAHK45vNlM9ufE/R\n9P67H/uPT8neF3CEGBhEHyQH6aQ19zDtjWjNKfik2czfuC6CbEtDxg0RB8cR\nuZrq2GeyRxnUlWh04WNVTHRSHdD28Qs7z6C6C0c92uWM/+AhQFcWEMvj2LB1\nGOb5PCeCdBL0OUIqCOhRk9SE8q0Eyo1BTuhYfDzWaxtAdv4lHEX1Ml7L/p2q\nmsjZkz93MW4i2K+78dpv1A7+Xqfp8BKVAwQmcmr5AS4jLSZEo3y8vtlc80N9\n3CbWiiWYybzdjt4gNrfXerjP1WigUDJGJED/WIu8xg/LiI7xLtsaM3iufjH9\ngJftg1dxfvjltz40lHQe4UerSfEimBe2lcyoHGdM3H3gPeZ/HKFPZhUE99e0\nAeuMM3sHsa09JVPEZO7K/qo5c0CG3EFwl1gIzdeJznAYbiB0xjCRqNQzf5iG\nu/1U+HoWLvzI3X0YP9KXY7CCPfD5RCTRTTD8fw+BG3gBOVgze6C0sragb8Up\nD2iJAA32Kns3oweGcUTJSLGYQN0cvgskFfE916a5bfzGAG0UsQKRnmtbmsJi\nuC/E\r\n=2yTr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ced7dd56d5d3b017288f0575d6e773c03f01d0ef","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.3","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.dcba26fe1.0","@material/rtl":"14.0.0-canary.dcba26fe1.0","@material/base":"14.0.0-canary.dcba26fe1.0","@material/theme":"14.0.0-canary.dcba26fe1.0","@material/animation":"14.0.0-canary.dcba26fe1.0","@material/typography":"14.0.0-canary.dcba26fe1.0","@material/feature-targeting":"14.0.0-canary.dcba26fe1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.dcba26fe1.0_1644011824344_0.7988241436757637","host":"s3://npm-registry-packages"}},"14.0.0-canary.ec54d9046.0":{"name":"@material/floating-label","version":"14.0.0-canary.ec54d9046.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.ec54d9046.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2f4387991b94855ea8d411c4822a6cbf2e0ab364","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.ec54d9046.0.tgz","fileCount":33,"integrity":"sha512-urYY1aUSGGgi+2kW0e+sHry3BCsS2lx2gvKxch2NAjUjU13JvvxKstlF1kmx2wH8bg6+8xl61dmYAdwW5F3NHA==","signatures":[{"sig":"MEQCIHZHcudXhTkUXPrgNskWO75FSYWoQRVOAGMyx+zz0gLZAiBd+m54bf4an/HPL5kRymPhqWtPoYhN+xCt3UNWqwt0eg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJiAT7WCRA9TVsSAnZWagAAoisQAKSTJ44rEFQ0rLwEAvkY\nIXxFcGveFDxefWowCq7GBeIhQ+ck3K7llfDjPtGdQoITfSj1a9EMmmtKMgnY\nbVe4lstAttDYN5n11HcnR4Nhbtnq6g4x0vccDJPsoFyoWRVLrhympOlypzVc\nL0ZrFoifhog1Y+Od2b9QjUUOg8Bn/xmNhgTTf+o7pgoUJbZdz44o8GXgwSzK\nYByTj5nSH8RbLNpAodX2IiMKmdJeRBQ2nW/MWQwopQ7WPpPT057mKysqWYhg\n/iJW+GCKmaBHS2MfTmknApIWArejf/Z+U/daNXQG6/ZN6uLO1n6vxxOxVWTW\nqdBaDxCByfH76vZxx4LAI+W/93vHN68I/FTbYvcys6wPt8YyJLaTq5MLnTPJ\nFPnnx9dwCKK583EdnVPnBv5CmnC8Oubj3vGqchzQSaPVDrz4HSXm2P6hSJ9P\nZ2dvSwv2e9aEAf+h+OshtKpXwsTv3NVUjb5QFaVjZ49HicCP25GT51f5VWWp\nQLf9Rb3CaJ5zsFYchN+0O1tOvLDZDMpcv+1K0+IydoHyo3BIbuamy4benIHu\nLlKxAbliWdV64pcPpu2YYTKmLQuX2Yvyy4j8ruNN6EsqK8vjUF6eWrmo42nZ\nqPiVxD5WiKAc3sm1ycae89rdVt+6T6HPDMORousHsfu3ptxBo5wxw07nqeas\nmd9I\r\n=6DQU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"68f6bb151595e8790d7092842d6c137ef93ed770","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.3","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.ec54d9046.0","@material/rtl":"14.0.0-canary.ec54d9046.0","@material/base":"14.0.0-canary.ec54d9046.0","@material/theme":"14.0.0-canary.ec54d9046.0","@material/animation":"14.0.0-canary.ec54d9046.0","@material/typography":"14.0.0-canary.ec54d9046.0","@material/feature-targeting":"14.0.0-canary.ec54d9046.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.ec54d9046.0_1644248790560_0.0109906106342752","host":"s3://npm-registry-packages"}},"14.0.0-canary.ea9b5b463.0":{"name":"@material/floating-label","version":"14.0.0-canary.ea9b5b463.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.ea9b5b463.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a679c1e47c191bc60ca491e49ca7987e1da2e30e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.ea9b5b463.0.tgz","fileCount":33,"integrity":"sha512-a+OH0OmNW/1Dlct0VXh+t0PA7jy7Ax0+E1OOEf7Dbmkg9WLLaTyF0vinJ5wL6VpwVSADYdVfg4QP/XRgQAVLzg==","signatures":[{"sig":"MEUCIQDBKOgDoCdKVqFxn2j2gNMkMIfYmGO7qcoZyhZ9jEJsQgIgbjOxdA6HswHHR7+zHJqMFG7DHiXe77MAKI9rjFkU2L8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJiA/+fCRA9TVsSAnZWagAAZa8P/Ao2TeuxbY083CKFqMDy\ncaQ6w9yLXGaPXJxPIHfy2Ya+680i00nIXeT6xWEI/tU+fkro/vkgDh7ZPx0M\nKm/JrcWa+aPQWy++WXM4FbSZpG0Nw3doabLMju1hSl/wMrHRQIsfj3wbEZ03\nzxUfiE2Qv1hNjYylagkECbxYCX2PGBzuGdMn2+lHblF0H30Ku0bOccLQCDBS\ng+rinjnWsDZ9qY+JXp43XXHR4anNFWXI+gQnc3RgU+jy9UCgkGZuDZ3a0BkC\n9MjfNGuDMfs0nfsImQJacV+WCpbIIWKBOaWd/RsltuBrZZ/FvmTP6yBAarEU\nZaqY9cxf1kFqIi2UKLZA1fbXoLgjWC84Um3ktvSQ8bANKMvP5cR51p/TroQA\nvuYEj4IHDmMHI6CKOcvPM/SIuvJMqiKJ4Kr7ZzyVYYaHhdWFC5RRF/uraUDp\n7hcioBH5NAfPgsSfzMhfIRSs36ZHE37Cnqk87PHlMI0EfS0wEFa2Q15Ho8iy\n9QhGaxe3BqhfLhPytarEZmCmN6pqkwRwHUdyk6DzKsmNrTV9hRrSjuZ/ZdPm\n5NXpZ5tYp8lA9M6xr0/VmzUdlKJOA9hEyRQudvbm9/0vHFSzladPE7mposWn\nh/EGwcGmQVLMDR/gWPYByQNRae3r0fSp5/h5vbWRehMcuEQ9HKzy6OR3AKGr\n6oBL\r\n=JRnk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ee827dceb9fd1c47516461b8ddc28b66702f2c04","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.3","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.ea9b5b463.0","@material/rtl":"14.0.0-canary.ea9b5b463.0","@material/base":"14.0.0-canary.ea9b5b463.0","@material/theme":"14.0.0-canary.ea9b5b463.0","@material/animation":"14.0.0-canary.ea9b5b463.0","@material/typography":"14.0.0-canary.ea9b5b463.0","@material/feature-targeting":"14.0.0-canary.ea9b5b463.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.ea9b5b463.0_1644429215328_0.6287275936052574","host":"s3://npm-registry-packages"}},"14.0.0-canary.96ea061c1.0":{"name":"@material/floating-label","version":"14.0.0-canary.96ea061c1.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.96ea061c1.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"59a88e7fe9ce0de4b272bc781945d1b26398658e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.96ea061c1.0.tgz","fileCount":33,"integrity":"sha512-6MkFJBMzcFewGqkrENJacpnyCXaakBdfT8+lAIfQdGkTdLyQIg6wCvDu8klwKQjsXTuF+K4dN6X+3+RJ+Qo1JQ==","signatures":[{"sig":"MEYCIQC5ZePBNOcEumVE1WE16tw/scvLyDtrJm1DxgkAZEhqPAIhAOwmh3WbaaVkq5MX9mPZH9w+2/bVdPl95gDRwFSzQV2F","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJiBA77CRA9TVsSAnZWagAANxUQAJAJNjX7YlIqy1s6oYnE\nIUmvjspXz6XiNTA2ypPjZNLR9oXE1vQqjdu6gWS3ZCam5d9stNH9BeRqKNDK\nc344yGBtCMzfvp+AkQouMY5/IFI4Y45rtDsr8nbOji0tsJ4TSR+TYZ61wUop\nqoO49oXGiYt4ap/ZMwNCgUzgrRczceBpRTt49Jt78Tsi6OxsaDQ2HC8kDRST\nHRD15ukNYdnl8g+UdsFd6HyE6P+lfyVoauDoNsOwk6mJCKIUpXzWc6CXLUrg\noq5v6LU6pgZd6Usfpu1Bc370tmV6SWBNhCfCqbLak/60gTxKAR8VGqUK4vfA\ntctPYtnqZI05NmEZMj7kSYH3D0cFYc8Uqh2ET8wiA6xR0IBy31f6oVV6x8ga\nYSHl4MCyXZ81tMOJQHL/J6eKodbP8JSMalAbOjfX5vem7oXSCW+sbHIpkmZ0\nF+CFeF9o/C/sYz+pVhl197RHNd9YEB/x5Hn3erX6s2674ovd1wWzWekCg1Si\nWbVCTJ4ozeOcYMY4dSHcTK6kRmvRWs4zRsLkjhNCVlHH7RIFizYvrL70BAoc\nFxO3kaAG908FZgAH5x9qqDWu4QenQEUY8PUmDTJqO1Yxn0nKGd5mIiXZw7lW\npvhLkpr4FxeBXxRFpIcFjay4dkS9550CtiCfDRVuUfbKSROcDkuDGLp2KrD6\nJ6cj\r\n=8hip\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b1a410c21f8ac6405b364e437b5af7eec06a2020","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.18.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.18.3","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.96ea061c1.0","@material/rtl":"14.0.0-canary.96ea061c1.0","@material/base":"14.0.0-canary.96ea061c1.0","@material/theme":"14.0.0-canary.96ea061c1.0","@material/animation":"14.0.0-canary.96ea061c1.0","@material/typography":"14.0.0-canary.96ea061c1.0","@material/feature-targeting":"14.0.0-canary.96ea061c1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.96ea061c1.0_1644433147010_0.6967400146145157","host":"s3://npm-registry-packages"}},"14.0.0-canary.e00181e59.0":{"name":"@material/floating-label","version":"14.0.0-canary.e00181e59.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.e00181e59.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"101946fa400b46066a3a78ab2426b13bbb383604","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.e00181e59.0.tgz","fileCount":33,"integrity":"sha512-x67VzyEarEV7OAwCUwqTGWcHMDAH4ZJEV896Dn/p5UPMzF184hVgqh8CwijJfGcJf4Mzvs7j9z7brPXcwb8Qbw==","signatures":[{"sig":"MEUCIQDIF2WZ+h47o527t6PMrjQHlPPTxt/KtvZndt/HK2yNEgIgPQRywMBiqHCn5TbsonMbTmlnfUOiX+VB+fEtyAbtJ1E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJiBXBBCRA9TVsSAnZWagAARR0QAKAEpMoXZ8oNktEXdtV7\n8kQC0xThIeb+fbcglGxamYOsZjfl/gmvZz/66qIGvDbWZFMkP3NgVFH6TX3R\nHbSmZoAc+hMQWGuWSktHiMcnp6eaP6s/JehYH3YMKEaeTeZELVY70kq84Tqm\nDvGKrR0gITWh9TuH90XvSC7hJAw8Z9fXdB6MZOFCDXK6T6ZBuhVCYxbIqS7q\nUW3B9+Lnvp6lvT2plN1jkNdXBHpi0StGa9m7DITFOostgtRp1mbh4aCGFvte\nk0VVjgEvSPc0si1giKbPUZH5QxRkshQVg8AgPbGO544qeukSKpe8LtouvRyZ\n1nPM+b077Z2EYBYsFRl+yORu1YdsOKWXBBwvs7lXnyjAKc/5uiQPenHq3D38\n78E9b4yYZMYWThRS0jTkbB3vbs8cCHZE+dE9Znyf7MR/BpEDDAfQFSaMb5ke\nv1qCvGXBsYTcth1D71kK7vU9yEzM8ggeEfzftueVhOiKjd1qcjUurIN8boBp\nyJ3gxSRoxbCkuTATZeyZ105+XJ8dRyn130hets20ZCRhllbxyMs/B+XLsgIg\nyFURS4BAsH8pzI3WD2EKhxqyXPGgpunxtmMYViC4/+3QR7LrP+ptHtU8iq9u\noh2DeCA9OWA2jRfA8VXdPdB3DTYR0SFU5gGh0ou1/VsrbEybAfBsoWAptlaN\naR10\r\n=hCdg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7e9ce072e9ec1ce5820d347b59d99209542a2bfa","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.0","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.e00181e59.0","@material/rtl":"14.0.0-canary.e00181e59.0","@material/base":"14.0.0-canary.e00181e59.0","@material/theme":"14.0.0-canary.e00181e59.0","@material/animation":"14.0.0-canary.e00181e59.0","@material/typography":"14.0.0-canary.e00181e59.0","@material/feature-targeting":"14.0.0-canary.e00181e59.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.e00181e59.0_1644523585504_0.20667043654007133","host":"s3://npm-registry-packages"}},"14.0.0-canary.037285f9b.0":{"name":"@material/floating-label","version":"14.0.0-canary.037285f9b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.037285f9b.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"49bdc1fc58392be93b36a911ec6ad1d98b3fe936","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.037285f9b.0.tgz","fileCount":33,"integrity":"sha512-IZi2XcEGZ2oiVY+3egxgCskXJr+S2X2epT7rXB0eSR4rbDaaeWftq/oY0mOv+3mtmwUo2bZ/Zc8mjlSlBD2GGA==","signatures":[{"sig":"MEUCIQDD9aX4LBUAst4oAUowQITv41H1fxD1Y/grR/cQFxp3bgIgbL8Hlo1BQeN9kIEB3iDx0g6WxhaCsQqO4OWHt0CA8pY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJiBqsECRA9TVsSAnZWagAAbIQQAJYe337nY1P90IJY9pB9\nloisht7HF3IVHW5WUfR2YLhQyC/6W3DwgrvJsgaI6Dz0b35gJXUYsnKsB4gy\nIjBg3H4IaKjiTZjxsJMviaY6/SS0l9DiyjChCe+lLNEg9JPKVkuXT+ijWjib\nVJHVfyYMmFCCwVfTIalBdkh14qUV73V710XDoNWcxKOD80Q0c0GFPri6dRCu\nXiQVhJ8j1oLjuJJOQBrhM/g2Tq/326HK7X/RMrVZs+sdm6p0AUFvtWohNG58\nWhsCsyXptAwCtGAzT4HpbG5SZWuFEnSZjIKBJGsEC7ygqPJMPbKczswgDdM+\nShS9JYR/aGzUNc/weUiiCKKVgK0SuM9S7srI5MCbKvPV080Rn7hkbCgKyRDL\nz35zemlG4g4zVYagiPsfQJCB4oEB6hSKNFR/KfycUbl8vRPAf/jW2wnzYmes\nuLet2FKnUoyZlFkn+QLOkrfKqJxQGFzf2YOhdjooXIdk4v/0Gtvplr7d9NC7\n5ZnEUs23n4wZVgLUaPNmVVcX+CLBup7dIqmxZKDMFsPqVRjKOpwfq+w2xeQk\na7uJ0SrScTpq/mqrqZeUo9UUE5eXW/ZKSH9lyNU6wNTz9YVYz9knQgap7PsM\n3WyQ2aS+lKsR+8gewrrzNRcsBGRBoMUeSbjlxE1aIff/lZoRfNLEfCisegGn\n9QsI\r\n=ZSz0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a9bca201560da3f96e435e6e070baee148bcabe2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.0","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.037285f9b.0","@material/rtl":"14.0.0-canary.037285f9b.0","@material/base":"14.0.0-canary.037285f9b.0","@material/theme":"14.0.0-canary.037285f9b.0","@material/animation":"14.0.0-canary.037285f9b.0","@material/typography":"14.0.0-canary.037285f9b.0","@material/feature-targeting":"14.0.0-canary.037285f9b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.037285f9b.0_1644604164047_0.17820975151425134","host":"s3://npm-registry-packages"}},"14.0.0-canary.1aaa68dda.0":{"name":"@material/floating-label","version":"14.0.0-canary.1aaa68dda.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.1aaa68dda.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"72b517ec4fe46fdb8266e17100bd1b005e19454d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.1aaa68dda.0.tgz","fileCount":33,"integrity":"sha512-RP0gT3/glpXQE1FKfr24ANWRCo4zni9cV55zpNL6tRnFw+felY9eTsaYkZuWdkU2mk/DKK+u4lo8EeeXEc5G+g==","signatures":[{"sig":"MEUCIFnRUy8tjPVeIIYmGC7rxSnkNYdD450IqBkcZ9oEfduPAiEApgngIuHnMrFaav4ebgZ3nVyh8EDbx1u4KraKlm43ovg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJiDVUlCRA9TVsSAnZWagAA/DEQAIkT+bb3Ks7c5/vfxzq7\nofnFH8Gl8PEExbWk5jisGdm5LVdV7p/dC1o6Zknfc79PoncZ/nug1AnvLEXz\na+yCAGNWb/agMAV9BT5ZgWIb1i/64Uu/GsmY24yfZHgqKrz7RuxEw8mW5ouU\n0gI8vOqROa6+7VtwyhmQws5b6lfSj03d6qAigNnxzqYkivsKNv2giRVu/fjl\nBXzn1hUqn03GMKR25t7PPvse+FMcE7xi1AMQUv0UXkTqK6wFjOcA3XIolQLS\nV96uBY0D/wR9bBs5Hc3xZReY4qiHpRRe3xRSla4HR6lCBQKADFcPh2l8rKBV\nA8RoXfmdsiU++SYb85Su2oMYcfI9Kauw3UD7UztFePU0td5gUmxoGNeduyr/\n1mtLYD/H4rXFrbsB5ffig8t/kA5w4PJnWsyKBR9en96OF9asmK5ImAEC8to/\nS2Buqc8faoxdxf91xt1NW35sA5TaUjgxkpM6QLyjXs8yJa2C5ScnIcFLigQB\noLXjnzd3Yh2pcYdz9gRE0JaDdhhRrf5VZKIvPeo2xl9A/4aGyF1y2G1wG9ts\n0w/KJstw+1vUZJgtBHGaeIipSTBlk28Ze5UAjQ6aEyeZby12ZqSDXT9uD6VC\n6jhv0JaCCfiqYTr4jQURC0UkedebSJQ3cs+qCLMq9zzTV53hQopJbVnhouHW\nO99h\r\n=QawD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"49eaedc3ce6f1f8db6a6929143c077e8f65694f4","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.0","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.1aaa68dda.0","@material/rtl":"14.0.0-canary.1aaa68dda.0","@material/base":"14.0.0-canary.1aaa68dda.0","@material/theme":"14.0.0-canary.1aaa68dda.0","@material/animation":"14.0.0-canary.1aaa68dda.0","@material/typography":"14.0.0-canary.1aaa68dda.0","@material/feature-targeting":"14.0.0-canary.1aaa68dda.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.1aaa68dda.0_1645040933844_0.44757586584939957","host":"s3://npm-registry-packages"}},"14.0.0-canary.ab4aba1af.0":{"name":"@material/floating-label","version":"14.0.0-canary.ab4aba1af.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.ab4aba1af.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"90758125e761e9b2c743b0c86e2919a25e2fee13","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.ab4aba1af.0.tgz","fileCount":33,"integrity":"sha512-oR5nn+nNWdQ2kgYret/HAV42fEkCclRXNb64bfS80DWE51dk1exrdaWR9pgHty5Q9rM+B2PYwJqpFKvQM9/AWg==","signatures":[{"sig":"MEQCIHygn0QgwK4MCnh2W4BzZsnG4aZhWp0NekG/k3t7Kyd+AiBSAmLebgB31f2f7EiHXdnceSy3FWimple3SW7HMS+1sA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiDpDuACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr8jg//fO7bFeyumjKacX/AlhSmP3DhPogoinoqCVQfGUMaS9vDFKTL\r\n5YC4f7RJNf4qA2QJ2KaZJb9w3aLZthCpTEEee2USvWS28leli/Rg5p8WaEqS\r\nerTql9PW3b2yYEkmeA9jHkz36Ma/GdV0/FxAiVIPViHxuZkQS3w4mny9l6vP\r\nSy4JqSDDQhA44oEn4DAwOuGtDcrxyxxfJCuyNdH37tSuCu698dNxatKsC+Hf\r\nsmPJJOt7lV5/+hUZPsQx7SWFcqUV3PnVMZDOmtYA+hVSlsHvVCSv7oUMVV4H\r\ng4VdKmtxkMyWw5/DjjvrcECISH5D9+wQurLzf5vPMvsTLNjCM4OQAuMjMiby\r\nA+LOcrVfMdQycKTwlgv6elkKbKsfCA3eY81mWdo2wz37rYLPRpiY4/YMbKL8\r\n9WIph7QnxVxHqGTczFciFIr8UeeCUo31pY/SDogxQpEw6ImUR0hvDQGdsGtS\r\nwSix2xe40ITJ0eLy2TsfaCaemI2/bJhrS7BjLWWAvKDkffa1GXbphjX0x2ag\r\nUWvWVoPwUT09pMqYDFpo324fTSP97yAC1TWHaSy8NhpDVEaZC93U5yEzjorz\r\nHbTAR2miCRo9ZFECUvhUHSZz0l63P14SUDTULdICB2NT2LWzByVrqMrk/Zoi\r\nu59Md3npopm1m6D1nceKfqvCNx3Q/i2l+KE=\r\n=Ad2o\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"89aa095a35d4a006012f1de893cf181c5725f676","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.0","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.ab4aba1af.0","@material/rtl":"14.0.0-canary.ab4aba1af.0","@material/base":"14.0.0-canary.ab4aba1af.0","@material/theme":"14.0.0-canary.ab4aba1af.0","@material/animation":"14.0.0-canary.ab4aba1af.0","@material/typography":"14.0.0-canary.ab4aba1af.0","@material/feature-targeting":"14.0.0-canary.ab4aba1af.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.ab4aba1af.0_1645121774483_0.6794182765367989","host":"s3://npm-registry-packages"}},"14.0.0-canary.e58552c6e.0":{"name":"@material/floating-label","version":"14.0.0-canary.e58552c6e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.e58552c6e.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a86ef6ebc101a2cd940bef8e9bd6cc01052cfc24","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.e58552c6e.0.tgz","fileCount":33,"integrity":"sha512-bfqFAyrvUYMPnStdJCrU/N5aPk5Q/KjdfrrYbTXCyOmSQXMZJwkxSn+xZwuSt6mf+IxUtg0Rg7Hfza7rXZMQvg==","signatures":[{"sig":"MEQCIGl3gt+NKhULE2vV7Y3HpqW6Ol4lTTAY1j79IGICLEckAiBbSlBHQJ1gZz4G8wOSQbSpxMZG0M/r58UfS8njo0+SyA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiD9+QACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr7rBAAozDqZ/Bj7FOQSGr4M3VApGT+qcis4T6W2r7eBTyyYPx53CDi\r\nZS4liFVdRAj3IUYVQWVwbDqr41ouKacNAUOA+E2De7LQu79vNl4+UaekVPSV\r\nECOAOZmA8sRE5Wt3yaT/LKAFCxo1aNGmIb5ZT+4tXaIjncSpy4ANY5LBBRcs\r\nPcgcJBRYjMmLOCKwJdpIz0Fd+b3Za6LVTKKC/5DzhHQO4m9RwD0ibyPxszfv\r\nW9BjZLZwG756ZtYfUhO+PgEvqOP1RHK+ao6qth/iDfvHiD7nP24G94mJHojk\r\nPFLvFTbTDicg8Pk8f3+EumM2yhSW2DkKoENTqUgj3dDQAHduolhWnkoKBzpR\r\nSwL7aiVhiDhPKnRQgrTzyT1CVhTbAXhXE4GMxdF3+NnuHRYboRf6K3tL4/Bh\r\neAYBuH6rxJu3LIBjRRgckazidX+AFVJmOGKckUgsq6RhfWKHtBxhgBv9PUme\r\nHAb2yVW1Si68GS+XWz/a4xn3bGmjUqh0v1QXefALvrfEZ+M8RqxwoP8hq5dh\r\n97ILa+0GWSEdEtSpJQ7lqwQLlBj+a2BfZl825EGwltoGnpYfS7dstYImIf5o\r\nc/Pe9EJD9hg5bvM1cXeNwqDXv31xtoZYZVFetfvIst8tFo27UCFtouPRwxve\r\nnOyMnxTU27mI+RCQqpM6pbg/2+a1T+lDls4=\r\n=wcDc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"6d5c1a026de93c3896f05529594e5b025f79a060","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.0","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.e58552c6e.0","@material/rtl":"14.0.0-canary.e58552c6e.0","@material/base":"14.0.0-canary.e58552c6e.0","@material/theme":"14.0.0-canary.e58552c6e.0","@material/animation":"14.0.0-canary.e58552c6e.0","@material/typography":"14.0.0-canary.e58552c6e.0","@material/feature-targeting":"14.0.0-canary.e58552c6e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.e58552c6e.0_1645207440297_0.15195953313100197","host":"s3://npm-registry-packages"}},"14.0.0-canary.868793776.0":{"name":"@material/floating-label","version":"14.0.0-canary.868793776.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.868793776.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"da61aff0d858f457adfeeefb7ea6ea7e4fcc7494","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.868793776.0.tgz","fileCount":33,"integrity":"sha512-Tae4VhC4wW8uxSbOWbUzE2ZWQmTzPtkFNo/C1prv8eGokVdrQWuWxMXgruY2u9tRicJdr58SFxUU13mjyBXDDw==","signatures":[{"sig":"MEYCIQDIf5u34De2v2GF3WDZ9QdbY54l3YwWqzHO2aW2w5wsngIhAOHJ99KurE8f0LJYQOEG9lrx+THBppzxzIDGjiCd23KT","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiFTr0ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqgJw//eOaUea+n7Klcb0xnCnbjBfiF8IspDDj1xZ1n7lsY76CQb9Ba\r\nBTMkG8uoPPiEVOtmdK81KoPQGOZPbI7HFZ/Bz+UNDkcXgsy4gj9kfJMtW3ia\r\nb2lbmTlY0vYstN2xDnQ52DTJnmuz/cY0rfIXXMR13CD/TPdh/be2UmEdZw1g\r\nCyGhOcr9nAPdMvoDZh95Pco5s16Pt6ieQuYm7F6B41Egm/p7OEbSbn4usQsQ\r\n6T/Qdt2tOKaOgYZ/bioDSNZmCm3aDmxIV4X9REr4zw6L9t5m3/X0XrKieFbV\r\ng+F9AL2xkQ/FEeB1eeDJKwqihg23HHQD13YMX0Y081T9bUbJ6nQ2aVJG91xN\r\nY2I4bRyPcsesyk7fB+eSo0f1jRLwpdqW03jxsuwv/CwcdJ0kMLivBVSBO9DZ\r\nnxU/o8Qs922hHvtl5eKmx16BHgf07BPRNL/VQf/yuLjtqVkEP7RDloUzp9pL\r\n9MqhFUjPXupX6DGlfenHw4WoikrBRCMwI3VG091RFr0PpCUTO3kujLqPIrtc\r\n9AwWPKiYCz7Lg69IxYHimep/mMHtbTGDqjYsyan4+gCjeCfSXBGgSnXXbeNr\r\nKBsxcrdZZjZxPt1JdscPqafJeYIw+nBBKckXokqBMSmq4Fjy2NgPHEc4+Qjs\r\nbVaGQGVru240UpkNz2EJv+dxq/HZ75NEt+Q=\r\n=zTtg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"78272b55e375cfc80b8f288ad4bcd4bba3d8493c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.0","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.868793776.0","@material/rtl":"14.0.0-canary.868793776.0","@material/base":"14.0.0-canary.868793776.0","@material/theme":"14.0.0-canary.868793776.0","@material/animation":"14.0.0-canary.868793776.0","@material/typography":"14.0.0-canary.868793776.0","@material/feature-targeting":"14.0.0-canary.868793776.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.868793776.0_1645558515941_0.6706498477912393","host":"s3://npm-registry-packages"}},"14.0.0-canary.fdc37a445.0":{"name":"@material/floating-label","version":"14.0.0-canary.fdc37a445.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.fdc37a445.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4879a14dbedab0c920f05da10bf372a86fe20f5a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.fdc37a445.0.tgz","fileCount":33,"integrity":"sha512-Uv5Z3Y0Zbe7eY9OdvGIbrgLqb/Gj1qrhtteC0P7h924rVxroZt3APp242uCD1Mk2lRB31nOgqHJClgukZGdYHA==","signatures":[{"sig":"MEUCIANMMhDQdncfBM+7gOPZxSn+eth3A5k6QpGtRs72G58MAiEAniPipg46LHlYE0Rj0EGj47/2lDD57wo3U1sdSMSVmXo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiHRhsACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmouaQ//UE1djK+Np8Ae74LaDAlke4XwB440Okce11YEVV9sL+RGOZqn\r\n19/uRrxHTUi1/GhDvTUBL/5EVelrE2QqeE4RjOJYFidvw1YcqAwErEo0lNId\r\ncvNJN3uZexk6oY4tMXx5fTKX9QP5EFEOP49OMl2WnuyrzWe11Dxv325yZwHX\r\nGD7hcmg953A8fS7NXo7+BeFrdppn6HPHlodinPaC0fBG34EDlacY6MR1Sugc\r\n79i7t6huEwbdzvZ0159atM9I0Row4lL6vrTrkvbUpDAWIeMJWPtVqZwnYpHH\r\n41RW8ZobomBJs+MqrQ2Jk6h0hezAOygJ3qh6gloXoTevCBuiAYtovOF3A8Bn\r\nDWY3cJjdFNlYwsIyiaerytcIu273KyQ/LjCBD5YlqhxaQK0BQoKsiO0xi1gZ\r\ngtXJ43fXi/ba95MiHkiId4HwEf83pI8p1hYIJ4XHJGUQQPRNpqyDE9cTGLHM\r\nKQDRe3O/myl4IIYq4F11Vs6F60lxNi1v7WE6w/KOw3kk7P6SbfMOpZHodBTw\r\n/I4Uac2b5ZbZ5Wew8LUREim9QOEVk//f1Wpds0ZcAzaIwp5V2VGEzPTM4ZkA\r\nfxH2XQKPiiTqnKnVwWIDXeU/kFDMkHiSVd4kYzkTe7Aq2GLjSRzeL6HaeeSq\r\npRczpeb7s63BHRrllukxRXjmYoHNDhLkLBs=\r\n=37/6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5a8fd2fd927d036e44b0b22f48d858fb848e504d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.0","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.fdc37a445.0","@material/rtl":"14.0.0-canary.fdc37a445.0","@material/base":"14.0.0-canary.fdc37a445.0","@material/theme":"14.0.0-canary.fdc37a445.0","@material/animation":"14.0.0-canary.fdc37a445.0","@material/typography":"14.0.0-canary.fdc37a445.0","@material/feature-targeting":"14.0.0-canary.fdc37a445.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.fdc37a445.0_1646073964230_0.8378574071819105","host":"s3://npm-registry-packages"}},"14.0.0-canary.43c7d87dc.0":{"name":"@material/floating-label","version":"14.0.0-canary.43c7d87dc.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.43c7d87dc.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1ac6bf93a79fda3114423ca984a756c7382db3d4","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.43c7d87dc.0.tgz","fileCount":33,"integrity":"sha512-D2d97GiFUQkBZyhoJPCbzqWBso270bJzCFs9kxoJE7o8KxSs356cLh4/UHniBxkH+2LNy7xRyCL1JdgJiDue7w==","signatures":[{"sig":"MEYCIQCiFVMtWbGbj7qFtzh0OKmV6/wqzFK0ir/uWHN63kADRgIhAKOP0pvdHxEwQRuGEcZIMw7zLHObMrLJ1wwlCzuLV4AZ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiHjyxACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpaIBAAjOhwPRbU7HlL/3z0ESYvD1mmVcQYtcasFT4eHKYXh7UULgWR\r\naQbv/hdIlDMCqta5sLQmZ21kr0MnZ0QRWXyGQzS20zz5JrjhqMcWQICa82c1\r\njmgD4RrBt9/oJNaN/8iEKtPj4xqk6I74eNA95/FHthP0dXlaf+kcF2EwNf9v\r\nyz6TG8a0FWY22Q5EvCG+GcmXjCYxDvWP34TT1c6+fTQy1f6iACKquZkb6Cl+\r\nwCoKGHJy7iba/DNdQBguRV2g74kUuWom76GYObT+u2pYBxahvlSZ+ngNLauD\r\n8fUlPE/Yg4oeUjN0Cx3YVVgktcBYLIMDx4ji7NCw0cTZrgQVQTTOfMaQNcZ+\r\nCP0HpqhMyAQvsS4YuX+MnaV9w85hRncVCxXi3+xRc+hphj1+m1byMyiQEjFx\r\n6GmvwO3bpRlb8aprkN8AtxWlnfdMtr1ucX8y1zvPZgmRaeTbeX+90+sPfQ+e\r\nLjHZrQRYg4lDYcIpMRig8HSVjNOzMH47Eh4+2XAQI4Tc7AjhJm3uGPv65cff\r\nTEvG577LZtqReugk1YHn9JKcxyheLP2sdOoB/w7mQP+7r8AAfyzH4gBBOsEm\r\nTxwLdK+wiynTFF6MshrZD9jCzV0sVZ2IeWPtc0TxBPfuQO65gQ67TWf61aoC\r\n5szJ29sojVIurzA+WjcsWEuDVz6cKcYwWUk=\r\n=8eWI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c03dfa84e200bc6d570c73762d7ce507d0659e76","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.0","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.43c7d87dc.0","@material/rtl":"14.0.0-canary.43c7d87dc.0","@material/base":"14.0.0-canary.43c7d87dc.0","@material/theme":"14.0.0-canary.43c7d87dc.0","@material/animation":"14.0.0-canary.43c7d87dc.0","@material/typography":"14.0.0-canary.43c7d87dc.0","@material/feature-targeting":"14.0.0-canary.43c7d87dc.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.43c7d87dc.0_1646148785637_0.533226020539334","host":"s3://npm-registry-packages"}},"14.0.0-canary.23043acd0.0":{"name":"@material/floating-label","version":"14.0.0-canary.23043acd0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.23043acd0.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"be4981c3d96bc7cd7cb0f8b5219e324681961aa2","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.23043acd0.0.tgz","fileCount":33,"integrity":"sha512-JxpA832Jju2jFnpqjJw+AiboryKkh04PZm2ex72Aylwcm/ypqwcP7V4SjxP78+wDLpt9wGZiaFum3ilOa9T9Vg==","signatures":[{"sig":"MEYCIQDhN1dZl5LTbziNO0lcABimSHcXYUzC9LHnSqYUs7h7RgIhANGbFoTxoqwXIuulnqxJcCet8409jwEjRvfabkAzOMyy","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiH9MoACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqU3w//YXwqStMCVUYZ7eNn8R/v3099VDw32u2ihu1glhkS6qPg97M3\r\n3k+xXaMLROhkpqu21Xm6KlCSaopFaxQS8NjL8ERcUEy2fm0f4MoKajVPmmuE\r\ng/469BcLunpmkESH3uq62P+iz5fmRNmM8431b0spZ1o9sAGnKjPufHKhjYdb\r\npLh/ermrtGOcWnq9wdstvfuVHAkPiGOj79V2yxVezK1FyKHeZDaKZpXbp8vD\r\nM4lJq1rIkf3krVLa8mxj2kI3laI16+/x+CFmt8iDP5FS7zpMz55er7M4Wm7O\r\nSLIWhX53qE09t+msdNgrjUtsPe2U+CkVYuUwfE0ggsYe5/Y6a7euz8av7KOY\r\n38NbaguIwioh7eCsg8AtIL7d4zDUL6tl4zUxZq6jWRVxqB4KTmsYuYtaHRX9\r\nDpwxbT0zNu3AOQSpGTcZIHZX2OYM39POVaHleHIb5mqCRh+/lxM+Xs0lxSPC\r\nE/G6eV4o6ajEEZJ294ElvC+QmGlRzKlbCIJEKYrbvo3hBHOgHU6MiEB68QwL\r\ny1yYGddamuEWhN9Js6uAx7QBkCI2UgAPTN7BSPgWQLxwTH2zNHv4ByPBrKC6\r\nVHmIxCaQyu1RSJFGm3Rsy9bBMeK0SNwdPhqgf4e4k4Hidz8GA1lmQ0OchsrJ\r\nidAmLD3gnuqOyuC9rS/o9zkMK39kj1V2Kyc=\r\n=Dn/S\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b1cfc3908c111a04a69dbaa90966642093f79e86","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.0","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.23043acd0.0","@material/rtl":"14.0.0-canary.23043acd0.0","@material/base":"14.0.0-canary.23043acd0.0","@material/theme":"14.0.0-canary.23043acd0.0","@material/animation":"14.0.0-canary.23043acd0.0","@material/typography":"14.0.0-canary.23043acd0.0","@material/feature-targeting":"14.0.0-canary.23043acd0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.23043acd0.0_1646252840518_0.687100714506458","host":"s3://npm-registry-packages"}},"14.0.0-canary.6505e61c5.0":{"name":"@material/floating-label","version":"14.0.0-canary.6505e61c5.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.6505e61c5.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c5e0d355c390b6da0fa1a2e00655f6b36764f03f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.6505e61c5.0.tgz","fileCount":33,"integrity":"sha512-E60ce5O1z3B0U3jX0BQXQEM+QvtdQW0RM8FaQnvBiXvuSV2eBRKx4FpZcM21Tuni39SEBPrBOeWDEPwMQg+vjQ==","signatures":[{"sig":"MEUCIF0pYzAFmqr+edfynn6Ej40u5CWRSLTAsvLDhz53vX1XAiEAyQUs0arxdowlpaHr2aWlLHw/ruLpO/U708iSaQenWnI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiIR5UACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrxKw//R5MHUeS/vSOzzcIHfoe8UNuBlloEQXXt84FyOJiI2ri1FFNd\r\nbt4YHnWk28knFKQqCmsSyoUX0VzkQ+w0uje0ExyeqvyK3qlAVJd9iSVi/jZP\r\nCGhVhkKmjIsw7w94z0phHP7iGyo9j5maqJQimsuXf0NjvUj3arG9BWh+AbFR\r\nfktRw+I4ZW00uQalnjirB2Ubifmt17k9QayczSx6LtYHiwza/OziqTB/U6yh\r\ngv22fob7OSsn4ENrKiZQsqnmVDp9JD12ngTnb+6iKBe2JiQXZle5hxhQhLuB\r\nCD3/aGIqHAH2/VVe3u/U+wulg8Eh9adMs4+iWhOecETbxq436a/+9cP6/Bk8\r\nOc0eUcGOA9BVD7Iol7/qzfcGEJr8FGNIVWCt4kW/5knUCvN6M6yK2uSt8Ziw\r\nYlktI/F6tw8ZDHbrpgbheNtKXUoF+dV12Lza09EoquOFTd+M+Op3/wXFwmS6\r\nzburoZVKRneihy7akG5sUPCHoKzjJCsuAZopi6HyuZEdrha+6XnY2YdrEzy/\r\nBCqurF8T1DBTZ7J0F/7lGhRh+CBaDRT+YQXjQcdANBKMnJf4eoK93/x967yJ\r\n0ngDao8DpVYi/A4Q9yL/hUFd9zOpLcz1gnq3OawiS/J6SXBpIQM/D02CiDPG\r\nGf7Ts11vlOULjSY8EkI10guR638HmtrRHLg=\r\n=MWVH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c9070f0099aa35dc2460994d2d83a8330b996c5c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.0","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.6505e61c5.0","@material/rtl":"14.0.0-canary.6505e61c5.0","@material/base":"14.0.0-canary.6505e61c5.0","@material/theme":"14.0.0-canary.6505e61c5.0","@material/animation":"14.0.0-canary.6505e61c5.0","@material/typography":"14.0.0-canary.6505e61c5.0","@material/feature-targeting":"14.0.0-canary.6505e61c5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.6505e61c5.0_1646337620187_0.41119966007514264","host":"s3://npm-registry-packages"}},"14.0.0-canary.16c166154.0":{"name":"@material/floating-label","version":"14.0.0-canary.16c166154.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.16c166154.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"8e6f629abd7bee22a9670878da333639a2a032ba","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.16c166154.0.tgz","fileCount":33,"integrity":"sha512-dwYvztf0SgIqJ5X2KCUML8oZX5W633zzDskv5iseAW+1+nsgNQXq+YS3QAOdwBCxV1LV+PcJIV0L0grCOEzk9g==","signatures":[{"sig":"MEYCIQDx4Lyym0UuDkbIByG1cjqF6XewEjuazDpCJwItJZ09ygIhANJhto3fLxYPeTjrN2IRFBxEQlmoObDw7J+BeXgDxk9v","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiJ+UoACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpDIQ//XZNX3MnVd9d++4c07wGyf/zuPsYiz0m+R9BOMGHVAB/FCqjZ\r\nEu+actwiscU/ShgADROuzS+b74PEP0iQyYSoU99LjJ0roiRQPbZchvmRIUWB\r\n0kuGFFC6wDoo4XvXZZJLGidZqTY4N6zZIquESqLq59aMrwWO5Q07MWi0IcBK\r\n0WwYm9BoeIzAchibovy5sxK0KM3zI4U5HJ8HaB8IWFV7OxtKebKR9UuJxvyH\r\n1XugTZjbXi2C3OIqfsUA2XeC6TO/PzAp7LLTy7o1CZirWIhFvS/RvFisaRnJ\r\nwjhcgT+CHlilypaotDMwL9pzuO9M+9NMrOJlnZs750xbQMUCny3t7+E1qAdd\r\njOJP1j+iXVBwAS/VnwdS/h4+WClAeroyBxI6a3mkat1QKqJybtOtZrE4DlxI\r\nI5lkaT6gbxhtPAVl1e1oYzZjBVYc8h2WFhLgzGptX9I7nKwnWcrRPu+SBUEv\r\nYDRXXfoOUzjK5VkvO1cVdw+GlCxVlEAA5tZZ+CgYyyh2CsHzYphD77kmi91V\r\nMJsEkiFN5v1ZgiWpQInx3rWoShhyGuWHKWmDsz/c85XQ8FgahuMHPNur0CuH\r\n/Akzdhh76wMvDZwBIWn9S8lMr/1Qv2CKq3L+ez2i1HLcZjsX5sRTY7K5XDjh\r\n7SuPQbXBLBCxjlK2UICTe8nHm3XvbCfuLu4=\r\n=bk+j\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"dd1bb8b4a67220dc0120ba2dbdac900e51002949","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.0","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.16c166154.0","@material/rtl":"14.0.0-canary.16c166154.0","@material/base":"14.0.0-canary.16c166154.0","@material/theme":"14.0.0-canary.16c166154.0","@material/animation":"14.0.0-canary.16c166154.0","@material/typography":"14.0.0-canary.16c166154.0","@material/feature-targeting":"14.0.0-canary.16c166154.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.16c166154.0_1646781736212_0.9630777978467504","host":"s3://npm-registry-packages"}},"14.0.0-canary.bdf1d3771.0":{"name":"@material/floating-label","version":"14.0.0-canary.bdf1d3771.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.bdf1d3771.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"69443791f7237da4fd8b785bfcfe7ae8f8e6c1a9","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.bdf1d3771.0.tgz","fileCount":33,"integrity":"sha512-xEq/ztPJrsX1G3fx+HS+E8jFWdv3kyeb8Q8AXV6+Adv6JCko0YjJUjaANgND0M3myAvXXfOFU9J1yxOX8rAROQ==","signatures":[{"sig":"MEQCICdpqTwhJaPRA5tPJAEIWn1WN9sC6I7XEpOklNjYJ9wBAiBGfHeHZ/gA7i6/tfhrPuHV+F5a5X15U4OjSEnuXXprGQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiL1EGACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmox/Q/+O8kK8DjvXA0pRRxJf/FmqhQBLUhh+5guIfGY2D/ZDyOBy6w8\r\nmVC//uC++mdwAc6txAKYGTjOc7nRt1gN/bxjcdI0OGK6rtMlGDFo6T1mICGe\r\nwG2ltQHxDaZFDKPv2kYdrYD6dATkBoyIGae9oO+jrP+LSCR2A0stqah8Gnd0\r\nsSaMU6u6SaXy4qDJIbx1i1PToGciRNKBwrY6W11svP+s7M4cN8suYeEWMOaX\r\nCIjXVznALMZSG1Pyn9LQfkMCcskqXoCnxB/o1hb9v/JDn3NqpgkBpvKXMPJx\r\naNeGielKH1Ned5VPN/eoNbjCaUMcIFO7pbJr2uMLexqSr6nPEyAT7EiGubrp\r\nwGmNuOvGZmL5di5Qv7kVkb1K8FB6VI9J6PbIsPxA9GyuFdgh+Ro0jsObCt5q\r\n64HXs0So/BlYeMP0Hage8aoKJHoCmFNC1RmZ8jv3rCnhSFJYD76vGshiHk1v\r\nogJ2uYzG8pV9fRjkFh09yqn+M/A29qcSS6zDHsq0fLEjRd7FM7zLQbsHY9/e\r\njHPwI6n/IJqSv1Kl1FVxLhwcCeVztOMgvuX5YAR4/mzuR/TIOL3KmKuaDhpl\r\nSHU3lGjOkTETt/dOp7VSpDsZJx/cNG1xCQj6vkiuDmPp9jw5VZ2jVEjkeJui\r\n8DfPP/Y4lgDwo0WovzN2A7HCzdDV+IgXtCk=\r\n=2qUz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"bf598649c7389f49207c410e58144f75a67cc4f5","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.0","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.bdf1d3771.0","@material/rtl":"14.0.0-canary.bdf1d3771.0","@material/base":"14.0.0-canary.bdf1d3771.0","@material/theme":"14.0.0-canary.bdf1d3771.0","@material/animation":"14.0.0-canary.bdf1d3771.0","@material/typography":"14.0.0-canary.bdf1d3771.0","@material/feature-targeting":"14.0.0-canary.bdf1d3771.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.bdf1d3771.0_1647268102266_0.6506515488660845","host":"s3://npm-registry-packages"}},"14.0.0-canary.cf4292778.0":{"name":"@material/floating-label","version":"14.0.0-canary.cf4292778.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.cf4292778.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"32e50ff9477674abcb2713d102b32df7c734f34c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.cf4292778.0.tgz","fileCount":33,"integrity":"sha512-TqY6JD5YRd/r1C/hmtIocFtrQA5EYg72OsKfMVRrbv9rc9aCdKazM6jyvECe+w/aRkHtanNUV2wMR+2VJpiztg==","signatures":[{"sig":"MEUCIBhSdsp4QIta51cvxBHJdI79m4SXenOtP2DHbYY4OBN2AiEAhO6bKjjuB+MHU56OgC7gwmoB1iCJAj9kLrKr99pQRsA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiL93qACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpuMRAAisE1Ov2SepN2rvVhF9FOKnUketsRRNT83MICteo3bNQHjeiP\r\nSLRW+46ka6pNk4m8IshEKG7l/fLR2gyqU8h3qhUwSxgL4L0dx73SPj7iIL9z\r\n0eKLZfxPAmVliw9WUCnlPaIBkV89xmgexhkQMExr5ToUXIiS9jpDqm/VGl4K\r\nsdHyH433X/9X6A8zv59vBQwRWigzCXzPS6LVXnB1opHkASoBAbiAwXmc/4gF\r\nFU1r9xHRYaff0hibTb/c7XK2D7WRG0awgEMMFWLx8+Abl6A2f/49yaknyWNj\r\nJ1q7ajKToauA9Uvr0kRmSYSH/blBOK4f+N7q8944mRKBi0AGlaUgOYgYecF8\r\nJigg78mLnO+8aAOjaq+HV90g+lsqLmaPxQALipSOQm6LUkmJN763j+EBIMCj\r\na2T85Zv+eHV2+jvYSYbMTZp1z5+XqT4eGffV0m+2Vhvcx8AJBnufM3p80IXB\r\n2MgaoVJHREo3NxCo5K4LyBks82Bq/l3JA10CrXzTW/v4zjOTM6TA1sWmrux1\r\nrsOik73jKEL/+XOLwCLNf/2jPhwS/7zj10eKLzo40do9s6IFpRhnXK1/5M+3\r\nBFJLmGg9nyxUntkdwnF4kTIs9TjSE/W/jmSRxVkqHNXWJiGalV/zCpm0UP+3\r\nbOi9ukfLdvDa36PZoJZdgYCvQxZic0fRXr8=\r\n=j0GE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"85b1d5db9650586ff51d999fc12531d07489d13b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.0","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.cf4292778.0","@material/rtl":"14.0.0-canary.cf4292778.0","@material/base":"14.0.0-canary.cf4292778.0","@material/theme":"14.0.0-canary.cf4292778.0","@material/animation":"14.0.0-canary.cf4292778.0","@material/typography":"14.0.0-canary.cf4292778.0","@material/feature-targeting":"14.0.0-canary.cf4292778.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.cf4292778.0_1647304170326_0.13592366046010862","host":"s3://npm-registry-packages"}},"14.0.0-canary.bbd43e0e0.0":{"name":"@material/floating-label","version":"14.0.0-canary.bbd43e0e0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.bbd43e0e0.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4c75359ed437b93ac38ff4582ec5adb3919424f4","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.bbd43e0e0.0.tgz","fileCount":33,"integrity":"sha512-EGYAGWgHSerCDtgxVGC+wf+26kTZjz/qOVIZIFpgMIky32hvD7RGuAq9yamefcb0NNW3htpjfRP6KHuEXQV5Gw==","signatures":[{"sig":"MEQCIC5K9jT127zkMa4H/C97DpCFaXSi0Xgv/EkaWkfxAvCRAiBXmfzx6NcqAp4fgrZAveJC29b/JiXWxD5P2gmR7XjZJA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiMk12ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpdXA/+LTWMlAAOH9QpzmDH3m7MALYvdMxnkqX9D4jvpzzvg5K97Vf5\r\nvLy5xOq6gTqknUypkOzPOXlhw11srOD1nASQTRBkJe+MNwUS8Ishk8Rkxi3L\r\nPrbI8eMzZxLUYm47mXhrypdfp8e2LaAliOOyPlc2JkAfhDCeqaq3PcWUA0LX\r\nrHFmFX9OtsGzZTcu3ShE0cCd8T5DoEaozDq71QkW6vM4TOU+jsd7Fv+5+S4X\r\n57CrY9um1SER3FXXkyRM2zf3nFhPPdFlSuL3KdKUXZ3bEeWyIOuUo3RZqSkm\r\ngUa3N9LqiWXHpFZdXuBtDNryjozZigqCJq2bWuYxXwR9nbjhumQ7bijSGUgf\r\nLs+bsxW8SA6r4Ad2q3UJFa0tA1IpiqmPr0gQMLD0VOK5OxnDKZX+HfC4+/9s\r\nB3c9IXAv3tIbRqqaGE1A35ihfU9ZTYrmsz42MraDFa/J1zHkyHvVOghTiTVK\r\nwW9taiW0ri/n+O+Bjv6MfYy7IUOfNR2TD16/Bi2to672MyTeAk0RiJDeo67R\r\nNsQeTptYcldQ60pYMr3rU0NR5sOKoBhYm3JDNoC61HPyWXdD0U6+v4+x5/pI\r\ndun4c6TZ6TjQZeGaHZ0OFP2hvU7j2RUf/UA0OSrywTUaR9nubOiMMsPcBdYb\r\n3p8bDxM9R4/UZ54TS5UuRl2HfdpH3yMMaNo=\r\n=Xnjo\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"bd60ebc6c6267688058726d6f98421b0e815336d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.0","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.bbd43e0e0.0","@material/rtl":"14.0.0-canary.bbd43e0e0.0","@material/base":"14.0.0-canary.bbd43e0e0.0","@material/theme":"14.0.0-canary.bbd43e0e0.0","@material/animation":"14.0.0-canary.bbd43e0e0.0","@material/typography":"14.0.0-canary.bbd43e0e0.0","@material/feature-targeting":"14.0.0-canary.bbd43e0e0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.bbd43e0e0.0_1647463798575_0.3886761044732776","host":"s3://npm-registry-packages"}},"14.0.0-canary.1b6afad86.0":{"name":"@material/floating-label","version":"14.0.0-canary.1b6afad86.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.1b6afad86.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d1c400df1ba50a2966b73910395a0b2fb88019d7","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.1b6afad86.0.tgz","fileCount":33,"integrity":"sha512-pYh1TfS6SXqQ7PErQzsXDH6c/YHbegaR8DssmzJmK8t91A7TBeRD4SekuOqJjno6UsmCOFo/TCYzaVCU/BIKLA==","signatures":[{"sig":"MEYCIQDw9sZU4kxo6de4GAoURZoTfyA3uNMo5n47mhzMrKZ3TAIhALe9NJ8QQifdi2qmXFb/auYKx8qb5EMe/5/vHV2w1GZU","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiMlCiACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo2mRAAkTtkhsSt1qoYOHh0UVh9OXKWqVkZT84/YR8FjjIjlTrtAXuI\r\n9JBtJl0/s3uKFBnJXuXCPYliaLazhC47dET5kePtPapdp0a60p+pT2oAIMen\r\ne1zxUAXB08ce3bL7dlTKF7Bx5i13bWu2UVNNfXNnTn93LKLsAuiHm2VkLLqB\r\nEcg3mKWJdPWjlgRX8oDnEFY3HNGGZ3MWqtIHaIN1ADNgMsFCtoro2KTzFhyo\r\nVVaMKsvpsD6rvDjChd/t8Jeeg7ugFeeRo8mBpPCs3Gc/sAgDIpKVV4tq0tqH\r\nsCfAWA7G16i41doW6kjGeG8khoRZsW5lvatRkbXAlxKQNDBEesCzUyhDM8sE\r\n1aWYLGzytwKEfdnci01i6mGG7i8re/xnSfwDKAdlVQUZqsBII7GhKhecR+qj\r\nm4PViEOYAVt05hZZpNxZuRt23cqKRT9N5tl6rABUHADLgzxPD4iMLCVm4rsp\r\nTueOVxzeIROLKJpiGt/K83u0tA8GbhP4TL4zFrO47Ba3QviMuinlOWpZ68da\r\n5SDUUCVnRtf5d/AJfoD1FrW/YYRxqm4sXPqFvkM3O3ySTgj5/+bwWgp6xXCU\r\nYT81QGyzmj3yIjk+euzATAraEKzfJa/U0gv19gA2BuXND8E4GNvbos6lAorX\r\nASOKPcr9FzT4pTePa99Rmga9jBTgXa/1rzk=\r\n=J4Vm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5e32cc72145fa47fd2155c83c81cfa7ba5e27db8","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.0","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.1b6afad86.0","@material/rtl":"14.0.0-canary.1b6afad86.0","@material/base":"14.0.0-canary.1b6afad86.0","@material/theme":"14.0.0-canary.1b6afad86.0","@material/animation":"14.0.0-canary.1b6afad86.0","@material/typography":"14.0.0-canary.1b6afad86.0","@material/feature-targeting":"14.0.0-canary.1b6afad86.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.1b6afad86.0_1647464609859_0.9222838576913246","host":"s3://npm-registry-packages"}},"14.0.0-canary.bdf9d4af9.0":{"name":"@material/floating-label","version":"14.0.0-canary.bdf9d4af9.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.bdf9d4af9.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"cd1546386670644d95f35ba54ef29d1bff963804","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.bdf9d4af9.0.tgz","fileCount":33,"integrity":"sha512-yI6a/IoxbnlzIyKHgMsR0YZKfTX4ZQt1onYzhYAQ7mOX+raVN8gcP36wr6Im2v3iMUm/U/qIEMIdRaz6EsFPYQ==","signatures":[{"sig":"MEUCICuXLY7PgLkNMjh9vtTgBJPU0a7qUMS07HXB6qjmQuXEAiEAw2I6WUxWh8T9hbv0Y1rbj/L+k2jXc1dKy6SWK0TC/6M=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiMlP5ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo/FhAAkUHR84abzsq8oVZF/3UNyBYrzq43kKadJ9WjxM2Og6v00SjT\r\nbE6Z4co0OpLqmy04sH9isscuLc/KamXJai5D8TlM6yyASqXoGvt6buiw7GaZ\r\nIBb0P0Jxg4DQMMTHm0NOloq7p19x1n9GAqZfipOMkIOSRBbkK6mwX+fQ5l1/\r\nYBT9AHXJMrXkijYgB0AssWXvM2UnO+OjEb+qjKClNuzsRtUGN7D5SYjq8D3w\r\n2WSp98nGhR7Bf1WVIZtnT4eIpaPj6NnL0uSU76ljks4hhu+C04Ss6Vn2LryO\r\n4VKrf2Eo61WQY2sGMe2bYwUNe/YfaaTuGXJBsDnAdt9zURhfSXYCuJCw7X7I\r\nZn9E+bUZnKcqDW2bDBJNbhUB1H4lFjW7urcHFYpzmF3ri/Hbp5lE6TlIXiIM\r\nTM8b1zIr5uMPOcCk03spXx5BPxND9kZqui6ax4WInXKlqYfCpfK71SNBuRBH\r\nvr1rqCe0mpHzy1132rUlfC9X5jsONdYZfipTLg98feT9yqfhBrmxMgiaiZ6+\r\n5rSj7bUh/vztdK6wa5X3d7cIf382E+0shzlg7UbGIEZDx9gb4vcfto+9fJ4m\r\n45+ptDLnzt0thcjiPSus16zeglLUlr0+fRSHmiiuNrAuWepTjwXp5XrsqXX1\r\ngSdvUbS1Q7vdujoVXavxOd3xZPhy7dRYJO8=\r\n=8PQW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"413f4cd271111f1b118401821eb4bb38e7fcbad9","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.0","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.bdf9d4af9.0","@material/rtl":"14.0.0-canary.bdf9d4af9.0","@material/base":"14.0.0-canary.bdf9d4af9.0","@material/theme":"14.0.0-canary.bdf9d4af9.0","@material/animation":"14.0.0-canary.bdf9d4af9.0","@material/typography":"14.0.0-canary.bdf9d4af9.0","@material/feature-targeting":"14.0.0-canary.bdf9d4af9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.bdf9d4af9.0_1647465465810_0.027247879071262693","host":"s3://npm-registry-packages"}},"14.0.0-canary.32b391398.0":{"name":"@material/floating-label","version":"14.0.0-canary.32b391398.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.32b391398.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e186dd6a32cadcc02439413b37976095f430613e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.32b391398.0.tgz","fileCount":33,"integrity":"sha512-cx7pA0ZhNIXzwJ8AzKdsjQO2a4sgOALLsysPDRz0G2UH4fdRxQi/2TovmgRT8i4KZoAPrWwAznsFyW4NbwJaTA==","signatures":[{"sig":"MEUCIE0f9q3gK2xZBmHESgf/IO2X/K3gDscx7boVgnp++zGIAiEAyVrpO6POBy2dwuC3u4tLF5EggCwxDYn5lHfOdvAlhlU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiM3bpACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq10g//aWI1CZj8X63INyzAhYR3h4iyiFZTbY1jlNYHkzoAo3tnqxmT\r\nlufm+Z2En9Sz7HBl9kN8vEaQXxSq2PE1rkMXmr5LCBCIqZLGok8/isnWNBNf\r\n4h/lJzA7BJSP0tmq9mFH5YR3cox3OU3FW83CiJ8kU+fK4W0z82Pd+epsDuX2\r\n4xcVB7KeXwc43eYkP8pb/gpqYQOFgwXI4OuUKcwlAUrAsit3dMPeo1K7SmeR\r\nZ6ns+AJF8ocuwyW+T5bC+vPHIiM26ZfdLBYeKXqTLdlproeNdh7wNIbsCoRy\r\nXp0LTPcf3g3c7t9n8dC5ukMAJB1SGw6sZInBXrO/flQML9jbGoRRRqI2NzoV\r\n3BUDQMb54gYPpyrsOOnA8dK6ZwRy9S53HyWepcLJNOMFhrj1BaE8+syAdHrJ\r\nIm4tv9vJqN0OggBGL02TgUPl6WimiQlzKXvwDNeQtckE1feCo31Ux4Tdf7Xr\r\nphCKq6k+onjQXrs/6Z/rD8XTsIxdkCfeJ/UEXuxYZEdAbUBxXfwb/Yulc30A\r\nlyJnC1vwOgd2B3BZaEcu8it+cR+fQW/vf6qOU1V0/A/F2l8XDoTqOzbwGF3e\r\nKeg8i9RFXTM9ks7rnOgqTn39pTn6+2J9dflgGsWBz7fN3op6MrdAn8LuX3AO\r\nTnCgTqiaLXJWjkKkGErzSFv0MuO2+g7DgSs=\r\n=/iOx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8a457bda7a5cedbfaee9da752ba2dbc093b45ac6","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.0","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.32b391398.0","@material/rtl":"14.0.0-canary.32b391398.0","@material/base":"14.0.0-canary.32b391398.0","@material/theme":"14.0.0-canary.32b391398.0","@material/animation":"14.0.0-canary.32b391398.0","@material/typography":"14.0.0-canary.32b391398.0","@material/feature-targeting":"14.0.0-canary.32b391398.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.32b391398.0_1647539945263_0.3510157090487338","host":"s3://npm-registry-packages"}},"14.0.0-canary.ae8a6a3a3.0":{"name":"@material/floating-label","version":"14.0.0-canary.ae8a6a3a3.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.ae8a6a3a3.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"49c6221bead5525fb63f715c024e90dcc211752f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.ae8a6a3a3.0.tgz","fileCount":33,"integrity":"sha512-SoLn6B1bBu6wvIpJujILmYZd2496Q5k03yp6pu1my6NsnjIvNvtjbfuneAm3GPHJQkXSUPibBsd1kdrAQShQVw==","signatures":[{"sig":"MEYCIQDDBdFMjvbuK/tqMlwEQnkUF9JjUwGcL/CTe5OBxTrRuwIhANesOfs9c7OS30N0p7dQr0vO7rd/Sc4++JcpwwOhHB9o","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiNLWrACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmrx+g//ae0xEbT4/F/apeMhB1nKsMlKxEKwm22Yv9P8qTpEC9Z2Eljr\r\nonYKEX1Mwm0ZwQNGxGrh8khXxetIEnAslcXjsbCzeet9cK2jlNgzWsCp1Tcr\r\nFzeIjvfI4BFtmVMySA8aT8Ebws6ZMcFcanJ1z20WqMFT8vkhrCDqfcZ6B7Cl\r\nLxtmzLGQWtNsBKCBccyHuH71HK4xB2ojk2l1ErbWaSGsP/C0PhjsyUMm8hq6\r\nk7tLG1y/hqyH7/WHXyeHDwWAjiwwD/5hg1H/1o3v5J1Do8tUwEKWN0KOMfYJ\r\n2kGHbi+2WW+OAkqlmILeQ198WC1jz5flv9KqmC5rIPbE4UPoMxeGSAXGkyBJ\r\n/ciXt0yuvCxaTQPpUGM+P4DULwMEPvUntHrSGvgS8+NH5kD1LTH+FBaEVOu8\r\nr4HKaUCAWaVoKNxz2DrOFDZv/nyx2qgI2DDveChuXCrFI+QH92jspOJwrlqO\r\nb5CTQweCjlS8MjIUQqZbATTZ1etQKKg5A5qnLoCjkai+UwP2BdAixXR53V70\r\npOyNHqhBDdmLOnvVc328JMLn5m3MFD99k9VLCs18sEFhH8PlK1jSz9x6cpuc\r\nysK7n+dfZT/bWuJbX0i/oMKDFgXH3TUs/gQsII0Lo4ipLRGvWjeO4lvydixM\r\njefikoh57FJz40dQ0puEFLpvGxWFuZnWXQY=\r\n=m6dc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"783283a1304f941e05b3ef25b9a589158368c595","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.0","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.ae8a6a3a3.0","@material/rtl":"14.0.0-canary.ae8a6a3a3.0","@material/base":"14.0.0-canary.ae8a6a3a3.0","@material/theme":"14.0.0-canary.ae8a6a3a3.0","@material/animation":"14.0.0-canary.ae8a6a3a3.0","@material/typography":"14.0.0-canary.ae8a6a3a3.0","@material/feature-targeting":"14.0.0-canary.ae8a6a3a3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.ae8a6a3a3.0_1647621547514_0.03546122150198072","host":"s3://npm-registry-packages"}},"14.0.0-canary.cbd9358a6.0":{"name":"@material/floating-label","version":"14.0.0-canary.cbd9358a6.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.cbd9358a6.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7bc0d74df1e35985138180882ec0e5534d286d8e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.cbd9358a6.0.tgz","fileCount":33,"integrity":"sha512-4N6roI8uXOHAqlg0JI5lyur1EGKkJ7R43Bsx5lx9CO6SGbd4AWZzjfCJ406JtVOVHzaw6Xyi8k/LriIoy3zoKw==","signatures":[{"sig":"MEYCIQDFteFBm7l4180FaLeH+DdP3hFu/9+t8JoL7NJMnpSvBAIhAIqfRxsp+4p1k4+9fXcXUtxzZ/EXyoKgtC+z9sql2M1G","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiNQ0KACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmrlig/9GlHypv8gH0v23zDGApPf5J0nRJ9IGeVY08VdGbkfRu1m1B9l\r\nzqPDhSBlsIGwsjboSZPhKo0j1now1YDcy8WDAgbSzqhxwR1elaBoDLzutRBp\r\nr8XNCHlJxm4c5+6vl1dvle2mwzyAMyBROzZ+rwOCPFWlLD3FX6MnbWd6rczE\r\n8dlQIAAPiF+inAEw+7bsQknX+jYPDQ+pRmUZLNUtl45jychm88FrLo0RQJDE\r\nPSiNFus/kWvhzzFssTFD+DgAjxUrcXa9BupQsTIU0CSHkIr+rqWDCzHxGkAm\r\nIhmt5BpYWtMzrYgn6TfdU3xC4+hT42at2Kj/l1KDl6KUa64PD6/FVe69LlIr\r\nhfSPsXxp/kgdDJ5uq1vv5vE0pR3Cha6CpHgtyB69GB/JPqoC/k1M1FB6+VRL\r\nn/VcXXf7WkDcZZDhvI8/HZ8mQh5LpGIFH7Hs6p7XXk6T3leoa0YGsz5cFdFF\r\nYUkPmMOmbcx1ynceash1jk/4ed5aW7HGsgZQDEPNNOR74KE2EnM6Mx4UqQUV\r\nfcXE4omzJrv+JSC3+7p52M9Is9UIbCRWxoIF8ZypA+YBHnYEKAVAk0PU8xB2\r\nucCEbVBVhNRRnf9aIEdh17KLbV1A7zs6na+wsm+ZSfekDSlv5qxtdhZAlYl4\r\nBb6/gMibMP/mSQ67OeDFwNA8uNpR4nM9+sE=\r\n=Kut/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a4296a048e6aa0c1ab8e8d2cc6cb8321c24dab9f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.0","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.cbd9358a6.0","@material/rtl":"14.0.0-canary.cbd9358a6.0","@material/base":"14.0.0-canary.cbd9358a6.0","@material/theme":"14.0.0-canary.cbd9358a6.0","@material/animation":"14.0.0-canary.cbd9358a6.0","@material/typography":"14.0.0-canary.cbd9358a6.0","@material/feature-targeting":"14.0.0-canary.cbd9358a6.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.cbd9358a6.0_1647643914678_0.7899611079928821","host":"s3://npm-registry-packages"}},"14.0.0-canary.dcfe49c98.0":{"name":"@material/floating-label","version":"14.0.0-canary.dcfe49c98.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.dcfe49c98.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4eb41856b5016f31fa2cea32c03d050140230f28","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.dcfe49c98.0.tgz","fileCount":33,"integrity":"sha512-5cgeMgiC6+WvwEMiv7jg6vOPqEtjjC2u4CrjnkEyUI5pl1yt+KIoZ2vv7sPFniM9ojk2ncyzf9VO/vVjjqqXMw==","signatures":[{"sig":"MEUCIQCfsWcDSqtAwmY5veI+Vd4ICBpy4oME+q1RAANehnaznAIgH/4y7xk5Cw5f5voL9KpOga/bzgTEwzgEKm580GJdCmM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiOMdtACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmozoA/+KAeKRuL74PD30Muuc9mHO0AeG5YVJTsh5sa4WPSEcFEiM9vl\r\njCywsfkMF92WYzEx7UuThDM/HIyd2DX4CRxXHb4VlfhBpUtOA7rWydOstQFX\r\nztL8bYxoN3ATyNmSxjykjfzOuIO5rpwzeNMD7HZ2pcStFkFcGtZtPfozU9vg\r\nsNRayYhxd9twwqoqft4R2uW5BA3dyG9vNoHvVUdWA2ivSh7ZBSBZ4K7VUj8d\r\n+2E+BSqKvE0ox92vRz6NYVx+kLjn2pGHhW74O9LTEa/aVyCfjErNXqEzxo3R\r\nPxgJjt30vHsoyLqUbksRPedECITQV5hNzK8u0f7V7xvly9JwkXmXpkboZgNJ\r\nZhjvU1cNvEEOSwI7+EXB2CTzO0L/3pc/alcLoyVUf6WkeWZoeNPgk5mgcyXd\r\nh5J2mRIpyvH0GhW6Mh48Uw9pQtyCsGY4BGBmVLbR2lEKgK+EUZqS4lz5hAbe\r\nw6qxDR440Br2sPBu/li3aVm6MWwanTWilYqq7TySOb8GnF5h55BhAXtPXdvm\r\nF9tFLqPRR0H9ShEI+kIHMdg1zXpRYZFj6nsb7+JNlGxu+sjAJmXiDvdaKf8j\r\nHcyX3uUyjBZkKbBUpJQy2DjII1tCpko03v8fYfWQu3h2o0KmlQywyxD3KbuS\r\nIyRw3m19+/p1SqaGirbkpAod9licsIFUFnc=\r\n=W/wx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5b68455eaf6aaf2f571eb64a1d8a5edaba58d37e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.0","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.dcfe49c98.0","@material/rtl":"14.0.0-canary.dcfe49c98.0","@material/base":"14.0.0-canary.dcfe49c98.0","@material/theme":"14.0.0-canary.dcfe49c98.0","@material/animation":"14.0.0-canary.dcfe49c98.0","@material/typography":"14.0.0-canary.dcfe49c98.0","@material/feature-targeting":"14.0.0-canary.dcfe49c98.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.dcfe49c98.0_1647888237829_0.9544273857176793","host":"s3://npm-registry-packages"}},"14.0.0-canary.f31a833fa.0":{"name":"@material/floating-label","version":"14.0.0-canary.f31a833fa.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.f31a833fa.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3a400fe1cbd6ab25afe4df51271faf08f2f6e8de","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.f31a833fa.0.tgz","fileCount":33,"integrity":"sha512-ZDCA4BN0rKfzh8jOPiIFasr+Let07GVsRbcwpycEyBK1XEJNSBUWTS7InJ+hw6pyKkVtd8dEoDwyiox/dWeifw==","signatures":[{"sig":"MEUCIF4O5gVlNBZJvxpqRcNPIVWVgSeYRyGDag4IxYhmy8niAiEAooFm5HOijeexMRHx6waKidOhZUlFraO1WH9OiNPYsgQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiOm7eACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpZzQ/+I3dX/VvUT+oJTXqOl4oI4ZMNGz05xJgDSUCNVzYju06Tm65u\r\n7owTbxzw9qXr+WfXf3cKPHqwFxAFGy+LlZXxVFOYoOn6PXcKze+/wnlg3Ibh\r\nzUBasQDzXnND5/6j5lH+dUrsVgI0oVjNzi/ReLtr7ZETpEyIEYWzxY94bjWo\r\nPaNyAqLNi/WeQTgBAhKdaiE7Eh22MN+KYqyfkdX0CI1BTR5o+gVcahLQGDVA\r\nXEobBrlFkrc1uYrgxasW99BjFDXd33g/3wajHAD8Le8eezXYfzXzsVsfIOma\r\nNTzQKzurNHAGwpMHZ5hjG60xiW/JBU/qCM/PHhlFhAD/TRC/hqq31AHd723z\r\nAovNQqESZa1xBQY9ORQDe+w9H5Ryinnb9uF/imE9FOzfDBZni8oct9kF6lmd\r\nb6OhtOhFYe7zclOh5hjX1GMa9cpvj7aPwdEDOXz0+kXdQLUVgkqP5GZF+3vR\r\n5GEzUrcECb6a1sLkA+SkybDixrnhSIXVfg0Pxhp8GqKhiiIemyp0nPkmad2M\r\n3VJR7ZaOgkJekbFqD53EJl5IBG7tGZLv1u6rdy8aDV+YMz6tU7SO42X9pymY\r\nwImVsrtlkD5d+IPuXK/ols3QOmeUl8KV5ay7jWHJ2kAKBYZKAODdqXtW2l6W\r\n0bOW2ZFnNzetLdI/6zMvu1EK7PYCxwMBBCs=\r\n=kaJC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"28572f217366c634964a133bbf0ee0b8e88b8126","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.0","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.f31a833fa.0","@material/rtl":"14.0.0-canary.f31a833fa.0","@material/base":"14.0.0-canary.f31a833fa.0","@material/theme":"14.0.0-canary.f31a833fa.0","@material/animation":"14.0.0-canary.f31a833fa.0","@material/typography":"14.0.0-canary.f31a833fa.0","@material/feature-targeting":"14.0.0-canary.f31a833fa.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.f31a833fa.0_1647996638345_0.9556728236020289","host":"s3://npm-registry-packages"}},"14.0.0-canary.4b92e210a.0":{"name":"@material/floating-label","version":"14.0.0-canary.4b92e210a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.4b92e210a.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a5eb94c532493802e7ef731e236e4a0f1e2f1e8b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.4b92e210a.0.tgz","fileCount":33,"integrity":"sha512-4pc/cI+q9sgfwK8T9q1ffiX5tFnRhu2y1IxDE61yFzBZDB3SST3MQSaAi4AgJF5llexXBH3GwbX+5cQwGd4f/A==","signatures":[{"sig":"MEYCIQD/j0wtpFOM5DlC/II+z5f45MPETSJKt/BmrkZFnBC21QIhALjfIOsy7PKywup4o8OboOspDLFHaON1VoYiWc3+3mkl","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiPNIUACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoSmBAAlwtWo3gxJiC97aj1wy9IibihUoQt8HPVmcbzCTzSRu2CG3q3\r\nIYafWtdCwSWgx9sUztDnV6PPTSKygu/qQ8pll9absvtFe4ERGUwRnYgUcLYt\r\nEdiUGksFj/OCYSSpHQI1Sc4lBRizotLcxkjCK0u4gXYN5LBt3an3XaYlh0rb\r\nJJuV6GdQuZuB8N1sC8XArr9ZetZzPD4rW0LKcGbID82RcH/APTnz7hDyUwa/\r\nliD4DSEmhZjLlacIBOeY4R0ZLAsZfOnIgnHj0zuzWGZSmShEO7HRzJVnllvn\r\n48VlWj15TXQxMQ01kqktm+LmNkpHr0axSpbpboXv4PO7mauiFRp7d8sr+jNq\r\ni/Ci1Xe3DX58T09WKM25m2eZMPeKt+73VbYx8OLDlOaR+YWzZ8AHy9hiYHnn\r\nrD3LdDgu3rdws8f3TJxyE1XBJAtlSEm/7uyLJVR4GBZfQNkKri2EmE+c8Y4v\r\nl5D3srDbwItbFYYoZXTdd9ZUbjA4ZpnkwiTCRs5yOCDyBtsbsjkfABh6/f0B\r\n6nX7g9KdMDcbJKmHQLLOH6M4275eNWTATEuDC+b5jQbKkW4Z87h5fV2VyfeE\r\nSVV5lXYQvyuUj7932SCK/lIUnseL44g436DBnEDctftJR5xb1od25kkdMKxl\r\n0chHuZdcfhZDuvLZuYsBE5Wh0o8ukZtBhaE=\r\n=lgaf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e9fc48f242a1815183c2b4c74ea1f8bb9967004b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.0","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.4b92e210a.0","@material/rtl":"14.0.0-canary.4b92e210a.0","@material/base":"14.0.0-canary.4b92e210a.0","@material/theme":"14.0.0-canary.4b92e210a.0","@material/animation":"14.0.0-canary.4b92e210a.0","@material/typography":"14.0.0-canary.4b92e210a.0","@material/feature-targeting":"14.0.0-canary.4b92e210a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.4b92e210a.0_1648153107833_0.7425640752807237","host":"s3://npm-registry-packages"}},"14.0.0-canary.a657abb61.0":{"name":"@material/floating-label","version":"14.0.0-canary.a657abb61.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.a657abb61.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e05c03171b7455421add7477890e2bc7c08a5bcd","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.a657abb61.0.tgz","fileCount":33,"integrity":"sha512-XmdiWUcyrlYBdNDq/IWBNxkX9cxTg8FogeWYjrV4t94ACbd5ULaVcjWHtfMUAu+84nqYmZJLmEgmrzgECRcjXg==","signatures":[{"sig":"MEUCIGe8YgEUPmnLhWYA51RHvn4/7Nuys7WLxiVR87XgJ8xIAiEAsKzEldjsycuLapdvlbArkNuj8cbTSfGMGbyyUI214nw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiPNcWACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrhZQ/6A3+4JwJE8jC3AOKeRTir68rGO9DIdPiqBM2zHlfN0Bj6E/DU\r\n7Pk/0yOYNB1mQQLSSENz58HwVQVWSFS9Q2paHrYOXrzXPI2x5b1IrfDqanVP\r\nlo00PjUw62k/12cgxmO2nx7f8uhg4ERHgOSrA0WDwNkZWtXw50anXWRw9AHa\r\nrbyyD+m2EDgwTN0YYcvdiZ4KVsEE+n1x1ciOJSU+H8NkYpQqyP0B0VxbjDNc\r\nyjqniaFvmD7LhC4Du2E2VU1zbfn2Y/8sih8AHtmrt9Wcf4ppt4CIQ2BZ7DEP\r\nzacaKQrQ0k/6zIFp9EObCPiNArb+8JKx8ix7bzUUx24i++OtO6CJACYjxjZd\r\n7elTWbK8uN+k/8rqDX9RJ9d9Omi5LopSZ1rVpXCVI6lHbJINziJoy5GlOi+l\r\n1/ey2y6PCNxF6k8yUwCo/UMwLUWlYbGD8rfoxfP4/hi/S+KIfJSMSmU1BwTN\r\nA3dRbACIzRVMc2hvc2eI7ym0/ubfSRd7LslNaERtWowuV/ppm1CNM/UmqWZg\r\nuJp8Ow/Brgk41hHZnDd7fvXfhRICvo1XogxptgXMCZvPuvvZUDxVRwGBGFhc\r\nKdj5VK3GWgPfv+ATqC+vzGX2IAuve3Y3nt4BzGuQA8xU48PYxUM8Pbw3W2O3\r\neLcniWEfOYAO3A8fVi2zVGg0Mn+/YbqEJHk=\r\n=XajA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b17ff714094456afc14ac1ac896e38f85e300743","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.0","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.a657abb61.0","@material/rtl":"14.0.0-canary.a657abb61.0","@material/base":"14.0.0-canary.a657abb61.0","@material/theme":"14.0.0-canary.a657abb61.0","@material/animation":"14.0.0-canary.a657abb61.0","@material/typography":"14.0.0-canary.a657abb61.0","@material/feature-targeting":"14.0.0-canary.a657abb61.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.a657abb61.0_1648154389966_0.0722721779226374","host":"s3://npm-registry-packages"}},"14.0.0-canary.443f63f50.0":{"name":"@material/floating-label","version":"14.0.0-canary.443f63f50.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.443f63f50.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"86deb56dba5398c47a0e01bfa9480d42719b27e6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.443f63f50.0.tgz","fileCount":33,"integrity":"sha512-JBJ4EWDHDTICimH24TRGuXEdAQLV9J5vZ/zAb7VUC1hHfQLTUgxN/LOJtg2SQe3RW08uwSSboPXV+gqqp59/oA==","signatures":[{"sig":"MEYCIQDZN8CpQv4YDwOjWR/9n+gWx5h08hl+iwmF6FzAwhHKQgIhAK1cwjZgyW1Lfx15I+Dlr6nqGagqBcr15gQIAsfRWn/z","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiPkp9ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpmSRAAlI4Iq5c0MBXFJ9wWaLk9siL1/nYB+mn5zquGTsdbYKh5gudu\r\n/MR3Y/GceWmTBbgQ3HaIK3v+EvzWCSkv6za4+UvpfLCzWUZQZelSipvegcCH\r\n/ELBMFexTtY+pJpMddLxql+SbLcJW6FGq6TsQyzmZ7SEWJt/QqcEutG4553+\r\nQm/vyzI3pgWZTuyDb/Hd9l6IUjvhaihPBoWfpfdVuCKoXSwA+9twNnXjlnGQ\r\nJDgW9KydFoJDZqSp/f3OUbnI06jaDaUR8ZXmdyqc/10/aTk4/StcVAcSPNVG\r\nfJoX87bAYrcH+Qz+ZxYTvFnLF2KaEOIqvEEnEWeM1t66awAuQlIrzsXMkh/E\r\nFaPFwd40xsF7SZLcfuwEVt1ySfSgq6WkRK/VR/+dCnwoSJmseyxlEYUrZaWQ\r\nBMgZC0Z/PGQH0dIJ9qWBJJhXCQ356kwnkHyiSb7kmYmC6/AFWT//C1sxHA2j\r\nupcQ0pTkVVot8C2jlxptTQifrDL/1WSb12tMtKiruUyY8HY0DxPLOi8Zqs3V\r\nYw267eIYauW5LsIPRj1or0dgW/QxewcKulW+2TDKlIf/m51dyaGjFmoDyS9R\r\ngQVJyO1sLlqo83sFqwMdYibv4Yn2qME3DRHYUJSur3CsyzvqXtdcqSkl5nRi\r\n9iFeL/Uv3R4pzCSNUGRH4zIoEnxQG+wg6Sk=\r\n=dh1s\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"0a9e4a4d027bc972dd036582cbc94abd30d3cd60","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.0","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.443f63f50.0","@material/rtl":"14.0.0-canary.443f63f50.0","@material/base":"14.0.0-canary.443f63f50.0","@material/theme":"14.0.0-canary.443f63f50.0","@material/animation":"14.0.0-canary.443f63f50.0","@material/typography":"14.0.0-canary.443f63f50.0","@material/feature-targeting":"14.0.0-canary.443f63f50.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.443f63f50.0_1648249468979_0.3141679191879925","host":"s3://npm-registry-packages"}},"14.0.0-canary.eb382f318.0":{"name":"@material/floating-label","version":"14.0.0-canary.eb382f318.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.eb382f318.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2b16509015f7899c024e4552a8f153eb46426184","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.eb382f318.0.tgz","fileCount":33,"integrity":"sha512-JmGTKfBtbZ9a3euoSddgudgFNWlRW8tPvxdyy9RQXTBl5FbdjVaxC36eb5Wez3+Ofbj6dtMyRpFiimi1aE615A==","signatures":[{"sig":"MEYCIQDKT4aEjxhW2D/Uevj0orDTNPJUm5aWKwMG2T5CXYnUBgIhAJF+sbBsWXM6qPZ9UoXiwpKo8qPk4F8QZJ7rcuOeYhD+","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiQ0M5ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpRERAAj3Osaf6c7pVO7esQ/8fRl9V58Nc+yin+KZ+MQVxSTDrOWZH6\r\n4/mpO14rGLqhZlOwaPCmGcCzPYPjLCmAyvY0oUf+eX9gkfPTVEvSbY1oM/Da\r\nFg4OMnWSyDOU8bcWmO9M9Uew9g1uCfJxfMMgRx6awbO1GFGZHBRDHLtipOgg\r\nEF21QezmAv93iWHHUPUolOSFmuCAHfNBof7LycVDyvPdR7HO+ozf7jr5/blj\r\nU4BSBYk9km40KzqyiFnvDQM4dUMXYgSiZXUEbX2OkANDVzreY49PsoiRx8Ka\r\n8y1Rrfn/RIjvxL2M1QRMWoiAWg/L5gUMGlXKMB9qx1H68H7Ca11gQQAsBh3X\r\n507IQw3G/jOg7aMCCbZzsLzIHI/ewNLL0KL6h3/fHjGRHx7KcwY9tsZuD16T\r\nCNessneUCBBUNFPSDhZtsSP4/ZgMnmnRsrdN0C5VJDiKHdRJIB8PcGM6vIEk\r\nGa/AcciZ/Fw1x3eVdm7fNghP3IlTHRrbmhsWF+BD7H8jQAdYhoCe+ooKjego\r\nt6Cg9Vii8jvgBkjit+v0Diht0SeyPnOF4qo+CMrOGahvy3Nkm96G8Y6RCuZ7\r\no69Kqgb0lDZ7NwgopqCVcYGuIHh/wDBawcLJ3gPSgRiHZ3DHThkfCizWkTbS\r\nDLm6WKGCNXnwzMIfiPC2ahur0mf9SoDoCq0=\r\n=K5jJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"9aaa59e82abd1f56fdb3d963213242fe4f989c89","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.0","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.eb382f318.0","@material/rtl":"14.0.0-canary.eb382f318.0","@material/base":"14.0.0-canary.eb382f318.0","@material/theme":"14.0.0-canary.eb382f318.0","@material/animation":"14.0.0-canary.eb382f318.0","@material/typography":"14.0.0-canary.eb382f318.0","@material/feature-targeting":"14.0.0-canary.eb382f318.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.eb382f318.0_1648575289253_0.20249304428397963","host":"s3://npm-registry-packages"}},"14.0.0-canary.344d52823.0":{"name":"@material/floating-label","version":"14.0.0-canary.344d52823.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.344d52823.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"86680c7815862b2ae27312e800e9657ca257626e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.344d52823.0.tgz","fileCount":33,"integrity":"sha512-YuTmBzmKDCSENH0+6s2pnz4qnhS8QuOKkFjCj5JS5lJq9ge09Y8EHVQ3gO0xTy5km7fYCpdk4xtCx+WmnUN8JA==","signatures":[{"sig":"MEUCIQCaHkNI17DYwEqLhKqYHVPDD18uipojrb2JIBNEBCfi2gIgBD77qjcNgwFMnsUI69gNVn+ho0Di7rsb6GXWdSgUBNk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiQ1M+ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoMEg/+Ie7QTwyxrkdhfD55hsy8+efhsbObUieOz5Vf2H+JXol9wfKD\r\n+jxYbJkx0UxkMBraYF5sTvjCcA6RBlCvtT9eWumX3Rb/C0yp3YiDVJSGsg3Q\r\njkGhpAy6cOurXVWySUW7CfceZXTtVOraj9IlQ8B1K4IeiLeyNc7PJU8O0RBq\r\nsZOj86IcF2pDCgq0f/DJIKLZ55W9l/D7nmxyzzE3YpJbr6E7ctsh+Tr9eLcC\r\nzdFQSb/4LM2kGd9xEVCiR2xPLozCGbjHLa41i/o+s/v51BdO37XpHS+UxIkB\r\njV2Gx0OZtncG99VycRD01T0ZZZswGKGANn06Tcu6IlIorkgv6tVuUZPQ4YMK\r\nv+Hm9yk8IMXqMXEio4NqG2ihv1+Q7o88zJ14YeGF4GaMh2kShT/pdK13Ipbr\r\njNi2rPjKGzONIDm5OwVdSYKd0UEgJ/OEHKfxu587VG49kaBs0AXUiV4HDX70\r\nM2E3K70mWTLwcOy/Pb4wui2kLuoht9mglyNzIyQS7SW6+6h9huCG29/mVo2r\r\ns4cdfA7Sct1/6fj7pZDaUw1JCmjkkjJhRctoP2eJc6B24JdsR4MITOQG5PDE\r\nnixPZ1Y5IIzO6CwzpSfmukw1MeXMx2NUt7pQpFdqsX8iruVWV/oq+mty2PWA\r\nE7s2iP8DBN2E2TPHnVppFU7Q+lyQcEu6WFU=\r\n=2drt\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1d0b3e3b77ca281daab88499a03131363e8ce97f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.0","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.344d52823.0","@material/rtl":"14.0.0-canary.344d52823.0","@material/base":"14.0.0-canary.344d52823.0","@material/theme":"14.0.0-canary.344d52823.0","@material/animation":"14.0.0-canary.344d52823.0","@material/typography":"14.0.0-canary.344d52823.0","@material/feature-targeting":"14.0.0-canary.344d52823.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.344d52823.0_1648579390187_0.5448078457076357","host":"s3://npm-registry-packages"}},"14.0.0-canary.4e372fb49.0":{"name":"@material/floating-label","version":"14.0.0-canary.4e372fb49.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.4e372fb49.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4d626a29bf328a764f51a446e1e5ace5831543b8","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.4e372fb49.0.tgz","fileCount":33,"integrity":"sha512-thRNOsA0/PCytuHTHzZgHsptmhEnJjlincsiUC3kc20ADytArE5TxnpH4hUTU4s36v9R2wG7uDjTIpydAm6XkA==","signatures":[{"sig":"MEYCIQDgjS5czpp+17oymNdwEkP96GjbSb98afAwqjy6esOkdQIhALhBBVQBJzYm6lC93fTJb+2s3RwPiNM0jCZKygOn1RJm","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiT0pxACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqU/A/+PJX0oRktKGZYyYyt2yHs9MR1rMK2PwlBiakfh8Lz5BhIahM9\r\n8dooJJLaXI/LFZ+PzEyz7wR9rJXrRHiM7ayoWbtOMN3ysG08TRDy/ipgzeSu\r\nd/xCEk0R3jsPhBXLjQYpWJmWzYMTFjKgW3mGZT+wBtq40dImV85FByRoAvKQ\r\naNU6+RP8UmNd6LsTsmEBygh+tRaZKaZBbZNWeTPqPDI/JU+0FqbUaHmxfS6Q\r\nCiolJchy/6go4mTMk1JShCjIqZmyM5wZQo1GztR9V/4+ib8X6soNE+EjwqrU\r\nJRKJ6CnhdhYXmp3vhPG13+FF94hrmQJ1e8KT9C/qBCU9rLo6GbSf8VEDMbPX\r\ncSbnXEW9fYalxz3VtZDcgcbUc3tn3sYDVCIBRvw80HyrzSPUC0mIyMrJCfGt\r\nKRUXJnbvbiLMSO7KgB+zEb6qARGxjx1TKq14fVMP7RcKeCxbrSrajvZInzhK\r\n4UbaZQ8r7esNtK3qCTlUpmztpxVqblGlde9lYKZdelpnL9u9xoXZlsVJWptg\r\nYwNnO6EOKsRT4BxGKaSn/2u70lzi4vZG/dHPO/KgyY2mH0nUVYzBh4m29e1K\r\nspvpjr1q5UemCcw0cknrmb88hU4fslBtSsPyfnYlD32XEFm1D8AOlaXVmMv5\r\nrQEWJiv5bs873LOT+NJucdB2mzr0wcgHCjE=\r\n=u+7Z\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"013d3cd7cc6d83c59581f40ea832529343f43047","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.1","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.4e372fb49.0","@material/rtl":"14.0.0-canary.4e372fb49.0","@material/base":"14.0.0-canary.4e372fb49.0","@material/theme":"14.0.0-canary.4e372fb49.0","@material/animation":"14.0.0-canary.4e372fb49.0","@material/typography":"14.0.0-canary.4e372fb49.0","@material/feature-targeting":"14.0.0-canary.4e372fb49.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.4e372fb49.0_1649363569104_0.576320851507613","host":"s3://npm-registry-packages"}},"14.0.0-canary.3e30054fb.0":{"name":"@material/floating-label","version":"14.0.0-canary.3e30054fb.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.3e30054fb.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4261a6fb4eb6db4bfabe7d42e810a79200c8bed7","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.3e30054fb.0.tgz","fileCount":33,"integrity":"sha512-9tnf9SsYPpbV78N2ky+3NFjrFi/hCVDLYJvkLO1MXPZeGF3hNHi/ZG9x6bPSC8mBnH5x4bBGcWlazvmbJUI4yQ==","signatures":[{"sig":"MEUCIFWdCOoZNNrFPRbCcRccKkvnrSBT+3Yn217x9/hJiWbXAiEA/+jcEoJ8vg4LpLUtkGVhRAKw2ydZgRg8zSDx6XL9Nuk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiV0sxACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrFZw//bwLyfDsPCv+MBJYWIuLY+wd1zkQExLYmKZhMtYUQJnOJDolz\r\n9g7fEZdn4qgsx3f/d/NokCJB52StxWg56vstgPjr638rxXr/q+nGVCQXqi4v\r\nLtLVWPRZoHEY/z378jVrDxInReZRzU1f9mqfkLg475pRlAOjBb/wr1IA1sOH\r\nQst5wFFUjJOh4Gcm4qiw8IG8o9xUE1WL2PJf6qFZVgnWutfpcQqyEaaN+HAm\r\n/mxN3ht+mJrMiLRofLmnIca3uhIp34REzNueJxB2vO40YiHzJsoACOy4TGea\r\nnxwnQh4IE5LFMh3/hEHS+SQQZTEKEKp+56EHqwTKcWjhAhYD9C16sST2c0ez\r\nl8zg+VBNB6h+HwuX3KKv/Ccn5f51qgdwPecV9bKT4wE4Iqv1PqWCBax4HIb4\r\nS8OOstLPBrbTrbFCyNCS54fe6d6z7iC0Cff8RoRTlaz8GF+VwQnlNcffJ74H\r\nJjX6F0wnAlwR2dt+Vf9y13FqmUKYxKr2f1UxONf6uQRZPLVx57Yp0tqdDJ2p\r\nwNDVaj5eAOoGIwUCeRXYsPR4wcsPQZEW4fpY/PZG8tNcX3ah3m8OoMAJJi10\r\nEplhieQID9FDkk+Twgm0EfXE+O5na2FlLK8QPu6eKAyEkZuuuSmEXYDNqUqx\r\ntAA5AzkgB3pOUTems7zWhqnnFv39gCIggVw=\r\n=s1Y6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"04d79139861b90bf3488ab3f74e4bc33e6af1c8d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.1","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.3e30054fb.0","@material/rtl":"14.0.0-canary.3e30054fb.0","@material/base":"14.0.0-canary.3e30054fb.0","@material/theme":"14.0.0-canary.3e30054fb.0","@material/animation":"14.0.0-canary.3e30054fb.0","@material/typography":"14.0.0-canary.3e30054fb.0","@material/feature-targeting":"14.0.0-canary.3e30054fb.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.3e30054fb.0_1649888048784_0.6989111708404847","host":"s3://npm-registry-packages"}},"14.0.0-canary.8c4da223a.0":{"name":"@material/floating-label","version":"14.0.0-canary.8c4da223a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.8c4da223a.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ada38e24a1f7acfc02cf64b77047deddb5e8ff6c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.8c4da223a.0.tgz","fileCount":33,"integrity":"sha512-N5yxFw7ZuicVcI1Rc+W7RKWps4Im/072+xH7QzWcwtXqARuhL8lUZ8zBp1tdZU6BQP3okKZFmglezvNz5km2Xg==","signatures":[{"sig":"MEQCIGQDfQ69HahFq95iSkpWPM4o7aAGZACmY3tq2MSHl/y4AiBO5c/x5U0KqxaKxKy4UADMgZvZgZyPqFTaKoP7P4xIrg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiXtQVACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoyUw//SEJlGHytlY85Yc1+gueL0Y28mBLtiHCDuWwgvTsIsX2lURp6\r\nkbHPk2HWx5vj/4g3PlYe8CRk/fL+S2agQRutu8/zUFcVLos0vzEByXhI5Gfz\r\n8lAGBz1QvlMtVYLQkyV0W1lRtLhvtNLuSwTftNe+1lgOC7mrRGl/4iBSNGjE\r\nMpgsWs+Utah7V+JbLkVYUDl2uU7D0F5oLpmYEQG14xtvG1tSyzkrbSieNLF2\r\nbeSvfHPV/PrF02CzqfiWW8iDIhy0yqllScuCNGEunJFYz6RJX1D7YCsBHTrZ\r\nljbKp2+T+l9amjrQDEmifEUPEAzYDGUHuKW4yTlrLTwUOKduwbSFzn6F+Rgu\r\n0HG5BjkDik0IPL3uBZ0Rb2OMZLXsXXdl+zdaiGeFoLeayLgugtVIvgWdo5EE\r\nViMSihWUFiJW/AutC/wbt50FENNAmzfbYa2J/1nVR2IXPp0iCZq+cCAoF2JK\r\n9+YsKabcOu8NsWsjlrvX73IEilD1dtNjGE7kdoSHljeiFkRhyrLBeBhfaJvJ\r\nD+TTafGmnt4mUxK0kTeLAef28g4ORlRHMibu5hS6ZlBpqBQTTyoz6YBg4Cos\r\n58x2F4Wc8owmPGUMjsnJyE1TYc5iSpT9iCs18yT6/PBAsTYxNtG+sQnka9eg\r\nsoQ4nrTTxJbeSKScOHfSneF2g9QK6FcK58M=\r\n=0CLZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a5f798a752de150dd0a004bdfc90979ab4185d1d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.1","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.8c4da223a.0","@material/rtl":"14.0.0-canary.8c4da223a.0","@material/base":"14.0.0-canary.8c4da223a.0","@material/theme":"14.0.0-canary.8c4da223a.0","@material/animation":"14.0.0-canary.8c4da223a.0","@material/typography":"14.0.0-canary.8c4da223a.0","@material/feature-targeting":"14.0.0-canary.8c4da223a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.8c4da223a.0_1650381844976_0.43335296946078516","host":"s3://npm-registry-packages"}},"14.0.0-canary.7de8965cc.0":{"name":"@material/floating-label","version":"14.0.0-canary.7de8965cc.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.7de8965cc.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c1464dd03040daf9ecb50f5bb00f9f0c2794d476","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.7de8965cc.0.tgz","fileCount":33,"integrity":"sha512-Pk5SzZYfZW9hmHVfjH7Zyco+Ct4lBX+3uojUiBeSRIDf4Z/+rAbjsYIKrdxA6mzX6GK4+yNe5gG4dulK63ocdQ==","signatures":[{"sig":"MEQCIBBJJZyLOqfzh86H42c45PDW8Ai0ytlI8kmEbGP/3Mx7AiA85E6B2bFOWamw4sbYPCvM69RLQKHPzGA7VaFfi4m6vw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiXxo1ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo8bhAAjVAPMwOF87sJqCDTD8yXhhCW91rktuL55LR5Um1ScsYDNb8S\r\nPaOGa4jfVcZsQ2P2SCTgQ2wfZvV1LNJAQUmrpMFiyxbwgOcn0nueHaLWfB+X\r\n3tfdIR82Owp3I6DTR1D4xSV51MtxntOtAiQvowAgKMAqyYc0QDalp2zxfR41\r\ny7mP72DIpwRNvlJOsc7bLH10I3hmx+ohcoVOppWZqrxw07DOwcXNFGMa0lGs\r\nthmxlpLzLwKrk2XQ2I4N3bKTZVMOwdGpSBcLsZ0zdF2YkNvACbDvYay1Ro6k\r\nI5kpqZ2r8I10NIscleKqynPe7X09jQzd4kUdqDY4opNcAbXLFgL9h6T0QrUE\r\n613KicjUOoj8Q+AqzHYCAwN/DesOEEPAuNmUdBpvvDzMcZ8QA79h0A6RilFf\r\nCyulTJ+glUwbXjOCw2Qx97sp/0VEIHhvnur9jl+hdq6lHV4cbmcz4H6M79S/\r\nNE9JeHSe7qKix9fNZRIgmCzeP92JEKK78k/SM7yJGWO1uSqSD5w4HWW7xDxt\r\nBCRPOK1WYu4HZefI9O+fGGrVcBUPZTk6Qq4hnNp0CGVjPBMjOpNZ9LwGdVsx\r\nO4DfE6soLOskNkXwzLRiaz55pUQxX1i/v8pEFYrDRYLCcMfJ3sMRs2RF3J33\r\ngf3upjYeAZ4GQuebwWLXu76GJardLBL+Ucc=\r\n=u6DK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"538ae755c197f0d9a1fd3a2cab5000c498987584","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.1","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.7de8965cc.0","@material/rtl":"14.0.0-canary.7de8965cc.0","@material/base":"14.0.0-canary.7de8965cc.0","@material/theme":"14.0.0-canary.7de8965cc.0","@material/animation":"14.0.0-canary.7de8965cc.0","@material/typography":"14.0.0-canary.7de8965cc.0","@material/feature-targeting":"14.0.0-canary.7de8965cc.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.7de8965cc.0_1650399797068_0.5374430275389808","host":"s3://npm-registry-packages"}},"14.0.0-canary.641ed0851.0":{"name":"@material/floating-label","version":"14.0.0-canary.641ed0851.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.641ed0851.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f5928df118c45711525384a8db60ebbbfd8750a3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.641ed0851.0.tgz","fileCount":33,"integrity":"sha512-P2aH2W/7KUHkLSSRc4mKWh34SvdIfr887vnGCyLprFHbS4Mr1bN/u5TosHnP9d66QkLnIXRGpeDiFMZiHZeo4A==","signatures":[{"sig":"MEQCIHTfxrK/VJq2kpzQUgkHaf6JVhYc0D34ifjnklDBq/BnAiB85KjF5hLzlpqytlFfwxx+dX59HVb8cxIyx9BPqVhB5Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiYC9PACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqbmxAAoVJnwAgjYBUJIkMOLDJHfzsI6SrT3B/ndK1jqxIrU9hE8zA/\r\nnOAm/l4wg3vXichkqt/FogO0M3HPYpG/oEEKYf51hrpSYVM776HXBVhYASL9\r\nkBWZvOyTN99IdEUqTfjLM2faYTrEc7hePNcmOKYzTi+XGD0aGvNDlyoQegnf\r\nNyKFYHg+0hGx0exNr4EDVxFEv+Wrszw6tf/6pTRd1ISx9bajHFmU6Z7yyeKc\r\nQMbAdA9iRA0Y31Pe3QV6DUVz3hSDDOSNZHPXwpt9GjQkAZKrMedG+tWlIsdV\r\net382XUrvvw0zUFNEqmU5E2TTyvpGIof+aBBYkna5af0pZ7Lt4sxnnqSXmnd\r\ntHBxHACC1SCET5shzwFzfJz803N/CtoBuPtX0/93I82l0zevuByTajHPkIZY\r\n+Hh42LxKEJ8xp0b42GOXV4Lgj0EgB3FRY3lFStNCVPOVqllHwq3Im3zJhfmO\r\nD9fWR7SgSdzjV8RaJDj3HOVO6YC3yZuC46HwXsQO3tyI80IRBpm9hmRbQN/i\r\n4zbPCpwPH7CYOA222YVRsZldIyx8fWWWUmmIWG1/W8ObRyies+1bluouNlxu\r\ni8yZWEBuryjdRALRFGz/97Tjd5oNOeUt2oMrui4hn9NxURYH+Lht6f26+/ua\r\n6s3tfhhG/2qBkenoiiojPdKSTzlHqZ6g25w=\r\n=pZ89\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b45ef0f6764b2048f5027d4990cd48d6bdce11ec","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.1","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.641ed0851.0","@material/rtl":"14.0.0-canary.641ed0851.0","@material/base":"14.0.0-canary.641ed0851.0","@material/theme":"14.0.0-canary.641ed0851.0","@material/animation":"14.0.0-canary.641ed0851.0","@material/typography":"14.0.0-canary.641ed0851.0","@material/feature-targeting":"14.0.0-canary.641ed0851.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.641ed0851.0_1650470735647_0.8745251328736574","host":"s3://npm-registry-packages"}},"14.0.0-canary.e88f83024.0":{"name":"@material/floating-label","version":"14.0.0-canary.e88f83024.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.e88f83024.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"50352d84b19dd754831e96b5852ec80d7c2a18be","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.e88f83024.0.tgz","fileCount":33,"integrity":"sha512-k+P+r0Y31AB1923xD4srn6DgsAvgwqNRRrCaSIsFgfVBla3pqiBf2qKRCJEr+Ihdd6ofC2fvX27eP+U9nMSIWQ==","signatures":[{"sig":"MEQCIFkvfrJjflDkXTYAIJkdS+wzG60o800gwlChTfGT/B/WAiA2IaQdFUjDn7ZZAuCzCCLXixAVvqz98xsSY5CMNyF2iQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiYEc2ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoHxw//TKl82nUlA90RwzhyiTJMClCicxBa313UV6xWMfdfsd9mtOyd\r\n7TUV4bTE2lCSm+okFVL6bkFWSagbrr6k4Tppns8NUNiW76681TACxVeY2sw/\r\ns0tBcQtGO3rbLazRzTAFpJnzkr5dyC/3Z0FqdIzUapnVhE+XcE3dieFfqIBQ\r\nlgLwMSVyxp5ZeodRK8ppG9Zhm3mS9+2J+4qH1kERTS82Ufh+1ElLr0OygCVm\r\nk19URbkMDkGftdUwJGp9cok44UigdkgXZgMdkDXaEW/bfftajBTdAK2heuEB\r\n+RdOT5GIHgiom/LzEH+6DTuKcALis3NcSMzhPBL8SWp+5E/I4MllTx3KZE+r\r\n4FEUB12B5DuZcbXMs5QbNpDI375MeScZwd2FM3qkmZQ+4NXXt/U4KyZEj1AS\r\nMrN9fdfTaoRFfThn0qTAyb/MMMGTFOl6Y8IWdwgbon87COmK5EynCajUeeEF\r\nQT7WhZqjKAcph6+PeyOqOLRgifrN8tHHQOk/hz6Dh1sbMd/HqDheokpPH/VM\r\n4D1xtAk/yKqnt9viEZy3DPlRWGeVkTj28ZCdVMuaIlNHudnZCHx9HaSVREdm\r\nEsA84yMZq5q6Qutp9/MbG4zvEGRceAPwKP4RLy3Cd/BeEy1aP7HjYBMhRKCk\r\nJ+wIQ19tuHYQdYPyTYvda2eZtJw18bGw5zM=\r\n=sFAS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e9fdf51ad2ddd3dba754b98348bc356126b5640e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.1","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.e88f83024.0","@material/rtl":"14.0.0-canary.e88f83024.0","@material/base":"14.0.0-canary.e88f83024.0","@material/theme":"14.0.0-canary.e88f83024.0","@material/animation":"14.0.0-canary.e88f83024.0","@material/typography":"14.0.0-canary.e88f83024.0","@material/feature-targeting":"14.0.0-canary.e88f83024.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.e88f83024.0_1650476854364_0.8005022472045249","host":"s3://npm-registry-packages"}},"14.0.0-canary.7321d6254.0":{"name":"@material/floating-label","version":"14.0.0-canary.7321d6254.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.7321d6254.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"58c4e7ef1a604b64fd1ab1eae144a7a9e5fa3572","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.7321d6254.0.tgz","fileCount":33,"integrity":"sha512-yHnHaoh7z1ed1EgsuqVq8Cj+MqNNBNLqegIFeydkGIsemuBmXWj7p8pwV1ngINBWaXebkUsVeM6YYgNSVB/kgA==","signatures":[{"sig":"MEUCIQDJkSV513H3Jy0bVTszv43nb6yLxpRifZ54817AKOmlkQIgQxZQ0vgBhKHpfrIWSuSDaaSYvkiJyqpn7kjRM92tjos=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiYGjbACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmpf+A/+L1Ud40IrBAthGoN0Nb7zfhyBG6cE6c8wR5uR1v3JTcl9VMUp\r\nmuZr6Aaiv1SdzmT/H7pyeDdPOAlVc41dLBsB7FmuPbfl27Pp01YGB8zVvHGP\r\nRGhUWrqL4VwX/oQFu4Wp6apCSEDsNEk21sr6kZSB44btfX2i+t3P5ihHfPmq\r\nl9uvbVc5d9+gRRZwsScolZzV4mtkYuFFlnt2A97WIllyO6iVL2Y6NvRO15y5\r\nhvLp87JiiersDowCy8t4ie/ItZMq47l98xe1fDDlwPQliA9XwxDwBT083pir\r\nGZ7qGwLe9zHQbOuG2UHfTMgfcQOcFIugipvIRWM4RKyphEwnBo+y1gwVBSYy\r\nn4Z87BViXyPHxVyClj+lrNKjX9ZqLedI95FjITTxkI8QKYhLMzU8KlhL00Yj\r\nGSwhXO4ex/K6rIa2XNZ77Xj9ky9YWPXCYkmpuGw4+8tf1DZdBJl3asHX/mZt\r\nwg60KmHYJQs42F8XJndsYVXjlDAZrtXPR+BlRr1XX2szvb7fRtkxASbRTnE8\r\nw4pssxCav+bHNIdueHPTJVy17/PtBWNfwwwkGrO89r9IxL9dQRszeTeNH2Ni\r\nr5cFawowu1PdZT6VmA9zSHGAkxk6ijOl8ezIPW6rLHlfoV+ZtXkhGFQ7cNRF\r\nhrc7jhQCZawbl1lngSC7np3LtVNr8TuSrDY=\r\n=smJd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"981be270463043c4b45845cdc3efce353eb53b30","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.1","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.7321d6254.0","@material/rtl":"14.0.0-canary.7321d6254.0","@material/base":"14.0.0-canary.7321d6254.0","@material/theme":"14.0.0-canary.7321d6254.0","@material/animation":"14.0.0-canary.7321d6254.0","@material/typography":"14.0.0-canary.7321d6254.0","@material/feature-targeting":"14.0.0-canary.7321d6254.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.7321d6254.0_1650485467477_0.38898070123052775","host":"s3://npm-registry-packages"}},"14.0.0-canary.3ab956515.0":{"name":"@material/floating-label","version":"14.0.0-canary.3ab956515.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.3ab956515.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4a863ea1de21c5b988d75cc3a5ea4a12d73d6f55","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.3ab956515.0.tgz","fileCount":33,"integrity":"sha512-Xfv3cQEXhlUkjgZVdvsrEQYUsCw7+djhECqe8v4R0CNodJHl5QZhydi3Bgyw8+mya2thr1WbNnBSsgRSOPqTKg==","signatures":[{"sig":"MEUCIEA9KJqxkGMhmazZoqtZSM1XIPlBa9EafHgqmupK5TpTAiEA8LQK6RKf92mCMy73VM48S84d+lwjVWlutYC6iPoNq/U=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiZrfaACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqcIA/+JCksM15J2C0pJmzYcsguAMrt6uuxrmBA5y2DdHW+qvS8TJq/\r\nUPR8S7Rb35gT1VdFAGhhmt+9cffFHGYv9DpabcdC4rkRmchhpECIwSdc2/aN\r\n0rSyRk6AuCIfNj/IGWWV8XXBOXh7iXa9SoqJElku0Ptvpcphbo2s7ZhtsPIl\r\nTDwHyhWTex5H9YGI839S+cjfbC3WRPOBneL80duUdZ/2E5MVYHS2OBMuBUKu\r\nHG7Pod+PLURK57pcqg5wFfkClXQPvOk/irisQG6kfZtrbgcrhsD14XikFDNc\r\nc0kFx0kwCqXVeATJzYW2BqMCePrp5pzH2KJgwmvodi57Q7XjpO+4T9EOlro3\r\nruNhEBuWR+gfoxmnd2aMNac9mvgZbWaf0a1IKl0RDPmX2BVXBDTpiENOTcfw\r\n8lw0i63UOESTYGZCAxyLp9YQOLO/xSETdFTS+/C7ykxy3GDNQY8xCvx4beri\r\nJhCNFsBLOfOPSakm4+BqZzq+hCRFb9NwjmDNzHKiRAVoydRwXaBBYW5LCeY9\r\nE28AM75YI4BDFgNbPmiAJXteY6fEjcv5LsLyERv5OMqf1EG6eqKdQXB2V2fJ\r\n+rJENCkAPc54Xy2Pu9Sr/6J4suIt3f32udXeu9MXglPOOjwDXSNjA0/PMLhz\r\nd+6KsZapckNETbXnxKDXlgv05ssUXl7Rc78=\r\n=XVGn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a09484c5e8d50e8b042d5367972a9111e0432c38","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.1","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.3ab956515.0","@material/rtl":"14.0.0-canary.3ab956515.0","@material/base":"14.0.0-canary.3ab956515.0","@material/theme":"14.0.0-canary.3ab956515.0","@material/animation":"14.0.0-canary.3ab956515.0","@material/typography":"14.0.0-canary.3ab956515.0","@material/feature-targeting":"14.0.0-canary.3ab956515.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.3ab956515.0_1650898906327_0.6543083353389365","host":"s3://npm-registry-packages"}},"14.0.0-canary.53b3cad2f.0":{"name":"@material/floating-label","version":"14.0.0-canary.53b3cad2f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0-canary.53b3cad2f.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"cdfb00ac092b455c49eb25558d3afb992a61f624","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0-canary.53b3cad2f.0.tgz","fileCount":33,"integrity":"sha512-gHZUTTVKnP+Zjz4l9IT/G89NPmypn5FlTGLWKKqXbuQphr37rsKFR3Y80SJxULRyMDnAdKSxuZwiXLFKQz9KlA==","signatures":[{"sig":"MEYCIQCTrufJHlLVfBvgl9+slPMJCqAQ8A0sLvh592nHrR8wfAIhAJdcZCmSM+EGxtGDIvV0c7MkPLoEHFaTYSW5CkGWQETX","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiaTraACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrV1g/9HLW759jiU24sQXaSSbkthkr00b5Ljg85kMjkYCkhNf0aDlIH\r\n/d4rbdRfgrDZsUic+tfw0qMRL1k6JYKSL4ABL5uML/eE0rc8R0cu1oJvRyqY\r\n0s7iUXLhXQR704pXovVtdGEZNG3rsLiIrcrhOmzhqr3UDhY9dbH3+NPU1vSe\r\nPmBFqcakiNVJBnvSTZTvm05EubQeuG7D5cOW+Z8lIBcGrx3yHx1naqWYg5H7\r\nOOmDGNYUQqJa0EsfCM3mOSNrnnjwdTWkV61WkePq50bP1rd4qKMUot5Vb/F4\r\nnQ4GMIUGy0OScQTSPHNiPv3jmj+6N/zM6d0v+jvR7qBLgENxUrGTJ+eHIqAB\r\nYLSVr9bJoDSGkbPnliJ7Q5GzThVOWezeSQeVe2zpIEpSnQuCzJouN6jsW+g4\r\n7h1t2ebsg3gn5AxMzNGJd3ao+ExXiWpe2I6b/yiXNdtwYxDI1ykY1/gywpdA\r\nBNKOAFgdG9sYp1+JOONNaY/XphoBd9Ie2hckIFdKdifHEGUyBqi3rCDnN24w\r\nLkq9GdtwYvI9rOTJlp2W+imPsG8TIjE2jGjzHLKA4cv/0rhhF41x2I4g8udb\r\nkgjjSwRA0mLeu/LzRqLMeMIBe4q0ubbffNCUnXAWfyONTKnrp2QCwqH42VQQ\r\nytXWSHj/A6mgVsN4xNUg3LRUcZjJIYPWtdc=\r\n=vT1L\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ebeda2e23436103241b0e82afd57b60f74599133","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.1","dependencies":{"tslib":"^2.1.0","@material/dom":"14.0.0-canary.53b3cad2f.0","@material/rtl":"14.0.0-canary.53b3cad2f.0","@material/base":"14.0.0-canary.53b3cad2f.0","@material/theme":"14.0.0-canary.53b3cad2f.0","@material/animation":"14.0.0-canary.53b3cad2f.0","@material/typography":"14.0.0-canary.53b3cad2f.0","@material/feature-targeting":"14.0.0-canary.53b3cad2f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0-canary.53b3cad2f.0_1651063514171_0.5153599746068558","host":"s3://npm-registry-packages"}},"14.0.0":{"name":"@material/floating-label","version":"14.0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@14.0.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9314f26798090d806f3772360bd694cba19443ce","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-14.0.0.tgz","fileCount":32,"integrity":"sha512-Aq8BboP1sbNnOtsV72AfaYirHyOrQ/GKFoLrZ1Jt+ZGIAuXPETcj9z7nQDznst0ZeKcz420PxNn9tsybTbeL/Q==","signatures":[{"sig":"MEUCIEC8sj717PVl7IK3TxU359ak76S3qKV/RImAD19zlnx1AiEA9LXUHvx84baI3B7KvLhpBBo1//GKe9ZclWUsAu510iE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220309,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiascSACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmot/g//dF5Lu9IT+E2CnG0Kw1tKxLJlr4j1ieWFwUD+E1/FzyX+P32W\r\nEPAKG26vEpdGS0P5PjhMh3PpZchgFFuCgF9s/Fi9LgPjaW1twS9TsMSUbOdG\r\n2zWslDsw1vBRtf04Y5RpNJjH8kBXnxO3Gvi4+2OZdnesJZVXyajh4gXTQ7Bd\r\neeVD6NKPHGwmsdiwX6tSJ/4W2UVM3xRy+p0yU5c7tXFymJm2+Xbz6fRD+6ry\r\nxmK+iWpRPrVr3fEl965PlMJfQnLZXEOwMi+FEs1NjT3fRMRK48F5hLyo03Bw\r\nyVdxAhj3OFz7KQpmuOERCO+9RxPlizpGuL3/GaJufxVYSonnAwCvFBKMl+Bp\r\nVOK8QKlTaMzfSlyN7y3T0Lmntf6+jfZj/Jd/FMf4rC5G7XBRE7BFTSu8gsMN\r\nZZnz1ETjC8WEi/dw5vExEWBFgqcp1uvz7XIsFoa3F86exfiZQY5pZnfgW2Up\r\nyoloB9UPAMH99jbYUcKuiI/IZopmiEBQO6MJLxfM/gbIvPP5qb2+QQnbQRTT\r\nKLMCHpzGUNhY+ZSSDBgLD7/XJ0R0ErfKWpnsXfsw+SJDEJ+ZABE48+zwH+ig\r\nyVIcH7vn0eekTBkhiUZTNGS8XmTjrIA18z66zPe3HaK+uzF0QTq0nupT3Ttl\r\n8ftrKW4a4DC702Sfy1fl1t1Fs5sSa6ZgQOw=\r\n=P3F0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","gitHead":"432c815e58d61a257742836f816cf95e271e6ea1","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.1","dependencies":{"tslib":"^2.1.0","@material/dom":"^14.0.0","@material/rtl":"^14.0.0","@material/base":"^14.0.0","@material/theme":"^14.0.0","@material/animation":"^14.0.0","@material/typography":"^14.0.0","@material/feature-targeting":"^14.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/floating-label_14.0.0_1651164945902_0.8759901491406301","host":"s3://npm-registry-packages"}},"15.0.0-canary.432c815e5.0":{"name":"@material/floating-label","version":"15.0.0-canary.432c815e5.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.432c815e5.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d7755786231757c6831e384d8d52e2abe395e93b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.432c815e5.0.tgz","fileCount":33,"integrity":"sha512-uccPSMEsGRIv/w4ZdcogzJ47Ut0EZTc4t8tjscgyIc4o/b5sz0fX8X3SSUP4joEpuBL467SKREcAIfBjSKdUUw==","signatures":[{"sig":"MEUCIQD2vlHSW/EN/LVnckHpPWimV4Y5s8S0QckFME/U8C4OJgIgAl+0YzoC+byNzwbxt/2znTxX61NWtMkgwgL4E0BBTqA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiasdVACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrfQw//R0psc1uMywG83fDize0zDYAB9KyYFZYSJGcnRA0PqkzFW645\r\n0pKR3LsUGPL1Bh/QsRmJEURUc25s+uXY73f4JEoYpcO8XPoBY7tveQYXkVQd\r\n737JQE8+KBUjaFIyYb8CMWmWpI61EsNWhSekx0+dCEXby6bJINEqHYhxCKZ/\r\nXkobKQfcdjWcOXt3Nf8UqfJLYYI1CMOwOMTJ6NWjmrEeDzdjVjuG2xkoWyMV\r\nkcwVPyUCixYxNVl3OwT+q75hj3yMwSLnXYAAV51XFnl1jekU89L6SrmzYeot\r\nzdVMF1rbGoty9wA8rcmXe9x+0I3yX/epuSuyMshKncGuxxZYUiPvqGtMCZ7m\r\nRosjHBt0K779wP/8wwbGus1uB33StP7NmIvhw/eolhk+YA6vniX0ev0ANpcY\r\nH8s8ttcTm4WYkk7Zr3SJC6jCQP41f91QYLpGinc9XK/XDVVHgHkLdtGJIXqP\r\nYDH/Ig9IoJOcMVQ0uz4kwgHH/P1g1yHXeo50gjbQ6Y7QQTm99K2hqDII7QjJ\r\ntOGlyzMdO6JoLQdDPT4e+1OydnWZvPvy5AzcXLdPW0jy9JQ4JbUcIwzaUYIP\r\n69srBKnU/3uNBCyymkQsXW4SvM4G/v4qYJvS3xUMlhMackH9KltCucFtXs2v\r\nFE/hTHMhNpm7k4DYk+yAHC6VXXWRYtr/DxI=\r\n=nRas\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"df8af7a4f190284cd9f3bb1756b2f443509424df","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.432c815e5.0","@material/rtl":"15.0.0-canary.432c815e5.0","@material/base":"15.0.0-canary.432c815e5.0","@material/theme":"15.0.0-canary.432c815e5.0","@material/animation":"15.0.0-canary.432c815e5.0","@material/typography":"15.0.0-canary.432c815e5.0","@material/feature-targeting":"15.0.0-canary.432c815e5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.432c815e5.0_1651165013442_0.675433996150756","host":"s3://npm-registry-packages"}},"15.0.0-canary.a0f01f669.0":{"name":"@material/floating-label","version":"15.0.0-canary.a0f01f669.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.a0f01f669.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"45966788a3199adc612b56d8bba0a2c3bce881a5","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.a0f01f669.0.tgz","fileCount":33,"integrity":"sha512-Rj7Y0picqWvdiRsfS/e/+Qo/GkMfL8VP6sS4uq6yKKL95J1pck3V8PY4T18Zi3NU6uPum9uwZ0pp42CZz0Sqhw==","signatures":[{"sig":"MEYCIQCMCD9bTgXMQJDGR1743f29dXeSE7lXShcYJLOjvyVEHQIhANy2/ENavQ0BAEMXEyXKNGVzlajkzPaSO9PC8yMY9RLT","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJidYGpACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqxCw//Q+xRFXem4FZV4I9stk88bTyMC9OlBS/1RiHffPzi0OpLKx2T\r\nW06Pxjyo+QgsLL1eL1hpEkwt7c4JYjmdJ6+pUP3Boa4FVcz9+buAvpIa0nvC\r\nVkoBQxf+AGmQ425tIzfc/9IR/0g+tUBiGmUunURN60cGt0uZjQRaFs7Sy7Kc\r\nzlexFHm0eGp/AnGz9oQmQJM6bO5Ue7evn8LQKpc/hAVz+2yX+XgYP1qNYpgQ\r\n41rqD6D9AzIgwAmm7sq6MzCkgAcVMqQJNL0ZOo2UDbQfVDH+GnW5ntVgj6DP\r\nsWQmk4W+OUwQ53Fqx2tDSDgjwtBBuNg3k2VTKRnSbRMeymxbNCIp1RKDpquM\r\nn54qnQAQyclcn3pJmUZGG5YAM7pw6WzbubQkStc8pO1C8oJtABayNnBLZQxJ\r\nx/nDwJqvl/e3HMAMAiT7qdiFV7bZN2iRBk15ryFl5tJ+DyXzC9Uk7W4Z0a31\r\neoEjn1wMcScNxjqVSY01OmX6LIwEf6uQYMfmITMmR28eaVXjpw6nbuwYJAWN\r\nI7PQSoardNsaODrpJ+m576X5ltjGNcF9bd/899JehdK3HUei7rJPvEQmf/e3\r\ng2DGxgtG/rh/OYq3/Ksm6jtmlGnumDl/tWdwkWnm3kyVa8yPucAodcjbmRNw\r\nmaA1ue3u9iWlvJ5TXXb5IWmx+P5bcJ0BB2U=\r\n=nWlZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"51daa70df3212a8d73c545c86ed1c57273d41688","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.a0f01f669.0","@material/rtl":"15.0.0-canary.a0f01f669.0","@material/base":"15.0.0-canary.a0f01f669.0","@material/theme":"15.0.0-canary.a0f01f669.0","@material/animation":"15.0.0-canary.a0f01f669.0","@material/typography":"15.0.0-canary.a0f01f669.0","@material/feature-targeting":"15.0.0-canary.a0f01f669.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.a0f01f669.0_1651868073382_0.663944107449846","host":"s3://npm-registry-packages"}},"15.0.0-canary.276cb39a4.0":{"name":"@material/floating-label","version":"15.0.0-canary.276cb39a4.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.276cb39a4.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1b30a284ee4bf5b666a5c52845558feabab218ed","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.276cb39a4.0.tgz","fileCount":33,"integrity":"sha512-ZieWsK/LEgEgZ9HjYEj6fmqyLhUyPM7eoNpZNEnLjgl/4GJpe1nN95+gXEV7qyzxawk4rb/wTr+hhRH8pw7MZg==","signatures":[{"sig":"MEUCIDfkiDljQIE216oXLhVN1QN6a3mizsBoFOrd7j6SaYLXAiEA1jgegyLOXHLpe6oKwoUCNmOTpzgUcVcaT1pF3dR5iIw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJidZOrACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq4qQ/+L2mtXxmy7YkdtIdMQQdhWIgX067ne/CuZ1UPPreE8mQ4UoyL\r\nawisywAVIbD3kgWCneRa5lTVXAmV2FWqOxL2d648PNQ6FfO2PlcFvMgi/JXU\r\nb2pIgrllAlBT80SWX1qqMY6OMdz+OQAZAH4hXfzVmnRJLNSUkbRH1BjKF5Ow\r\nC0x4voH61vWccuDCNnedg+TN61eEu2JTY75ipgh4fITG69ZnCXK576/WCPgE\r\nUsZc1N13geNLF5aSqnNv3wejGTIl89HqK3mtMopRLMLIlsPu4oi44DyR0NKn\r\nvPW8T1A4YdYaiSc6BSVqQmYbXhV9UqNg5ON0yZDE1pvy6xTNAZ1AkoEPRud/\r\n2+KxhXcWJp3vCd0YQ/YATsOWSK2dwLOlmL8b/0GRmfDk5U/yucJOG59xb8Sy\r\n+bHFWfe12MZhjUEek82PAdbKEJGgFvjYUP+SONr8EiVhKewMd1P00aqkUAof\r\ncW+Hk1Egp80BaYC7GIuyBg2OLxYgUvufkMPBNapJJrr5f+1qvq/i2mveoe7U\r\nN8mTeO4H8zCh8iy7AOG8Dl1CrpQ6U0D9CfgC7Koke34R97hZC75qRPMTGpdj\r\nqQSNmF4iNIZRtJbKyqOxc84VF8BemvTqTLoh8a3fA1de6MJsKUpyb3TIPfr1\r\nsWzAjWlLiDAq9voybOidWTs7PriyqhMb1/U=\r\n=nD/Q\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c57cd64760098925aff1fbf0bc2a73d32dd2bed4","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.276cb39a4.0","@material/rtl":"15.0.0-canary.276cb39a4.0","@material/base":"15.0.0-canary.276cb39a4.0","@material/theme":"15.0.0-canary.276cb39a4.0","@material/animation":"15.0.0-canary.276cb39a4.0","@material/typography":"15.0.0-canary.276cb39a4.0","@material/feature-targeting":"15.0.0-canary.276cb39a4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.276cb39a4.0_1651872683355_0.865964557673832","host":"s3://npm-registry-packages"}},"15.0.0-canary.4fe98ed70.0":{"name":"@material/floating-label","version":"15.0.0-canary.4fe98ed70.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.4fe98ed70.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2feb1cfc175212f30f8f9820815e01e6d618b0fe","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.4fe98ed70.0.tgz","fileCount":33,"integrity":"sha512-EBeTZ+P10nTy3xyj+CCbV+ZI15S3H24ci/0eHgalJ80dbtT52yIk5gwLYxZA+/052YCF/oGgGxa8/aZCjRHQew==","signatures":[{"sig":"MEQCIDWw+lqm8hEMR3rZaWA0fQDf6IIIbgAfCRHECteY2U9OAiBiS0M7jraDTk6PfmgwyrWeHH5RXtOEcuQkf0E2FazEmQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJidZlsACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqNUg//Y236pDwL/vDJUkjNgOao9uJvN6oOfh0MsP9EtS3t7H6RGUTA\r\nbDb9EC5r8EVMeCpJ7azHUgzfU+F8vvWQuHEA/ctP97fF7MVcD6t4cCLZeGP3\r\npQ7rbVExJgu7QM+5wmhxyELtkddxRGtc3wAOdJ2phscnRqQoG76JQIZokoCU\r\n/piAXl/wUxwc+bsOolR0dIhjOWQ3wg8AYOqKO0i04kbNheOQqOebx8pKFHtG\r\nMiKQ+QtmPWaRAxKe1nStWb+x65/QoAhSJM2ZN7ImpnB5uUXUiNODPJl8rLy5\r\naD3WEzmi30j2nIFC/H955liSqSDyiHW8CJh1RxA0Jxnlbn/dLwUd8nQgV+S3\r\nQ2hx2jZDXD+2F4gVhwUTxDqtco2RKVhRVoG1hqg9vF3BYofw5D10+lAGE/eb\r\nrHr29NF44cmakCb0VJeDDTJqYUgCtNMJacJmJ4moWlyWVj5XcvpWCkNnfoH/\r\nUTx9TFeB0/Cfx5euoN9h+mKI6rI2WrlgkO9GfqushcgeCdL0FB2DYb33Mpi+\r\ngNw1AXxAIK24FM0xygjEMEPHTSxhCXcyc3WxY85N1Pt+HE5oLslNgVhCFl7r\r\nlGtUHjdvdB8bv4Hs+OqZbquyBmkdvqkhJhcMblmZuYc2pi+oE2U76VKm6itM\r\nMHEMKZtz5zsZoIE/9NlCmWkrlRjOFaUvtBE=\r\n=4D1c\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"353fde061dd090ede4416fc2477bc050587d6367","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.4fe98ed70.0","@material/rtl":"15.0.0-canary.4fe98ed70.0","@material/base":"15.0.0-canary.4fe98ed70.0","@material/theme":"15.0.0-canary.4fe98ed70.0","@material/animation":"15.0.0-canary.4fe98ed70.0","@material/typography":"15.0.0-canary.4fe98ed70.0","@material/feature-targeting":"15.0.0-canary.4fe98ed70.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.4fe98ed70.0_1651874156031_0.13090080627835254","host":"s3://npm-registry-packages"}},"15.0.0-canary.58b130a3d.0":{"name":"@material/floating-label","version":"15.0.0-canary.58b130a3d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.58b130a3d.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7a1d940242f2886bf0341b3093795eb8ef7b58c3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.58b130a3d.0.tgz","fileCount":33,"integrity":"sha512-xwQWzFEcba+GsW9+5ZOeit2kwaPhhETgvZqfUD0a/auvjv9DQMVK99DulXrk01azVe8YruklBwvQi3SPxiaa4w==","signatures":[{"sig":"MEUCIQCsdjWKGIMn0BKbmeIenh2ZY3Bu/aM/cesmxTdPwHWvJwIgVZSAqAIquHvlaQk2yQlUwxhx/E+LS5kU/VvOvQUWEeg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJidZn4ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpY5w//cHtz7Q3NXY4bxui5YcGm/qLjeFnncjZLdNW+HAWM85lhfgiT\r\nHOUbFMpinE9TBxdoOCbiiLIkPvMfGLYwCVPKGlq6I4lNoWFBzJ9ZVhkLC65l\r\ndABNrG9nMFn0sqK077N7Ri/RSWaJ83AdWWfj3AqQ55S0R7x7pJfqaB8e1h8X\r\n991bAfQh6+OqfXpkHACBOB71V6EPuNn6ek+MSnCthgzFxcCPLELr4HJn9JA0\r\nR9VKfEL2od1pPnczqT/9Tc/Odqyf96xVSSIwuPpcMuy4AVGo65fkwjsWPOJf\r\nkJBWmTjOh2ssM84dAEz/LFO8B6H0iIZt8K6Vx1vMi7zdy+cYtvAM9rweRMXF\r\nTt2yXolhtgtyPR3ZMCzjZyn3yYmaru/tnne0nrBM8onfYoCXU5hLk2h93cdj\r\nj5ehBo8QSf2JNH6fLbSUdcS4cc2kZOPs6CgnizJ7a6zzQjWYHqKK/vnpWsyS\r\ny5IlkSc5MZB7lB75zRFGQ0gY/2UafER/Xjvmj1JuZjcwgiWACX0gDc1mMDAR\r\nrZv9bs2w5f4602sdx2r2tRKVsbiTikQdn8FbOwoScNXw/NwJ1Hn782wlQfoD\r\npOjc/0fcsVtpZLpv+CdnTQ725ogLbzKn/Zav+z5BRANGSOIYx8MbU7YUKeht\r\nw8s7w9gtTc1bLC9RrO1Nk8uLSYRGcP5bnfw=\r\n=27Pc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"58c8ada7946689a0a59acd63cbd49b6c987c9853","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.58b130a3d.0","@material/rtl":"15.0.0-canary.58b130a3d.0","@material/base":"15.0.0-canary.58b130a3d.0","@material/theme":"15.0.0-canary.58b130a3d.0","@material/animation":"15.0.0-canary.58b130a3d.0","@material/typography":"15.0.0-canary.58b130a3d.0","@material/feature-targeting":"15.0.0-canary.58b130a3d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.58b130a3d.0_1651874295904_0.6165780647500638","host":"s3://npm-registry-packages"}},"15.0.0-canary.ae278a2fe.0":{"name":"@material/floating-label","version":"15.0.0-canary.ae278a2fe.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.ae278a2fe.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4b7c55602117b860b9464a24d020bb04083e2be5","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.ae278a2fe.0.tgz","fileCount":33,"integrity":"sha512-NXWsrTiu+WE16K/Ctdb3r3CD0uXB+clPTWfmKb27/3KhtVy+GLPChYDJioqjLFqkNIaVOCzxzkHmDBUt9Zk5SA==","signatures":[{"sig":"MEQCIFxpjgIpbX0nQou3jXSA95K+1bezAcEsW7UsmbzIG2fkAiBFCcwS70V6QIJHlB7TmJkbpSvHOEE8eKRaQ7mUkWcm+g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJieTI3ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoLVRAAovYpogXLgYCuuwi5pc5DLWmly8A2IgjLBpV/DLf83e2ZgPNU\r\nQXhnapdUIOJNWr1Q7HV8JWs/VLF9iRubjO2tYBQfoT37m5xihKmhG8Tyj6QU\r\nNw03i/90KuPwUsNzU6SpNfrGqBO2MKbNLwqrhv2jFhS/fSzy0Xte1wvrBCOK\r\n8I7NIkAh1lI02PKDsQ9H6zhlCDMlqzKACN+agQObjiL/F0lsxJhN+yDrroOF\r\ns7r9MupJiTIbDWirdp5C9oh7gR4HhnLLhCeJN6L+4K89mjbgWIHuDi+8n3uO\r\n2O56OFpcVLX9BPMfOi8pcoS5bEx2WwwZsF6qRYvIWWV/4224j0GcRFznNWPT\r\nK3UcUhetzc4+aNKUvVMJQNEiXy/5PsB+SRUFL5HeDxa4WApVGlbDX8n6SDXI\r\nJ4orpO99VNHJ8I4EDPFHDuP9Q+HYgYENVbTiF0WWlJBD6LgdYb+7ZEALg+i4\r\nQ+Xm60+kQPAPiLTTfhB5A+4PwX3sMj+OTorwO95S8WH7Vdi6WlSO43Ve1FMe\r\nlN+h7ywLX0CmbKtoes03E7RQPrIBAhI+8IA0nPIVBqcAX5e0VUAw7OVBJNOI\r\n/Ox96ALPwxPDBTQsbJ3s4cOpJBqRcZduchg2AzvPr9dTPtWEM8rMZNOQSxPJ\r\n7hAYWbSiB9TJhOwl0zjWNGgJzX4YOhZb+gw=\r\n=ONiT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"bfd08e232a3a514dd5a38dcd77d17df365502ece","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.ae278a2fe.0","@material/rtl":"15.0.0-canary.ae278a2fe.0","@material/base":"15.0.0-canary.ae278a2fe.0","@material/theme":"15.0.0-canary.ae278a2fe.0","@material/animation":"15.0.0-canary.ae278a2fe.0","@material/typography":"15.0.0-canary.ae278a2fe.0","@material/feature-targeting":"15.0.0-canary.ae278a2fe.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.ae278a2fe.0_1652109879195_0.6907558124522302","host":"s3://npm-registry-packages"}},"15.0.0-canary.bebf5bfdf.0":{"name":"@material/floating-label","version":"15.0.0-canary.bebf5bfdf.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.bebf5bfdf.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"764498a83850da6bce906a0c6e65de23d03960e5","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.bebf5bfdf.0.tgz","fileCount":33,"integrity":"sha512-/RP7KouMV1OhCc/j0kOqgGn8eZUe/LLCxGUcvBwtHglbGowhEShuYrFP0elDFV2UQBwuAUJvfb+unsPVdPafkw==","signatures":[{"sig":"MEUCIBISBZzpxtvCZYoqyUSOEGdlFAqh4//rFNSSbNJDg/WqAiEAvFhQX8vlLcCSjLQ0F/8oLWmYdOO9OwSXY5WBZX5g7ZE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJieyINACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqnsQ/+IH2x1Tu+ElcyoYu6TQTJuQrhytXekHM3ypxXTEzXHRRRJ5oM\r\nnKvyDnSsFrPhBC3TBTYH1DtzZC1pNYSyp/u3C4vJOprTT0/4SuoQ89b8VaMd\r\nMI8d/JhMGRqOgwOogcYuIAXtqp20yFOYFHCsPmVTWi8mksIAKiaOQw4YCtwx\r\nNN8gWs56U3T6reYH3XxLvtphNLWQroAJwj1G+niDVlkjb6Mkr0qdN20vEFft\r\nPyOs+v30H8kXMXe5hLcRKHovkRC1B342i14dJtFSbIuutrFj05vjYC5JjuzS\r\nYygj7HecbcBoeO8FawCCdmcBejXyjCZupwzIuxGqBQSTG0Bg99UEaJMmC/+3\r\nFItk9LZn2nj2OZ3y2zJPXy2QeBAXyYbk4+9xcfFkTlqUMGsL1xK33e4lis1F\r\n9Ge27zLgxXP5+95s6xdELtfeoha1TEbDgi462eeX23XxhfduocmoOJ+8plsW\r\nBs28ps+WFLLLd2o4tflMTfICDOkTcRZCyNd1Vd3BzqZZ0tRhSY7dBJa0TfOB\r\n8jj/9bQ5JL/VDN2sQ6GGy8xW/e900o6+ciGTdxJpFEwVPI799zFfkZ9zIocn\r\n0aEJS5BNxPBSl33eKlnp35gqxeYAHA64VjWazgg+NH0dBMeoRRkJZpJGaGup\r\nrQun7Ri9k6EMyMtjMk2gcEICP/Z0FxtmH9Q=\r\n=BCrE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"61d3971a411616375c31cb3fb763fafc120c9570","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.bebf5bfdf.0","@material/rtl":"15.0.0-canary.bebf5bfdf.0","@material/base":"15.0.0-canary.bebf5bfdf.0","@material/theme":"15.0.0-canary.bebf5bfdf.0","@material/animation":"15.0.0-canary.bebf5bfdf.0","@material/typography":"15.0.0-canary.bebf5bfdf.0","@material/feature-targeting":"15.0.0-canary.bebf5bfdf.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.bebf5bfdf.0_1652236813140_0.03664660902905603","host":"s3://npm-registry-packages"}},"15.0.0-canary.e6072cd6a.0":{"name":"@material/floating-label","version":"15.0.0-canary.e6072cd6a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.e6072cd6a.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"41ca2c309438b136d86e8af0e6d82f8b9932c0de","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.e6072cd6a.0.tgz","fileCount":33,"integrity":"sha512-Cdc/7P0DL9ODh1hrdtd+M1x6HnLyFaGeShd4O3H7V/uQWycac6Zq40eVova9XM8WtQOrIJNMdUoAQKeSSNT2Ew==","signatures":[{"sig":"MEYCIQD0UvTnqVgiN7Td6kxwP1YmccCFPdG8CU4+PClX1R47xwIhANy7GEPkwmZOuxraNkxfVnSOYOPiDu8leLgVqJn5wlKo","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJifBoMACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqLmQ/6AgpsrVjLY6yaCGLMqafRjUmSmlvxZ6ydzmHnKoE2mRzA9wEP\r\nqpesTnVWe2xbrAWvVllPDpDSPYLTsxZgJOSr6dfdpsp6d2Y5X+p/EqUKBgo4\r\nAXr6iNHexo6PAWa8Qo5Y2UXK3TR0SaVhwrhB1taL4zQHMMfpPKcHOSaI5uH7\r\n0qPj5GDeJVVNmgdeGkArMf2ajqYuIN4LA9HupJfM9COAOI0h/PJDSrAzuHTC\r\ndmUK/vUQ/UyQlOhOEgMJPtybnhzmiC0LuOBr85uih/erXwX+DFQoBjXvUE0r\r\nMX+JUHkksfPDTtw3Db1Q89nWHoutQCqkmyrfPQflrzEv8diEyBd2+BOwTeDB\r\njUst3L+YdQnG6YzSlfc1LXpeai9fvn+me27trGnrefP/Lncy09rSZyGzOr2n\r\nWeK0T+BxXF92rgq+9oAuYTO8Fx/n2Bv6+1M3BZeiG9s7cAuQah+TT0P8mUqh\r\nKXeV1fiBPEJOoaBoIYm8xuWLPs75q0u79WvSW+yW9BLTF3DZh3EYzQiiGZ4j\r\nDPEvCYToDk7vRv7uxCNJox/ZuAR57w2xF0LsutT4+pIR1NexCIZ/nATK1GX5\r\nEEYcC0Ayq/K0SrCWhf+L49MxAARj0+BplYppHnKYwhCSwn1J16zJVQDPM080\r\naiZvmM+lmoYWc2ecxb0Sfpe2oyncSpdfZgM=\r\n=nBF7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ef2da678e66576709be19aed16a880b00e73a039","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.e6072cd6a.0","@material/rtl":"15.0.0-canary.e6072cd6a.0","@material/base":"15.0.0-canary.e6072cd6a.0","@material/theme":"15.0.0-canary.e6072cd6a.0","@material/animation":"15.0.0-canary.e6072cd6a.0","@material/typography":"15.0.0-canary.e6072cd6a.0","@material/feature-targeting":"15.0.0-canary.e6072cd6a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.e6072cd6a.0_1652300300630_0.7977552591692436","host":"s3://npm-registry-packages"}},"15.0.0-canary.5b40eb988.0":{"name":"@material/floating-label","version":"15.0.0-canary.5b40eb988.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.5b40eb988.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"262c56e7f392b3a523187c1f41f19d87e20a235b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.5b40eb988.0.tgz","fileCount":33,"integrity":"sha512-qOKNXrg8IUUxVeLmIzk8Qgn/Gv+5Gdw040lKbvpYgaOwHWayk2ZN66k223y2M20GyTrhWS+JJH8u3aI0TorCRw==","signatures":[{"sig":"MEUCIQDq26SQ0m57xwFzTuRzSxRhnKMyn4JHvoKi+CtIttgOfQIgMjy45qZUNVzA9oNWSr26za3vAaqZZQCebIZa+sF9SPs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJifHR3ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmokrw/+JMa04GBRIf9xP//1NE0gcwnvsZm6fpIZUh0T1vu2KmzDuhds\r\nmh4rJzPSBpSujkavePxMsdBupkW4pj9bdsnGZ76OELJJgVoWkUw86/9cXPU8\r\nzdpb/qUF3V7AtK1xT8f/3eImyavx07R/fMrwSoRsBCjKZggRex+GZ/ci1Ogf\r\nQL1/4FS398+kLBbK/4iWJK6GvOiGSioL5uKWqws3IQduo51uox1dVo/RoiFN\r\npjA5oT9fWfIi3w3diICpBL/ya2T8dLcNXHtQMaSR1kiBx9wnS4Q5iOM9mlZw\r\naAKU5AZMb+zwtBqkCSrCrwNnkwehyYvF3MrcalUOZt4Jdp++kn7fewjkDHfQ\r\nImjUnSte46tCu4mXZmufTVI/DmVqLTWvXAZ66WXf4/1LZqIER5nrO3Pmxw6T\r\nmp2dlD7MGNTxBZG8Qg1Myie17s7Ja+RuJFc5ulteo4F9IsxgIgmnvY6vX1Nv\r\nk+JZJ0+tEscqpyR3d6opKt+Eji8l3/V0cdGrnXB2g+AlYwYY6AenliTCBU9Z\r\nGHBhOIlsn1424shADrVpJTu3ijAH+r8uOVKSnHDXrYXxl19VmRTle9Ptxpfe\r\niL65+LtUKwLpWkPwRwtzk6bqpiTOH+Xar0GmVfkZpW3kHkCbaGwOv+s149Wi\r\naS62qnouPkW2zD3ppayOqdWzmFWLQ3W9NVw=\r\n=U6VV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c30f2a613c97ecb48fd3f9ad7b0677e51a156449","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.5b40eb988.0","@material/rtl":"15.0.0-canary.5b40eb988.0","@material/base":"15.0.0-canary.5b40eb988.0","@material/theme":"15.0.0-canary.5b40eb988.0","@material/animation":"15.0.0-canary.5b40eb988.0","@material/typography":"15.0.0-canary.5b40eb988.0","@material/feature-targeting":"15.0.0-canary.5b40eb988.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.5b40eb988.0_1652323447182_0.7428380043900968","host":"s3://npm-registry-packages"}},"15.0.0-canary.6a61d62f6.0":{"name":"@material/floating-label","version":"15.0.0-canary.6a61d62f6.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.6a61d62f6.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"30937537fa5fbb1f316f8a2701abb57674f5cd70","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.6a61d62f6.0.tgz","fileCount":33,"integrity":"sha512-ofjzTSZJdmUKX4u2JUTxYu9EW1WJlVbWtx5/XgAz775zcuQrh20FtVOyYNE47LBNQPQOP0jlPgsaiKrUb13JoA==","signatures":[{"sig":"MEYCIQCC3z/Qrf2eXSjanFCwzlpd6hQqg5BSG4pCt4KtwXeu6gIhAOCYMKpVyNgKTZGX1/3qz7dnvL6aKKTUiOCJLJhujb9D","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJifW2EACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqyrw//Q5EhH6n0A3vhDk6eezSv1CFihrbYwiKXAHr/PgsP4xetrjMT\r\n/hUJCkAomex50Ezo+RIcruuqaVwvLz0GIS79yyYtgu0arc8s6+HfqmJchRbu\r\n3oGRX8tHOh/HFZesRK46SjY0BzkDbHBLMJVNWosPoMk4Dx8k923rYmniwbMg\r\nEaPRI8OPkcJbvVN6thBjL4263+uNzoGgtbioyo3QAmTeb3va0TVxa3c9RWt6\r\nqAbC9DjpcLQP0EDMMHMFUio1d44fjB0Jpy2tweMH1UMxH230ZEkbksQGXnGL\r\nzs1fKQBMixByU8lS/F5hKJldGcpyA6IMcQu9Mkp9v+vL113FFvFErLiNdzCl\r\ngyOOidQWjUo+AN2Q/NPm1+zx7PJnRoztxm+O8do7zJNKqsO37jNZ8XwAh0YW\r\nx0HvsjFdILKL2s5PwecXtkkNNgYTIzWg6mqcYPIJ71cOGasVTfJGIraaLqcI\r\nAVZCsYKu+75rrhW2AUjpjMpgJl5W4F1TfhGxiiXY7Sodif8lkwHbOYwcwkC0\r\nALcJHmZ11jBSYGKz4TG33zRAS/3BRcEUOIBYfWvME0PUlETizp2eROQ38I9J\r\n5wmqSJFUN0/sxXqQgTK8eJ/Hgi27wKfb0zPClHGPOc1o1BaJVkn89DlHC1J/\r\nSR1bNB7+R1J0neXJXCHOaqIwABY4Aws9ERw=\r\n=BEgX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1d46f0951ee9f725b870919613271f00fcb1b521","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.2","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.6a61d62f6.0","@material/rtl":"15.0.0-canary.6a61d62f6.0","@material/base":"15.0.0-canary.6a61d62f6.0","@material/theme":"15.0.0-canary.6a61d62f6.0","@material/animation":"15.0.0-canary.6a61d62f6.0","@material/typography":"15.0.0-canary.6a61d62f6.0","@material/feature-targeting":"15.0.0-canary.6a61d62f6.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.6a61d62f6.0_1652387204575_0.13757459442105024","host":"s3://npm-registry-packages"}},"15.0.0-canary.05930a453.0":{"name":"@material/floating-label","version":"15.0.0-canary.05930a453.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.05930a453.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1e09aba1b75c7bf7de1ad94876033a0fbc9acc21","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.05930a453.0.tgz","fileCount":33,"integrity":"sha512-QbmkifNq6Ml5FGnFZyrxZWXfBA4dr1TlaE1DiIZW/fGTNQX6fynsZzfXGMcTDB8YmmsuL9VajowuVWTLDj7Wsw==","signatures":[{"sig":"MEUCIQD+npqWp7qAo/O0rmoigfVtEU1MzoUkZDgBRV4MGFT6tQIgGiav06uLdt+/aDXsfULvziyD1MUaYZJHokqaxEx/HtM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJifqe6ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrZJA/9GualVf6QIVDzytZBiDSXNpvom8nSIpWTTQU6gyQG9u40UsQ2\r\nNa+XRmRLnggfxIYl5oCOJhs5Plxht1JxJ0+YKCEVHG4/ztVj5xw7NPls9ga8\r\nvWI1uIfeGJLYaocShlUFc/mIheJP1IHla3kgB5z1ACO1wNRhdX5hz7pcaKy4\r\nPjZnNvxvlfYTTi2Snt1qNLLQRABqgGUXJoofMDUxXumlV1wkYET8O4Li/xoX\r\nYFbGkUyDB3gfOaNy+YqZattZYtCcs/F0CTr0g1G9ntNQFARLq+bp7GeXxm9n\r\nHtUe7DDU1NmuE0hNCMGwyhzg1frWth6ms9wjyM829Pv8zP+7z9wiyIIIxgz9\r\noNsoJSChRxWeQB8HyQRdbZwo6uuJDVlLlPDrM9Pj3J680e7uYExeBdjolHfM\r\nYgJ1o4nq3fMKkED296FkmT+TBDExzZMykQmEZdStH7gMPFO5eyTA3Q+5V3Hv\r\nl+HlK6FNcehhXdVbtGqfRJj67OztpITqJuXFpBZ+05WdT6Ncpj2CSVS5qpvX\r\nHBcprxStdXafGyOT2jRrl442d6mcjTj8AIqm6RsIJ5Cg8TwBxoDrTaeq60lK\r\nkR/ZZ6uyjMXmG4xDHJSTrpY65Sm3S29oiCVlU1ri4IkRG1mCBRmSpWI2ZcT/\r\ngUoj5zymFU+T6Ab9ogI+oXJkElYKyqmycOc=\r\n=eqTA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e6dfc2d0553321fbe47e71fb414cfc1152b0ef8d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.2","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.05930a453.0","@material/rtl":"15.0.0-canary.05930a453.0","@material/base":"15.0.0-canary.05930a453.0","@material/theme":"15.0.0-canary.05930a453.0","@material/animation":"15.0.0-canary.05930a453.0","@material/typography":"15.0.0-canary.05930a453.0","@material/feature-targeting":"15.0.0-canary.05930a453.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.05930a453.0_1652467642589_0.49958717647710715","host":"s3://npm-registry-packages"}},"15.0.0-canary.c0a11ef0d.0":{"name":"@material/floating-label","version":"15.0.0-canary.c0a11ef0d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.c0a11ef0d.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"cefa6befb0e1506464cb0c6a1473250b9d23bf27","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.c0a11ef0d.0.tgz","fileCount":33,"integrity":"sha512-dwsJhs7w43m7skBq1wNaa8HafHj9q3T3FYJY0256AmU2bKBMVexot2ayeY2zDrh1ewzbJwTRSK9dtC09163PIw==","signatures":[{"sig":"MEQCIEc7SBJe0rIRLWgFS8Tj/4DxVwvkV3aBZpJBc8kSBlTZAiB0Gs1yc5kfDjdFLwc0aojG+lPebZ4tAoQ2pIVzn2tY+Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJihWyYACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoDTA//RaPX8CeFVAgfMQ63DrBeedwnpm8LbKH4EWXM9exEFEDUHF3S\r\nYjeWHHlswx8s+maGW0qNIbdW+NIa0MTT0AQSG+n92pH27tA+3SlqbTrve9ye\r\nzU0yUjm8AWb6l5QphagoUXpaOKSyacfINXXdhp6ZJewCAUTNFEGjltwPnsV1\r\nNjhCf+aHebLIvO+7XJNqithZw/JvKBv44+tTgmiT34Tv62NkbV9dtNi8fAnE\r\nDhDJAgPp9MgHmir5mosmJJQOALDeZ+ZRdPsjej4LXYBkWag805EGz8H838SH\r\n7IAJ0uDoL6RMlWVi7F4cwYsurRaekPGpUkDK7yhCA8AOafaMZNxUNRPcOTE/\r\noJ7rp4B7/jBHcbrTzVYzlApXO7nmp2rXH4OjUqOEStmfc+Rm8Mxs8lHr2Dsc\r\nV8oE7h3b9ovPdv2vtJqNvycNacn71/d6CnmVR0NVx+idJGYJnLSCg3tX7Zgs\r\ngDO9iuo5+2ohZ3naItWDg7qK1meNNHeA5SI2cZ23U/3eXm0fEDWwQeU4nWpd\r\nHHhJgdcIkUKQ5cY8ZCnFk5C/rVGvheBqjL8OWAUZ0W6beOBVhx8kJvM3tiqe\r\n33gMY9fotTxyKqgSRdpRcWXofwQPonvb6K1/Z9QLEdxlP23kxiBkLkDq8z1j\r\n+KG+Buerx24v9GYZP9OA5c7/W7v7Zzfg070=\r\n=vkk+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a97df68c1dadba0530f5fcda79fb8bc3082d963a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.2","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.c0a11ef0d.0","@material/rtl":"15.0.0-canary.c0a11ef0d.0","@material/base":"15.0.0-canary.c0a11ef0d.0","@material/theme":"15.0.0-canary.c0a11ef0d.0","@material/animation":"15.0.0-canary.c0a11ef0d.0","@material/typography":"15.0.0-canary.c0a11ef0d.0","@material/feature-targeting":"15.0.0-canary.c0a11ef0d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.c0a11ef0d.0_1652911256030_0.609109114492129","host":"s3://npm-registry-packages"}},"15.0.0-canary.2f9b268c0.0":{"name":"@material/floating-label","version":"15.0.0-canary.2f9b268c0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.2f9b268c0.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1ae73781952dac4aba6d80a42a7afb2ca7beb48a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.2f9b268c0.0.tgz","fileCount":33,"integrity":"sha512-eVT7Ed+rLDtyHdFk96mHY4lWZ8QzQszM4dKajwMAv8lsuoXZP0ghHZEKhFodL12ZNS6ktFWF87sF2ZHJn2BK5A==","signatures":[{"sig":"MEYCIQCbfJMhbM6fmGf1nf0U3pR/UbPMrpFbylGQhrJshAiYqQIhAIEViho9Zbh3M/X/ybcoalSlL3zi28ZDwXZ9bL60YNss","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJih+zQACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpiBg/+IrdK7ebaGJJWKWhqVHhIxp7dRq4PWOq59WpLHvZ//tYeHG/G\r\ny49PjpWMVyON4U7cc89pQT//AmZaVYj2kkfis4CLImpktsXphXSN6Vh8J0ag\r\ndWNaPj/OmtXatfaR0zXz+0f/+UZDocDWgpvNnA7ki4//UypKKTxz3M45l6YG\r\nV9UW/BUXSZHIHSYf9DrI9AQh1fplVR2qWw5AzXWrnq/U0Qq/+RYAjg4NiCLD\r\nLTE1cbjObWzSE4L2BkO88pAuj3bRZQgX7B0b5XCqKNH58YZhzf3BbZBZTZDc\r\nOBkP+NkCKF5HBuOA5mnh+DkAwogafJ0oXnpXHI6zX2K+d3hJqrF7JjY5/8TT\r\n0h3aH7jExyYYuntRz4QLfkDn7ZzmQqqXqkjQwCEGMmH8EXjecSmfwQoHtd6D\r\nrgsLVesB3Z2cNVDHHrjeH04QA1/Do6KzLC1xZ700ShGWXdpVG1ngE2j/dEF6\r\n1+fMPSdYBXo3mKjzp62CSJWrz9Q38iQY/rkTCmjM67jrh1MSnSonOU06DtLq\r\nBmciNUJta2x9RymNCMrm+9iACfU8bHlq1c8N2R7vG85rYOA9FZ+cVVc8hMCM\r\nakVkdzidIrKrrIxKJb+mtDt3BqgDuFCTbrl0va0Jcz+Ftx08i0G/H+Sa9uSi\r\nur419C1NmQi/Y3O96IBfaYvrKGHNkhSErTc=\r\n=NJbF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"29832a4f010df39515e01d98656d2e77ac1e47e0","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.2","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.2f9b268c0.0","@material/rtl":"15.0.0-canary.2f9b268c0.0","@material/base":"15.0.0-canary.2f9b268c0.0","@material/theme":"15.0.0-canary.2f9b268c0.0","@material/animation":"15.0.0-canary.2f9b268c0.0","@material/typography":"15.0.0-canary.2f9b268c0.0","@material/feature-targeting":"15.0.0-canary.2f9b268c0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.2f9b268c0.0_1653075152183_0.7814516854496008","host":"s3://npm-registry-packages"}},"15.0.0-canary.7741345b8.0":{"name":"@material/floating-label","version":"15.0.0-canary.7741345b8.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.7741345b8.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9894c1f03241f983f2a5b8e628cccb5367979ad2","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.7741345b8.0.tgz","fileCount":33,"integrity":"sha512-PEAupMKGigaj7Op4FDHbX3+Hck/AmCsTlmeDP3BcdrnaqVLwfw1u4XedLlRW6j+1zCgMgpMcOHEycCBkjEAEaw==","signatures":[{"sig":"MEQCIBT5amTibCxtZtkE6/46O2iG5XW8CgE0QqVbhro6F9llAiBveYK9CgqMB4Xwaw+YugI+xG+2/Db06mfoPol+LLTpLA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJih/PgACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmodeBAAnvxjuUjg+RvvG5yoH36kZvlfZymX4Tn8lOl5w8FzjBHMeVKq\r\no0bN9PkHfoFpNQ87Ist8CJx8lG0Lw9wpR8LfeaGHH+Iw3eeIfAcVieg/S2qn\r\nsULCDrIAHSFYZs/XZbjDzBTjYejl98+b3ZMrzW4sh8u8VMg8fLuhYK0bgQB+\r\nLr/bS3hW0pJDicuS6N7UdIhYRoh/0zvBPyKM0dHz79hMiwDVK+ccNaCYjO2F\r\nOD35u2XpfHk9C4LpnG2TarbGqMD2lToC0UwYEogwkC/cRW7upA8nCmRzEchE\r\nx1+tLUFkKLG7OsWGsbUcURqj1rTt0in/wR5kLNqQaj9bf45svZ2sprgyv7uE\r\nK19ADTktvfY2tsxh5LLyQAWOgiNYl4R4lXqxrP7bkouE7vl63WI6SDuqZ57x\r\noEz/p/pQM251n5E8cEFHCL4J+obmSv8BhmiammBboxg74cLIdQt7c1FZ96fk\r\nMw/1fsOF7JH7EG2i/FAdVwtzM/p0xETyu5mnUEur/RltcNLpo1BWB5wnvj0i\r\nBXPxjyTVNQ7T3KIzwPym/d5kd316lgt8TwbUGdmnhzaFRYOYkt8/b5LHBM7p\r\nl0AfW7g4ZrLSbBMy++Ly8GZtqraLQKMcXxC+HHw+USx0tOg9WnBJK5dPDjnb\r\nTDQbc1/T2W4HAwyKjBEB7dQU9T+z061YTTY=\r\n=H6Xw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2e61e5e8196d28c1bd4d1c7a12c242276c1d8ec1","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.2","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.7741345b8.0","@material/rtl":"15.0.0-canary.7741345b8.0","@material/base":"15.0.0-canary.7741345b8.0","@material/theme":"15.0.0-canary.7741345b8.0","@material/animation":"15.0.0-canary.7741345b8.0","@material/typography":"15.0.0-canary.7741345b8.0","@material/feature-targeting":"15.0.0-canary.7741345b8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.7741345b8.0_1653076959801_0.7206219884579879","host":"s3://npm-registry-packages"}},"15.0.0-canary.f807e793f.0":{"name":"@material/floating-label","version":"15.0.0-canary.f807e793f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.f807e793f.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c76a901a64dcdd5551638ca88b60f3b2a67c5843","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.f807e793f.0.tgz","fileCount":33,"integrity":"sha512-unTlJ4R7KTHltS18sR9zbY3W4mYuzg/ToQxBQ4k3W2vl8M0/5qEzZ0GWXWkkHH3SrjckCgeplkVjg1Baiic/ug==","signatures":[{"sig":"MEYCIQCq+/SakYJrufRJLrpDWIcDNiOg5xiHJpEGnclIMtxwwwIhAL68IIBobbSAmH+RPZsHxYa5MWV7D6AAfveAseZ9Zsjr","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiiBR3ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqmyA/+KjNMYX2uHJJ3Slj5AQ6V7ek9FHgNJZNa2Jwww2DRhK2w+Tfo\r\n5fuwnyB4DoE6jYhUpGPnIEVF3Yulh3LPKhkrtMiXaMfSCWwZhT9HOps3o9wd\r\n75WRlDrc1zf7/VnSwAhOdnoZqhABZtc4M/IHJDPRCi3RGT0t0z1HkIJaHoHk\r\nDVed0qQLUzXgwJ5lE0/+FOD2tF+eYSs7FmAlRlri6MTrIMEzogNwVflQolkF\r\np/ZfEsq9wC4O0W5f3Nn+n/faWU1oG4qXSnAsxhZetnptP5TzpyfkUh6iZ9Pu\r\ngUcgP6C0jbSI3vHohT+KIwaJRF5y2Z+/NVqNESz8cqJj9fi2GgbrDBC+sawL\r\npPcBlGuz2w0EWF+p4ZTASFnel4VZgvbAgkyahzBSx/iUb0doIKRDwpnE7JQ+\r\nycL/U57beaEwlXDld0wKrAVwENozMf5CHCZSFvlPsmvJ55xKiQDtSeIgWOJV\r\nXIQYH6OoUBVB8pvaJI6xlKsnW7vCBTDRAfuGlWVgfDpaAW6aP42uGDpy77Py\r\nwR5t39qO4SjXeUV9cGXuc2pN3ws16u3hABv1Xy/b+9PxmWzSFkLUxVe4s/j8\r\ns2a6mCJbJwTtLj3FQN1XcshRtNpy4Z0GKZMpwJSuEmccfpt6JQACe5MY91Tc\r\ni+KTe/ZCM6/7JV23JNP3KFEFsPpYQG5YF3c=\r\n=n0/9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b4ac5ff59e90b4770de9f689d9b09381fe2cacd1","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.2","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.f807e793f.0","@material/rtl":"15.0.0-canary.f807e793f.0","@material/base":"15.0.0-canary.f807e793f.0","@material/theme":"15.0.0-canary.f807e793f.0","@material/animation":"15.0.0-canary.f807e793f.0","@material/typography":"15.0.0-canary.f807e793f.0","@material/feature-targeting":"15.0.0-canary.f807e793f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.f807e793f.0_1653085303621_0.856759124165063","host":"s3://npm-registry-packages"}},"15.0.0-canary.9f53d4a8a.0":{"name":"@material/floating-label","version":"15.0.0-canary.9f53d4a8a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.9f53d4a8a.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"dd699e34ea190fac563124cb136b03d052b70dbf","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.9f53d4a8a.0.tgz","fileCount":33,"integrity":"sha512-7AAnhGwwHHvYOB34y40ngv2ZKeaXcdCb4P0f3hozH5sctXP+HGvAcrTRf0jWVObthNLMwOfIuGyPAc1+HXMfZQ==","signatures":[{"sig":"MEUCIGxq4dcwAB6VLfHUrO+qwel/JvlKwDk0lvDdchpK33fCAiEAt46S7E+4B7BL4dzTnQ7z1ZfwOJDfTfmzZLlQBjSFYQk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJii6DeACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqLXQ/9Fu4TN6SsHTIJjKQVeuXPoqDQfL3nYAwITrb1CTYwCO+Da9yO\r\nAE3nOiLIAlrZxyjRsTVALTtnagXtkekc0jlhgj9cWsVuPvv2/RkxkSYZ9XfW\r\nh5nm8SpSyF2+HWWTZRNxN2HzVtjUoK/gZIgJ+pY8uaFCWt7uelNEEHfYFIL1\r\nsaWvwO9HQsw560vNK7uuTEiOhLOzCfgtWyfQBJvYtIACj3d42zXIsBsp87Tu\r\nZgRtGQ9t+TixwX4O6yj3x2CmsOwTn4MirG6DuUYJzJEJN2S6OFtg/b8uiaFw\r\n6pgDsFaiD9JYhf6OVcWewCdImJ2xzU4x12emS7CyjQUBZ2sHWaxpHwg1gDR0\r\nl8/1iEbD+oGlmXt6Oh7MxfX29XPxOfWLn1qHqWdNxHfKGKeoBmFgw3qj6ZeM\r\nUM1YtzmkO+JnUBcn5fEPCEMVZQCHNVNclLHImy2y7giKopr0xGLgpC4IRkzm\r\n8UzoYD6tb+mcwbObF0bm72evNLVMUTbLRXsJFKzG/b3evVVWsKnHnCCL9n0g\r\nhHlDxNw0xErJKyIEmj9SqahFt1RH/xdHEFE33AjFHnmWYJowwm3yNbzoMdC0\r\nBfCwwtoniKjF27d3efIV1cZxZt9wO3ObtKBi9LHEemXfWCgxMIx6l14eRz9g\r\n4xt1VK9wygFBZ4VvigWzOw1vokrPBNrmx1I=\r\n=ENuW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5db1bd7747bde68bc956d054f2e939e62c78df6e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.2","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.9f53d4a8a.0","@material/rtl":"15.0.0-canary.9f53d4a8a.0","@material/base":"15.0.0-canary.9f53d4a8a.0","@material/theme":"15.0.0-canary.9f53d4a8a.0","@material/animation":"15.0.0-canary.9f53d4a8a.0","@material/typography":"15.0.0-canary.9f53d4a8a.0","@material/feature-targeting":"15.0.0-canary.9f53d4a8a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.9f53d4a8a.0_1653317854158_0.37725647629547576","host":"s3://npm-registry-packages"}},"15.0.0-canary.77cf00e37.0":{"name":"@material/floating-label","version":"15.0.0-canary.77cf00e37.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.77cf00e37.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"20e2977ac625a3e66efe9a021c46b19fe1e89656","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.77cf00e37.0.tgz","fileCount":33,"integrity":"sha512-j6sRnBGwKJcJLz4BBwddrXmELNTnfQWkrvvOMpQMI52vR60GXjMYFhdtWC6Irxi28L2HH99zUIIS9T2y3suTCw==","signatures":[{"sig":"MEQCIDsuY6vk3qQ9W9MI3E5Lpsdoo/gLOxLx11jWm6KMzwUCAiBZ5kie74eSIdXr6k4vEWqzvPMjR8kcBlRpGlNQ0l2uAg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJillLeACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqOkA/+MJ9wHBCWciYL8abQhWcRjM1TKsbidcCieAGTS5g0QnLyAWU2\r\n+nJFXfhlLF/b+IiT9w/KPHnauhWqOvwMRSxT/bW0lMWtxAmnO5mDEswXq69n\r\nGTosEUXD2phoJ8tsunJcZAb0B4GVG6U2Vky2oOI/Q7+QhSqoXun4AdRUudDo\r\niPjZLiVKB3dcJYS77mz4Jxowd5uKKJZpUdHirKxfZ2Lf9kzsog2JZTOeUrfo\r\nVBUNOBpChiJoxIl/q7W1718poA/KlQDufEp2tvo2DRK25y1KaCuo7yg1mgG9\r\nrVX8eVxougduZttiNdDeKSYMRQVi3Lz8HxEODI4/scqcwusF+Ijco9AUzs1q\r\nxMbiQwWb/tni8mU8IVckuA/fTnpooKyojt1ReqxmXPYM+eAsHz9+Di8FHprf\r\n++sfRU/1LBujUHhWhndwhRzFl30e4orAOEJ4Bu/t+pEIUsUBY6FQGt2ris4T\r\nqyzrMoukQvmkfi0/JCdG68JDw/TOp6p8wtQcoSTgc3H4X+a3NjYc2VZt0g/w\r\nIuNkIbflj+dVF0l5KeGQ/Mj+mPrYz5eWjwA5GbY1WXOCmbGCpwLCllycD+jR\r\n1ZYPadMgWiNNqINK50lGDyR5zWrrNt9U0APutyDGIVLTP9LwCXoSFrmIw3E0\r\nrM/EzH+77QLy+AB8zamN5MsnMH5w9/OZCeY=\r\n=YcRh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1a68e64a5e78b8bdc529142c18c028aaf1b15b9d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.2","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.77cf00e37.0","@material/rtl":"15.0.0-canary.77cf00e37.0","@material/base":"15.0.0-canary.77cf00e37.0","@material/theme":"15.0.0-canary.77cf00e37.0","@material/animation":"15.0.0-canary.77cf00e37.0","@material/typography":"15.0.0-canary.77cf00e37.0","@material/feature-targeting":"15.0.0-canary.77cf00e37.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.77cf00e37.0_1654018782766_0.9585862094274535","host":"s3://npm-registry-packages"}},"15.0.0-canary.3c7b844c2.0":{"name":"@material/floating-label","version":"15.0.0-canary.3c7b844c2.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.3c7b844c2.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c390b94e77ba45a486e51c4150e81aa3386b9f83","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.3c7b844c2.0.tgz","fileCount":33,"integrity":"sha512-JhJ9DyczaKn4p7Vm6JVmAv5INv94YLMW0nMDkODKfkutYneWA/y4sbgV8kwh2I7lubbp39Ii6MfW4i3lth1xsQ==","signatures":[{"sig":"MEUCIBFt3pMm7GTm9TjC9RCI575eCVxrDmCLGCBl8lmsZPKAAiEAhSugwNBCTtHqQhBVV6guywwbGade11ZEY71jIoL+vRs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJin88/ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpQHQ/+IDjPelI3cGq9NZ89hV0daRPN35oe66R/I0PAf1qOjz+zh/LF\r\nc5QjQhNldI2qbrIHbqmZY44p7kc8cWNWbHJPWC33j/uM7KityzoPUMG2LM3E\r\n5fQWJkxZbPwBYmHcjZCD9OLMONB7sKh8lFiDe/r75FEGA6xbOO/iPhAI8Ib3\r\nilDaKwKK9SCq2SdzuW42hCfmmNsdZpxwEZh6Zi+3Sh3G5N0/o1yppkHlYtsI\r\nS0J3EXRwNIG7ctwvXAqGYBsGzXsu91hSruAygEC0Ppy3mniShbc27+8y/3jQ\r\n6XF7WbbNK9kAVIxHkjPS203LWH5oCWTFpK2TiI0IoWFHCpqEa7ylHsMc1zwM\r\nMUUIxcNw2/yDsrTK94blOWdX5Qrd5bq7km1ilXBzLG4smW23D59Oy0Hn1VLw\r\nLKhXjw3t+pMZAX6+yolkp/VaLDofKQXJiiIMmO6xWjJOUIFs4RE/FhNBzjAY\r\n1ACgp61wxIZIq/DdDsLm3Jrb3sjzeTbiInKFLC0MBGPZbfCsfef8WCiHRTEa\r\neFDRZksfYYJtKWrvL9U/TL7wcJRTgWdZhnFeu9wXgfzpIN4lnrnxb0+Rzsa7\r\naFI/joPm2/ViBHsolbm1Klmr5/lWFOtl1EDp7lJqM6eYHGYBACs93Hmf+1Mj\r\nnpX7f1DiGwn0cHEyNmCNbZqefjhE0ROugLA=\r\n=SXU+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e9422b2e6573001fae4c8aeb7cc75741000e0034","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.3c7b844c2.0","@material/rtl":"15.0.0-canary.3c7b844c2.0","@material/base":"15.0.0-canary.3c7b844c2.0","@material/theme":"15.0.0-canary.3c7b844c2.0","@material/animation":"15.0.0-canary.3c7b844c2.0","@material/typography":"15.0.0-canary.3c7b844c2.0","@material/feature-targeting":"15.0.0-canary.3c7b844c2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.3c7b844c2.0_1654640447651_0.2177927372812538","host":"s3://npm-registry-packages"}},"15.0.0-canary.df47894db.0":{"name":"@material/floating-label","version":"15.0.0-canary.df47894db.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.df47894db.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4f15f045388bd1e30adc3b17f67a1a71c545bd68","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.df47894db.0.tgz","fileCount":33,"integrity":"sha512-sYW+cbG/hD36TGc0m4ES4kXFxEwbv6hZ4Amos357qiSsrLt4Qt9jzp6r2aNQjL7wUbOWTw5SFTIyu+qsGIO3Zw==","signatures":[{"sig":"MEQCIF2HJWBpIWFiwPoNbel2p9UaBhI33Is16yK+BRZjzJOCAiB+c/GtrEipEIUWAmWrIpQuLTRR0jtQIrwJGFtSnkKDkg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJip28QACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrF3g//dIOUplwr+Om2jcDeG+Vrnbmd99wuKRXVVX2CfygZFHWKKXpF\r\nXZ8khjvx1qzouRfiZ8OX6h3Wj76YCcbJf/Agz9ot/aA2wC3L6wmFne49BQ5k\r\nVBVwqs8dy5Xri19+J73EpQNCnuwTK64cqSzxKGFTlk1PCyaDvdmrJpxujM5m\r\niHV4eCeqVNqOvb72IYxr7MwJvRBBQ3RgdIVdy2IjV+x3CO0MN9kcuH09kVZp\r\nZMibT/rJM75nrIMkd+SuC25V3jZsuIu6lRfd6WyHe1b9ZkpiOoMWQTZpIyom\r\nd0YnuvQB8qwWnvU7Q/PHiOY/nlYfFtUV6uFeU6thgmlTm1a9rMwVd+uZeLaY\r\nYm+UepjBOOIi5xuwWSRzHUdt2nl+dVPui3waiV04F/dAa0uOcOtHMyXolPk0\r\ndyUamR0juHsJZ4hPkv4bLZIhlxnVbCU7bNDEMZ281pKkWt2rU7njcmkjtjah\r\nt3p8k574LwN4gmrFSu0PKJAMhcFKRWU7GDNZ/AshFyCCLEzi11E9zUweJAbq\r\nfnB15SPx6IVzoADZjhk+uiOpQIaMdUItbvIE9wyrfnXnY0naXUrutS8GAH3H\r\nGtQXAm61vRv4vYcY22kVBZlcT718wHwHD7mbtNtfQzcndgOZXnas0b6rZ2g3\r\ngXq6fjrgqHhc5nMygzDssi5TCIwdb9V9O8Y=\r\n=P3eb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"42be62e51a7c150444c5b32b2d2acee03d09e6f3","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.df47894db.0","@material/rtl":"15.0.0-canary.df47894db.0","@material/base":"15.0.0-canary.df47894db.0","@material/theme":"15.0.0-canary.df47894db.0","@material/animation":"15.0.0-canary.df47894db.0","@material/typography":"15.0.0-canary.df47894db.0","@material/feature-targeting":"15.0.0-canary.df47894db.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.df47894db.0_1655140111962_0.010796687935238802","host":"s3://npm-registry-packages"}},"15.0.0-canary.b18a873dc.0":{"name":"@material/floating-label","version":"15.0.0-canary.b18a873dc.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.b18a873dc.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3c3d7223fadec5d9fba0886403cd56bb51770719","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.b18a873dc.0.tgz","fileCount":33,"integrity":"sha512-E1CRoJ3BjOqcv3aIwdZtl020INzdRX6ZST6IhDJEYCZ30jNaYBlNhaPhJdRVLdHDxQ2Qq0IaXk6RZYvAC4478A==","signatures":[{"sig":"MEQCICKa0JGaES149767gNMBnlwpgHi/JajrJ9aHo878nk24AiBvDoXRfLrfziMCCag1KRv88ces6yMPf69g4llQBwopXA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiqCrZACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmpv9w//fZ9tTENvEC+9lWWwGVr0SuHmiBwioZkEzvzSIh8ZNSuQCeHN\r\nY6tIQFwFoIqRwD92Ot9Tf3ClLnCyOJ0CpNxUa1LhlGXPaUkYBy34pHeTDpik\r\npjVl0YfPuBx9o1sfhfzQ0jRuA3Kq33mo6ra5//MCM049P03/3tWKa+OQDWiY\r\n3OJP4c9Cd+gGIYXCr3eTITju3PujUauj008iTA7KRujdL6LGIbXOmMWZOhyM\r\ni0xSJYjfgb3NmxarbsXwVrc7MtSrJEqWieJPCjRB21qFT7dEiJeeLM5UQ2uy\r\n37s1W3t4PTCN4qFlmj7vN7ni2b0F0wd3qxeVlDYhOefbs657ilPE2J951pxv\r\nabqQUk2r5/Fxs2z6ODlDXCRNrKB+vSFHAZ/LOEo2OnXlVK555ptkVJxYscUB\r\nVAWshbSCYO1wsTRGEHy5kkbGMH5pTsfWLaBsgsTqhyldYZresrPx+IIwcAaT\r\n7jnzuVHi8yKc8xru/gK//OWIRMye74AJTdshVOXI6dfCGxtrZt0yjUVSW8d+\r\nPRDyVTvcEzLZrYrrnlAGzhNCxy+jCYThfdtjIiWb9kmexPur2hb9NdMa7/s+\r\nBMILODbO7izGWryKHCeUZBnjtkvDMrMBdw8e+BqoonORedXgrg6xOOX23Dez\r\n63nBqIpreSfvp0QtPrZQmpgW02kfCRzA0bw=\r\n=wbfa\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b35dadfc99a3788643d8762f8afda3f2d6e76d5d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.b18a873dc.0","@material/rtl":"15.0.0-canary.b18a873dc.0","@material/base":"15.0.0-canary.b18a873dc.0","@material/theme":"15.0.0-canary.b18a873dc.0","@material/animation":"15.0.0-canary.b18a873dc.0","@material/typography":"15.0.0-canary.b18a873dc.0","@material/feature-targeting":"15.0.0-canary.b18a873dc.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.b18a873dc.0_1655188185729_0.6889087462034547","host":"s3://npm-registry-packages"}},"15.0.0-canary.ba9c29637.0":{"name":"@material/floating-label","version":"15.0.0-canary.ba9c29637.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.ba9c29637.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5a229cb9506a917fa12b13d58867c6a51698b081","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.ba9c29637.0.tgz","fileCount":33,"integrity":"sha512-9Yr+UGM+LqrTm44WPqDdtQBwmhQZHGwcjXngSLMAF4KdTTUIQhyKEU1stMgklJ6fH7/jJkRPzrG+QtRAde0a1w==","signatures":[{"sig":"MEYCIQCBL5wcLB9GklAYJFXQUVqmm38lfKt/TxdbegI3uyaDlgIhAM4NxXEpZxIpePiMKM072tWsJr2czsYENNlA5yXYgXyv","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiqNoUACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrU0g/+KJTaTc3W6Q7iGPUfW9eWh0ViPa8IcjvWDh9hrSKwYPid33uz\r\nMCnSnM4FLCwmr7WcFyKnnsqyvAE23djBOJZC1Ird0p4RwFhvkpvClmClMHPC\r\nqr5MzV3vs+fwQebHuffo7coGXBvN+ZmjcXk5+hIkn2k4gy+DvfVK4BRC5DiO\r\ncp/629gJ/btiz0cmcrs9Sp+ko/gPw1iE05oEbN2SlQBuW9rEoPKghJsN8zvV\r\n7yy1S4UP69tbeaYXtHFdBl68zl4HsZUTC9ixM3ZS448ezDT5Pk4MD1F06it6\r\ni2IYepq/Wujh1meFaPbH2hVbaZES78UyTWNQDr0IuyiXsoCrQf9obbszbJVG\r\ntoLeDoiuVkTklVHn+hOvjpTC5i47rloZeVGBSTyr+qOTiHigorU6Mq/hUa6z\r\nbzWjY0pOMIZWG5ENpxhlgiNLFcP2YQrJ33HXAcpNgLsSlw7n0rcS1s+KxJrL\r\nsQDnMASd1/g3Dhwc5PC5rrmeEFfqTYBa3XNkhh4prY70ctN8nB9XhVICvUQc\r\nV36sC7KXsm8KJPSHCFB73E7Qd9ZGaH4PcWO1P+quRrsQppbPzHxmsJVtnUu/\r\np70WyGNbpryonM1i8ePG6g9B29b0/8yWF0faC7tbd+K76+uWJvLSV/cXGfFN\r\nFeVTXU9s/Y8HAZbDqoCo3XFHrJJw1BlOrtA=\r\n=NorP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2bf89a291dc4aecd82cf7a6432d198374cfea69f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.ba9c29637.0","@material/rtl":"15.0.0-canary.ba9c29637.0","@material/base":"15.0.0-canary.ba9c29637.0","@material/theme":"15.0.0-canary.ba9c29637.0","@material/animation":"15.0.0-canary.ba9c29637.0","@material/typography":"15.0.0-canary.ba9c29637.0","@material/feature-targeting":"15.0.0-canary.ba9c29637.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.ba9c29637.0_1655233044134_0.01610777779642758","host":"s3://npm-registry-packages"}},"15.0.0-canary.9bfd12f01.0":{"name":"@material/floating-label","version":"15.0.0-canary.9bfd12f01.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.9bfd12f01.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5976865c5182e60efef6774d5f4dc17684b45fb4","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.9bfd12f01.0.tgz","fileCount":33,"integrity":"sha512-d5Jzmw5eT80N3tSxnFU4mRC1gyf6NdP19QmR4byoR3xW/xLYEbs98mWyza/mhSRQWqP9B6Pve/ww+55TWe97oQ==","signatures":[{"sig":"MEUCIH7+LfZ5x+bBdTJ+xHqQEjtoB5MTXnB8yWHNXG+/054ZAiEA/vvQGdJG3gCfHZN/UEqpDytr5orZuzoXrmo5gAfIfE0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJis2v5ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqHwBAAnMS44zVbMhAbuXetKwn2m3gpk1+w6epMDsbRV7dB8BDSsSFy\r\nOQG1YBh1et4VUQXWHWJZrd4EDkMgyEeCapfiYw3Mum3NQrAJPzZ9xNg1RtzL\r\nr/BP3zxEw4lHSYKEGtxAsThAHT9RhGvKsveAvtqk8tTtju7zLgRMaPUWCGUF\r\nu6hWxpeX2mPL8QOxbkIv8svd4tocArCHbn5I6R+Ir/QcneMS6BNJsRrGi0Fr\r\nktyHWf30MhfWMBdMpUFibRVwCTMIwBHgx4wwNXdYEA4lBJh+bb9hSxjQSDNa\r\n130j8JzPWs/td6SiK6Xf9Z8Byf2/1eWwtcQhSvpYtIVO2E+B6gNy2Iw8ZHov\r\n/YBVtNfmTflv93U6lVNpbES90PUell/sLJM/08ClOh6Ca3QHM5RP6dT0nQI1\r\nvB8xCOEgn+NvoEHdVyugbt8BU8QqZdzJel4lc9hDVJFYzTt5KcDrN1B5YBlW\r\nPGCWhtSxdsHzGzlPxw40HhT+7PLNYtFtNUpzR1mMlXNG3boHkXVn6JGvO6/O\r\nXGwKc1EJHUGvgO0TAy8oorP5uf1RDvelIn2/gaTinvDIUUrd/gQ9EG1fNPNC\r\n9Eske3+iBS2v0UQETEhgo36UbawY8rdJzygNCIaSOlefYOr/w55Rb4/1/FIb\r\nspIoD613dqv0zJK3V5c3um9AZWc2wWEtpqA=\r\n=MeFg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ba7b0d01530df70f39142820ab69babfc9cf5b8e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.9bfd12f01.0","@material/rtl":"15.0.0-canary.9bfd12f01.0","@material/base":"15.0.0-canary.9bfd12f01.0","@material/theme":"15.0.0-canary.9bfd12f01.0","@material/animation":"15.0.0-canary.9bfd12f01.0","@material/typography":"15.0.0-canary.9bfd12f01.0","@material/feature-targeting":"15.0.0-canary.9bfd12f01.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.9bfd12f01.0_1655925753149_0.844320778276832","host":"s3://npm-registry-packages"}},"15.0.0-canary.764de225d.0":{"name":"@material/floating-label","version":"15.0.0-canary.764de225d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.764de225d.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f0713cd3740063cf451f38a84763a286bd3b0808","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.764de225d.0.tgz","fileCount":33,"integrity":"sha512-t5nb3ZSyd/Qctl9JWeQVD9JLy4nuB4vx3B3BznDz8LEqpoBUHMbhz0ruLxt3UvwkbFp+eKEm5/WXzeaUae3AFg==","signatures":[{"sig":"MEUCIFk3CDndUOmkePFQasHdhbCAOZmfDbLaEuBArpN0pJ2fAiEApcjbkfHHCYX2HdjucY17oebFgZhvfkf33Fqc9JK+TTI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJivH1XACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmolbw/9GiZnwN1BLxlxcqRiFOn0b3pSIwRrq1sXSXwJSwaub6n2DewF\r\n1eImZPJC7iPGavk56mAZ9PdjhQSM8xRKRwGTbOYDpwUGoRCfESjG5UPjh3xz\r\ntO6G79cc9fRRK0qsXXLpVk1TZom8bsDCQVWBh1cnBLb1LMmoWtNYyuIN7Kc5\r\n1ZgAzGGuUc2sHacuue4AOgtdFTSBKuXyUmkDZqD7Ali0LXdlsECfDvjCSK28\r\nuyXRYzVBZXGElgmtF9GaiQKfhGWnhsqmwO8DyRwJk76vEF2xJrPcDlXYZSIl\r\nDaRTEEOsIsXfwMqu3XQd/nJMzhbKxxK7RKObs+JzS4Hde8mYg7UQqJ/LCh3+\r\nFBPetEzsItkcS3B7+JxqBiQ6MJfjEORrXFP3+WuXcjrw3fYRPUIMMS85HPyM\r\nMjTQRkiVJZfqpaufKivSdmjUSF7b7MZ17QYV1M9HBUkxC0g0kfaRi6AvP5RN\r\n6G1/OcWuu/Mhp2uLZ7UgaE6v6mVo7lrIz6fAw2l/oSoDO11qKF5EtXQy96GC\r\nZZQISJqjwvKwD9py8W1wsstAvq5pw3GyAJD6GEBH6Zo5B9BbgViesK+sRwj2\r\nQDymiVBtpqDxiBNFEtYKMWLc1vskkeELNhNMlJUMaNaXy2ymBmLwQHUhMuRP\r\nnP+1qt84yRr7/brLqeuvxTSZACWWMiUdPFw=\r\n=O4uM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"25c0f0a7c9d8dcedfb35f64d0851fc4fb86b8534","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.764de225d.0","@material/rtl":"15.0.0-canary.764de225d.0","@material/base":"15.0.0-canary.764de225d.0","@material/theme":"15.0.0-canary.764de225d.0","@material/animation":"15.0.0-canary.764de225d.0","@material/typography":"15.0.0-canary.764de225d.0","@material/feature-targeting":"15.0.0-canary.764de225d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.764de225d.0_1656520023672_0.7227671675316705","host":"s3://npm-registry-packages"}},"15.0.0-canary.31e517cea.0":{"name":"@material/floating-label","version":"15.0.0-canary.31e517cea.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.31e517cea.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7d15da67ac0fcbe42bb66b5d6064b417758203d5","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.31e517cea.0.tgz","fileCount":33,"integrity":"sha512-EiQzOy8lXL2xKHaL4tHuBBteU9eam2ywbp44+hJAQrpiLLUNjxheGDsseGugtMN869c8Eai5JFuaDRQgZOs6jA==","signatures":[{"sig":"MEUCIQDbW1iYf9O3lfJLuMGS4K5QUo5xukFRoafrgKuXHxQIFQIgOLhoqpOWNcfoqqsBF3erZqPUCY6AGGH1LlVb1c3xwWQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJivzzIACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqK9Q/9FTiy/Mb6bTtPeIgsAUhncyOCesTkITUVjt68kQxjaiD4SGg6\r\nKCSd8P04x/3OMX01ZWtyfoikNd2T54cHw42LqUT+hy4UW3lGLOhT3ODmo+75\r\ndhiso8sYdwykb6BiOwELDbidXYaizs6kXpOzls+vGV9uFdc25LK4s4a5rZjw\r\ngUDYwx/farMGcaEo7q93RCoEPKNQYVwuKugSKz19F6yYaXYvJBEbLMZprnCq\r\nJA50yjRmpY38/KoXEGPZO1JfX5/tyr+yxbEjavqvgv8h89p2XVwkIGkpVEAN\r\n8PhvNjnqqbaAwi4tAvmZP4605NKiM3jwYD9nrQkYdf2Qv2w2OSaWOkoStsd5\r\n7LQklEYvJMRYChvWJhZ3gN2A6FBgts3tFl5jlCirV0ZPTkg63H7oC0Y3CFqM\r\nDFvVkDSx4dkXaJzREnE6rtx6BmgyvQo3VLkYBZ/vKzsMiyn+T5tL62BNsV43\r\nw9MAybsAdqyKRY5GCF89roBVGm4AV/lG5bshXTV0h4+T6pYWrKS9qRax2ANs\r\nnn1aFPeQ30qE7upau2WG9p3KbyrTpMENhFhfnRzdhd6FtY8Ysb3ptBCfdWy6\r\nWsLnmSVjG8goC9h6eoB6S8AewOu0zWmDW7x1DoLysqufcf4xPRHaid1DFRaQ\r\nurqeCSKTmS7rH8Npnq5jatDF3PEdlfPIDms=\r\n=eKkk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8af6d916fdf79ba9e33a883ad56f539f3decd5a4","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.31e517cea.0","@material/rtl":"15.0.0-canary.31e517cea.0","@material/base":"15.0.0-canary.31e517cea.0","@material/theme":"15.0.0-canary.31e517cea.0","@material/animation":"15.0.0-canary.31e517cea.0","@material/typography":"15.0.0-canary.31e517cea.0","@material/feature-targeting":"15.0.0-canary.31e517cea.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.31e517cea.0_1656700104060_0.6034313161260065","host":"s3://npm-registry-packages"}},"15.0.0-canary.9ea4e8e9c.0":{"name":"@material/floating-label","version":"15.0.0-canary.9ea4e8e9c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.9ea4e8e9c.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b6bc5d96e3d99b124b64e01bcbc21cdd5f486e2e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.9ea4e8e9c.0.tgz","fileCount":33,"integrity":"sha512-B/HurJ01T5tEMoO2d0PrbPIGEE7koiVnt5Uez4WHk59h6AaxHBIpfGcul00nOq0OFKgV9NdmBCMPLBQVRgOC5Q==","signatures":[{"sig":"MEUCIHrwfr2bAuMB/UF0CqW3sYZYZx8n6YmFBVoyTnSP88Z/AiEA+k+0j42ZOI5EAEIY/FZrFFlmZq0EVueStNqPZshnrgs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiv3tDACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr2yw//ZAsEz289WhPFlvez79saPwf24BsMC6z+4QjOIrC+zbI7t1bV\r\n+3iGhtd97BauF1FMJGVSQsPu4jkc2KcReHZLDSAPk0LBfXF+QKCyTmpq5KFR\r\ncz2VBcDhev2K3VGqq33xmL8puevQTiWegZ/96+9GEqVtkOtipfI7kxYROOt4\r\n/61gsH4/FouJgaNCS5+764ok7aYwNrBQRy/8KjA5CXBkgMEOt5eNUYSxud/c\r\n3U/GMXZ/qcY8e/IzNCFeBe4F88scbqnND4u1Hddq1IEYUnYwqKb3shBZK89w\r\nffgW6LJPjevSJEaL5/wy6BJXYvzG5nYv4i+j/ajF4NTQNTM2GkKu1Wx2p9bv\r\nNDDJVnAabOmssih3QIDN7uMqUhvvD9IlqSBkmM2XALZsjoPRzQ/cuSbyOUwg\r\nLpYHjgaKnpQtnxzGhVtmLsQ3KnPOG1ayj6E4Fbu8PnGs4Iq+fUKX45/y+uXG\r\naKYh647Jvq1DS5TPu9lxyey0d5DhXmkWSpacuXInVNKV2KaD5EsMBxl37q5T\r\nsdzZRQvcGRATko8AEQtHRvLaN27jx4xnQ6VOqcSGvU1teNV6zjc6Oimk4ZU3\r\nUTp5Q1WyPY/LiYFk/b45W3ouQ2Lw8RkTi3AWAUy/6J83dDv8HGczm7C+wfqe\r\nX1ad42TgmmU0cQvdlZONRCAVoCmLHaz+JOY=\r\n=CCKK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7a2b791f6f1e376a53ceef81767514ec18174558","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.9ea4e8e9c.0","@material/rtl":"15.0.0-canary.9ea4e8e9c.0","@material/base":"15.0.0-canary.9ea4e8e9c.0","@material/theme":"15.0.0-canary.9ea4e8e9c.0","@material/animation":"15.0.0-canary.9ea4e8e9c.0","@material/typography":"15.0.0-canary.9ea4e8e9c.0","@material/feature-targeting":"15.0.0-canary.9ea4e8e9c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.9ea4e8e9c.0_1656716099414_0.45908578136936073","host":"s3://npm-registry-packages"}},"15.0.0-canary.cd5bafabb.0":{"name":"@material/floating-label","version":"15.0.0-canary.cd5bafabb.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.cd5bafabb.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"fed823f2ec9187717a7b0482ae01716da35f292b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.cd5bafabb.0.tgz","fileCount":33,"integrity":"sha512-tGRsOA1SSQi8PoJr1Wl2uAqXcKX5UbGZB+i70P/66q0b7R1IQIMV3Do2sHviBLYidibw8WWu+8vJ+HiJf2c0SA==","signatures":[{"sig":"MEYCIQDYzlA2kXR/PANivrhtq4t9YU0tW5oewaHc9iO8sED2qQIhAPH86II+1Klq+g6NPwMl5V1arIHUmqQLcd/ENARuXOTR","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJixcxQACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrS4g/9HmSAbmlgTtgMYNkotmkHDBdwpWpbs6c+vJBeVuSJ6+T90jWl\r\nqTfHh+Hw5/airwJyY58xe1h38W3YJ3sF/aJhd9IBmkoxEiacCFT0JESQOl8M\r\nK10ZbwxfOYWxSRmOGg19XfDlK+eGZtMr3CZBGzBxv0nI7yHgx29fjT8M0W5s\r\ne8/O8YitfMvmLvaVCuhznSzI+V/zitaf+IzOLdq4XPPm9wzDAQm2nQUiVTEq\r\nRBBuYM83mEffAO68LAYIjJ1LKp7/5vOqugnWz+cM4qm3ZC/gWnnE4k3S2wYu\r\nYLLNyc/QKKzfnw16bhGKq/cWzwXr19/rQQgMYrlOKoEkErVoXf8hiQsfNT/k\r\nkSq0Dq3MwhYuffvQzifwx9dXg6DsNtAvzXZj/8w4h5rRdOYhci9uVjC8ph8y\r\nNmKBbfZBu3MSTmYlHkMNaBx1biAS0JHpNK/MFIHEy3Y/g/CnlnAiU0ISLEPs\r\nCWqSwLlegSfMH+aEulgNLFHlJE8ZGwHzqCDtooFAvl0yY250FfuPdUtb0fhI\r\nNtvlXJvpiiP6m7Hh2tgHbi5092Hvpj774/yt0X2YERi7HOslm3Z17L73ssy3\r\nTg5Cff6KWlBWZy3nz+4TGd55Yr2VojCpeLfAuBvWvK/EM05g+BgHy5+141lF\r\nY+CfPGoCHCFQ5YnhOrV0UozGWWjIhjV63T8=\r\n=d9/o\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"fceb62aaa361c04ae0a30158d529c7e6896b6f9a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.cd5bafabb.0","@material/rtl":"15.0.0-canary.cd5bafabb.0","@material/base":"15.0.0-canary.cd5bafabb.0","@material/theme":"15.0.0-canary.cd5bafabb.0","@material/animation":"15.0.0-canary.cd5bafabb.0","@material/typography":"15.0.0-canary.cd5bafabb.0","@material/feature-targeting":"15.0.0-canary.cd5bafabb.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.cd5bafabb.0_1657130063962_0.5874604725096688","host":"s3://npm-registry-packages"}},"15.0.0-canary.a02fe49d3.0":{"name":"@material/floating-label","version":"15.0.0-canary.a02fe49d3.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.a02fe49d3.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"86c6e748fd3ef865d0649c91386f8380ddc98719","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.a02fe49d3.0.tgz","fileCount":33,"integrity":"sha512-Ntm6Ikh1ocAm0WdNZIfP5fwg5TrjDgTdrHQgqEdXzOWFSA5PNP1vqf6JwnlLEcPY1aUc32+Hu6U3dx+3IZ//Qg==","signatures":[{"sig":"MEQCIAGxbmezxrYt2wa1ltRfmIGr1FS/cF6Iu+uEBALTweUbAiAdjHiQzvRiP0oe6M0nd8MZEMyazc1GGjbv3Tii2hi+hw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJixdmYACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq/Dg/+L8bCE0w1X29AD8zoswVlJw8l/fnbkFSzX6QwNIvrGEEpeg6k\r\n/ZaE8GwP6gQAum1NXVu8jeGoUV4lyJ9yzXwbARCMIQJ4TWNjjvcm3sDIdavS\r\n2Ai4Po22Fpt7FsoXLPJtYP4CBJV40EfqLa9Z2OGkwLS4xhKU0MPQeVxLTCzL\r\nLdx2/tcRmgzvoa/MA0fDq5Iskf1UU/KJu94uYUG3Cfh1FeMiBE67D00jALGS\r\n4Nf6y0lZHqnkM9gdlmuRCKDW/0DcOlmKBGVQ7fFjZsnCaIUSOx6DXSphvW9n\r\nCm1e9CsdOpZzUnI2ehCrc2UzxGj2qz8uMecy335aiXwcDHDvZR0sLz4ObmAx\r\naTupnXEDVb1gHGZs03XpFyeaYHrVG0mMnvO6rjOX4tV8yrV/4t1LlZ/GZzP8\r\nECtsxgXGOyJp0Z1TMTq32tt9iwHHq/wdyWTOJbtI+PkD96mSG5uUt3kDDg+G\r\nizifpCfz+s+1Qac3eaDmKrfxv36FZ3o6K9dObe0qz3PeT1OrMdeJMkTukwb3\r\n6UK9dzA6v1wMsJOj+5yfwblz9+7Vq1We/GM9U/RZJ+PN0gPy5ZoiB6eU4AJj\r\nksUiZIUX0DmcMSmbF277MuOweDpsRo5MI/OKxqacarH85oTEWZQSG0e4Fe0U\r\nZynvdu7LG83RtcXLl2LtY6KTiFmbys7QUBU=\r\n=E4iG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8304e794f430681d03b9d2d3193e635a072f2d8a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.a02fe49d3.0","@material/rtl":"15.0.0-canary.a02fe49d3.0","@material/base":"15.0.0-canary.a02fe49d3.0","@material/theme":"15.0.0-canary.a02fe49d3.0","@material/animation":"15.0.0-canary.a02fe49d3.0","@material/typography":"15.0.0-canary.a02fe49d3.0","@material/feature-targeting":"15.0.0-canary.a02fe49d3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.a02fe49d3.0_1657133464771_0.918800481381336","host":"s3://npm-registry-packages"}},"15.0.0-canary.826a3d8be.0":{"name":"@material/floating-label","version":"15.0.0-canary.826a3d8be.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.826a3d8be.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"efeaadb84e650f914bb7d7c82bbfa8bd9910fbbb","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.826a3d8be.0.tgz","fileCount":33,"integrity":"sha512-jupFQrrerDh0swO0l0GWo8FmvPc0GBY1AhxPROGoCiell2yFTj3s8s/bG/eHyCNV1gd02DBwYIzcBzuORSHCQg==","signatures":[{"sig":"MEYCIQCnDciqQDtHGfbHWtPLXT93mywLJMSWnEXmzjI1KYSowgIhAJARNcLxQiIVbylu06G3grSwXMmuqWqiGk3qVI/QcnfJ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJixeL3ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpyRQ//WnQ2DKGill79aMpRR+Kzh1aCIH+IWDTpa0wWQ9SwSStyxIPp\r\n+/nG5W8CvcD8onldRgVqmAdBazuIw++ANXUWkkeXadbStpwGQdNeHeoqJfRY\r\nLBqoI4XBMXLzmJYV7e9lmb4Zgz9RpC9T8u3StMagEeqQ55gHa7fuljzXvHuh\r\ndgZcGU/Bu+hHFxfIpynWdYWEoDZ8RbXfRfjUYN+D2jRC7klMFXHBNNcd1PWv\r\nO1rCHEJ2+zpgA4YBXRcNFkv2g+SoleUJqBFATyAqBFbL1RXnssdYNKByamu9\r\nG/wZhyfu3NAicVVK0iaSfL2aLIyg0SF28ZI3ttAJZYG5qHKg54c2siN4VYPK\r\nr6++Db6U9V0JQCejz2Y4Ru19+gfIXHJObDSLNsxEvHbjbqtYlU7S5Kwrkv3C\r\nHWuSe026L5sXp++emhVBe0zU9+AyDG96/KTke/7Jd3dV1PqXeNPjwX0+u0ln\r\nFMmO1eexbIhzSVNqJ+/t6HeELibVD1jtmoClrXlJa5Q43VQJUICSnBY2KesL\r\nZJrKCb4bS60fjow9UD7xkac9wUhXYHlbMbZmo2ZVR9nvfVfOjRKCEhyNTVwz\r\ngN2p5CYCY86yssvWRQPWAesHoW1lmu3ABn3Nzyv3oSFxpX2lboBt0fj2HuwT\r\ntK7j8c/tmPR50sR+HH8rUfwcVebgTxYXbOE=\r\n=j7Ch\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f54c723431e97d10fc1886f271ed251cb10209ce","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.826a3d8be.0","@material/rtl":"15.0.0-canary.826a3d8be.0","@material/base":"15.0.0-canary.826a3d8be.0","@material/theme":"15.0.0-canary.826a3d8be.0","@material/animation":"15.0.0-canary.826a3d8be.0","@material/typography":"15.0.0-canary.826a3d8be.0","@material/feature-targeting":"15.0.0-canary.826a3d8be.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.826a3d8be.0_1657135863195_0.28001178535117943","host":"s3://npm-registry-packages"}},"15.0.0-canary.ef276aa93.0":{"name":"@material/floating-label","version":"15.0.0-canary.ef276aa93.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.ef276aa93.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a255e559999f9caa1a9743e022e9d0501e9712ea","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.ef276aa93.0.tgz","fileCount":33,"integrity":"sha512-7x3srbumzukZZApYYq28+pfrtTPUu5GD2ULRxYP5CTjL1lT8UWj/i9WrM83aXtoAO/fEWCwkH9ibdLL+FlFspA==","signatures":[{"sig":"MEUCIQD+uDMUq1j97JOPohk1hRJfm5+AhHQgwj1P/c/pEzMc5gIgUX7v4ndmZFNJv4WRukZPUpU+FJx3n+38kxGQu8gbvMQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJixxGvACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqj/Q/+Na1cMrt9VrQ+hOZDa+5MO9XoDlTkkFYAAB/f8BBBBb73U+hj\r\n6sNPiW2cg29LHLryGIlEXK1ikN8MKgrlk8h8owVTbzl8JJFW61NL0CKPmZT/\r\naTzX2qYSA2BvJjBoQjFziZKGhF57mEoFBspG6d9MXuXe2FhUrLonnIwFgBh7\r\nBAO5kTYV7DIxOfRbt+9ru5/fTy4XrLLRunoy0u+N1+XN6P7/wAGO50YmPEM4\r\nGA6cIjonKz5U/cwg+/bJJk40F24ZkhMwZZe2F+QaM6ooZvJ/JffqUZnddbgj\r\niaeGdtp2JIHICc45uMr/X5Ty/MguaXZVSa45Vz73zP4Rh+7UfoDWZpCsV04g\r\nDuJ84RcxzXxyChgf/mruxBHw6PrVcvEqprFA/U4zETybr3Oo8EsCcyujYCYM\r\nFarl9lfVIGxlLTaaIBw5QqTKIAmehHhgBIOEoVoA3NgpewL+r+2RuwJWQQma\r\n4Sd3EFaReARAMUWJUIS/6loa5R50o6pe5f/6od1yuh0oR+UiIUcxEnWwAisG\r\n/bCVpo/Sqf1LzG7S8z342UykjQ9WMSFpKgkzqGv17weGfbRNyi1CDGCPl/O8\r\nEO34e+MXVDrij2LqiSOy0T8fgNZKAmZZ8x2lzP6a1uu4pAip4EV62f+ywE5s\r\nAMUAOl7nGNf9+Q1V0YDWLSFdLYEOGndrmIM=\r\n=vLV+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"502fb9536e29ea5887a9fac4aaf0c9dc2c732e61","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.ef276aa93.0","@material/rtl":"15.0.0-canary.ef276aa93.0","@material/base":"15.0.0-canary.ef276aa93.0","@material/theme":"15.0.0-canary.ef276aa93.0","@material/animation":"15.0.0-canary.ef276aa93.0","@material/typography":"15.0.0-canary.ef276aa93.0","@material/feature-targeting":"15.0.0-canary.ef276aa93.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.ef276aa93.0_1657213358960_0.054879419239056704","host":"s3://npm-registry-packages"}},"15.0.0-canary.59cf61d6b.0":{"name":"@material/floating-label","version":"15.0.0-canary.59cf61d6b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.59cf61d6b.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"8ca93824e471189e25319420a4bc341ff6b6afac","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.59cf61d6b.0.tgz","fileCount":33,"integrity":"sha512-f0P0BY2f3x6WtkttlCWbK75+AQAqYmBf9jVFPPRywnCmtFxuIs+vr6idvMM0Occ+Q4kcW8RnfYD+DpLCG/P3/g==","signatures":[{"sig":"MEUCIBtmBBgbqKuk4dCT23XJZhxC7pP84KE+tyhdzM42LioFAiEAwtbKo5ExO12VHN+EvJsV6HuDUhycZMm0MDOUnPxiUtU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJixxhtACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrT7w/+JWaDJT4EHeS7oXU3FneG+JU3Tm9zcvBxnhPE6g82f0BsQP4i\r\nZW6xgQZqGImkTD8xffg8iYmKG3Pu0AgKPqrxiNH36bznmcKNXsVfcrQSi7lX\r\n93Gq3gkXHkbxBSw9W23Fd7nuNgS10UPxBf+lTtTxvShMWKR0LYPH3C0qqwgG\r\n6GmF8PRMrEMDCCPS+m2pHhpoct5XGcUCCsEB6Q78hi9DOr4xiN3iWmw8ZAKM\r\nZ47G2AN2LfV4dGlSKuK+V1bXmxCHt0D2ckzaThjamTNGiyVraFKSZ0kIaE7d\r\nLUiaXwuzRyp+F9GnTwO45Hwycuk5ZsYk8uRiaBxi+kCrMDofGqYapIq/ACdB\r\nzYi6RKBPpet1Txo3klZ4W2QziPvcR8NTL80ES174RqSV+A3WfTE41bD+lTN8\r\n8WZIACwESf6Nt57Nxeqh3E0Rg5nkXPl61/z68U5TR2outWaYdgCfsQ7vZ8t3\r\nSJy3BUDvKiAF3+2fhNc/+zJmiRq5YliJRW7SKHgzsTXxui4rM/gIPqZZLDcF\r\n87RWGkfn5cYlIHL9HE/BLuEsxgRvvLzjh9zymiCTh0LXV6wfWMLGTZnN0Xgb\r\nTR2o/uyViwV03wYWEhWVXCX8kNgsXTWh9wcqATdQeCxjYQzyjENe4Rf3zOqh\r\nOaez8xZdmZFu98kMGOR+qc6b9pUJXlCkN2A=\r\n=qfRs\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2f27bf33b194929683b4faa9f388325b07b408b4","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.59cf61d6b.0","@material/rtl":"15.0.0-canary.59cf61d6b.0","@material/base":"15.0.0-canary.59cf61d6b.0","@material/theme":"15.0.0-canary.59cf61d6b.0","@material/animation":"15.0.0-canary.59cf61d6b.0","@material/typography":"15.0.0-canary.59cf61d6b.0","@material/feature-targeting":"15.0.0-canary.59cf61d6b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.59cf61d6b.0_1657215085215_0.851096042482308","host":"s3://npm-registry-packages"}},"15.0.0-canary.8647092f7.0":{"name":"@material/floating-label","version":"15.0.0-canary.8647092f7.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.8647092f7.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ee23266801e59cbb2c7655b4b10a7ff75b68e95f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.8647092f7.0.tgz","fileCount":33,"integrity":"sha512-qe5mIx3c2qam5se4ka3xk815jHBb105RNqlCal6E/fhsaoyG0F4pVleep9GtOmeLCjOrtgNEKjgF6Jkss3189Q==","signatures":[{"sig":"MEUCIQCs3FFlVggkuozJuyyEtNwubKtHx60cPv4o5pMW62mlbgIgfMAoGf/kjFghlfQlZwNOx8a0MPeKuHFO6CAMMRMwS+Q=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJix0RQACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmrqvw/+NKHQrBR1I5E0YKW9U6hvJL1IUVaHMd/+82Il34gerWugBsEr\r\nIocrdXxissbzQb22lUrsPUb57enbu8L6FZKDQ7qUoG44PoMmlJiXe5/rtSoW\r\nXQp08y/13a9fQfhDyonvQWucxOwtyiAKVZrzC8FAwm7LVTDjyzssCnthnnl3\r\nih2QDi5q6Fee8c81wiwG42roHn29mDaPmLK+nGHGDPGDUvLeCnZietPpviXs\r\nm+Kh5nyr6pIoXV2CSuMT2lWaD954lwJ6gBFIIbxrbBo8rSFH9TwyQH3fZFYb\r\n/MIWT+VYj7Q1UOIpENUabnXBYQpbya1oSB9x7hvx4RCfo1TwJED+xtv6+UuI\r\nbES1JD3q9EixqE1cxXM6jPunmwD90pKVakmei/yc25qhhIs3zmXqWcrf+BDT\r\nR/RX8Hp0vBQjnbOL2UbZUq3l15QX9EBSgJrrDq/A4mj5T/MGWUTgqDwARIoH\r\nQZ5F4W+kSAIDzBCvixNKALK4ktyQP1jFKLbIMCJ1Ua9zTs+o0WiBPev3yJEn\r\nLopo1EtSDs1JH5VHGcKtFdgoAI5jIzM2YtYb/mDpjGl+VBMDNfYSQwHnMcqE\r\nrJQ3DusHC6OjH3Xlzj0acvKr8Uj4p4HIFbbYAklMeNektRwip74dJp/BX1Gd\r\nTdjRKIL6lZXCpekJTFVG5zMhGG6zk629cLo=\r\n=pdby\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1edf72197ddaf5b6318f71205888f8ae695e9b29","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.8647092f7.0","@material/rtl":"15.0.0-canary.8647092f7.0","@material/base":"15.0.0-canary.8647092f7.0","@material/theme":"15.0.0-canary.8647092f7.0","@material/animation":"15.0.0-canary.8647092f7.0","@material/typography":"15.0.0-canary.8647092f7.0","@material/feature-targeting":"15.0.0-canary.8647092f7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.8647092f7.0_1657226320465_0.6397773304677781","host":"s3://npm-registry-packages"}},"15.0.0-canary.02ecd4d85.0":{"name":"@material/floating-label","version":"15.0.0-canary.02ecd4d85.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.02ecd4d85.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"dea6bc6e5572982e14fa85644a477a2a1d19fff4","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.02ecd4d85.0.tgz","fileCount":33,"integrity":"sha512-6qzrx/eehliv1EUPUubPKLaJggIMriONiYUK9snsAmGkhuOguguhBE/rsDar9Ui/SMGDGvWDkj8lDbaWmGCFpw==","signatures":[{"sig":"MEUCIQCReb158URCrIuKVU3RG8g28hyxb3nQRpeI2tP5hT5JqQIgUSzsDQ99kDjKOvgmT8hEh+E9ggbSpz+BZvu1VQfFxgM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJizFI0ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrJcw/9GAfykqNSiAppmbdW5t5HR+7J4/kUbo2Oa20PtPZXAEiyMq6q\r\njhDFxZJRjuPNUEfQHnxKN3uxjLcMLuBHpDB+IsY6KdR4Rfg/CPMiyzHFnpt2\r\ntwf35eJITyRjrGNIbeJztp+J96E41ZjO0LQFBItnJR/9dbE7MM/kvg5JUy1R\r\nkwQqeLHvOp3/fDdeujccIPOsM1x/VWQ4D5fCUsoS2RYNWepZYRKSJGkcIWfx\r\nwCfwTeaxvghcwDet2QbrqQ+I02f5mFcCG1BuUJSC+Vl7ZMliw0SfjaOWQLLd\r\nbf2yYUbLqBTLnk2qJEp7Fj0uV8/rMrLN03hkSCeUCCoZtIzdYdoJSCpSSsl7\r\nhAQfbzQhHpB6AkC6NowWOA4CTzUimMAx391+8ImgQTmwQKJN44sZqzLke1RF\r\noJSzti2ILTLvjJJUTXBcbN/SThbvKVjh7cx+7Ra1gbT4wKmNSBqLRPPSv+6H\r\nHpZpY1x7ulcEcWQIJ8Co+vNwayrshURR12rnpELBW03PxXemtxvwdc8MM6+b\r\nW4yI0xJALsXJ2Exnl4W4ND76XCfc2Wpvn3GUXyfxQPAhdfh//EYTzfLw6rJC\r\n3p5e5C6NswC/zzEOjgY5sCh93w8J8KVJ2yHq1uVlD01oVExqQWgTo6ylYTvD\r\nkffMU/1GicXxbfRHfYoUMlSiimfM24nzgok=\r\n=E8Je\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e9bd9b1837b6df66731c0fc9da61877874518d2c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.19.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.19.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.02ecd4d85.0","@material/rtl":"15.0.0-canary.02ecd4d85.0","@material/base":"15.0.0-canary.02ecd4d85.0","@material/theme":"15.0.0-canary.02ecd4d85.0","@material/animation":"15.0.0-canary.02ecd4d85.0","@material/typography":"15.0.0-canary.02ecd4d85.0","@material/feature-targeting":"15.0.0-canary.02ecd4d85.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.02ecd4d85.0_1657557556533_0.4245338277460704","host":"s3://npm-registry-packages"}},"15.0.0-canary.63d3a146e.0":{"name":"@material/floating-label","version":"15.0.0-canary.63d3a146e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.63d3a146e.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"761a3c85bd213818861d09b1628a92132de739a5","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.63d3a146e.0.tgz","fileCount":33,"integrity":"sha512-qZ8A4aZA4LTzmcaJy3n5P1WfmnAUlI3kKEIh3HV0mcgJgXwjuPbY1Bu9r4HnHWS9ftdu/RHWpAIUfqb5bLmjvw==","signatures":[{"sig":"MEUCIE7ZoUFBIxkLoGsg9l+kWBNvuCzdYWXocbkx3gA8hSXvAiEAs14aJf0jNIo4juh/tzx6+iMFPE2HY7bDBKpLdQoGVw0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJizVzfACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpRbQ//TTOOybdj6EmcuX7K6HY7QlpRKLOwGnBBdLB2s5TuaL/oxnkV\r\n6NqsOlfNT8huXxXgNGB9f34oXucTjn1+thRMZPvFiH6QY+WLEHpPjLzKSDFa\r\naCGZZ9CPGeLb3E8TFHrbVkypDwFq0Mi4YlNq91MwC/yvXxke/srBdXU9ga9q\r\nPcvvb1+MIqGkpnv2sfs0SZ8yYBIrenYzw1IzrOhMd/Qwgg1MksTHN+6J8BAW\r\nJ3xRNkhubp5uEegUuvzq4TJQn1PDyN7bLMj0oBoVsIyERhhCnyBdiSUlyV9L\r\n8ccH0WBIk4PrEMgAG21QslCBQDU0BA80iFPV07w9FONIo8cYOyZAjR+HInEb\r\nXBgWYoOSjL6I8rk0sX+CHwz1csBzumZ7CKyIbT7ruvxSvqS7jXGF9Qt7FQ6U\r\nzw7eaJ7V3bITElQ5BJP4y/ycv006t6rMfxgHwZb1Q/lVXzakCLvk88kjUgrx\r\nkOSv9h5E4dEM8MUKMK/1wvr8IUo398/CRHKMjvbRBbJEC8mq7hNJSRzhd6JA\r\n6Heef4jTHKQDD5/fhqUEWF8RvEkjlzUoInrW6OuJPex1RX3TjNtYtrS95T7R\r\nsBV6Z4Qps5terRTTOEfw2KlfIeRV5+RngyBhDpNS8FcSbg2RaWAV6zHnbYRp\r\nbKqUFxatH+/S/52FuMnhq3sdixb816nwfYY=\r\n=08v9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"593f32d351d8703bd0422f65b3651e55f97fd31d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.63d3a146e.0","@material/rtl":"15.0.0-canary.63d3a146e.0","@material/base":"15.0.0-canary.63d3a146e.0","@material/theme":"15.0.0-canary.63d3a146e.0","@material/animation":"15.0.0-canary.63d3a146e.0","@material/typography":"15.0.0-canary.63d3a146e.0","@material/feature-targeting":"15.0.0-canary.63d3a146e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.63d3a146e.0_1657625823525_0.6875146650222581","host":"s3://npm-registry-packages"}},"15.0.0-canary.88db01990.0":{"name":"@material/floating-label","version":"15.0.0-canary.88db01990.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.88db01990.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d4f2b3294a8aa75c8496e529c8950e87a5e87ba7","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.88db01990.0.tgz","fileCount":33,"integrity":"sha512-E5e2sLORk0ZIaVZqAyzXg8nYeb6RLH8AK15/UJRslSa2aJQu4TwO6pHdHg0VghEkYjGeP4CKMiT9EDBac0EmEw==","signatures":[{"sig":"MEQCIFNRZk8WM/AMBO6GGCjn9f07ZeBXezD84Tvohcssd9UvAiAPwvgwPCfg5ymPc7QmQ5jHvCJcpjzIrhJFzI2UoduTRQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJizV2TACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqUbg/8DTBSccZRbGQZhAjqdegx5/8qBoRB0W43SN8F4h86sO46FlX8\r\n5LSzfN3XGb3dIzbWz9vdJKAqZeVY/p7/wNARqynrJ0Se+TIpJ3D7Peai6Rmk\r\nMHMFAbmsVd45CIrPTI5ZpvB8sVWsc9ggC2q/v/uTsJI2cPzxHOZXeDHLACW8\r\ny6SlLVl0jhAtk9LMyRQHEGDRd5pQZ4QgSmYxV8ef5bF8dJVWNjkdPg39VmEj\r\nCP7/41nLDcgogvd+lI7PYrfWohIiJW+vRj7khK+MbcNj6kprSPlA7a+AoHQ6\r\nDRmtMbaAZ+kXCV5GPd8ESHzBVKlBjaNnM75KbXiGxSeiKPhBjo0lfgsuTFwJ\r\nEGNxB7zXAu9/d1VnjUMGzSo/7/qm0D+Oq7y7KSDzkeG64JiFAPAW0fNAOLOC\r\nFiTIekkqAjC0ywrEfaSysgQkLdch5sRD5ZZA7oFQRvCqq3EFmL3Qc40HQ516\r\nt0mvvsqW/AubLTejAusuzMJ804VyESs3JJP/sXJSYRIRt+rUf24ZtauSVhL3\r\nTzXJYjah1xUoAZaxdQ3Fzp2Q8D8O3amkLDGAX7qcmoJ1i4lvARgO69J/X6af\r\n0CWDZdHNxpucSdhvtfebEBfDRH6WvfOISDAyZ1xguNcrAJHl7B+mZc6iFhDU\r\nYftvmocWBADW5brBhrAEAnAKbRnWWV1LfNM=\r\n=LKoq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a2570f15e2572775da6e1894e5310c107a703ea4","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.88db01990.0","@material/rtl":"15.0.0-canary.88db01990.0","@material/base":"15.0.0-canary.88db01990.0","@material/theme":"15.0.0-canary.88db01990.0","@material/animation":"15.0.0-canary.88db01990.0","@material/typography":"15.0.0-canary.88db01990.0","@material/feature-targeting":"15.0.0-canary.88db01990.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.88db01990.0_1657626002816_0.6787587948846763","host":"s3://npm-registry-packages"}},"15.0.0-canary.6432d8fd7.0":{"name":"@material/floating-label","version":"15.0.0-canary.6432d8fd7.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.6432d8fd7.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5018f589f72e4b9065a1d574ae2f418fa27391d9","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.6432d8fd7.0.tgz","fileCount":33,"integrity":"sha512-v6H2E48YsHUwNJrv/gADlUndgS97fPUlJKfhl9DGM9HVad8if1A2hjJEkU4sTu95bY2T81sBG3omhADD3rdVXA==","signatures":[{"sig":"MEUCIHwRCa1GFXzHAtk6VVZ5tIWK9mFS7oupcaWsuxysKYUWAiEA0S91jDT1AGI0zAgPC1Ani8En7uhrqs/1T+bYViy7nOI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiz8W5ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoRzw//eMxK8ujD96z+wWjN91ptniHM1MOiLOrZN7aOc056S2xoDr4w\r\nOnFPqu/hBCkYNjdygWMSknoNkF6780eRIkq5ggp9EHiDTJTmi/mDrI/F76sI\r\npk5UheTbvWNTwkxNvkNKfHtxbQIXluZeRw5Ic99SF4YC/Qq7WfMBx8ujNcyC\r\n655LeYCqg94oUtQqMTsOzpuvf2woNsAp5kWmT8Csy+F5pWuvhkFxAgUdEQjc\r\nvabvFB/n/wC8ZfAU33sfxHvpcHldCnB6aBHml9ciuy/1I0Xb9P1lRKoDpcwH\r\nFGKq6JN5VHt72PLdMT1S3GQULmTM3J+UO8l45GqjkRPS9q9dSPV9/D9Obwuo\r\nA6zQ8cMDQmz4PGtr9yQuK7ACM2QrTCGMQz9p5Jq1qLcyUCftla5+BPyATXXr\r\nFGqaVRMLxVWl6IHdq4NlojwiTFGnZE8xECxFngjtDpRPpMQK21BSvlyBod9E\r\nHpTiMZhCo/q2GhHY9HT9TUZLI7FpNZjapYmrTaGgm44dT5AYT6xxh1wA6cBY\r\nNc5sHXEAUdNJ0kKEQKGDa+ECBp1mF42JKNqnK0kfLO6UyqRQcdwV6cNknGZO\r\nToSYGCh7ziBCofH5wrCCuMuZHru4+2Yz2xKz7n7GLSfoFl1RWfti8f1ygw+1\r\niXAIwAjqclrcmG3aDtOMGvruQVOoNvG8rls=\r\n=8Ple\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"307aa53d6ea873bb978456b538f97f9922496798","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.6432d8fd7.0","@material/rtl":"15.0.0-canary.6432d8fd7.0","@material/base":"15.0.0-canary.6432d8fd7.0","@material/theme":"15.0.0-canary.6432d8fd7.0","@material/animation":"15.0.0-canary.6432d8fd7.0","@material/typography":"15.0.0-canary.6432d8fd7.0","@material/feature-targeting":"15.0.0-canary.6432d8fd7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.6432d8fd7.0_1657783737132_0.7833356148632289","host":"s3://npm-registry-packages"}},"15.0.0-canary.085f9b25c.0":{"name":"@material/floating-label","version":"15.0.0-canary.085f9b25c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.085f9b25c.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"defa41b6ea1bbb848db16968e2c16a08fffe2979","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.085f9b25c.0.tgz","fileCount":33,"integrity":"sha512-YgjsP/udIDsThGO3sKu5ads3LGQmxzV0galpR26PKFF3HlXcAt+yCz+GBPRwgGNHlZwc+QI7tifm1jsf2ihyRA==","signatures":[{"sig":"MEYCIQCEUZfQyBPCFm3HH7HJtp6SqX1ZbixboSiFJFYV0qQrAgIhAPY8fOZxCPb89GFFV03URJrrlKBCuGHtgXYOsYaKgagh","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi0EWzACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpJTA/9F4Jxojt7OrW9+QKDm7HMV6ng9YCWaKasHygx7cfD/0lwYZd0\r\na/GNZhs8X9+f7mwj1TdnU5eXJBW6s0SOTpdhUd3dsWLHFQW9kNnEBOJcAYCj\r\nSuyN/tH35sbpxMp786t2L0Bbha2xNl5JklhJY64TbXxm0I+ApV6D6ri07hhK\r\nxAV1hZe5BpCVzDXbu/aXxHfYOqj3pDFMZ589L7Oz0NG6+7xQGdYEwQmT4xXB\r\nHXqlMIlKGJwuE6sa3LfVTP1wIA1J+NtulDRc5NfmOVOrjHLy7PR9VGtih5a4\r\nS3c3PokyqHrzWG4GYgnbCdyPelMT7ZGV8yD0VgPThi1v1XNQKz/S5HwZvElj\r\nfIQRBojnFdePuozNJMz5nWlIJClj2EDbNzc7QqzJEjTPCcExAjfCYe8U6yPu\r\nIu9+6XaqhNelwebhFQiIzWGLLdBLUDf+nBHyUgfDJCCJWPmtz4uDKEX2DPjW\r\n+TUNbRgg1cqwB0tSKFJf+nVJsEaY4h3pzPscU412g+Oog0tqKMmqTeQ++cdE\r\nZTE8R6E1ZAlCUlh1rKxZzfLjzvX3RvW+bW6EUe5c/03iODRQBG/G11qZ6xjC\r\nQmZ4/Gp+uE3tGr6KCEGKI8qrgIqDzKO64FN8ufyiTqNUcVYDL4fzbIrvqS+U\r\nlqw0Awja+Sx6d+XA4yi4bj3QvkpbUg0TBNs=\r\n=1xqB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"766a8d5f5fc7e4e022835f16c6ecdab8d2ccf071","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.085f9b25c.0","@material/rtl":"15.0.0-canary.085f9b25c.0","@material/base":"15.0.0-canary.085f9b25c.0","@material/theme":"15.0.0-canary.085f9b25c.0","@material/animation":"15.0.0-canary.085f9b25c.0","@material/typography":"15.0.0-canary.085f9b25c.0","@material/feature-targeting":"15.0.0-canary.085f9b25c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.085f9b25c.0_1657816499129_0.30409814982304595","host":"s3://npm-registry-packages"}},"15.0.0-canary.39f9424b3.0":{"name":"@material/floating-label","version":"15.0.0-canary.39f9424b3.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.39f9424b3.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5c5095a2fe4721644742cf7cb05d017141d1984f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.39f9424b3.0.tgz","fileCount":33,"integrity":"sha512-aWh6dgukTQ/247EYEPWM0jA8C5ODbMb3epIULAHwGZd9OIV+Y+X6AeH8nvn1FcWr41kc1rXt6YlrCg64dMSvHQ==","signatures":[{"sig":"MEQCIEj0cwpk8iIONvXZJ7yTsq1BTgPzS9mLkPDpzFY1awqCAiBXFG/XzFxVrjTzNIdVkMN/CXTl5a0xXocw/wqQMq9e7w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi0EzMACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo79g//QP8VnqaIplDw7t7XcRqAOMoGnKy2HDtzYGQOpaby0mRZgTtn\r\nFunwHYLvp7PhIMYnSAsivBDaHbW9sGoZUCH9YVW6oO4Q8OeA08i8M4nqZj3S\r\nwekOTth/dS0hh8h/aXERIG1QxUP8LLqCsNrvnwVGcz8lJ6N8qOUhYf7lQNpp\r\nlDeMUnl/+/oVvXdRzrPShPbnWe6cRpg/7DlPwkPBLWomgIzcblKJ3EUJ3VbN\r\n97Hagm3cltOIlImxjxKAJawzDCTt/fNbSiuPbrFqUY7whnfHbO8uUArXMFgQ\r\no2FuTRQwLKc7XbhOherVH8botCZXe2ZSpNtmK9dP1/Ft3MF0UMN1gQXWP9Dr\r\nIWYPv3ayNuPeT6iB5/fd5J5x1g2gb7cs6VwttwKUErz81+Nrl1c4k2ESbmTY\r\nEAm1bpX0yY1dXPYdwncDz6xL+J8xD7uJOBqnolaSmNUSNyHdvEkgo2d4ILyF\r\nTmVTj9bE64C6Se2HT4aHmARsnwFOIl8p13RVt/toGh/Y4ygLhOKt4/qJTASS\r\nyCNDItN6xGQ3Yu1FkASKFg+eipQ6Oo4oNqc/sYcKF5aLORckX6cx5pwJWRai\r\nRe4cVldUEVuxrtfJCX6pZm6KBaWBWVYi4kfZXKyHNqDB69Bo7FVr/42cxarO\r\ndqe5tJpxEjUdEhBzqr+cJr+vwECYu0hjdaM=\r\n=zcst\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"62e726843fd90c6139d8ade27db8da6ded6e1d77","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.39f9424b3.0","@material/rtl":"15.0.0-canary.39f9424b3.0","@material/base":"15.0.0-canary.39f9424b3.0","@material/theme":"15.0.0-canary.39f9424b3.0","@material/animation":"15.0.0-canary.39f9424b3.0","@material/typography":"15.0.0-canary.39f9424b3.0","@material/feature-targeting":"15.0.0-canary.39f9424b3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.39f9424b3.0_1657818315848_0.7889671651791854","host":"s3://npm-registry-packages"}},"15.0.0-canary.ae9fce587.0":{"name":"@material/floating-label","version":"15.0.0-canary.ae9fce587.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.ae9fce587.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"57fc8f0ad5822f5e9e30045c714774e5aa548f8f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.ae9fce587.0.tgz","fileCount":33,"integrity":"sha512-gKw+6uC8boIzRixWmt12U6KwjiCcx+fbu+EaSrWsdN09a7A+ufmrulY8dDSXUWWv+cjXybPImctrIXEsbBGNdA==","signatures":[{"sig":"MEQCIC2icv8Zfprqwb6DRcgijgYlY1/cjYbUEyIv4sgnvC3rAiBhxwts+oxJfG7hPDLUGtjvRGZdVaP/41xEn8jeF5eAWg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi0FuNACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpUCw//XvWDKWrnL9sEHc8/8hpzzSvmDMLEC++aiVwU9t1Q2ZAuPHlA\r\nGeNFMEVnnxsOJ1oNV/M8rVkQnCwnK6ZmdOuIAkasMeeGtQszamdRsgmICThP\r\nWYPVx0sCXN9wuRo6hilZMyJisztO8kU8cpuOfPlJeaL5gXRxLCRnwiX/pxn4\r\n1LRzgHDQRQM1M6Sq2Ng7B9OLEWZx71+W3kxlc8qgsjAFchfwTqEx8B0ZJqM4\r\nVlWV1WNG0EO/NOThMmxqSaAinSDtNUS0FDeAk/At+79A1zJMk5Ako4+ZsHGj\r\n1VtNwqvfjNRYHUouzwp5GtoA6dD4bXmEIAc4YDPnoHdEuXkpVyScaY6CG7eo\r\ni1bHd+TUhPa1jk8LvIOide/ElPkw/FH45JAy5TKBWoqe8NNbJCms7r2qBupG\r\nJLjqSlqGRfR3GfOQ+P5Em+yBzvthdzXXDx8yJpud+E291QkvHmgKBVsI+agj\r\nps6yNEb4P6+e1h3xslYQBZZD1slMWtdA9rXeSCIkr2YV9N6jGBiql1nQNNLB\r\ncocPqwp246qHTxmBwdpzrE7AF/VV+oFJhhBOEfqG0NtRuez18L8FEYqWItK4\r\nlVg3nj75A+zTP6pYGh1cqLxdpRvwLODMGAoBM/BlCseWNnGT0yxXi3EW8T/5\r\njYzYg+MK4tLnmqvtVSrqsXzhQMimPq3T9gg=\r\n=XcJe\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2d55d2ded8f3ebf66d72baffd67452a8de349b3b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.ae9fce587.0","@material/rtl":"15.0.0-canary.ae9fce587.0","@material/base":"15.0.0-canary.ae9fce587.0","@material/theme":"15.0.0-canary.ae9fce587.0","@material/animation":"15.0.0-canary.ae9fce587.0","@material/typography":"15.0.0-canary.ae9fce587.0","@material/feature-targeting":"15.0.0-canary.ae9fce587.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.ae9fce587.0_1657822093249_0.4411438748571037","host":"s3://npm-registry-packages"}},"15.0.0-canary.1ebddc343.0":{"name":"@material/floating-label","version":"15.0.0-canary.1ebddc343.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.1ebddc343.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"73d8a2995e81c7107fafe9662332c6820cee14ba","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.1ebddc343.0.tgz","fileCount":33,"integrity":"sha512-3LPg2N+SstC2j/toYSCV+6ZV2zLMg+AiGt2+3z/VyiOZMt9pxjGS1osMtniLi083ov8qM16mztQVuoyYic0vSQ==","signatures":[{"sig":"MEQCIDVGe0Uw0AB7CScZzpw7Otas56Kx/cMSzxGQ7beW2+VfAiAzkho1tKBWQV6wW6S0vtyyauZHCqvvWGWLPo0WVCkXdw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi0SoTACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmov4A/+JvJegMx6E5Lgc9Fsbd/FG3c4k2Jzu9rHuBwR5aUhcX4z4dJn\r\nFXtylr3Z1NFBwmaPtXDXfh/l70rYTlL6yYkUf1S8o4CkK5QDvuVA/y/9Q8TB\r\ng4pflJ265RlH0crHrLNHq5cHFBpCUkkAKXBJ+qFk/iroXhPOT71aSjO84yzH\r\nHSpKkPY+wDrhIfdNqkkaVdywIKO/uMwmBsjda+Ma94pUV0+RUylZ+DwNkTTd\r\nWCXGaCDgMSm9XbzCAQ5XbNJ+CjKYDlfdiIxb/ZrnGcaeYJHFN5B0uh1Dt/5k\r\nq169NJJhbd6SCrtvtyDoXoX9lUVAwXkCnQ83oS3nINz8xx7kYyUNmixpJyPz\r\nUkzdDzOYsZck/0ZtDdNqzRtY21n1jI4DYbIThmdozGRmR6Hkoey0HfCAj9rB\r\nufikru3uBTUVcYYTR0L6j5OCHpZsVnw7gKUOmXfqyVdmJRaOJsW2PHeGCWdf\r\npZ7zi2AAhIiI+VWs8/aDBADcU/Uin+PubhQ1pi/PRC3AkEGD2Tn4d1Vw/ifQ\r\nR+ixQJsSnlTqGpSmriZGQWyAQhXwMcTdSELz+s/NvWjDLguuqjInaidyjibO\r\npdkuYIEHK1E6GwofgM98gYGEZkjgsKmnZ11iSmukBbwr00HoKpDqn8lrVDu7\r\no+imSTBisOIZLRh49wOxcqXRcio9Jx2ibR0=\r\n=aUkb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2ec31cdb5e8e1a849368a3f352b213919bec43df","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.1ebddc343.0","@material/rtl":"15.0.0-canary.1ebddc343.0","@material/base":"15.0.0-canary.1ebddc343.0","@material/theme":"15.0.0-canary.1ebddc343.0","@material/animation":"15.0.0-canary.1ebddc343.0","@material/typography":"15.0.0-canary.1ebddc343.0","@material/feature-targeting":"15.0.0-canary.1ebddc343.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.1ebddc343.0_1657874962827_0.3223091577274553","host":"s3://npm-registry-packages"}},"15.0.0-canary.c5018840c.0":{"name":"@material/floating-label","version":"15.0.0-canary.c5018840c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.c5018840c.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c5c9db83f428c2177fc9bf0104ad8a20143b88a3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.c5018840c.0.tgz","fileCount":33,"integrity":"sha512-R/6M0+Az9eQ9epnOp5GxBCF58jH2yCdN8uALO9VObMcw2sqp4d7Ls7bapGvUCtW+yURs0Q54YPVXaoBui7fEKw==","signatures":[{"sig":"MEYCIQDL6nhQ3rPw7LWXtRX/dEW84YSxbnMDJrs6rYgKizABZQIhAJ5y4TkfAyQmBW5TBg5xs9LBldZBKrXNbCgIRnsrM4v4","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi1SsxACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmosFA/+NGpzN/ew59yA+jdDyYcksOWYKYt6CAFS113Yc9YVM1e/q9gl\r\nTEPj+uO1BJHsIcLnyLWoWkssrB8OW5v6TNMDztsIggd8vV7BYK44c7Spa+7U\r\nK1dPT8uvy2sbGOjvIh/1dR1FcwhYwGnGxrKs3SmUzxPylkdxpczi89zVQBKt\r\nG2ncbJQsnJMxhRPMHE8wRWqc1v7/owgvDt2Bz7o0sj9yxHdizZHlxXjZ58D/\r\nwwpMm3VNsLgihYRuMKptpKU/PiavyQLIxQ1O8kSI7zqIjTNl08VY7dkC8kNX\r\noucBWESyMXmBiz6lQbU2MPL/3lqZpJrEYaHZkuOY/IIhBWLKmH2JKgpHPQp6\r\nlLnExdx/PeIBb3vGWMADGx6EKXeHrHsq4xaz3Fldba9l1vamuZDFag/0JrGE\r\nXEZvYZeBgbHPKsaGYUnIvLoxHQaf78N2tmFu6BJniMUC2aToQWJNSWcGpjo2\r\nTpZlON5HVOO9BbTEaWeSSYkKM8SojyDl/JsfD8FyZdK2Sil7hvH+iTE+J7Yh\r\nu8YLuujRKwLc8TzBt5a9E5K0hoo8aj9EyJcP2FvGoGb5etf76Tew0Q8EapXe\r\nOSz6TOh5hxrui1/ACrJAANlecFwQLSwRKqkSWVo8MRJXtTrhA/o6ij3sfsLv\r\nCI5E9pYypCPb+5OgV874eyvWAdPZBg5P56Y=\r\n=eQbx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c86de383c50b7d72b8c5cf908c5fdf3e6efa94c4","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.c5018840c.0","@material/rtl":"15.0.0-canary.c5018840c.0","@material/base":"15.0.0-canary.c5018840c.0","@material/theme":"15.0.0-canary.c5018840c.0","@material/animation":"15.0.0-canary.c5018840c.0","@material/typography":"15.0.0-canary.c5018840c.0","@material/feature-targeting":"15.0.0-canary.c5018840c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.c5018840c.0_1658137393003_0.526038325209728","host":"s3://npm-registry-packages"}},"15.0.0-canary.551b40d18.0":{"name":"@material/floating-label","version":"15.0.0-canary.551b40d18.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.551b40d18.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a7c75b02851ea6a7ce7ffa57f6f367d2a022fa16","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.551b40d18.0.tgz","fileCount":33,"integrity":"sha512-76JxUdLBWLnjG14abmxWf7Uru3pRMcj41fAb7qe6GIdASf80Qz79G6JAHWlRKuggg+sDG+kzNFT2MUpg9wIeZg==","signatures":[{"sig":"MEUCIQCkKKhJbS3Ws7cSx56zFRkzGb5wcQfQr7DeJpUxPGbtvwIgInEsF6VgXbEK19V6djIlt08u9skhI2z7+XfngDXmjRk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi1S9gACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrOTQ/5AW1qWRpLLVwnSPW/7xCXStqh572sqyKZrn3MQvGC7AhdYV5r\r\nPV29UTNC7GAGpsANVG89BYF3Ev/cpAW9aBfrmdC5BMo4LFQ80xZ5lb+avB7h\r\nH/zCeq2bKDZcHcYzUjQdZaWUL0K779kk8JOQ21o3xw8gxyBIxLiV+ojmswzx\r\nfoHNsb3TVwwI+QCYaLW8Lemt9iBLgr2axVDuMCS/aaGvwzXfX/mqsDaPys5+\r\nkMXnSiNbCLpF8EJcVFOtEmItwFrVoG/EYVJnV6lXXhCLoKXHlNUtP5fMNZ8I\r\n21fKCCgAq9ajUJORjbReypOsWWI+By7Wdh8p67MUqhBSPJTkpX5qNKceve3a\r\ntCS847TE3zRoe1vyTBILwes0xsO/GkSTPOllE9N5GzdenpnmnVUljhB/EjDv\r\n63qRCghriZB5idrBGHEuF68HunYdsbqNj86O2KTICP7R+UVcMFW/oWDsXfc0\r\nXeuu+/XnhLrj8xy1YEOSCmfW7mYonjb4RHr1RcuEIXnW9gkJ/wh/xLJGJC1X\r\nKM8DfjrcVbLxw6wvgEmfJxmNsL7lbt61BL5GL8aFijLutgVQhfNJ76i4U10k\r\nmuP7k6LROgydlk5mUTpCetqfVEdIVl9w6AiHX0lHBo3lWO2lNW8OpssVJ7z9\r\nmtcpaF+OtcFY97Zy7/ghB46gGrxkgKc9JPU=\r\n=uo13\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3e9aa3499438031c9229cf2a18a1a3672620853c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.551b40d18.0","@material/rtl":"15.0.0-canary.551b40d18.0","@material/base":"15.0.0-canary.551b40d18.0","@material/theme":"15.0.0-canary.551b40d18.0","@material/animation":"15.0.0-canary.551b40d18.0","@material/typography":"15.0.0-canary.551b40d18.0","@material/feature-targeting":"15.0.0-canary.551b40d18.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.551b40d18.0_1658138464361_0.8557896296944878","host":"s3://npm-registry-packages"}},"15.0.0-canary.cf9f12371.0":{"name":"@material/floating-label","version":"15.0.0-canary.cf9f12371.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.cf9f12371.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e280b851ea5c312ef837879dac3decccdad0f23d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.cf9f12371.0.tgz","fileCount":33,"integrity":"sha512-gpWKq0Nb2HIJPmjGIDHk9J1iZM4FN7FSEXHMXEg4OiYUArhRLo92ZfJhpYl0nCLDfCPxCfsLd9QOa6QiE3yowA==","signatures":[{"sig":"MEUCICvKxlXiQ3xPqhrYPf3dMG6kUJTYlZFurprPRMY40mXwAiEAnEKRxtm/O/6bWfLwnuHSL/D3tNuGXYGZkM6Pe1GwNCc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi1TBTACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmpg9w//TTXVSKjbXooXX511u878Ex0FBnuM2Td3DJLkkO4YRRh8rvPL\r\ns0jI84hA46sMJ+jk8j1d3Ht2WA/gt4BrIcxuN4dwpfp+4T6E+FHjaxU+lYtz\r\ngp7MtHcqq74V1gBHVnTiKlPJxTn+TTsasoLvU+ePoLt/2agGkPP1a7/vlJBs\r\nQejEEU4vRjd00tXKjAeLBXzFRCs6FWdXxJ6vbYYuQRLBTq84qGlJ4etqhyd2\r\nLEOAjrIeWDQS0Wc5JFBLoT/CNNANSlLTxkdTaZRMKkf3mDfYaHZ0Q8OlXiV4\r\n+Lu6UP7z9gBG2vYigcE0x0vCOJSIM9QBK9yVqwDEX+1iFx6WElKy9XsiHj3G\r\n7OGuPiYFDKNur87lOIPRvXc+V3wLHDTbnzIZ/ZlsNTNuIOFNPO8fNiN1dnC8\r\n0v+XC2pGJyuurykrTrfJ8eAWpTfnNxhgdaAHtI0nhge1FfeKt7fQT2BoItKO\r\nvuRTXY9W4ksXgW3VAgQkhRxemhyAqq6rYmD7MI+oAQSQWVNPF+zCu7kDN07g\r\nOQEMmb1mJyrO2Q06XfgYFVM2+C8G9wHPI+BPYJMs4WXv4F7gOKFTEaHL0mnG\r\nlPDA5+LfeFDtzfOm1EgP+Nr0Kuym8OVyiSWu0pweclL4NYlp573E7+5j/DxL\r\nE+0LWWjtRSyaDQCC0ehoT14PTURcYaQkM78=\r\n=Munt\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1817e344a80081e042f37248beeeb96228402878","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.cf9f12371.0","@material/rtl":"15.0.0-canary.cf9f12371.0","@material/base":"15.0.0-canary.cf9f12371.0","@material/theme":"15.0.0-canary.cf9f12371.0","@material/animation":"15.0.0-canary.cf9f12371.0","@material/typography":"15.0.0-canary.cf9f12371.0","@material/feature-targeting":"15.0.0-canary.cf9f12371.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.cf9f12371.0_1658138707418_0.46400587482632405","host":"s3://npm-registry-packages"}},"15.0.0-canary.2797ff8b6.0":{"name":"@material/floating-label","version":"15.0.0-canary.2797ff8b6.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.2797ff8b6.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7b40045737cadbb5bc093ad445e2e727d9b53a1d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.2797ff8b6.0.tgz","fileCount":33,"integrity":"sha512-cFvLbN4MDFOJSE35x9OqV+wK4Pw4Hcugv+BwvQ7LG+Oh84yf6mxdOZ8RsPNLGhGJzH+W62MoYanIjh12pTbZnw==","signatures":[{"sig":"MEYCIQD7A/U4XfbgtSqJ9A5cHCCHMuxB+5ca5WbCAptT2e16/QIhAIiABa6byB+ExTER/3l/2EN6DxJRfrudCntL7xV0S8T2","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi1fmsACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrNew/+OkjsM3XHv9YjkQBnxucvJAmChsiUqtreLnU3UM/IiTK/er2y\r\nXZd8TcrbeLay7ilfHer3lyxiqGxBCFsgbWM/3Yh56xObHkSEAtFZVAQVLq3C\r\nRd7XE3eeikG63Hk/go1jrrmzdLyNS/jz4Fg8OPd/QTRwBTn60+2LA9PHFncg\r\ntDS0SFbb00Tb0GGlOz2oLRsYep2jfmLSUbPrQpS93p3P3Q0IuBNWPRZPjQX2\r\nV2kZwi3Zl++NNG0nTBv27QenCWgaYL1jYtzOLB+Bmr0X7aPPy9S7o1fTxJDG\r\n+YUSzkONQAFTg/zAlF92sir+SLWPiRkekRHUryqzSaSsxGI6Cz4oHpYPt/i/\r\n/++Pak4LLKYqAipOe0j8ETAGvOPQDdIo0uXKPSldIJt2QkfzyvY9rPUwD9bx\r\ndGToaHyfGNLxS18TNxZddjnoqNa7p0Auzgg2kg2CN6b6lV9wybaa/Ur0hpN4\r\nQhBa4Qyoq31heIUJpWSaysrw5UkxfGJaXVeuP+E1B0cNtjy0D00qfYej8Z53\r\n1itJxjz3kZHM/KyeZ5uZDZJ2PNlTiKJAz8hIdDg2EJsnuIIcVK28fI3KzuPg\r\nCkA23t8qu/5rZHshPiX0a4/tzHrkAYZJYLA25ke5f5ShGaOHU1pFdO2S40Lp\r\n8XY4PK2KvOIjl9FG63CgKnrv/iM3VHpPcng=\r\n=x51l\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2c89951e5e0cfca0b1dc61a4f30259b33cee139b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.2797ff8b6.0","@material/rtl":"15.0.0-canary.2797ff8b6.0","@material/base":"15.0.0-canary.2797ff8b6.0","@material/theme":"15.0.0-canary.2797ff8b6.0","@material/animation":"15.0.0-canary.2797ff8b6.0","@material/typography":"15.0.0-canary.2797ff8b6.0","@material/feature-targeting":"15.0.0-canary.2797ff8b6.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.2797ff8b6.0_1658190252559_0.2478731313394329","host":"s3://npm-registry-packages"}},"15.0.0-canary.110fafa17.0":{"name":"@material/floating-label","version":"15.0.0-canary.110fafa17.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.110fafa17.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"293800dd8e414150e6cf3dc1a4b403ecd71324f6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.110fafa17.0.tgz","fileCount":33,"integrity":"sha512-QHFohPmfmWwtOMY2GlETysb9W8RtHz9de6ZCVoXfJttsa3wURIKPLBfIczcG4dz0okhaWCsdIYJS9JHeen/E8w==","signatures":[{"sig":"MEUCIQCVPOwJPU5pPM4uy0ldifJWvYgH29N1pV+fpopZv3Vx5QIgMSvvBsR010pGWwGxvVL0JYR45pLwavP3bApKw2f2/lc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi17LjACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp3CA//cIJ+JP6qKaGgsCjwphIRd5gYa1HrNTjYh8UQgZJ51W4TBu0r\r\naa0WGHLQnmCUryGBrAPXH0JxE+Y76Q6vGwvSVISl0oGa8CrSWQ2Z9TWfEVM+\r\nProOghtKcYA9BQRoO4C1ASyMbrrF+Z9sPD7l8Lozkq0lXxVBI8SJcIJw4790\r\n5rpMxXMbsB7HfsFpgLhwFWDh5uWaYG+IfPwhb0pwDT2SwZbh8tu5oIaIjL0t\r\nC2TDEbbUw/Vd6+yDwlbq5lgrDwZJPM5uSZwQQuDTpKtBuU3x1MqERpdeNq33\r\nHjw51zb7uY9W3Fd0o6aA5nqHermXlSRhcd75tkYs30jmhs+2qf7riO6PnI+G\r\ng2q27r4BmlKptXB+4r/4Dkdib3YZrRPJEKZ0KbtIVY/CUB2DoXWcfawIKNfN\r\nfFZ7qkBObNrcGMK6ePwcY+9wVJsSRIqxyaTHD8Tc5sUvtk8bb7G3oOhE7Tqo\r\ne+zhE96ZbuwEGAHdWEMPDOvsvf4d2XkNb35rxvKyr6GHDG+7cLenIIAdU3Vv\r\nlv8A2nj8q8eZhZqU+0hrN+BAN84ZqOeFuZe7nFxsT/PNOhPviPjyWMKgxgjm\r\nM2piBbkdtJlkjblHTZdUIxvqPFCAqDBgLq+F4nv/OT4OwM+jBbixQYHtF4AG\r\ngwch1vOFmPwlDm6eqhhhfJGVVVTTWkzo0ns=\r\n=U8ho\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ccf0ed3e8eaadf1526fd10979e8c00e79b228f5f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.110fafa17.0","@material/rtl":"15.0.0-canary.110fafa17.0","@material/base":"15.0.0-canary.110fafa17.0","@material/theme":"15.0.0-canary.110fafa17.0","@material/animation":"15.0.0-canary.110fafa17.0","@material/typography":"15.0.0-canary.110fafa17.0","@material/feature-targeting":"15.0.0-canary.110fafa17.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.110fafa17.0_1658303203559_0.10549149160577942","host":"s3://npm-registry-packages"}},"15.0.0-canary.386ef1d2f.0":{"name":"@material/floating-label","version":"15.0.0-canary.386ef1d2f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.386ef1d2f.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a9b5efa855b9b9f46aea2e496595f35ee421338f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.386ef1d2f.0.tgz","fileCount":33,"integrity":"sha512-OskCu6+AJxuk3i/Uhszz5kinMDikbrA893EFdEeb83SplWvPFGlcNckqSipAY5xRpuR8LjeczKL/5y+HM5KHgQ==","signatures":[{"sig":"MEYCIQDLI3zJgxwlTxZdGWZ1uKkHUOTctzqfxP4aXARDOV7xZAIhALMHIGZCvDyAOJryqBFejEgFuHk1sH/PG7z9PzYtMIKs","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi2EdGACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrCzg/8DIaE+ruURGdzOyj8Awbts5YcHAivHGXLmjsqUtj8dJvaL3mA\r\nkZRYKNqKXKyKS0BBRCQ4KcAfkjnZCcK3ggGTLghRicQjGCxD74Ny60Agjnl6\r\nQAHlPSXhzh4wV6QdzTO2V+XIeYwS/8RPnTQcOjuFWHrojCKBP3Twe6BXtnke\r\npVQeTBH1Ev0T5nfdCajhyCpW7ugAKTZ8DmhrV9XAiqjoZEe0HrBXIcOle8T3\r\nmAq+uSOxLSFCv50qwxAbx54LLHCN9D+p6EXM/c/+RaGnnvhrmmpWgRYsS9X6\r\nG6Ab1GBolUfCADsM4Wd11DT1kkJJYPZvjiW4f+0C5Brja8IG6myjYQzhohA/\r\n7aIulNjOgiZEb1WZ4GFT2YW4yBg4vf/NqJXuayrKf9PVM84hIGvUXOBM5kiP\r\no3DB8GKuFCKR/QHClUV33fHPRGwWioyL/x/HKaLvePoQXZj6aQKgMdui5kTs\r\ntixJXDiUtnut+QN1IC8q2cOMC1X3FyNpDiWduaAosJ8uAweRF6tcpQXKdxrS\r\nVif0wSVRQ/m7XUHHfANNmsmZYjtCM9WcC5YsXE9ZP+dpp/2tXRmCi9M52jin\r\nWBRQxW/aeCwi6uWsxY0FmnfaxQHjoT6/nkD1ZLkvLNEyOnaPIESIltE+Cf3H\r\nMG3jh+gxgpyEkVsOgo0mvZLYDPaedud25Jg=\r\n=uoO1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f81dc27b99348c90268023c46429639f145ca534","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.386ef1d2f.0","@material/rtl":"15.0.0-canary.386ef1d2f.0","@material/base":"15.0.0-canary.386ef1d2f.0","@material/theme":"15.0.0-canary.386ef1d2f.0","@material/animation":"15.0.0-canary.386ef1d2f.0","@material/typography":"15.0.0-canary.386ef1d2f.0","@material/feature-targeting":"15.0.0-canary.386ef1d2f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.386ef1d2f.0_1658341190348_0.07349469869551539","host":"s3://npm-registry-packages"}},"15.0.0-canary.c3924efef.0":{"name":"@material/floating-label","version":"15.0.0-canary.c3924efef.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.c3924efef.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"204492de0cc8a917e6c06a906b2a65eba51c5e5b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.c3924efef.0.tgz","fileCount":33,"integrity":"sha512-ZhcyaIBQWvGUBO0BofbHGyvGS694zegTJIyz0FP643iowd2/LQGJbiiZb+pcxAgP7NCVu5mNCoLNZzrRu+AiKg==","signatures":[{"sig":"MEYCIQCuuJkNwT61tbmByEy0OMzi0v0toycEA2CMEsc0zPQVZwIhAPWJR7SF0bj483L91kRPiUIVMl7L8b3MxcU0RM898PRA","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi2EmMACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr8Ig/8DPz46VAxG+N3GqpzxtEQrMwm4OwXtUoNo3VdhHccSGHH+zeq\r\n3FNdyM+Rdi0Bg1WlRF8vXAZvSaK3DYRWGqzDf2bK79hzqRPQJSN82v2J7e4D\r\n440oqen7qVL/MvdoxCfWu95KQDfIcZIMwho6WUasmyaAlIgDW8qmbIjJOP9Z\r\nPudrQKjJxuDRKwBuFQcZR21jm86uNzrS14T3YPT1bUqrZ/e6W9plg0+1x/b3\r\nwOMBKoFQfJ+XSKbK9OOMs3xzBeVDkgqiFphBPM+zE7ZkYboQj+M7Z31VLk7x\r\naTDmTGOzMfVqOYCMGH0xnRvUugjgGkDvHi2emeDJgVfa5UZ2+ZHe0t/N79UY\r\n9NWRd1KUdOEvpSeb8695poRMrtAI0pg03ECkvYiPVyIp2FFm59wFfsUFVh7v\r\n8sdjyR7dI/pLAZ6eGOOPFi/kI1VrTuto6J2dTRNLhNA6INJQnhZqT47MiG1k\r\ndYsE1GsQYVrvvBOYWKRrOjFh2Ae16FAtjNVGHnLCo3J4LiEMltO7W+v+OwLp\r\nZkFtjQUQoMK2a5t6rUmhQrOIsRFQRGrpbCJvpAJSMWU/uforlPHjUSxGjVLs\r\nuwF/RnHNmf3J2PZZyl13X/aEDPi+DgY8/TXVTEP34AbNukmsghFAOZJSGJLk\r\nqGgh8xAHcgK0Kd05plYmgsLLPBNpF7W7udk=\r\n=fTEK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f665d9454e06d217296aa1a2064c9c67d3fe2759","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.c3924efef.0","@material/rtl":"15.0.0-canary.c3924efef.0","@material/base":"15.0.0-canary.c3924efef.0","@material/theme":"15.0.0-canary.c3924efef.0","@material/animation":"15.0.0-canary.c3924efef.0","@material/typography":"15.0.0-canary.c3924efef.0","@material/feature-targeting":"15.0.0-canary.c3924efef.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.c3924efef.0_1658341772518_0.17305222448247082","host":"s3://npm-registry-packages"}},"15.0.0-canary.cf5c5907c.0":{"name":"@material/floating-label","version":"15.0.0-canary.cf5c5907c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.cf5c5907c.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d9e600adb41b4119dcdffc32f067c7c44d2b2e4d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.cf5c5907c.0.tgz","fileCount":33,"integrity":"sha512-XUUP7wd6Xxi2rdJqxH0/l4LdumyxuuTDR8xLFTxmw8+CoSYPkxvFWviaqa/bL6j0qnZYYidAJc5nZw+CamOBXw==","signatures":[{"sig":"MEUCIHbl3DGyO6t0s8vGVN7lwz5cZxykC4QsE/hmcrNgGqZXAiEA4RvQhiq0UD59vcdqPI1/tmJe9W6PuFPsKaZ8gIz8+9I=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi2HHzACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmro0g/7BAA5p9nxIS8IJ0tVxDcdWDtxQng/PJAfcj9nn34Rocixy7iq\r\nZ5LCCOXe9GusfFTHeai/ikSX2dWBaLfINfy5JdyUYmt6yI9VNBrKlaH0DYC6\r\npJ5ownmYCcDScmiWcKsBu6KBn5XLLPmOwGTrTYVPpf2LEd+PC5hVsJDmEqBA\r\nK6Os70tXb537PnKlCzFL6JX8HHOPhSVC+NRfVn1jAHMPTqgUKexSz1eaYBdO\r\nI47uH/N2IOAmL0j3g3tVBGUpZ14aNyQkIRkIzB5y7LPSbxU16lCOVDtapD8E\r\n2jbqA+7f4SyF4NW52wZOh4NIV0J45aR/VGvCsqV7cnmSJV25K3Bcf7zlvKhv\r\nmsqFAadBbzh9B/1E65pPZTCR+grryxzTpen6nPQ+qG94dH2CAhTaq3GVAxgv\r\nMqGCgrJYftDB2/VI0G4brNnHNZnNnMEUITtsOcnpejVDpalh24pUP4rZxuQo\r\nG8X1XvLsx2qOkZdxOxIYNodbsoPZEaXhygwiYHNiX7VSgLCh8Cv2/zbpmBI0\r\n3oB5dGIxIhpwrxqrzpC3RRvnmocjhY1yrPGg+QT9F0nP0C4KsB2rvRaVSFRM\r\n892+3WTS7xPVqovHg0VQFwlOs3m5jRTjTSutkuiQaDJykP1wDYjmpPijeoId\r\n55k2X7bXsBaLpPY5JSKbUpRQiPk2em5tAo4=\r\n=hHqZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ff18947542e40ce8532c2ad78551ff4e74f9d647","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.cf5c5907c.0","@material/rtl":"15.0.0-canary.cf5c5907c.0","@material/base":"15.0.0-canary.cf5c5907c.0","@material/theme":"15.0.0-canary.cf5c5907c.0","@material/animation":"15.0.0-canary.cf5c5907c.0","@material/typography":"15.0.0-canary.cf5c5907c.0","@material/feature-targeting":"15.0.0-canary.cf5c5907c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.cf5c5907c.0_1658352114817_0.5536275638094355","host":"s3://npm-registry-packages"}},"15.0.0-canary.0617e2319.0":{"name":"@material/floating-label","version":"15.0.0-canary.0617e2319.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.0617e2319.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9ceef7c6c5e84f03a102dbc8ab5f84c1c2e42637","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.0617e2319.0.tgz","fileCount":33,"integrity":"sha512-hUpUrBOR1u0PFEKzCIl9UGYTyZMdGaYokdASbg7uBhPsSVH1CCzwVteAdWjUenzSSHhnOe76u9zrHT3ePvdR5Q==","signatures":[{"sig":"MEYCIQCiWEWlqrWUMBJ3W+swKnDgp2eSYyhQ3PWlJR5Lc0h7HwIhAPbw65uFujdKo67NWRspgH09lpglUA2x5cYGORWHxDin","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi2HY5ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmopYg/8Dz2f8+OYIeF7K7hPwmPVskocSIcOJP7zf0P56DUsxst1I+CZ\r\nAFYyJGLgOyrWJyd1a1Ve0MqrZ1MloIZqV4FDJDzbmWyufuFqdcEaMxGlR0TX\r\nCGFU1yaexZmbMNvo3cNvL6P0dui/bpuBv6n4pFcm6MzlM+kFQNdqq3CmBqRg\r\nfvLoIc0Q7vVrYlLnY2yP7RB3uh+bghJFgC465zGahDPtvfJjfO9N3dAush3+\r\n+NZFLr3Vd/cdBLE8SOdmEVOWsfH7xtJGv2INHJb3bC1pe73AikT71ZVbwp7U\r\n2hOrMIVbDpT/g/ru9WXGVwxE6Lv0gvzyEtK7WQjZ0spkNcWaD32LlHtUwJ+f\r\nyTQZmOeb4fisnk00+iV9w5oCZkV2HhQJvmDamlWofR8EVLmBGYEiS7E9Hmmb\r\ndFzdDqW1PswGGyvkqnrrTRNM3vHMSycEi7qRcviG25cu0WGbKWFRXdfZM9hT\r\njbE1icOe/FQ+N+s4bnNV9B4L5eRulxhJV858Oujxtu3Xu3VbY3n7z+alC1bb\r\nn5UWNgsL5ayyJXXLcD4aQwlm6YwET4nO6T/tfiysP8GG4iwKFPfL/GYRX3tq\r\nOJH0brhnYe7ZZh7xvBehxQnVI+ox79+2FO+FrPxB+CC2muOcd0X5YZf2j1WN\r\nWi4Fiku4Sf1taXimqKWdqA3LoBKvKBCdLFI=\r\n=gj0r\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a4d6efed0d00cc69adede24744dc368da0b2c897","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.0617e2319.0","@material/rtl":"15.0.0-canary.0617e2319.0","@material/base":"15.0.0-canary.0617e2319.0","@material/theme":"15.0.0-canary.0617e2319.0","@material/animation":"15.0.0-canary.0617e2319.0","@material/typography":"15.0.0-canary.0617e2319.0","@material/feature-targeting":"15.0.0-canary.0617e2319.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.0617e2319.0_1658353209594_0.7827281581532901","host":"s3://npm-registry-packages"}},"15.0.0-canary.a743b7967.0":{"name":"@material/floating-label","version":"15.0.0-canary.a743b7967.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.a743b7967.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"94d9b0630b29be361a17fa9b1d1aa3f6935257d9","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.a743b7967.0.tgz","fileCount":33,"integrity":"sha512-uv/C/4sxgMDpXnPLcndGuLe03WEx0FPLK0rxm4IEKoIrFqXTPspRS6274/4zg2oOpARvtOJ1AkhM4BCikjPPhQ==","signatures":[{"sig":"MEUCIQCGifB3rSXkeAbbDJ2GQbfLaUnlTjLHXUUvuvDnBjLBewIgRLlFfV9ZrsmmKiRFMP/k3QZSjTLbGial9I1FRs2MSf8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi2Ho4ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrDNhAAnSyaqF2zcpt7R2bJntIMzln6Yhd3ny3kKVLOyxVqaLwTnruY\r\nGMJljTgAUkqS+HSVqLwUkBR5JgebbPDWs65b+24GKZStwBOwz7plm+iNLHxC\r\ntPOydymgxx2S4CepmgJYzPMgpb3AJ527SmI2RepoUaas3SX/Tjp+ncpdAk7a\r\nohtKtgrPGjWSBUs9WqoaotvXPmO77qzaFeSntcens6I0dmIhfvDBrzgFfdMd\r\nMsYS3L7YsU0EbIVnMv/1wDzEjMdgP9gLC+rCmzuNqFsxrsAuJnfqm/uVlCQl\r\ni7RyKHEXk9pUKcVBEdYQwlCbwI4Vzd42wpT042XCGJwbwWtkQh4pVlCHQJXU\r\n7OtbKqG+SYdl4J9WDIcklVURk9+yyKFEYdCu/6ftfTdhYw60d88QoTi16MMR\r\nQLTb7nydfzpRyx6TKncTGXSVfHjPqtv1QwmlxBU0r36Gdw6QFn2fzBGgt/Yu\r\ndNsSo5mFQJ27LmTrFamc1uDRjHmHZt7598fy1b8a1msiUMhOhfbeRQG7cn2C\r\n8oQNbDdmJaq6rIaOlGPCCX2+ob7/mI624bc6kHDOCNmIPt4raCB11Vs9Apr1\r\nleYfZDtAQ+kYKHJADrrv1EpcNzim0q+hX1FF9yVQdRwRm+BWY9NBU+a5jjL8\r\nAhAWtFkTL1+fsggixubS5IBiJ4i3oeUu0TE=\r\n=5Pk7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"6fe7cdad71b01dac35a3d815662020bebbe50e23","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.a743b7967.0","@material/rtl":"15.0.0-canary.a743b7967.0","@material/base":"15.0.0-canary.a743b7967.0","@material/theme":"15.0.0-canary.a743b7967.0","@material/animation":"15.0.0-canary.a743b7967.0","@material/typography":"15.0.0-canary.a743b7967.0","@material/feature-targeting":"15.0.0-canary.a743b7967.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.a743b7967.0_1658354232553_0.24695065689773044","host":"s3://npm-registry-packages"}},"15.0.0-canary.69fd619d0.0":{"name":"@material/floating-label","version":"15.0.0-canary.69fd619d0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.69fd619d0.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"40f8bc992a27dc60d12c5cc91dab325b40aa8dda","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.69fd619d0.0.tgz","fileCount":33,"integrity":"sha512-tjjzFmH4u3MiyfvNfOKs0fY5NKiO92hoQT3jzKMetydiawGV6A0YyFOl5yrb9tplM93rgIhr4yFINWzTxgg4zg==","signatures":[{"sig":"MEQCIC/WELoabffX4dhT0Akjm8nVzKTHrykrVprVfL6kdn+bAiBYhsCb4fbGTQsGspt77eFDeiXj/hxk65ve+DsxUmu4Qw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi2H0PACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoIOQ/+IMj55oxBGrjYZPfPwjKJSvAP1h1LOUrhu8YhlV8VB5oEcXgZ\r\nhafI1KP5QwdlmGxZA7g8KUe+JHDzdrFCkCsUYngFu+JuN9rCSN03AVOqKp5l\r\n64lFqLRazBPETCL106DPKuSCekQIwA+oHUqEIwHGlRI8Vw+LHfO/PK4gTuff\r\n3/rU4Bbr03WDG+zLjdWhnucPU12o2QYLe791iPcpOJ1tIig6C2lEu+/9xCDx\r\n14ZgdQxpDkf5bpr0egJY2OJHLxzzFtzG35iBU6hLRX//3JPSpTRwTgE4xcxv\r\nzXLVUi8TUsUQwVTwe/ZW1M3LRF1wuEL6bV+12kSeUdk38XUvg5kcDXvpO4q+\r\n/ftB+CVZbokQbzeyC5+JzFzMLaWjkVlJafcrMZtKQApyMx4eemXyfmRWlVua\r\np92CILVjIfJvVRI1lnfvOtYmuBlbvGtFlAdzEREu8X7QuhykuWUxVN1v4qxx\r\nUG9KjRO+4SOpuOHoSk9ilJjh4UlbUCxUj7OmCEfmlOM0bbX5ruBPx2tX4wDc\r\nnyUa3pkbGTsNiVTrZsyKcq6ROiK0OBeHw4y/bdlTcSv7gBOQ39exM3kv40Kr\r\nN6xWZ6aNaxgaXMy/EbkZAFB/1Dh432Mh7dT8BSs4O22YkJVzAESzC1FA02Gq\r\naFy7heZun47BPhot8IkC/7X+Lf+cDXDVT60=\r\n=K5SA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8982644a21769a71fcdbd9d8a35d87f00bf73b3c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.69fd619d0.0","@material/rtl":"15.0.0-canary.69fd619d0.0","@material/base":"15.0.0-canary.69fd619d0.0","@material/theme":"15.0.0-canary.69fd619d0.0","@material/animation":"15.0.0-canary.69fd619d0.0","@material/typography":"15.0.0-canary.69fd619d0.0","@material/feature-targeting":"15.0.0-canary.69fd619d0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.69fd619d0.0_1658354959463_0.46488176362333045","host":"s3://npm-registry-packages"}},"15.0.0-canary.2a6ddc1cf.0":{"name":"@material/floating-label","version":"15.0.0-canary.2a6ddc1cf.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.2a6ddc1cf.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4606d3925d7fdeb029db6dd2c0b82218f1804ab0","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.2a6ddc1cf.0.tgz","fileCount":33,"integrity":"sha512-RnepSD0XFOWzz3VSQvJUTofYPLPF2KM5KDXWcXXOOnhVLWJzirQJt9MPnBHT6B7OiXfmuH1B8LpX5nlupjxvPQ==","signatures":[{"sig":"MEQCICHMnaVAKKR8eg3BzHkulQd2LyWvu6hRHES57rKnUACOAiBMDGTbGuLNGCyEQgrkr6Q/HvLpHfVwMSRYGbDm75FvqA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi5AUXACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpfmBAAiP6QUv78Qh9/+UE6w3V2h/mvbGv+AKLKz3KSRMQJxeDkaKNL\r\nA9xi6wqbhmYEHXbtTMhDyCWoeXC23i+QO/RVbwBsFvK1GqRe585z+Im8X+2I\r\nirESn4uTSg3mJfCMcxSo/NyihEbDXqdSD/XdwxJab8R8xwQWExezZu+THJWB\r\n5M+r4XvXNmb+Rt0PYcTdgFE7SZp7HsFzSL0ArC5vK5nvC79QbZ3JB4+ml0qB\r\n9czTwqevCsrWRMjd1d36hETScRSTODFqppnokuXL5ugF9veemk4WgOsRMDD9\r\nrUAt3a4B0Q6D4dXP04aB82Rqi/Omm3JZXSM1VvL4ErerYuWOOYijnRgkGSLf\r\nkAQeX8pDhUlGCpXu9Hpm8/XEWQESUMnydrn4wsLtyZivYoBoeNHzGNt35wYl\r\nvL0ib1WaxLwgCUpsemHCJ3wPitJyBOmFteIDpwOGKXKaxFrA0pTzF1RlsBI5\r\nVXkjMM/bDBlmG5MU2BOnFK96McCmsd36tTU3IgtthnyYkvAYyqs8suqevkb1\r\nIffNY0JpX20ymWfsxQ5gi0y5Np3F9fx5JVZd05jyKEoCbfSvwsscxBFUHIcV\r\nq4HxlEX44JDInG+7K2AtUljUBdCToqCzJyDyC7944QkmRxNClLQlh/XxWQwp\r\n2mnycw5H9wFMt4whSMm/NKKgXF4UwVwBn/g=\r\n=l4ac\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"0e951ea9d38f3d449f24bd1d8ecb0fa70c0da462","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.2a6ddc1cf.0","@material/rtl":"15.0.0-canary.2a6ddc1cf.0","@material/base":"15.0.0-canary.2a6ddc1cf.0","@material/theme":"15.0.0-canary.2a6ddc1cf.0","@material/animation":"15.0.0-canary.2a6ddc1cf.0","@material/typography":"15.0.0-canary.2a6ddc1cf.0","@material/feature-targeting":"15.0.0-canary.2a6ddc1cf.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.2a6ddc1cf.0_1659110679280_0.8489829384565777","host":"s3://npm-registry-packages"}},"15.0.0-canary.86efd56f6.0":{"name":"@material/floating-label","version":"15.0.0-canary.86efd56f6.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.86efd56f6.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7345624e951c853ad75a6667f70d07e6deae5833","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.86efd56f6.0.tgz","fileCount":33,"integrity":"sha512-OYpgOTtkgwCBRta1ZzGnE1fFcx8yjXt2bZiJk/N27RpvD20xwo30iSg/qYm7alkeVGr35I/gY4LxfdnUmC0DkQ==","signatures":[{"sig":"MEUCIQCY4Qr0qelNAX8xt3WDifaVJ1pDva6yGTtwpiLe+HtYbwIgbWqZird9MUT1H1pzQF1GZNMCSfVF5AzyDJpDNTPkPww=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi6TiTACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpN/Q/+NUpKxK0RXDK2seRpbkJVrzeRhL/D9mSyUwdEf9Thk0+nwytA\r\nJDvMkiE8u9j2yx36Vxu5ooSLLNRus0MEQyyela8j6sebyIujLwsQ4tEbZTRk\r\nfoNZa0uKIJj0UF27hsCvs3WJPqUhFpCqEsRb3i4CO3pd6Hi6jvcXg0/UpI3L\r\nhI/LFJyhwVSkl0oajVRbphOlBL1Osa0fFHZsdwK8IAAFZ2PKr+LL17rmoM8j\r\nAgSlY1aEIkumEHvmdApLo+PIm2/o7ttaJt18GAen9QRmQRvphU09kojtz7IK\r\nSFavI4zCZuKZtIaZeXX1NIqP57c/J/v9LYR+RC1sL4kAqKcdNkcr0AbQJMmb\r\nquiEfkEsaI/7jc43spSfdyPPNzLjSwDRn2y8dPIkGNptG1q6a+H5RmMsk8c1\r\ntfkP+hJfQ7gQ/m5BwJXFjZlFbFxwiVfizD3StX3WJXoQADXxTXne7DsIZW+l\r\n0OjF2Eg+ethz29oUS6Bgg4vsJR41AJQe+rkvxlXvzp82YDTxVspFOsy0VCF+\r\ncarJ/kCNpVd5VrmUig8QNQ827tHxtg14reCUVDrLqT3C3spG4D8qsWARUZA3\r\ngoALCJUuIJlD57fknYfpIK90MB++dGufhlotd9U67qK5NLMmhh0ZrgqNKnzj\r\n3chL258JFGUbmsBd1vsGwck7Bf0DX+4daqI=\r\n=v6dp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a4781ca009f9a9b59c7dfff5df2d23bb14b9de2f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.86efd56f6.0","@material/rtl":"15.0.0-canary.86efd56f6.0","@material/base":"15.0.0-canary.86efd56f6.0","@material/theme":"15.0.0-canary.86efd56f6.0","@material/animation":"15.0.0-canary.86efd56f6.0","@material/typography":"15.0.0-canary.86efd56f6.0","@material/feature-targeting":"15.0.0-canary.86efd56f6.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.86efd56f6.0_1659451539245_0.18703752715714095","host":"s3://npm-registry-packages"}},"15.0.0-canary.ccfc24d19.0":{"name":"@material/floating-label","version":"15.0.0-canary.ccfc24d19.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.ccfc24d19.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"8dfddcef3f0f92125d97c96968baa0c3cadc0ce1","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.ccfc24d19.0.tgz","fileCount":33,"integrity":"sha512-dlMBWomWEWNI64ANwRz4zf5t18hze//d4oceodJZRwMYUnTILUHmdwyqHzHDpTDe9mM0kiKlr19YDQ9nxRy4sg==","signatures":[{"sig":"MEQCIEgBCrqwb6u1ZqFVL7sq2pBzq8G/A9mP6ub9QAsGerRfAiAwjFGnjawZYRPQehMU1Oogn/uHSq71QFSZGKNi1hV15A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi6rrQACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq/jQ/+M1kxYzA8096GVeQw3/meAl7ILQ6/7hPYhLd0SqnENZ/2a9l+\r\nlNl97dtjjEreOBcOZzVB6JNOY+OykEkB+eOSqmkV03c1ywmCVtOAfZAIim3x\r\nfri26YZCFmeZYWy5dlmHOcl5YSnacYkwk3YJb07RsGRPMcdudGpwivvo3yEP\r\nvz0ww6gW6p0YMsMyn1CDw4Xly9vpamIqu01uZkhP1hI5LOyM8f2TKlRbf1qj\r\nD/NaLLVX5rs19jCAxpSMw5tqYqu6WcRPhBPqo7HaqashWUUtMEvCwfVg2Mx5\r\nN+9k6NNalUXtuu+fCBp/kgG8oip3diaRr4F6s30Pz/aQzFRWB1Xj6cAxJy79\r\nmThhkzURMssFQ80S9M6tJxjAT4ohmR0V0I3tMImws6cuFDdeupqBbH0CWzq2\r\n312VjfcfcdsLhO5zWwGRQc7IA0Fd/baam0Ji/42HLK3SX7ka8/8anwSqu+O7\r\nQbESeiXee6ebdQahbrQ7SRDceh+Ugp3k9vyKAX9MN/tzkfQA7xBJeK/IzdjI\r\n4LGwnZhEPiMZS1nF8BKKn9OnC1t+5/LEwZBpI02Cr+nysgz7YRdMhKAMM/Tf\r\nC+d4ZSyiDd4K/H3UDnhqTsN7IsHXi2xtjRte9T6t5I5N3lxutWnBOGSqdQ0N\r\nS3em8z52Kurz0ZTwDsBo/gTtQpbBRWuIbEY=\r\n=7ZP0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f790058ff0b4b30289ee965102aae1ca19654ddb","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.ccfc24d19.0","@material/rtl":"15.0.0-canary.ccfc24d19.0","@material/base":"15.0.0-canary.ccfc24d19.0","@material/theme":"15.0.0-canary.ccfc24d19.0","@material/animation":"15.0.0-canary.ccfc24d19.0","@material/typography":"15.0.0-canary.ccfc24d19.0","@material/feature-targeting":"15.0.0-canary.ccfc24d19.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.ccfc24d19.0_1659550416360_0.6316781666976234","host":"s3://npm-registry-packages"}},"15.0.0-canary.e4570146f.0":{"name":"@material/floating-label","version":"15.0.0-canary.e4570146f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.e4570146f.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c6607a8173beae5092d90c25f4c55deea38d5c88","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.e4570146f.0.tgz","fileCount":33,"integrity":"sha512-3fZrjhuaGYo2C3VqXQttyeltWMfkjp+pU/0b65TJOC1Ok1QQfl8d3sEL22YiVVLXr0iKC7gIrSo6R3cwe4rlDw==","signatures":[{"sig":"MEYCIQCF7ZaLg1qot4D4yD88oklRM5tgA70s1lFlnTX4qVKY3wIhAKMD9wD3j3RtzJ3m1y/vf48aJGATD+FoJLRN4C+PzWqk","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi6sEqACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpxkQ/+I+fXhdHtRGRhrgib+tpa7XFEtNqhc+xeAZ+KiphPeoKjHibd\r\ntTlMfQRYwQ1dg6D0T9wQWKohalwingcyzzrwRW6bSJkbyTii8HbabnpfvhWJ\r\nmYoMu+QYUit3KOUgFip6FcjgZRDD5kzy7Ar7t5O19PpW/8aFfGD7L5K1VhXc\r\nV78CtPD7He72FTqvU0oIroV4/inGF+PY4EznRTgCmftnPa4MpqRlpWG6unnv\r\nyoqQcrB8I05JXy3pre6P6i7UTwT9UhNwUPs9Kps1qt+lbFjyvA+jDw15e4EP\r\n9v/Z/+y16GUmrn6R7M3RiMPt8HA3RWKSwcB9X3ubnvQJ0Ljij/0h/CAf6m8I\r\n1erotif1Px2X5PeamO9BTUxmPBZ9HA228EJBWiaNL6fUXF8tjbl0zq+u7bt1\r\nQLZ1xnbI9QuNumMBO6QHr7EjDwS+xiJwd40hk5tE7w5LeWGCvz0S9jebCj1d\r\nV7CSUc/EhMYyXj6+6UaNZrb2/KiCqJzD+xiSOlkIgLTSXPwDyVJguXi9MU0X\r\nXaQGRxDHT/A6tpPUbcvoIQ2RKyJVQgeGbTXAvq6iQ99nM9nRbQ3pIxc1UU1b\r\nSCkD51BI+2TuSwqN7+6ZDsoxfb9K1xTgNYskBMN7KLY35KfR/+wu3AXmm7FT\r\nzXdn0y+BAkgE/6Kma9DDsUuwu6PwAPCDzp0=\r\n=21uc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e80d690ce0a868398025065053615e866dc51ada","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.e4570146f.0","@material/rtl":"15.0.0-canary.e4570146f.0","@material/base":"15.0.0-canary.e4570146f.0","@material/theme":"15.0.0-canary.e4570146f.0","@material/animation":"15.0.0-canary.e4570146f.0","@material/typography":"15.0.0-canary.e4570146f.0","@material/feature-targeting":"15.0.0-canary.e4570146f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.e4570146f.0_1659552042247_0.4600152466110292","host":"s3://npm-registry-packages"}},"15.0.0-canary.6683a36cb.0":{"name":"@material/floating-label","version":"15.0.0-canary.6683a36cb.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.6683a36cb.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"59ea54aaf491c81019e3bc7a216a4fc00a35e627","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.6683a36cb.0.tgz","fileCount":33,"integrity":"sha512-Fsl2qo/4B3dAf/Gv3v/WZ/jyzNi59WGT1gw2SIM1uuMhWkm+hoq+ja1uQ7sHbhrRpHVJWgflWYlfPC+aKuv3yQ==","signatures":[{"sig":"MEUCIF1Vbrpw4i6D39D5aMed8hSqqZLjezawcsLnZkS0p0O+AiEAxR6fXWgnhK2uxwY04QVUTWOhZuRhxuCqPRal83FgaBU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi6sqMACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmrj1A/9H2N0SIqZN9ME6k3V3MmLGXRtYU9ji4lVEsfMMBCWz5IuRz1m\r\nRv5vS2nxaeWBASvO7zXQcvI4Hdcedy/SeFYG1nUqz3194EA3tNapO8lDcViA\r\ngwRrNQfzW7vnS0smI5URTypgbXI+FEmQx8bDiubzsCSaz2lfxKaBE4yhk0nF\r\n/AAL5uJgmBUbIia9jDHmx+/OKg8ExkJeNa1bGAe203x6DdGh0oDXotvj0K9K\r\ntXfWRyyS9rLkrv98ktJOiS1FKcXaB4Qh43NH5l7zsBv4bK5FL6Xs7uXvLKzK\r\ncW1WJwr7ISYnxnEAzKWd0Lv4Ym51k88do1+g/G7uhwljP37z8ZbRiP+3df+F\r\nx9C+lQTBLXen37bVWy6NNEESL5FCkha+yrzJyq1fbyMwLY0ZoBv2QNLJyhsm\r\nDxt9vo55VVnOmSiUv9XXxAkL/eaBes/I3AEp2SD/+AQE2muUoBa3GW0mhvM+\r\nzKBGOb/uoYEuRGsg5YS2ORuVTu5wx5xzPcX4NKXOqyrpBO4hJxEKwWV0G3EL\r\nxyzyVDcKGxYAEY0qPJmgeQRgix5kOBYbg5JDBuVvoGFHk/FkdPa/8KH1aRx2\r\ny5wknIE3GiLjV5DG6kLD2TAHHe2ozFfneUIgSGSVipMvQKbAV9YuYjECbUZc\r\nTbsmZaGjtGz1BaYM9x4/ve1MCRsublHCMME=\r\n=YGTO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8feb0b9a8c5151a18a06d282cce87d861ea12e5d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.6683a36cb.0","@material/rtl":"15.0.0-canary.6683a36cb.0","@material/base":"15.0.0-canary.6683a36cb.0","@material/theme":"15.0.0-canary.6683a36cb.0","@material/animation":"15.0.0-canary.6683a36cb.0","@material/typography":"15.0.0-canary.6683a36cb.0","@material/feature-targeting":"15.0.0-canary.6683a36cb.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.6683a36cb.0_1659554444541_0.7062527391157822","host":"s3://npm-registry-packages"}},"15.0.0-canary.10196647d.0":{"name":"@material/floating-label","version":"15.0.0-canary.10196647d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.10196647d.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"22d5eb33b59ca483d6becb114436f41c4a2db0d0","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.10196647d.0.tgz","fileCount":33,"integrity":"sha512-eQuIIYDA8mmFW2JKcA/GOZk2rmpXH3KaPacdnRgyWnnDZv3aWtcfGfAYAz5fcMXg5oGQoOHqIg2zlFLUVY5tKQ==","signatures":[{"sig":"MEQCIH+s4FPYhcwmL8KyV9Bn4BgjIJjfjCW081HZ+QTWlRHNAiA7yaDYwFQdIsME6NerL32Ou7npwF43YBiZTaL7raWFAw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi6u5qACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqHoQ//YGRklQK4T1lTdEhilvxn/jWPt5T4/VgLvQlgUhSZ6JVzBMMM\r\ntTirk/I8rw5NXDz1pukOLw1RFSrqCaBEZk5g8myamQaIPrNz1V5LwPWfsMEB\r\n8tZTU/NtowDE/zWOvpoE/iTHdcEimlNl7mKx8csIbYxxg7PZRr0zdMtEjF90\r\nVyhWLZp5PKulDsttjhKh0RQAwNu3eE3iLB7lezrcgC0fV9cG392cLsTFjsE/\r\nOm36BG7W8C+itaXYJQsB02KRPN4nAutYAiI8IppeVh4sczMkCWHayaCARRPQ\r\nIPJg92z8d7gyhiPWoS3Mkj7/SFdorF6ixCRGl2xiS6750h0aiDd6zFbBFfA5\r\n6XujfyTMrHscE3WCgLoZ2PLVl12SbDgcthWM4Dj6PU512k4f1BXx8T6rWw68\r\nB8kmtfVuIMglmuQeUHUdSaIRVUiLAJ/AD0/mJUIi7ZPqJ6+irBChLA87xTqC\r\nesq38l4l8m+EBJS0O7+nsH1bRd5FxY9izai7gph2aApF6wkWRQkAldA339tO\r\nu5oDckhH56CllOZiy7PsnVWh/+UKwDb3vF3R5Bwem36mkSII8hdsgdRbFIRl\r\nDZ1WImd62JB7thmAkrIaFpaBmkHYzaTD92wOAltkimKxDL8+ZTTMnjGxupi/\r\n97rAIgxogVZfRWT/L/WtuiB00OoWtK5vclw=\r\n=UhYt\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7a708dfc09b3443c565ce80a676b159abcec1339","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.10196647d.0","@material/rtl":"15.0.0-canary.10196647d.0","@material/base":"15.0.0-canary.10196647d.0","@material/theme":"15.0.0-canary.10196647d.0","@material/animation":"15.0.0-canary.10196647d.0","@material/typography":"15.0.0-canary.10196647d.0","@material/feature-targeting":"15.0.0-canary.10196647d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.10196647d.0_1659563626730_0.1104663740861127","host":"s3://npm-registry-packages"}},"15.0.0-canary.b20d3d73c.0":{"name":"@material/floating-label","version":"15.0.0-canary.b20d3d73c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.b20d3d73c.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4dbeb562cd83a5bc0610238e823d4e88e2f8497f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.b20d3d73c.0.tgz","fileCount":33,"integrity":"sha512-7ORaBWMkMx6b7LjbCaLhFm8orMP2mjGUsy4tTBwmmTsudOA2p8GrCpn1o+OmL6GT7J+3IQW8SQL+TUFt0RXGRQ==","signatures":[{"sig":"MEUCIQCTjHbqlM+ETCJauhqyCgx+ryCIczelNbGMr9dSVqpxsQIgcJLRUI+EgpowHnFhbvLuDWWK5UGbK3TUXoPe7uVn72Q=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi7EtxACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqmZQ/+LmNWjYcJ65LWPogI7hqFFGmW243WdzeKmXYgoagRbL8/JySy\r\nA5gs1+CO/mTxu7B+CZXocMXIAwfHJ2GO8I8Cvo2w/lPu1eZ6cUIZQDvN0AZ9\r\njbYHxghxKZiujcDvQsqnqQOXSt6o5Ku17JeHcnw9rUDl+nadJzGhrnxB/KGT\r\npQGUlVxvD525UBZmMKd6S4l2nomkL+/quobzTK5B94edwlrLkis57aLDNiiu\r\nwus5+6JdmcIMq3/E5p+JuSi5EF6NWSZArXR5stLhvw9N8NXzK633xkUAfQdV\r\n94G5XEGRALSYFqDV9DGO8sCBRtsqwOhM7yjE7xUlH46hCAp8JmWB/TNQRB0A\r\ncw8t83urJ0uyOBHFn3xUtZDlk7CFqw0ZNTBNoxTY5IYacvqkKX9TH2tk/P3C\r\nXoErUlK6ftYvoXaF52KE7Z565LUT8KFlKVQwEjgtjyTj0DxlXSfUbcw7xS79\r\nFxT8+Mlu5lJXssq1yvvfq1KvNSLnB3almUKlqnQJ78IDeo62J2H3JHEOTJKp\r\n5c+6nd4aWM5z9LU/BpMdY3VASOm3/2CD54iRW1gptbLgkuhjXgUWO/NtPe32\r\n1q33HXIGxmEEnbrNpL1fYynPdaAPN5ROKeD4BWlFZzzYQH5F/r6gbLWbKAsR\r\n5ZysVZq4wfDgZPLIpA1bc5SXVA595MsDv58=\r\n=o3fa\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c869b5a3ceaada6bf2ec164c65f1e4fd88a0e7ba","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.b20d3d73c.0","@material/rtl":"15.0.0-canary.b20d3d73c.0","@material/base":"15.0.0-canary.b20d3d73c.0","@material/theme":"15.0.0-canary.b20d3d73c.0","@material/animation":"15.0.0-canary.b20d3d73c.0","@material/typography":"15.0.0-canary.b20d3d73c.0","@material/feature-targeting":"15.0.0-canary.b20d3d73c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.b20d3d73c.0_1659652977410_0.7005363458461498","host":"s3://npm-registry-packages"}},"15.0.0-canary.47c0c6b1e.0":{"name":"@material/floating-label","version":"15.0.0-canary.47c0c6b1e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.47c0c6b1e.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"734973e025e89fc8db0b882c47803c6c700177dd","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.47c0c6b1e.0.tgz","fileCount":33,"integrity":"sha512-7g0KNQ98nVG2O2oQFSEITxXgdGrJPE7nhcphFd4VhZyb0WiYaaXYbLDIc+LC0KqtSZTGZ2LcrUgcs2Iud+oc+w==","signatures":[{"sig":"MEUCIGYyzW04ujNO1hisw0nZS5V73JciHf0omR1JzrReGHU+AiEAy/BzeGljgEWH1RrM9Yz85w/rWQ85Bl1M9ZDetGTswMY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi8ns9ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp0mA//fKAreGYy/1wn61YNQDSIusY1WrCVhfm1bPvvwy3FTruzeWlq\r\nW8BSHtrNQonbqE4rEd+DtMv+TkAlSDQdduMyLlusX3plj7bmZR3wWSUXZJXS\r\nDmuAovGSYszkoHwFwuwjsinlpGQw5yADf4njEcJ5L7DphwBx6MEUkUaJ6u44\r\nkgcFjhC47u6PPGm2poEwlnTitBLKd4TUZJacJM16qFa+9MDsmCe8nF1Ehwiq\r\n3plw2xl5cmJJdU/kRRz32giVYwWQaeFZLe/YrP7lOClTf7NZlh4p8o/58n9Z\r\nDQ9ej3XVmGh/9qHKRNOdeKxvn4b/F6kcu/E3rq1696bTE9EH1yRiOl9Pg5uk\r\nzVXYV5v4ixlOEAb9A499xnzU3HcxKCp9mXdh4GpoH1EeoakEd+6LNlj7Fgzv\r\nnTSJQ73DILxSJ+sk6A/n7JFa7ks8eHTrzysaj/twApHxcaR8ciAM7/fVO+oM\r\njF4HpfH5paMYh7KhG2lOWp2toC10AzP6nudZCe2h3BMQDxp37tc1NaME89fQ\r\nZVnzJDssGVVFfG2etgHVUBHPAK59lXkpGQMZo+oPc2MFnBwE8h6eGoVOSrSL\r\naSerAWAO9xJS0f706O4xXDK7O0azSUT4tC0QVMOxV1qLJJ6ZJlcOJ0Rlxr/c\r\nUMGq2nQkxLuVQqjqRG8oSOnf0mTdraKDQ0s=\r\n=Uusj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"692955bb2bb9c99ddd9321606e40fe4a56de120e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.47c0c6b1e.0","@material/rtl":"15.0.0-canary.47c0c6b1e.0","@material/base":"15.0.0-canary.47c0c6b1e.0","@material/theme":"15.0.0-canary.47c0c6b1e.0","@material/animation":"15.0.0-canary.47c0c6b1e.0","@material/typography":"15.0.0-canary.47c0c6b1e.0","@material/feature-targeting":"15.0.0-canary.47c0c6b1e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.47c0c6b1e.0_1660058428846_0.31467188509112676","host":"s3://npm-registry-packages"}},"15.0.0-canary.0e3dc8e38.0":{"name":"@material/floating-label","version":"15.0.0-canary.0e3dc8e38.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.0e3dc8e38.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"03cb9d75058be7145d67da2a4c4f54f2a10a43a7","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.0e3dc8e38.0.tgz","fileCount":33,"integrity":"sha512-dGA01CerNa1dIsazEHYgZHlNuN9dge7IjQeOJe2uEY30XyMXYxOr+h5rrF00erfBtaY2KpZCc8PJacaEvwqRAA==","signatures":[{"sig":"MEUCIHpe2pbH90zejuWRd9azOmcSKZU8kxSI/z68OzcTEc4PAiEAhRx145+WMpB1YQNJpdbtMdBod3SbNZbzLDuXPeF0Rv0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi9U5nACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr5Fg//elUgs3gydLSONyrdcrOs3gDztVsb9qCxKfSfpNgZcvj1rYfZ\r\nHzYyX56RgCcySgYiJp9fA+bCY8+HH8JP91RXeLxRZhGGNS7X4EfiIC9SWJCw\r\ntEnbZYQZ7seFtLSUl1jd/fnwddyRYywY7ZRmtvfKkthhklUQAfVESZDoYvg9\r\nY01z1rrHKPasj3f7x6sjF0TRIXa3/YYSdOKnWtxtdtNDmxgIm7J9k3shRlik\r\n2piMnl3QlJtxhp0XLMmxSXTttAf3DojcE69kK8srkJYw3j/mMpBfLmd9Lfcp\r\nAIZu/+yKIRnpjlzERCY9BRtOD7zVfTT+NglA3qXBE7RGhUmUCLOZGTiC0j8r\r\nHzOr0xZpefSTiWDbQzbz8gzbeLbVBT+MK2C9lzuPSGfaE5ci8aULSrGenO8c\r\nxXi93jO//fm2jV2diXjmoIO3zZbjWzZzpENI6fnAA0qTLXP31RZWg2ehM5oX\r\nSSaW59rNfdtF9iHiCeCxRcWt+mJByu9C+y4PqE1f7oJ5EuEqVzCh9YQ4Rey5\r\nXj1eVvqRIqrKe7zYwtBZU38n9MJQqJ243bdTJ0diBZjgpxREsCOi/KcdPsjO\r\n8O6x1JsNqECDs2gvssgKW2n2hxFjSUI0yIh65z2ITjLmaD6hjL7kM/NS/crq\r\nIP6mvc3UIMfjqHg7Spn0zrzPxbMMb9cchk8=\r\n=KN4z\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"51983e03d07e3c1f50454770dc24ff8d6d6f97a1","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.0e3dc8e38.0","@material/rtl":"15.0.0-canary.0e3dc8e38.0","@material/base":"15.0.0-canary.0e3dc8e38.0","@material/theme":"15.0.0-canary.0e3dc8e38.0","@material/animation":"15.0.0-canary.0e3dc8e38.0","@material/typography":"15.0.0-canary.0e3dc8e38.0","@material/feature-targeting":"15.0.0-canary.0e3dc8e38.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.0e3dc8e38.0_1660243559106_0.7545866110676456","host":"s3://npm-registry-packages"}},"15.0.0-canary.d5a11f1c8.0":{"name":"@material/floating-label","version":"15.0.0-canary.d5a11f1c8.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.d5a11f1c8.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"859e3d56656b49114fbe7ec8d3f361b9ae1bfcaa","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.d5a11f1c8.0.tgz","fileCount":33,"integrity":"sha512-9va4jIO9lvg03qI+XxMwcmD47BMBuZN315jj68s2Yei9EdXgS5LIRW6c/TrXD7QCiWMrUt0aNZTA4aFwabs3mA==","signatures":[{"sig":"MEUCIAMQ9ftOTAVZ2RGsT6i+iy/NuRZEEnECsvrtJ/3IKT99AiEAk1qVsbXt/YdwnRr5T99dzJ+CUX/5izVbk/L33fu9iuk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjDpbAACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqcqhAAm8AiRjyL11KQ7h8ycSGv8+HZHG/63zC3wmpOccBwiCMaGSiw\r\nXgoBP2IFBkLfDkG+rebODdzgYcAb4r0VSLlLRlpnqwZ0hsKrhmccvkm1+477\r\nIxl9y+3+WnYubwbRIMl5A6HaKeooFbmBoVkEbkondeDWtTLxb5ZoScaXvqBC\r\nkkrJY6m5XWONOHpU6sXoKj9pDHWG+VO3f6Vi6fycMiedXvZcbV4wTqesyhGQ\r\n6tDArzoUolLaYlLVk1BFPxETiOiW+C++pdJUpKttXkdb4sxKfGt26L1E9DRj\r\nAFkByCzRheF3WAVZaARSODPqfh6zLSb8fQmciJkVS++gjS5SW/ucIU8GabXS\r\n2rOzjuOZ23nlB5Gkx05zQsXgVufvMF7KwGzLPCKuyurWg7d5rlhdYSKVxl72\r\n92XF25yfOdSvi42L2fdncLj8Kkn8fj62uvrfEX1y7jmIFxxwOJCslLsI61k/\r\nNp83/Z+sQ9qWwvTP+2nxKJBjWpMXts+uMjaWHbKTO167HinJ15Uo25wxghYA\r\n3YJRCagx6fsWsh9zScGSC/0xdno3KxURYAxWv3Si2gmg271b9Gif6dfHa+fh\r\nCvKCpqn60EqzgKWRCWsSBOy74nQPUtYnTe015Mir/JDIHBh+ZyUmrlFGyYpq\r\nudXcQd6qOqa4/cEdrpz+P8pvFHmxj6ptwb0=\r\n=1o1w\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7ac71b54192751de3a5469d20cb2e1c30e544d30","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.d5a11f1c8.0","@material/rtl":"15.0.0-canary.d5a11f1c8.0","@material/base":"15.0.0-canary.d5a11f1c8.0","@material/theme":"15.0.0-canary.d5a11f1c8.0","@material/animation":"15.0.0-canary.d5a11f1c8.0","@material/typography":"15.0.0-canary.d5a11f1c8.0","@material/feature-targeting":"15.0.0-canary.d5a11f1c8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.d5a11f1c8.0_1661900479799_0.5984080547856441","host":"s3://npm-registry-packages"}},"15.0.0-canary.bac992a95.0":{"name":"@material/floating-label","version":"15.0.0-canary.bac992a95.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.bac992a95.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"30b63a658c533496967661f6259b69ba719ff703","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.bac992a95.0.tgz","fileCount":33,"integrity":"sha512-MbUiV250IyvI1QHbOF6mBYtpmvCkCVMz6gGYj6MMHNQozEcFz0Ou/yAmk2sHyt1YsZ9T050NWJKyEdAsRrj3ew==","signatures":[{"sig":"MEQCIANEZbm5lRexVkbGSpCYrAbkBeMuAlEUDW9GI/+tXwmIAiBIYNxLY8BLKEOv1fgSrwk2dgUUcEe+EqkRv/gdWr0H+w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjEFnFACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoLWA//QIef1iyAByiLPLIMxQ7xXy57+itljeeg4TwU0tq5Xl62mG+r\r\nAltPhaY+26Bw8q046bVBQpgKYJWYrHNVvgmv3NLKjn9aWlZrbEQeMs0KN5Qw\r\nuPiDvxcwvO4AAJc/D4vF+fW86GDBxhp9Wk9pU6A4sJ0eZrn6v3fpJIPwA7NA\r\n5F1RelplQD/3LGruzgJuFfnRCpJQ3N7BTiKSe2PSAUj1DrDcHY4Bb1LuvMDp\r\nS7jfkdtKQRip+eiJgyaVVWcGrnqhRh5yGj2sB4Zz3yM8kCRliBEJEP17qbwh\r\neu382U4q9/fTOjp3JdPUmkF5JY3lCkjCzRDXLoARKxtaNG3gTI1zfYZnpPy4\r\nnkJJ22xXXmdehwd+r3sq+fk0jqYSp8qs3hhgxovjsxTt1nNR30ya6apRukvf\r\n+Zcsn03NKoBtLrbNqM3aR0mWVNo2uQ7l8OIXROKiBas8lBVSfQc6PPyf9tmz\r\nsKRUzEHspdZzG02frxzx1ggSI+kw7OVeXpJvPqNko2WDkpk1deBNxp3Z8ARW\r\nHvSKijoQbkKyro3jNY4ZAmI7WmNQW3BUbe6OvpKI1LtPjGux7JAfnfAU48vv\r\n9pirWYrrauuqQTQmmql8Ff3mYZYT/ScnaDhzsB4HqWZKsIH4ZQH23F/W+dB9\r\nbp5rn243sz2izCuc8ewTCdM2F2MGIdUAty4=\r\n=WFXz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b8dc8f019b6b9a7241d55c21925faac495f9230b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.bac992a95.0","@material/rtl":"15.0.0-canary.bac992a95.0","@material/base":"15.0.0-canary.bac992a95.0","@material/theme":"15.0.0-canary.bac992a95.0","@material/animation":"15.0.0-canary.bac992a95.0","@material/typography":"15.0.0-canary.bac992a95.0","@material/feature-targeting":"15.0.0-canary.bac992a95.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.bac992a95.0_1662015941562_0.36176423767677957","host":"s3://npm-registry-packages"}},"15.0.0-canary.d25f3404c.0":{"name":"@material/floating-label","version":"15.0.0-canary.d25f3404c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.d25f3404c.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d93b13ba8410eaa8265fe847fa13d9872dba698f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.d25f3404c.0.tgz","fileCount":33,"integrity":"sha512-g9usLLigi+DEUgpeTxcYJwhTISQPtZkLMw4o95rGxsKJHU4UmjiBaP37v8N0U3RqUzbnDqWXVZorIufeoeq7wQ==","signatures":[{"sig":"MEUCIHhjqeregQCx7aNbuHTX0QPqDjYbwW4nF3vATYm20mSdAiEAjAjUZryOdsQwLf3Cmesbn+XH7jYuQMvnZxLLCS8xhyc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjEH8AACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpLihAAjuWfsL4Q+j2Yz89VMHr7Q3LtBfXV0NLNlIkql274z9jr3Yi8\r\nY5VRjkfzSeyItr7Cwo+bf8gi6s/YGpVSL4UUelvCyZ7GAfJ4pWZnzrs0cjji\r\nO4Fxl4KWa2B7lF7TK9RzaIA56C4wwRXyzzGXD7fmCtK37pCfARfijmkofoGH\r\nKBSOseuHcZReyWCEz+y2m9tfWJEz45soTdcRPbjYm+KnbvAA9wCQ9yB1pWOG\r\ngJPB7s7szrwsiUFNAojshapUlm/mHYuJgRk7T1qy/O2TRzms87pkwqN7x4Lh\r\nXeVo0fK85GJlGOec+GR2AZ3DWU6Hzd1f8xRUFB3KOOmY7ZdOLeIMMiIWKsue\r\nJcWc6KCLoNqcbn3q9ILBfpIJo/zESDpvqrvJuST1d0VrV+uVU0liF/elLvx3\r\n0dpCOQdYUc1/VMD5pNW7B6i/WPu+rg9PaKJwDT8+drGapvHXubNvXO8tKi9o\r\nASeTuf3aL39xx3VKW9I4nt3hs30img3/RIbnnFv711e9cUlBtXDg3USv+UCA\r\nxRvzK5WmWKg3fyLKFUV256IAM89F8Jq+Irt2Jk+MO5oK9dL2U/aAXS1yGe+w\r\nSK8ylQVAXzyNkZBJMY9OCSj+/bSu0md3tgGiWltf/Mvdr/Yy+mjgIwNB+pHC\r\n5z+aRb7VU2c2iH/BvSVefrHde/n9LSJowQE=\r\n=uipc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"cea256990068cc2248c9bed32c4a47fe622a3286","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.d25f3404c.0","@material/rtl":"15.0.0-canary.d25f3404c.0","@material/base":"15.0.0-canary.d25f3404c.0","@material/theme":"15.0.0-canary.d25f3404c.0","@material/animation":"15.0.0-canary.d25f3404c.0","@material/typography":"15.0.0-canary.d25f3404c.0","@material/feature-targeting":"15.0.0-canary.d25f3404c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.d25f3404c.0_1662025472746_0.5783096335043489","host":"s3://npm-registry-packages"}},"15.0.0-canary.920d8a79e.0":{"name":"@material/floating-label","version":"15.0.0-canary.920d8a79e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.920d8a79e.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"579676c03f2139fe3da1776d303d19f7b94f701d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.920d8a79e.0.tgz","fileCount":33,"integrity":"sha512-9KQJ/8q30acIHZS8n0wjk8I/48c8Sms2hn+awcIskvpGBCRne03jJHnbKHtKIrk0mOGtab4susamAhAbT6jNxA==","signatures":[{"sig":"MEQCIEGvgvAGKMWKZF4gUlH3Lj5/IKYD9GG0PDpEV0rL/+SDAiBLULrqfj4w4+k7wUpeNb4zof3kDNccd+Orahdcu7XjSQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220957,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjERQrACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr1KhAAnD4QhHaEYB/m5wLJC9My71oKNGnxxqsfZN7s+a4J2Mv/FGMo\r\n5ZV2i36K8a0eOArxeivApUocxTdkSZzaqWjFFxzkXTh3dp+PSYvJqAPd6EiT\r\n+vBoOInIQWO+54/R+KARrOKBLNone3O0YgyzuWo6tM9AFjpweKF5q0ZyxEd9\r\nu4K4g4rtXGlJS0AqTVF8L6qfbgKvrZZkNZhdLA4uUUsqrYnno4HVd+z7fZc7\r\nDegsDW9TfSnesdlkMSJTWS8gbbWz2u4YZ0LSIUky1Zaw1Nks0vlRY5O6N0ig\r\n5Sy8vRhuLX6XwGPZVRgn3uvEs0VLaCQHB9h3UZDWk6tUCsOVvKHe+7ftOdri\r\nMp/B4Fpn9H0tCNAUaQOiX4o9PyH2330+UkBrQMnTW97+QcVYmaCoRsBJo+Xq\r\nXhSC3a+8bwRwY5wN/h9H/X+wyTVA4D1n5a+WXIbzEahznSTxkaBkC/JNhFOg\r\nY94haB76UMk/KVqbKRQ9+th8rJakez5X0kKXiEjoPp3qHCQbFvK4GN812s36\r\nEYxS8BUMHwMnqrR3L6bcIJu+m9DEIAgL2mBldPNQU7c1sW2JHhoO9e2H4amj\r\ny7Qy5ZiImHyGBp1sS5hFaohJ6MVtH9fdq0QdkYSjt+JWnKoENo4FfFfYyiiC\r\nCm+frNl80HLwWCldBIrWbWuO0KtTE7LW4PE=\r\n=sz6G\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"781a4c78770587fd97c25633bf9f137081c35bc1","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.920d8a79e.0","@material/rtl":"15.0.0-canary.920d8a79e.0","@material/base":"15.0.0-canary.920d8a79e.0","@material/theme":"15.0.0-canary.920d8a79e.0","@material/animation":"15.0.0-canary.920d8a79e.0","@material/typography":"15.0.0-canary.920d8a79e.0","@material/feature-targeting":"15.0.0-canary.920d8a79e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.920d8a79e.0_1662063659563_0.7730814254091452","host":"s3://npm-registry-packages"}},"15.0.0-canary.c363f267b.0":{"name":"@material/floating-label","version":"15.0.0-canary.c363f267b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.c363f267b.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e36bf2ed1f8699a663f2ed4217c4a2c228d32e0b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.c363f267b.0.tgz","fileCount":33,"integrity":"sha512-zcSNxpkWV5NNse7AW3Dg7oXLUL8RlKd0UwJBOIOATXI6thwfzkUolASDLXoS8vzJbGIIu4QplXawf4QJ21Mhcg==","signatures":[{"sig":"MEQCIA9wVRauwjbJr6/tVV/6T/wnf/wKor4vqGtTv3MU3UE+AiBpfpdJnbQ5fkyyAEwOfcIU6UMH7S5MBkDjvb/s7dEhzQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220957,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjESGaACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoUcxAAnYuA2VEkYPeVcjNGdXOdvoJ/REQy0vdB4izoR9ZxJasvj0Ko\r\nt8T7xBvs5CghCvFeZ4xVGfDth6sC+ikHNVYaKIwAEXow/ToS9uy8tphjclxb\r\neCjr+FZUdojXDpw4gcxMhoNbUhsQ7U8kqFVJuH5Ss+fjkDg3zCFghlwKU1kZ\r\nDgdgKmuI/gjWcMUiKNM7rU2eCB+QlgzI1hQECUU1T9xy9cXU+HklT48wFsp1\r\n6RxOTi0rmNzgEtOMZ4yHaDvl7p0iswoVKhAb/VrCa6GibFlviK21R0+iugZ/\r\nkCFNX6fZa9ha/MiknZ87I5DhGgl+Er/j73nTtvASPyvfv9x6jU8XO/Iw0kes\r\n2QLtx1YJihWYsf1OZLwa2jm2IedsM0GUQL1D7898x3OefBiUF4K022KTrEjh\r\ncHkbnPF0A+RJirTpfEYnXkfa4ZGK0LZ+nb6GwkDnq+pNWowgXtLP/Linfyl4\r\n5EoStKLUx19wXq+NtAzOjy5ggD5O56dRLeMQTY6bqcdY9MGbuk99YYDvjwQm\r\n0aUI0FN8ktQ66l3I29c2X7Y9wNp9Pw9OA+4GezjihwBP8Bkhl1YxCDGM8h1L\r\npcoC2TsQdwuAcfwV8ycjAzxK4vcjYGFPt8Sw8mXspndPZVYXCnto539i6nn7\r\nRsltgxYorgEZd8qAFovZ48GsY9E0FFA3FIM=\r\n=f7dk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"6e2ef624f85a84b5510b55933f017db57797f611","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.c363f267b.0","@material/rtl":"15.0.0-canary.c363f267b.0","@material/base":"15.0.0-canary.c363f267b.0","@material/theme":"15.0.0-canary.c363f267b.0","@material/animation":"15.0.0-canary.c363f267b.0","@material/typography":"15.0.0-canary.c363f267b.0","@material/feature-targeting":"15.0.0-canary.c363f267b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.c363f267b.0_1662067098226_0.34469988014003117","host":"s3://npm-registry-packages"}},"15.0.0-canary.a4eb4937a.0":{"name":"@material/floating-label","version":"15.0.0-canary.a4eb4937a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.a4eb4937a.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"688fbcee33f7babde9aaf3dae9e5c6ed7a83f958","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.a4eb4937a.0.tgz","fileCount":33,"integrity":"sha512-onu3Jms753I5xN3u53T7/DVjeboNvIIsciY0ZuN6hyDdf1Y9kHsKpIxHY699Mp8Cn5K0/X5+uMJKU2aFiXKWBg==","signatures":[{"sig":"MEQCIH4NOBV0u8RuqKqM2bveaGhPEBtmzgZTX65uGpYTMdkBAiBT2QX1ozA8urk+pYTdLacdwHKXu+tkErVWxf4QENZI+g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220957,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjF49FACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpVxw//Xln20g/B80EBlg7VD943B7QVg5BTMNO6CIh3YVUxDcldcEsb\r\npk9Rg4+3lqp7FlaR/k10j3urflDO+XTJgVtrgsOqtKJz7pdgcHq4L99hwmOh\r\ni40yZ6smyP4EJuglFjsEECMTBPOXONOHHw/OOtUV0zQTQCQ+ZLHy6qJmJWmv\r\nxFjc5qVZpr6QQa5xAKFm7wkQlC97pvdvX4vgv1xAK4wB9U4xMRJXJpBRepCm\r\np3wAFUqIpyT7NC4k6c6v9FgI2GIDY7L1mm1YUqNqByoNC2JuOG7/bDoCMS6p\r\n9YRqSvppl8Qd5c9NEbJNWjt3obbjOQ45PzW+ewpkXDB+HHD8Yoiulzxiqjri\r\niOfUhagilWlqr8Wrkt8Kuan4JYBfyYhgrxF1Hq0sKGJ0xPpU/x5T5hkuE+n8\r\n+kk8HnHWAAT/9xfVQUX5DJt67ilJZ7cNFTfS4A0+Nm8rZS2MSyPnS6PHGamv\r\n+sV5JcBwVtPr8FyfgbUWBaJGDomlBnTeHCrIAUj131FyDuAksP8XooW/Fo1S\r\n2qC8eyDHfrcCYRgHBcct+/j5L3OWQbbMbb0NXsOgRqnvIPnuFdTNdui3SHJk\r\nzijvVQ1jvK9LQzIYPpqkrowoQbHRLH8IOF5pWh1nr244LJ9neR0F3SDNArlq\r\nxmUlqqMEADfaBs//vPtcYHOXHAmQjM/Tus0=\r\n=Tgsz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"cc03915314119934676831cd7a244f70e12dd2c6","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.a4eb4937a.0","@material/rtl":"15.0.0-canary.a4eb4937a.0","@material/base":"15.0.0-canary.a4eb4937a.0","@material/theme":"15.0.0-canary.a4eb4937a.0","@material/animation":"15.0.0-canary.a4eb4937a.0","@material/typography":"15.0.0-canary.a4eb4937a.0","@material/feature-targeting":"15.0.0-canary.a4eb4937a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.a4eb4937a.0_1662488389507_0.8490727432613054","host":"s3://npm-registry-packages"}},"15.0.0-canary.4299717da.0":{"name":"@material/floating-label","version":"15.0.0-canary.4299717da.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.4299717da.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7dddd6f2c73e5d93ac648fac7e2d409ab67c188d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.4299717da.0.tgz","fileCount":33,"integrity":"sha512-kS6ExBzEV8ob/08YJ2GAeM0r6FG5y/I8Xf0wFYXOIJJ4fwsEs7Pc4k4EqPOA6yQOcI7bj6Lrl9dlKwwESCqoGA==","signatures":[{"sig":"MEYCIQCOxjTyaHrhNHjp3fgZbSFpHTpO/Dhqonwbw4iyEKMgSgIhAI+oRTEIVon3g89p+wDo8RQJ7q6Y5odgEGf7ByxVAHim","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220957,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjGMOuACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp8qQ/+L0NNMRyA1sePKe6z6NkAKcKGopU1DA4r3yXGDG2i95oeSynr\r\nPBY0JPGZHfMGiAAJO67Y/hXH2cL6Sm9UOg7+zHYM1/UA4IPXKyz+7i1YaE83\r\nsUrSpemvA0M67eCp/TXXwX8ISuUhUtaCCwdy/z5AdNrGnQCOV7cnAZGTt0I0\r\nxbXz3NeXjz7fnnPGQDPcTy4WWYTOnrlhTF68YlpEpeyXNUHBMYZ5shtATv5p\r\ngPAqEITFiljb3O9nKxa3b2vJ6yUq9+bkbtXPyxhKgdCZQKf1joo08wlpwUx+\r\n0+ZPFY5Aj4Wi+Sno3tvDHGHDjNWk0FiInaBEOG3B8zspaAW3x5WnYql+/aC5\r\nwMVPRAL2iFlGHqr56OJ0fzkfW94bIw7DWpYKJ4W8hgP2GuFbNWKQEEzwD8se\r\naYQUOX35JvHm/K22CSCZJguy67PcSsgi/NUl54qVxsVmJ8c/Q+pF9JwLiQmn\r\nbN3j6Nhr4uGwbUIMKfhqanXoDJjJT+NkXA9JdyFHPxBCr2X2THkK7uBnQTXJ\r\n0iLAYNISTGCRNXyV5MtoseGKp4GrQ0nfFBIyc8/5jhrnfT/sc/8x/ugBQ4Uk\r\nqdBesrIKA/f6NGkdjmSdejFj+l858ci/wcOT4APPO6MD0b3e4ppRmqM6hs73\r\nZCJbhCLGRAYqx0mZ2FmWbqouZzOhUIFk3ko=\r\n=I+Zc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"22082634ffad1ea812192e5ac62786a8ef47aa81","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.4299717da.0","@material/rtl":"15.0.0-canary.4299717da.0","@material/base":"15.0.0-canary.4299717da.0","@material/theme":"15.0.0-canary.4299717da.0","@material/animation":"15.0.0-canary.4299717da.0","@material/typography":"15.0.0-canary.4299717da.0","@material/feature-targeting":"15.0.0-canary.4299717da.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.4299717da.0_1662567341921_0.6884322028421908","host":"s3://npm-registry-packages"}},"15.0.0-canary.fa7d8d44b.0":{"name":"@material/floating-label","version":"15.0.0-canary.fa7d8d44b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.fa7d8d44b.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ad5fc74718e616701e55d2d32af6e78ff43fb74f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.fa7d8d44b.0.tgz","fileCount":33,"integrity":"sha512-tO1j+sZpgqiMpON7L6gP8vidmrh6TgqJmsAD+3RhqlINkXcJJlAuX1ExL5RA3oVeOb+QIWSzaoKKRNPX2y8h3A==","signatures":[{"sig":"MEUCIFrxWeSIgYenph2w0N9hmnV0Xss4I0frGOO6V3+k47xpAiEAnvf2woEhwaypGrtl67gZS4t3MrinZuwmEvcmONBNRpw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220957,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjGO6aACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrC0w//SxzgAXlLIo/tJvtM8Hg+XeDNp6vVSKDCKbym4gUA+0eeRXPj\r\nBoxDQ/9ntRXuGJN88HVSOkpYgqRWlWqnBRd1t4RauD0dC+9YNBn8nWbtf4or\r\n5j6jqHB5XdPGicZQ3enU1aregbSnx0sN8ucxGLKTOQP/OxeeGQxMzj+YY5Lk\r\nNLx2Ee6m8Al+ZrzcZTHhdvcG0jcrHoPQL6s8LBxeWhUtIzmb01q+kHaNOpRj\r\naGe8KIug0ohi/S4/kxRMbbMUp7fjQxrsDNzI98Rz3JQFz7ZB5uxrtFRunclE\r\nRq1P2Siflnaq7QlhIL5NWL4wXgYRUNhLQSuHiYM2fU8p8nLD0c+lFzo4+Tsf\r\n8dBW+7V2VYeQED4vpOZqyKaFpibg47SEIiDkqbfaJhtvAlMT0qFRAJVmHh3Y\r\nH0SEHAkyENT9ePg5CwzzLT8Cep9nmDgk60lIS7eGYr+9g1Pl9YYfZfdRXDBA\r\nTtetm1LmvIl7mNhK5cOAMv2PIvbeq88OovwxAR58WeuXgCb/gRQehl/MjXfD\r\nN+50VcHKVA68pGYMGxUMChaYABLBTFhg4QgNFW8OfKwMyGwhiPWwm0zHf+Yi\r\nK/a4fiSJXdt/q21T3+DgrPR9UIRgO8A51kbARgvxWsOVBsKxA4YHq8KsEm2d\r\nkmhnI/KmQ2RwmysFbJ4qUjtiPeBnFFLlhG4=\r\n=jnK2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"6fc828292e73ec2f8aa4332891628e90f4586658","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.fa7d8d44b.0","@material/rtl":"15.0.0-canary.fa7d8d44b.0","@material/base":"15.0.0-canary.fa7d8d44b.0","@material/theme":"15.0.0-canary.fa7d8d44b.0","@material/animation":"15.0.0-canary.fa7d8d44b.0","@material/typography":"15.0.0-canary.fa7d8d44b.0","@material/feature-targeting":"15.0.0-canary.fa7d8d44b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.fa7d8d44b.0_1662578330746_0.5951183984822537","host":"s3://npm-registry-packages"}},"15.0.0-canary.a40e3c768.0":{"name":"@material/floating-label","version":"15.0.0-canary.a40e3c768.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.a40e3c768.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1a062d6803502876796fcbf2a8ed11b49e78a0e6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.a40e3c768.0.tgz","fileCount":33,"integrity":"sha512-yVXWtWsnG/Vck/pLc9PD9K1qKRj/an6x6NxziCoR9Nw5PO2/A0nk8ysthL/qVErR88Eorrnj137kE5JNM5GTVQ==","signatures":[{"sig":"MEQCIH83SMDpkPr/a4E7ix0V/8IwNBirPwHxT9Zs1UYtaFHKAiAZGRMrT23oa5KqzaG+ABaE6ohCJk3whCu0BD7YBvso8Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220957,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjG5wvACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmohUA/9EWcmSJywUDNTqiUBu4fYHOKizs3tRvJYm/8LJDKycMlaess0\r\nR6XNffyrtaBgAZTvlx9HgKKrW7RODdq1ZwdduGeZTrKrtlIiSV9HwpV/L71r\r\nAhnhEVDKBdQ9avDqF9A+QsnwT+bF8HDUSwvZtnd9OZoGisEfiXT31L/230kz\r\n5D9xuOY5OrLysq6ZxttKPvX2hM2C/I0f7e3QAyMcj87/gzQHNqkB9IN/rIQL\r\nUk4q5P6mYU3ecTgsLRV6azVPYE4NvT0Pco7Vs3wvSmX0QOmoPsEbPVWdk8Ag\r\nqu7bjc/sT2s2PNej8w4CEbQ5pCZvJr54qbNwFWpcqGTeWjVEHOHqg/XqBJ4g\r\n8g7+d1O34ZCa9hZZi81KmG90UhfOth360RTBz3Rc6z5WmT3gQRrkwNrOLGku\r\nbMwTC5ZAOJd8k4xG+IjLJlGUOtkaziDlEQhTqyUMF0+gGIxRJJAKkHgBpXXQ\r\nyiF6TYBu7JSlIhXEOqA+Ud5F5yrTrjMd7XajPXhQzWv33kByiad+L1rS7QtO\r\nzztCNkBtJJbjBPORd/jf6NrjYPIfw5E2UC3T9iZ1IV8XLzp4GPXrg26g/M7U\r\n1BsCcXiliN5L5p2KmySWRkgjD/kpvrP00/QswDshY7UAx9eJEegJ0D+nzTei\r\nBLjIHQ2K2tiadxJvbERHjI6BoAz41VwmCcw=\r\n=XH1m\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"33ff1e71e12298ba7158884edffecc83f0055913","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.a40e3c768.0","@material/rtl":"15.0.0-canary.a40e3c768.0","@material/base":"15.0.0-canary.a40e3c768.0","@material/theme":"15.0.0-canary.a40e3c768.0","@material/animation":"15.0.0-canary.a40e3c768.0","@material/typography":"15.0.0-canary.a40e3c768.0","@material/feature-targeting":"15.0.0-canary.a40e3c768.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.a40e3c768.0_1662753838814_0.5509400367995181","host":"s3://npm-registry-packages"}},"15.0.0-canary.18cdc9a00.0":{"name":"@material/floating-label","version":"15.0.0-canary.18cdc9a00.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.18cdc9a00.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2564bab08a9211b23f6025fd98c45ac2e06b0ea3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.18cdc9a00.0.tgz","fileCount":33,"integrity":"sha512-izLabOqsg4n7Z2l7NGNTjEiNHWksSyNtKKui0IR/nr0J72FWxXhkvyJZ+7/t8YFfjig6RfTIWVrWYwA4/eFkxw==","signatures":[{"sig":"MEQCIAM4itHu2FVWMKMKJStYyz7rBXY74miqhW7hN1bvrgNrAiBazLuAkqN1FRs7Dxl794ww2hNx3QGoHjmjri0DE2dymg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220957,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjH56CACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq/Zg//YDhPrZ1BuE+B5k3qjkqPela4aykY93vRZhmYKkC0b37oWSOR\r\nJesKr31BZLVl5XbPyenxkJcfy0rBDvOIpP+tK2L2i+6+g29d8mIz+mJc6K+N\r\nkeL8vs9GPagnnJnz18qglrSnHU9PUdr8UthvQvrrd4qTAdApM/iDlC9ORBng\r\nn4F988YO9+EI5tboK/6bieD4iY38xhxuE5YO26rLb1CTXm/hVWcFuSTg7aDu\r\nW9eZ+mi03uXCvO87P18ccj8ZYk7BVhkkPlub8pa5zyTHNIkL+FzhCguH9XL+\r\nt188zrIH06Tzn82bTd+P9tIFbPqmM4v455+RYxX/fId3Ny05S2OZdTJwrKn2\r\n/c3e3nIW4meFL9F7GK3h206iT5Wm3Sw02neFrXAMl8MV1B09aO2LPd7HLBzd\r\nZNMhLWQbUlrCJn26a6AT4qhHrvT8beVA53zQh7UNpBuIo2piohk5UjyNuFEl\r\nCxvASyrgF+00WvJeu8gVRMbsIY3O5GAgG12PT2EpDgzgK+R7kmSyX9uXWs6D\r\nlXlMbKGCZRmH03vIVjAATHqpcOPNXv4Kb/57pcSdZrldVSJ2DjFRLy28csw1\r\n7UaCkHqMaesfinVQ/JzQvP+P6qpXcTaFuiaCOvVIKt49JDdU1nB2jXue1tZJ\r\ned5PdyfFEE1ueucZrRaW5eno8mnua10dpkM=\r\n=oi4o\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"85b7dc2034fbd68e480826d635d6d061ba62d3ac","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.18cdc9a00.0","@material/rtl":"15.0.0-canary.18cdc9a00.0","@material/base":"15.0.0-canary.18cdc9a00.0","@material/theme":"15.0.0-canary.18cdc9a00.0","@material/animation":"15.0.0-canary.18cdc9a00.0","@material/typography":"15.0.0-canary.18cdc9a00.0","@material/feature-targeting":"15.0.0-canary.18cdc9a00.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.18cdc9a00.0_1663016578162_0.24225858223966168","host":"s3://npm-registry-packages"}},"15.0.0-canary.7ab3cd3c8.0":{"name":"@material/floating-label","version":"15.0.0-canary.7ab3cd3c8.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.7ab3cd3c8.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"68c7c39e10b579eb5cef32a54641ef2d608cbac3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.7ab3cd3c8.0.tgz","fileCount":33,"integrity":"sha512-6jKrTqLMbdXCbjpdSU7V60OQ7lpiqJd9fhVB+Knrj+6Lldlfi+UqWEukJzKvxN5BgkGGDXoRPPKoFyjGXueFYw==","signatures":[{"sig":"MEQCIHxHkiIizsPdr+UWe31KLMgv9p80vrOXfRBcrN4Q0T/tAiB9zOdq7ByfN4W6FBNLvlLnNoEZb1Q4jtYvl5RWesEnOw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220957,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjIQaSACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr6lA//XPzGIJl5gOoidjSGtoflga/4pks6Uq4sZxEUwr5gzMu72dRE\r\nCsS4xnnRJtuvFJ6K8lYdJLH8dU0pfkMhDCx1fZRRY9plWGHPvqveSambS8t7\r\nJrondGIusHmLo2KekYl8AddjQZXYM4NOsHCDMqVKGS5hNwF2iybiZgdfBvuR\r\nSSidP6bdtjBdi3VZxQ0wdJ0vYudSbD2A6g1g/yDrRcuWtm9aiBcEDB5g2ui6\r\nHV2w/FN3p37GNUmBNnfBdsoDCbxP3amXvV4B2ZSyYWR2WFXnE7bxgKTxe82L\r\niBnt1mvrhgNarkBOFrI2TkKcQO9HiivAXXtsSQcH7L8GV4ewRgXDnZpOJ71L\r\niA3MUvgF+k4cBfm6cNVtUY2JEvHtc7j8HbDzIJuAwRnlkSsz2YDJnT6IRzwh\r\noWbSvnZ3Im/kuE6I/AZzuS3qG/bM/TtxNsHDCCSYjaf57nuLGOMT3Lfc+qG4\r\ndrNKkXN7RbJ3FTa8f5t8mxcTTHoxrJUI1rZjIcqxHYDKE83Mc4zhlwbWC7XR\r\nUzg1/wOwZxFiSIs1ILovQ50PTbyEkW0HSTupL2qWsiuIGbjz6mRdXEgYNhVx\r\nRcqem3L1mSEofy9HtcfaLpVD76q9M42AYnSKv7UQ5r7GkmYJe9xTvnudtQNb\r\n9E2r2MOqnpi9ZD1cqWuPME0xpOO63bpY/XY=\r\n=TYF0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5e840f2c9b221706de7ff81194e71da2b68b82f5","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.7ab3cd3c8.0","@material/rtl":"15.0.0-canary.7ab3cd3c8.0","@material/base":"15.0.0-canary.7ab3cd3c8.0","@material/theme":"15.0.0-canary.7ab3cd3c8.0","@material/animation":"15.0.0-canary.7ab3cd3c8.0","@material/typography":"15.0.0-canary.7ab3cd3c8.0","@material/feature-targeting":"15.0.0-canary.7ab3cd3c8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.7ab3cd3c8.0_1663108754096_0.4373941056703825","host":"s3://npm-registry-packages"}},"15.0.0-canary.2860d244d.0":{"name":"@material/floating-label","version":"15.0.0-canary.2860d244d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.2860d244d.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"0f3abae75770c93cae21c71d1f62d188b148acc0","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.2860d244d.0.tgz","fileCount":33,"integrity":"sha512-h/7QZJgcu0NrL2Qm92Br7CNZOHLIWCPj5Gq90nsms8m0jH2vkl7O2lfKwEcZQH+xVNnGohXN/J4EWpOgAuET/w==","signatures":[{"sig":"MEUCIQDQDWxYfT+TrKpqzWLbcLBFYxrGkUtsBHvAAgxAa/xFQQIgAfcqaSQbMmNBl5Btu5sZptbM6a3TrG2KkKvhw3m26fE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220957,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjJP68ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmptIA//c1nWVhP0B12+kOumsJa//djVbJegBgaEPvtgzkjTB6n4JCDS\r\nY7qetNTzLa634w8D4SDi53bsqO8p/8PU97ZeGTmNmlC1qhT2in6sxnFfrass\r\n45o1xhWpg7qac8oe3+eQWxT7lyUBwb3rTwWxJs650V+2gmNl4mzATnVlWjW+\r\nhWPDvMSseVXoiKjMgeW1aAHEKfdp8gNO8RmjZ1GsgG3DJ9oY5HlNNMRQwnDD\r\nfFZmWejEYwpLCrieIc5o96Nu/1PzqmFxvV9664hjAbdo4pHslTPDXw/y8iVv\r\n0a+wNc73qePn/hAyQCYN5mlbwrgl4+Jo7oTcROJMUlo8E+Fzbu+UGU+yzZA1\r\nta2XfuCC1p+OK7g+CPqFjCfQrP8UmTAeV1yS0Zhc0ALsvaBdOtdnl+3FDkgp\r\nojY86i+UoRZlaK6mZG8OgAJyyE3lS76lfSh20EvNk6CNszKurv7C7BcKD+0t\r\nXVYsATdPHAHr/wKJpCeJ2fFhckTvkX9Qcn55HCl2VRFjnKIUwjB9MhU/Tv2M\r\n0uoF01NLgwZ5+hLan9d9wTHvblNW+48S0Yxgc5evH8N/aAMv0j+9T1GTdAfH\r\nZr3CV32HC0elyemYWAhhFjEJUJZKKwj/yUrv8diVj+/25KzVLWnc553VprnA\r\nbhEJm8EGZmdNKtOi31+y793oB+fFvxTwLT0=\r\n=FVtc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"992b4ddc7340e4e4231d1001d68229e8911eeba5","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.2860d244d.0","@material/rtl":"15.0.0-canary.2860d244d.0","@material/base":"15.0.0-canary.2860d244d.0","@material/theme":"15.0.0-canary.2860d244d.0","@material/animation":"15.0.0-canary.2860d244d.0","@material/typography":"15.0.0-canary.2860d244d.0","@material/feature-targeting":"15.0.0-canary.2860d244d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.2860d244d.0_1663368892473_0.46599149173610144","host":"s3://npm-registry-packages"}},"15.0.0-canary.e8726533c.0":{"name":"@material/floating-label","version":"15.0.0-canary.e8726533c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.e8726533c.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3ec6d015e9230d2c7850e98f7b0d48643a062001","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.e8726533c.0.tgz","fileCount":33,"integrity":"sha512-J/cmVd3CcA4ZRJFVnHtQz2VvK34KpwS0UDRqQAvl+/dxfLzK4HLBsX9KW/wkQsc7OTE8JrIvtgdqUBFhdBr3oQ==","signatures":[{"sig":"MEUCIQDGK56zRPdkyuAUbjvgLtPQmQFCdkKO8HfMWgut3l+RyQIgeMBVlVv67zLzR7XNy4PrVzwrzbtsUjaD5LpqbFH2WWw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220957,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjKh/oACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrPzA//alvgWGDgIC/JG4OuBPyC58Gug/ehiwF0QaAdrqdz3OjDipWr\r\n+Cw2nDsrapekowq7FFLK7EL212k9ZbxdOGJQZMxvAMPTq1I+n9AhUKo9E0X6\r\ncvY8wv01feu6JaXoL0PGekml9LCpe8BDmTlCdtU/iZ6kCQngJdAGZMsuLTzT\r\n5vRAzbEftGV0BaYigjWei9zoktrydTs9Z6mRUr3+CAzIEP1e4cS4OgbyIwiy\r\nSIsp8dCxdG7fDlDKuxph6bSC6zbPItuq9KaN/Ng9FuwHRlhpeNOWaQAKKoqo\r\n5oicRuGoTBWCV4Cq+i9AXIdY4DaRHdq4qL2uNnMww6kmbteNlWtYwIVUy9uj\r\n+ZssG2N0xLWRyFbk1m5oRAtywXBjRbQGS0U7PY9zUqIq4fupJdUfk6plFz32\r\n3IRD9DjKB+GydUPaQicuPwiZ6MvBndbgmfgQEoI3XfHQqnLk6++31pDIvmXO\r\nu3Q13N+XAPMcRfaAA82JAfc1q84fn6+PdzqvHOPkk61Lfm5fryZ06NSVhJWU\r\nl2iyxDqJRJcnGWE7rRL92LYMrneUjHypb5Ndf1UgG5ZKtKM77lhjljDmFSqY\r\nnYzGhi0ckqHAdEo/UB2PemBs2cZT6ZLLfg04MqTTg1Fh9trG4U08P5QBokgP\r\nFyKu1oUvdBghULwLt1loEdGSeBkCySwkffg=\r\n=Vj1o\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b85a9f4d1ad6e30de8175562c0093248848c2598","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.e8726533c.0","@material/rtl":"15.0.0-canary.e8726533c.0","@material/base":"15.0.0-canary.e8726533c.0","@material/theme":"15.0.0-canary.e8726533c.0","@material/animation":"15.0.0-canary.e8726533c.0","@material/typography":"15.0.0-canary.e8726533c.0","@material/feature-targeting":"15.0.0-canary.e8726533c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.e8726533c.0_1663705064368_0.5895245203741291","host":"s3://npm-registry-packages"}},"15.0.0-canary.00d8de0aa.0":{"name":"@material/floating-label","version":"15.0.0-canary.00d8de0aa.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.00d8de0aa.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6216212eae2428343ed70b83ffd5b356542e8238","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.00d8de0aa.0.tgz","fileCount":33,"integrity":"sha512-qr2aM1OiK70M5p7Z8C53ydLjTqG79VRJkeUnSHvNgLlqARj8hM2LseNtK7SonR/3zq7lVRphn6RHDnaxWP/5OQ==","signatures":[{"sig":"MEYCIQDqpvbrws0hyK7wfl0VffqAdu44cHc/q5hMkJCtoO9T9gIhAPNGO/qpNVr5KIsbWOi3uuyY3ViRmEzgVG2rRGY5rktq","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220957,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjKyurACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoqHxAAoWCJzbANLoeGrIWgTuYPUK3Mu2A1yhb8kp7Zx31pCbidprY9\r\nJHl+sZ+c+ELmwoAVq9VKxlG7E/Nx5FwBWfVu+QhBP7B9qmTHa+hkL2LgAcTN\r\nntKiLRSAiU38Z57179H1xmkN2vdCRmINAksEVJdFmhTDY/S9YNvEtsHt5EHs\r\nYg99IAsf1DU0lZ/L/iyVYPZLTaWo5E+4+OcyzBniCxJWjGP1TD70yFnk60RJ\r\nCamZL38N3jAePoYuGK7d5xKhiLbvnVFlywcJPOoUoZiQs+DgZ+LlSgkVbMDj\r\nhKdtkvV0YRMI5eWt85kDL3wWumUlTptP06CsvA6h/B5anFxnF2vABl4Hsjhs\r\nD8Y1H1AsK7hdzjjOByduUKpJLM7ePgJWGJ3LYk+av9hsuwDbq0MB7JMKtD8w\r\n8FbQce43UE5FzkyXVHRMx87A1+/LTwlWnCxVp/BEWD3h75GPj/NIUvXGzNgp\r\nOpjmJbeEF/EwdgBv/23zYo6tdDLzTz87KpxCVTSKp/l/cF0EwhzD+I1s1Y7W\r\nnpybqWvdWoOMMd4uHMFMeM65JRKop1NtvnnWT65iB9v3zVCLw5r7dIq1/jtF\r\nC7e2sQWJSZffw5qE6ILlpE8SGtOc7+LteiqUR/WGpYx2nLyYXZ9qg1hMMiQB\r\n9jURgVUilyKgsOxh29oOGm3cr+kJZQ/MFgw=\r\n=FgOw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"0be0806991396e042fbbfb14ac3ad622770647cf","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.00d8de0aa.0","@material/rtl":"15.0.0-canary.00d8de0aa.0","@material/base":"15.0.0-canary.00d8de0aa.0","@material/theme":"15.0.0-canary.00d8de0aa.0","@material/animation":"15.0.0-canary.00d8de0aa.0","@material/typography":"15.0.0-canary.00d8de0aa.0","@material/feature-targeting":"15.0.0-canary.00d8de0aa.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.00d8de0aa.0_1663773611262_0.6726890724818813","host":"s3://npm-registry-packages"}},"15.0.0-canary.271aedc30.0":{"name":"@material/floating-label","version":"15.0.0-canary.271aedc30.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.271aedc30.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b08f1fd3cb5d0b8d781738a9301869012cc95002","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.271aedc30.0.tgz","fileCount":33,"integrity":"sha512-3P9RpzJW9/Km/xV+WPEnlHfVFxnSrrezLO+CeicRNE2Ik5pxzz60e4SI5cS0QvZwe4+aIWs/3VUzZsUq2uKFaA==","signatures":[{"sig":"MEYCIQCHRAiEW75YjHh1xOe4HQn0t6wA/SksJ7PRlTJ4eXAC5wIhANyznlJG9/CX9STUo+kDgGSOMnk/0gznKjKP6N2Q5J48","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220957,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjKy9eACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq+Rg/8C2nfx97wnZVRbHzPTDerol0nhuWf3UohpUErVQGfEDRLXp0V\r\n+XirYTtI+WCltG57Bck2s0THAEcWXIM17VlrQSosgdW0WiXsUNLLbSs53xgw\r\nuceAgLvzELht+jZrhWC0Phz4NdEadZJqODtcQiXV5IFoGHASWFcuaWypsLQW\r\nYqsMNVQMDh0jKMDQCfdufX2k1EyLiKPtajlxMBlXs/BdG1bLBw/P7YQ8FyTW\r\ncr+zjEv0awBOPSp3E/bmWzv25D6r6n+mqXxsartSxcfm4EPsTreo8RKeDYpD\r\nnlocmBplr2uJ7dFb36SV93ORRmigXu1n+G2SVDDmOlG5mOlLucU2WkitRYZ/\r\n9FHzPJNQrk5hBM0c8qPQXkUnUNrWBPO6CTDnT+fw2dq5WiQLKgbsLua+67HI\r\ng1pTBYyvdMKR8RQxRgZ1BddXxN0V4xOxO5GjcKfFcE3qfZeI2JD1eE0A7jwO\r\nRl7Hqb8ynPAWJC/gzGunZwijLTUlBCmL3DNCZJGw6JV+VUEjYxogYI+O/tCJ\r\nsVVZ8f4JqXm207QGvW+0AKbwVHd0lDyqkMS9FX5DcJbYx3EUsSgKge8b/5Yj\r\nlqsEwqL0kIosGAoyA5Kw527FFGWKswNZ+3uZtABI66JxgJQOs7t95HS3xgYk\r\nCGy/3l8f75mYyxsBuoaPRIB2elBlOOzpdhs=\r\n=IgE2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"4972da221d6f097e904fd1a001de647e0e185749","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.271aedc30.0","@material/rtl":"15.0.0-canary.271aedc30.0","@material/base":"15.0.0-canary.271aedc30.0","@material/theme":"15.0.0-canary.271aedc30.0","@material/animation":"15.0.0-canary.271aedc30.0","@material/typography":"15.0.0-canary.271aedc30.0","@material/feature-targeting":"15.0.0-canary.271aedc30.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.271aedc30.0_1663774557841_0.555550010030218","host":"s3://npm-registry-packages"}},"15.0.0-canary.9f17ff2cb.0":{"name":"@material/floating-label","version":"15.0.0-canary.9f17ff2cb.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.9f17ff2cb.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"990f98f5b73608a811c95307e9c39fe4d1607964","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.9f17ff2cb.0.tgz","fileCount":33,"integrity":"sha512-+yqO2JeI3lS1ZHjhPhNyI7YI7kTW7nbSd0H0EfWIgCyFbmURJp/qIQtwZqhD/hu84M++C8vfKWhBlfpLF9+Iqg==","signatures":[{"sig":"MEUCIE4PQJ2OyGeHVIRli4Jyxhj3TTUFv0j54UVYIZ9azI67AiEA9LEX7MlX430hVhbeho1bXmLFGFkKMPgPK54cHvERKQk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220957,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjK1MPACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrXWA//duSK6X0VqpKOTC9WJ/nPXIJUrDVL1KOOGH0HRihg2+Fj50+V\r\nGwC9FOOCJMq7OU1AwNozSuWH1MrbgI2VAByo/Az9wrcs0+1E61knWszJfttn\r\n9cuASdAqNhSTcZba5V4WAt8iKlQqluFVZRprqFe1oCsQEOot0yITLOMcRUOs\r\nBOqD7ciYSd9wQYO4DwYZx6SGBftwWM0sYlKg8IU3wgmGzYQd2LOeuCyi02xc\r\n7aR9rmzouMFIJqhAaZDhJTxnJCHFS6Q2UVvBFwcBM+ehjV8ab5pUli5XCZCg\r\n/4Rb9bX9AlXjUYqw0BDeBdsuSdn9gRozdJUPSJCYE/TbUOjE40Kt60M+rIX1\r\nTvt3ofp+P9lxjbUWnOD9fvLXZbeivm2QK1XcoRjOSlP+CtDE6hzpBpRDBvEl\r\nkjojSUYt+dc4Sgkq4MKhubSFhzpYX37CkfUeMQtH6O98suP7+gXSfwnz0pa4\r\neRhDbJfkbST3hO88FV4fFksX7XYGk7KfvJgixdtlqyPV1xSBfhXMqHg05ODL\r\nJDB//egqwVJCLV15oPDZ0huOAEgkRCNYo8wEvAY3JvHxZ3kAVQ3ZDpBvNc08\r\nVakKH1oLckpeLEvm/8FykAz78KwN8KkT/W0MpX/PdqdsbVtCb7Xv2DQqQBf4\r\njz0PjwKizGOdhPqEzm6VYNebOA7cc2EmPQw=\r\n=xNWy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"34e73eebdcebc0a0b475c8b2f9fa0dd4a4c3397e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.9f17ff2cb.0","@material/rtl":"15.0.0-canary.9f17ff2cb.0","@material/base":"15.0.0-canary.9f17ff2cb.0","@material/theme":"15.0.0-canary.9f17ff2cb.0","@material/animation":"15.0.0-canary.9f17ff2cb.0","@material/typography":"15.0.0-canary.9f17ff2cb.0","@material/feature-targeting":"15.0.0-canary.9f17ff2cb.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.9f17ff2cb.0_1663783695231_0.8519650156640264","host":"s3://npm-registry-packages"}},"15.0.0-canary.d3344c16f.0":{"name":"@material/floating-label","version":"15.0.0-canary.d3344c16f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.d3344c16f.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d89ee3391a77396e42d22d7f04f7517be8a443c7","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.d3344c16f.0.tgz","fileCount":33,"integrity":"sha512-7pd6+qgCKqQ5OqksQk6x2ow3kf0Ruazb0iyYPi0NtXNWCK0TQgKevIVFZ71QvEPIb/f8k0Nbil/EjzhR9j5x6A==","signatures":[{"sig":"MEUCIQCnWwKmR+tZwnXzl6BKuGrc36FYH3gD9kBs/MQmkSk3zgIgCMwrrqyOtT948/0b3yHVFzRDRVO80EL3Lh6EW7wFCXY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220957,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjLCnKACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqRig/8DZaEgurYPaXiglqNHHGJxM1vj9Y3JKSutPdveZKqfmE6Yzy4\r\nGO8pKr9rewE4ZJouTL5v9xoTL/5XeN91ouH/EJgGGNkFcCKvl6wwA5OF87xA\r\nZMnPRz9kqLCQ0mY0+nPBJHe5OCta4KGVOGPL2mt0n/yY/XfO7KOBp4suYTzB\r\nqC23UGM/NI+XcWOmASs2vgdupF1Ax77IesyXFRaeyD916hVlRBG0pHs8p4MI\r\nUisAOal0acVwCN8DUY96w1U96eANUbbEVepc5gjP5nwnwuwwkkgTXkdUxGzn\r\nFravhAP8RnzUzVRqE9U4JwzP+oLb3X5RKxbbuS/Kz2cDU+4FFTSMeZcxnaFo\r\nhgv/GdKJhDv+8oqazRXoV6d5oY6HvMt6U1W/+k1pLSf9upf+IE3wULBKFhxM\r\nugX3EqT5iFjyJc0UGUttGnscev/Em/A+p1F42+B7SS6xrI5LBvq5PzqoY9o2\r\nVMq4I6v4I2q5EBQ9Kvw3grwB+cXfWqeSKaF2X23j7PpObeE3YwVVwN9IURSr\r\nxvGQgLyqIrEy9kyf2n/QFifU2rvuHlV5wLPjHZD6dzk5ei6B6AfcXco4Vldn\r\nZ+1gg8VQj4rOJD11ehJUdBD1rKzi1FQ321LWMErKQ3nrJNxnRXor1UZ/eKNW\r\nwL+AmkIi+UZazHSRPQWyN0aso6CH/cjEaqE=\r\n=qqKd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e0a8dfcab6df46c9fcc9969a6dba1f4fe48e028c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.d3344c16f.0","@material/rtl":"15.0.0-canary.d3344c16f.0","@material/base":"15.0.0-canary.d3344c16f.0","@material/theme":"15.0.0-canary.d3344c16f.0","@material/animation":"15.0.0-canary.d3344c16f.0","@material/typography":"15.0.0-canary.d3344c16f.0","@material/feature-targeting":"15.0.0-canary.d3344c16f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.d3344c16f.0_1663838665985_0.4642170903861722","host":"s3://npm-registry-packages"}},"15.0.0-canary.94f20ccb8.0":{"name":"@material/floating-label","version":"15.0.0-canary.94f20ccb8.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.94f20ccb8.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"65a968ab834fd5304b113648f4760f4ed93e8f10","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.94f20ccb8.0.tgz","fileCount":33,"integrity":"sha512-QNjcvEuT5hA3wzuyEoBfubKJb/+vqC2OQwWUU+V/JMdgMvYoXpzZo8CNj1qT8sr4MxGIwe1q2psHuV8fVu77ag==","signatures":[{"sig":"MEYCIQC+44UQOptL2a+aXRsxIi9ZWXNidYIvcXy76wj+loVQowIhAMO9c3+bj5jmWCT0f4fMjGM1Rxhb9FYZ+fWRKebyBWiO","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220957,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjLMnxACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrdCA/9FPcHFVZXIiD3FbvZceAfmGoZPcqLqOvdcx7/78rbk/N8OXJJ\r\nsOjP02E3jeo4HrPQVmmefKR6IBZU28PLaj8QCkAI5S2wExUmXWplmx/KXkuv\r\nWPNnti67dZ4iQO1sCSyWIJVIRWpcch37iWM7pxzA7PqJ8d4KM055g76yNCSX\r\nC4e9YiCE+ulRRXH2A+Bw2vH2lJ0Z5tELAuMVvWsqRgZ/sIbI0xvIzxHB6MPk\r\nb3bpK1PybQCrNTCZKixvbqC7lQJvqisPHYw6xkUKvUFDTeg7USeZ/57/DLoe\r\n+9PSGEEREkO0U5FzZeuKlv9WySR2TGsKJ2QOlq5Dyev6ntjoWE17Qq/lk37J\r\nPZVp7ruf0hP1A+G/jBpNEwJJYCzTyPgGrD/WrVP4mTnW9y6J0MPTKra7dV2n\r\nBwxP7A9qACAvDLfagK5k+umL4wHTNXH9iN2EH/uWlbyHWXbKSSxtDyHLOQCx\r\nDbZVT9dGtoCpeyoyQkkiI6uyaap83ab/7FZMUd/m6U1b0OD5lBPn5S+5DTvQ\r\n1JVLjROBO4OeKHh3JbSfPEyhvf7Xix+39+1z3RWRZbo7C1mexhWBCAMDYEFB\r\naHTMx+VIRMDIOb0PEE7BJXDqLyFZoIPt19B35JmmBf4AfE3KKR0AP7H/ZOAP\r\nOKew4h8zAjznvKBbmfp1BrDdVi5hE5JGzyo=\r\n=JVtj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"16225f613437ecef2ed2d760a08046953ecd51ff","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.94f20ccb8.0","@material/rtl":"15.0.0-canary.94f20ccb8.0","@material/base":"15.0.0-canary.94f20ccb8.0","@material/theme":"15.0.0-canary.94f20ccb8.0","@material/animation":"15.0.0-canary.94f20ccb8.0","@material/typography":"15.0.0-canary.94f20ccb8.0","@material/feature-targeting":"15.0.0-canary.94f20ccb8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.94f20ccb8.0_1663879664874_0.37934823347951907","host":"s3://npm-registry-packages"}},"15.0.0-canary.81e4cb7b2.0":{"name":"@material/floating-label","version":"15.0.0-canary.81e4cb7b2.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.81e4cb7b2.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f2de9998e89d09f88e804e1cb23f9f00b487cd50","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.81e4cb7b2.0.tgz","fileCount":33,"integrity":"sha512-4hJF+N1OMGHi4iC60EmZ3bmY9Gkk1XVJIHIBO+Zyjd+et5go+CvSECDuOnhoBzRmDKEDFkdeDsC8VzAN0P+DUQ==","signatures":[{"sig":"MEUCIE5YAO2JcdEnhl7G/z2M5vzXMEyUI/JwbGgcEdic3DhsAiEA4qIGIM4WV4zV0TaUMoZAzl5gQlZ2qY+Baaa3kH0LhGM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220957,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjLcvZACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrcDxAAlIrNEnQA8TTlHuvqrBK18sYk1gsaGgpvE2oBHQa88AfWxvjA\r\nkghiuvjJPotFHyAyKnKK+74pB2/4TA9OjHjyufM7ThKDUOx8ve9W0EN11TZK\r\nZf500PAPeFTCzPIMwsaUEllXUdExGerpe2dLyb20SSymevqTT4BmjNYb4nLX\r\nJM0m6ao2YccdeE+UIxvSx48KH8NbVR7pm2v6f56HKdo2i1CIllrTw3Kc51AF\r\nAUYAaykDSN1p5iVrwCBY/YhGLavCn7TYUMl+tRCZeGb8m2lS65dncn+DYjfM\r\nDofm4Ic4QwHZjZjJp8Wy8FQ6PyJfwFg4N9TxEnARQutiZILU0dwlA3IYnOzk\r\naNE4fYljQoHIDYv+gWIys9T9tYKpZnzVtfzx+fNLmkQPPc3SlMRorFok8qGT\r\nsI5FlnU70D4gS0yjT8KM00ys+1gnEonacPrfw/MU4HJj8pY72GrmtPd24j4d\r\n5MzSv+DhWB03o/hOBqwRP9y+LVKpNdJfL0xs0RRGRbOwt9Zi4d5dfNHL1Z4m\r\nxRKCZWYoN1C1p/rR/rKWIvv8hf5agi+c8/CHhl13+d0amz+8M/RIJNvyNxV2\r\nRy1rRaRpMoSDFaMefcspU9gHs84yfEZxgZooY9QPI9HWdRgrBSABMHbnj5Zs\r\njbcumYaUv6S5M/qca+u8tDFha1uWWCXtblA=\r\n=68yB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"63fefc99b30106d8aae83dccf8e6e8073043a3fc","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.81e4cb7b2.0","@material/rtl":"15.0.0-canary.81e4cb7b2.0","@material/base":"15.0.0-canary.81e4cb7b2.0","@material/theme":"15.0.0-canary.81e4cb7b2.0","@material/animation":"15.0.0-canary.81e4cb7b2.0","@material/typography":"15.0.0-canary.81e4cb7b2.0","@material/feature-targeting":"15.0.0-canary.81e4cb7b2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.81e4cb7b2.0_1663945688879_0.3616329985044777","host":"s3://npm-registry-packages"}},"15.0.0-canary.aa85f9413.0":{"name":"@material/floating-label","version":"15.0.0-canary.aa85f9413.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.aa85f9413.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6c34597707fe28375c9abef2c0d38192e4f4bdf2","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.aa85f9413.0.tgz","fileCount":33,"integrity":"sha512-iY9bQieDggJoAoSyHplYTfbAEKa1f2IVyeYUoMU+2Ng1aZkEYAql36OfestkmwbtcTYhqG+bYvi/lsXjG7u4mA==","signatures":[{"sig":"MEUCIQCl4+iM/KAEvnDcldDE6807ZoEAMJg+crwnudGux5TFhQIgMzORUsrCOblZYzLUL4/j8e8SNdUOtkTidxAUzHrfuqY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220957,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjMefIACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq8lg//S4yRKDR2DQXdxZ0jyyci+x+H1bIHel+/bcFm9fwIhKIHJh9/\r\nuZ5qC653fC044xLX+7d4lnnGuHRJ8+GF1wrLG86qrPvRN+b7DYRzyUpWmMqw\r\np5plQJxtMDdWNIYSTG2CPc1KsiSbWbyuJ12j754tabkNvmDvSSpdc3gdJm+P\r\nK6OVHSjCvX6su32TyRgcuU8ajDJtGtRhpzjJz1rVSXMr8ji6OXk6g/y+F143\r\nQqTZ9/C02c4RPBgBl/bIpGCBUqn2WqUJZ2HZIrGfda2EHtgHarcsQOXjDBaS\r\nps7CYLWvJPUm1IU6nhFPJ6Jxk7boWRkcufnybBoxiu1o+KkNawgoAYHV5XdX\r\n5/Bn/5QgTo68ElboW7j1wqmlwiL72xXwyJ04hNw0SlPcAOP3+Lt85HJQdq7h\r\nKD250LGo30gFrU4hCbvw32xe/SEQMmOnAAiR7UNzk/MYPKmTvoQmeSmbSoKO\r\nUNsh+jvvNxml7OORuxfH8l6zDU2UxKvNTt9gRVylRcvAfWNBc67n4SpySyp1\r\nYKj5PtVGgfZcuIiCHvBQvWPC1f3WENhyvI8lFa9C/eMABsTTrAfDFdu0x16Q\r\n5oF+gFiodPgCuVPGbenY4jAi2/M2sIS/Mq+mE/sWYecTrfhh4RCZRF+4iaUa\r\n+wlplcOgbZ0SR8Um1mLRY4lfJGsndwwBO+I=\r\n=eWlj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"73f7402d0fd839f22c2c3bca08292a66389f5829","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.aa85f9413.0","@material/rtl":"15.0.0-canary.aa85f9413.0","@material/base":"15.0.0-canary.aa85f9413.0","@material/theme":"15.0.0-canary.aa85f9413.0","@material/animation":"15.0.0-canary.aa85f9413.0","@material/typography":"15.0.0-canary.aa85f9413.0","@material/feature-targeting":"15.0.0-canary.aa85f9413.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.aa85f9413.0_1664214984302_0.34251222268676274","host":"s3://npm-registry-packages"}},"15.0.0-canary.7134a7752.0":{"name":"@material/floating-label","version":"15.0.0-canary.7134a7752.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.7134a7752.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f01e11a1dd75caa8c2d59b08babe8c28436b5a75","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.7134a7752.0.tgz","fileCount":33,"integrity":"sha512-M+I/Aw90vwthbiyn1OaNZ1M9yuDbJyZ7wTVBZZuFwsbKH9eNfrGvxoa0rHDTdFHoEYES/k5Btfz1dt2JeErw4A==","signatures":[{"sig":"MEUCIHbpYXP54/m1bzmT7xAgVA0F4P4tHaUv3ngnY2vv7uMwAiEA9Ta40czuvdWLv0hHIfELJ31vlx8TgWM9wu90EDc7Jgk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220957,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjMiBRACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr59xAAg9nXJJiUWKDFBdUKv5VLGMVDOiZfZFlv9X6/hvfomE/gHSd5\r\ntusldy0kUKcZIsTZRndZb0Bi6FfUd63s+4NVHUmS8JCaDfULqVNEqCU038v9\r\n46I6onXCNW/+UGdEG6pJpZLrN/8RCojG6+WvKQS0BQoHcBrkfHuTjdQirfZ2\r\nYeiZLktVTwfvAOraV5cXqMmtGYIadc7cMsW+oLKxoy+jnEMx2c4r5kNNvAS7\r\n9KSYqY8PPWq9LBPGVOwZr1CtVaDczHpcU9zRgkhk4uXFvFy4FkrlDmTL/zN5\r\nNMtW44iHLqC/4U3g1ta9riTuqGTWXw9HIF3fO8eWqETHvJ+DrQ0rE5gQN8tg\r\nslbIBEVcWMoOlZXt33x9NfX964NL0sAFF9LFptG72W6nrMS2kx76WaA5yag3\r\nya8UCtrkNFSLV3b57M8cqkFv1CCGSWhAFeWi85YPH2a1Rk03XjFXFsAiPH9K\r\nBph9q8U5xDP7abNrluFHTcHhiC+EaFlPCzKZEMkHk0GNWBjmNoHWW/laf7Tj\r\nr640Yk8lHDB3mKkUDiynJVxKD0eJdkfUl/mqSgw+cvtjHb1hp9o6WG0whHfT\r\nN5jy1VMlCbOmrS1aJzNHdO2H/RAdNlEhallguWWGxTektuvxuDo4A499fM4m\r\nB9zjOHnqv+5c3JXhJp/qnGp1pzqrM5izXXw=\r\n=fNh9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"31aaa09805eea1ad3a30e7b91a8bf8ee8911e80e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.7134a7752.0","@material/rtl":"15.0.0-canary.7134a7752.0","@material/base":"15.0.0-canary.7134a7752.0","@material/theme":"15.0.0-canary.7134a7752.0","@material/animation":"15.0.0-canary.7134a7752.0","@material/typography":"15.0.0-canary.7134a7752.0","@material/feature-targeting":"15.0.0-canary.7134a7752.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.7134a7752.0_1664229457240_0.827021002983124","host":"s3://npm-registry-packages"}},"15.0.0-canary.70b8ac16e.0":{"name":"@material/floating-label","version":"15.0.0-canary.70b8ac16e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.70b8ac16e.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"30a00c427f30ba72f5dbb8da399ca104450b0de6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.70b8ac16e.0.tgz","fileCount":33,"integrity":"sha512-mICRJnRVXJo1fk5IIWy2EampbQ9H09HvEu6tohGq6SHB7rwlb/I72L3CssZqkWbC33OyWtpNCooQBIpLngpUkw==","signatures":[{"sig":"MEQCIA9S+GSpo/7H0S/d0W6pzQmfcYHyz+BwNO1mMBplHZWdAiAJFoVEw0//hDtJScMy4HrPc037VcFkxX3KwDIOUSl64A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220957,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjM3zkACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqj1RAAjALnRCRXsh9igHTekakQAPle0RiF5Nc33LJe4k7yXkd06gpi\r\n3n/iU2DY0jOOSN/umWiwqzRIlsJt2mQLyCkMcYAhiUo4XC645hbwiJ9wF61U\r\njK/GCbbaL0UmoPDw+aEyKshPyJ0uLhErhyJVcBkc6R5Yx1ALGCeVxG6cXA3a\r\nHia59uOdOXYSghTH2N5j4ZoJ6/JLygkaKHgTrDLJSEhQhqPX+/2DROKS/Bh5\r\nOvbwS/hlZgJbzFSiVNyCaNqzwIkvf+UbzEaT6mV/QvYw0WUBhrGk1UoD4pts\r\nCasNG6pncMdg69IjiNZblAcF5dqrQbu4OaVOG5cSL/L3+qm/FVDPUGBIuSUa\r\n41kvdjXza+on4rH15CV91+Fx4T7uRtT5JzidHUK9LhRyDGEh6QLqtMlgqgvw\r\nFMv0TNl5vxBl224UHBeHVDBFab2tpgSCahY0PDf7VWKRUKFh5UVc3AvZAsB+\r\n4GHpBQbFUbCofaImJykK14GOA/81XJRTeye8+v7zCtw1upHK/b1uuGnmTWZ8\r\nvzeU5lldTYi3k4MzJKqT6gJp8VDzEW9dYk2H938Qe5EghbRuj2g06DqGH8bs\r\nmVWjfFJUcldN4lSe0/gsEZiYq2SPbVjSrv48Cma15ONrFQup3RIkAUMMKJMn\r\nQK1t1w6n7bv8wcKe571XBVOPgUwy71RncXQ=\r\n=jtAY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"9f9fb4c3a4123798d2b993ab287cc4bb7e8d7014","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.70b8ac16e.0","@material/rtl":"15.0.0-canary.70b8ac16e.0","@material/base":"15.0.0-canary.70b8ac16e.0","@material/theme":"15.0.0-canary.70b8ac16e.0","@material/animation":"15.0.0-canary.70b8ac16e.0","@material/typography":"15.0.0-canary.70b8ac16e.0","@material/feature-targeting":"15.0.0-canary.70b8ac16e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.70b8ac16e.0_1664318692197_0.8055881794894413","host":"s3://npm-registry-packages"}},"15.0.0-canary.c20d74405.0":{"name":"@material/floating-label","version":"15.0.0-canary.c20d74405.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.c20d74405.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"74f456b5ebd8c1b659fe92015b8c396558fc493b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.c20d74405.0.tgz","fileCount":33,"integrity":"sha512-9B+vzFb5CCScgd+qCwPlNQisOrskxkxZADn3gAUnn1/GreZD3FFYEtzWX2nrg6ZuUH+34qG7zwU/d2EPBm9YWg==","signatures":[{"sig":"MEUCIQDoY2YEdKWenBBYm8u98OfUhIeGiYd5TyyAucY25nCftAIgTvRlmaYgRj/qADpvkzKutLfmREDwIhq1DqW7w7mPhaY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220957,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjM4fCACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpwVw//dpPelWldMFAVNYL0DAIuaK1Ql3COThM3wIXWoydFgZht2twB\r\nFK1m9EiJsNviX+oK8QqXMSKshx1YGrdO68BlI0l4/QKCRQLDYSwqxixL4l6D\r\nV9ST/QU0vFM5x7FyuxvVIw+w0UyOBvmbnB8ZLllUsNNGkQLRCzf4thV7yNPf\r\nNZZpBzvDVT497hBHfFk8cGgLJWoollo2wKiq/+kJvKUkqFucunXDotAGA35W\r\n4q+fQfO64xQ1Podtn20yfJhFQ+5JudipejUPHWfjMUSFuDr0K0+/75ESAZ5M\r\nYCOR1nTZCiTKg8rzGVItpWdnt4BO1egUp1f7cCNSVSt1HMBph2XSgsfql0db\r\n4sX3tKUgmaPWA3haoTVYc49deWGZOozlUshM+lWd3VfQZy+4rehIt13ET8Z7\r\n+0b5aIZyN87B6IDgQnsbuWex0G5aIneFYuHz3lhF5LaUA2xre5i+/GyUKCKZ\r\nBfhRh177SXcsDcsVWQKJiPmMbs9UONh6Cssy1Uhkkq04ZKj4QESEpVFyQphm\r\nimAqI5RmHOr3lHB7R5v6dsKPhF3L4pgyZ5j0uIv0GhceidNLdTNiAy83wFnq\r\nqWNwWmfS6LAt1IveNIQZWsPMxUyIBtPvonx9pDt9I+iYmuR6fIiX0gxWucPl\r\n7IneJK+BXUlLboI5VYKKSy0GJZwQT+wHhOo=\r\n=8FiW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7e1c6f9d7e3c90438265d23d710997462d087d78","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.c20d74405.0","@material/rtl":"15.0.0-canary.c20d74405.0","@material/base":"15.0.0-canary.c20d74405.0","@material/theme":"15.0.0-canary.c20d74405.0","@material/animation":"15.0.0-canary.c20d74405.0","@material/typography":"15.0.0-canary.c20d74405.0","@material/feature-targeting":"15.0.0-canary.c20d74405.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.c20d74405.0_1664321473697_0.929909050470265","host":"s3://npm-registry-packages"}},"15.0.0-canary.f033fc8d1.0":{"name":"@material/floating-label","version":"15.0.0-canary.f033fc8d1.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.f033fc8d1.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f6cb22b0361726e81a464315cb07a850f518733a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.f033fc8d1.0.tgz","fileCount":33,"integrity":"sha512-GhuRZ9f4PkrkkEan5sQ3zOujFxW8z8IM1tY62qrux5JBzc8v26OqwqEAtPYPDj1OKdLw3XIA0m9iq9r5+gqVAg==","signatures":[{"sig":"MEYCIQCe9LNVh4+OVXW6i+AH25rrowpNWphD0QUL7oHodEvV7wIhALc9Vuzw2KSX0RzV3cXtGX68is0wMAQ0NEFyY32s5VaJ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220957,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjM43eACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpuoBAAhlYEUs+5ypffDnnB9hRIM0HpIpV2Pk3cwfKoUcWs6879s56y\r\nzzNKIvj5EjGysX9qc2tPC4wXnjRY6Q8f28nD5IVYjnrYIuisw1fwriERBS+D\r\nAq/+Y63bGZIBzYJJx74/TNiXRuxWJKLhkA2x45nfM6Kf80UwGQVO1fJvcP6u\r\nDJycm6Ho4CTlT0cVVMrnTOZfTQ6aqWYhZOcatWxcqW4UkRL3rvwkkdWatnK3\r\nXTVInlj7nIMnPsscxcajuTcFSR0LlHe9BCJ/xUpXCdEJXouLtJo4dV/Jj0sO\r\n9za3lv2A58yri0hdAsDNp+k8aD3ZlWiCIomKdbAGDXd8BcMm8WmsykwrxUi+\r\nW00/gnUCP8kBd3FarcaPJM+u0b1SHkkbXNbXaCRp29I5dhVAaXPkr1cYzHCO\r\nfnVda0bMq/NN7M+lG5KaSmjiA3wAR9VfNMzJi2Bjke6wTu43Hty8s1AmijuH\r\nggsYlLKF4ZLIufjCzIIfU5TsVrQxQ12l9Z7NyM5SB9NYxwkpBTixWsrZiGZO\r\ndRjZKjS2RJXBEpIfc21fUSvAwCByPcBTEhVSDbMuEPApuVGDrDCmiPLnAlA/\r\ngf9mhgPPWu7dDsNXQS8sB9PPe0QTK8jneX9mLSPRa6DimOgMacwLw8O/CPv8\r\npSLHXIMZJY5aZ+UUk9tZjDmMHhHqadLQI8E=\r\n=Rrxm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a658683d647364520f9de8a2d51f15913b5ffb78","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.f033fc8d1.0","@material/rtl":"15.0.0-canary.f033fc8d1.0","@material/base":"15.0.0-canary.f033fc8d1.0","@material/theme":"15.0.0-canary.f033fc8d1.0","@material/animation":"15.0.0-canary.f033fc8d1.0","@material/typography":"15.0.0-canary.f033fc8d1.0","@material/feature-targeting":"15.0.0-canary.f033fc8d1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.f033fc8d1.0_1664323038167_0.9194000655207577","host":"s3://npm-registry-packages"}},"15.0.0-canary.8d7ae912a.0":{"name":"@material/floating-label","version":"15.0.0-canary.8d7ae912a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.8d7ae912a.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ac6a753fd344bdad8f430793c285d8efc4c178dd","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.8d7ae912a.0.tgz","fileCount":33,"integrity":"sha512-CGyBWXrDFwLqxbJ3sgpwFCh8ygIGfdFgdbgAoGDgRLJWhl6FY8K9mgSnhKc4kZD7nNrSSAefKCLf/PcuUw67hw==","signatures":[{"sig":"MEUCIGmJyiyv74h8C8i9rWy/drKWdq/bT8mKYDAKYbP54JhpAiEA/X+nw3sW8LR+7wF69xgD+3hPCUViL7nNeHRSLdiQJ18=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220957,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjM/4UACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo08hAAgmAyhuRddXljj6nkmqjBvjtWlrLo9soesqMsgTbciz1li1kx\r\nuEmfOc398HyAEaeBAxgMvYyKiHNCmR6Pcl+IWIfpMABmZdNcC4LDUh8FGoK9\r\n6yaPLuSWTzMww+gdjXlC/E+25qRlrZ/eRLVnH6cW+2aHwbw/btt+2t5cHuqj\r\nKcWvL1pfNgZtMdFYXcIYtCxRWo5o/alymNFaG7poDgd9kiOwQkefClKGSKsQ\r\nFw7cMy9iop/BtCuZKBdTY6Vs7Keq7tX1vWByACnAyGIcWSd02ulXzE2E1a/P\r\n9rFJZd80V0bElI2FC5NF8DLHJO9QGO3uyPCGgbgqE8kUDYi6C06LUuNNqcOV\r\nfPl9gQt+2CKTDTdnqtagnpEHNirHib+SWD0KUU8Uh8MeKXPWRA9KCHwj8Et6\r\n2xLdtNE/2d6wo2kXQDfJ6g8Ssz90Rm2RWxTcPifZUpgxQAOqQEmrP4LYotMe\r\n9IgK12KgNspTf1U6fnmOZuXQdIm1qHjXzg1DElLckvFkkhAp1b8439JYLCqX\r\nEpMk+HK4OEH+HSKLdfPOx9Xg8oRKCtFLpQIAn4946YZeqZJgPemEE3Z2nhF3\r\nDMHXPE+qy3NksG5T0Bq/eU0IwC1r6JmJeOumcjoaEhrMEE8A1jr8XBaOhjIX\r\n/tXEC0Ba4bLrYuBOZpRw7s4U94x++cWjKQ8=\r\n=pgvC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"26b2ab57ab7cb3eeceab31102ed1b6cb133f4cc7","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.8d7ae912a.0","@material/rtl":"15.0.0-canary.8d7ae912a.0","@material/base":"15.0.0-canary.8d7ae912a.0","@material/theme":"15.0.0-canary.8d7ae912a.0","@material/animation":"15.0.0-canary.8d7ae912a.0","@material/typography":"15.0.0-canary.8d7ae912a.0","@material/feature-targeting":"15.0.0-canary.8d7ae912a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.8d7ae912a.0_1664351763835_0.8043690215334811","host":"s3://npm-registry-packages"}},"15.0.0-canary.db414b864.0":{"name":"@material/floating-label","version":"15.0.0-canary.db414b864.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.db414b864.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5590fede8c292455be29d6251f2a2dbe175e634f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.db414b864.0.tgz","fileCount":33,"integrity":"sha512-Mt0wRZvtzlurvWB9UqzJ41d644np4z84QRPNVno0/2nNnocTg+ViTFqgkwQ1XWJqqjBzjilCtxQ4JxACY7BzYw==","signatures":[{"sig":"MEUCIByShFbme9Lwk6GlOiW/BK1dQaWQ2yixy4HWqwGlI09jAiEAi/ArhpwdpZkbNvE4z0zGsmjeRJEjTCfP1lfYzI9Xf1g=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220957,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjNF+5ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr5MhAAjJjWbdOL396hOeU3gMrXn6lyzLpCltOHTmPcBXEVhinonf8D\r\nPsBVaG+rf32AtEeakLs/+cV4VoYG7k9AN/YRD38UxMwEHgfgwfHFfcWF3rJ5\r\n1yM51lAO0j80Jy1a6VbYAxTMOoGgLrLo92Rb7jTDzCUA/m8DLlRYuU8rA5Je\r\nQ7MfrLeijwtXsxpAv3z61V4FwVmWqunqyc/4y1Vg0fP+cWBZ3QAlmEjytV5G\r\nNSYw+PDkfAqG5tJcxVhldOWPIL9FZT9dhBvj9Il6XYR7+COI0A4/U1TPxs2S\r\noyvHcsQhfZtma/tN1n1iuCjJFP5grsVFwT/X+WUdTj2QETW/Yns4Sn3hR854\r\ns/rpHLlYINZiROSoTNSFjaw3+3U0hSSFkIBCZzt3Nicdcdupr29sugsmDjSZ\r\nGnSy4IW1nF+cAm4E6Vy2ZVVU2I0qWd9abtz7wwEsIMUZpE+IU3V0CKKu+vj+\r\nxySCNVetXjDolcpDeI9P3/Q/7h89DRyhEMuh3bx9gpaNYQoABAhuidCyIuj1\r\nbniKiksu4aG1Sb845T6XFmASo4+LlQZsO4LQYelcRQwPaEDTQ2OfyzzJ2Kx6\r\nW1bQskraYFgJPwfzXto5NNOq0rMu8MpyxspVoJlNLyNK4eQhhZapkZ2HeGtZ\r\nlI4+6NDp4q4apOHbNwgSMnjqNI9eCUTvyE8=\r\n=b+k2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7601f089a2e7599728805effc4e9bdee40008aa0","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.db414b864.0","@material/rtl":"15.0.0-canary.db414b864.0","@material/base":"15.0.0-canary.db414b864.0","@material/theme":"15.0.0-canary.db414b864.0","@material/animation":"15.0.0-canary.db414b864.0","@material/typography":"15.0.0-canary.db414b864.0","@material/feature-targeting":"15.0.0-canary.db414b864.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.db414b864.0_1664376761095_0.2671864092433309","host":"s3://npm-registry-packages"}},"15.0.0-canary.28cc6791f.0":{"name":"@material/floating-label","version":"15.0.0-canary.28cc6791f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.28cc6791f.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"0535b8406aab8c1a0858bfb76de0c66ae2090d09","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.28cc6791f.0.tgz","fileCount":33,"integrity":"sha512-k8zFPsoMo5aAMhP6hvwViR/z0WBDqGrGCz2G9aB+sZAIS1RZb7n20Flt+HHgZn2o0UWRVR4i82QsFz1fK4hCAw==","signatures":[{"sig":"MEQCIEcpntlRygCOwfAUcVIiwYo1IAoRUVIEjjChtdjAGcfJAiBmuPFw8kGgj3ikLiabi8wEKxV/0YifXgTC6AQNe8I29Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220957,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjNI08ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpZ+w/+IGGE5Y7mStIC84VR6VLdCdisaBLSbn0YCRhPdB8fPgSANnHl\r\nPORqXHuisaeq/dnICCZ7VRTRdMHdju0P7etc1ZPtSu6N73i3o625TTl/vdK6\r\nRIUHvbs7SCd0BxXpXJDepmSod8ylvGS+TPsyEfrsdlxTMejQdUIcjWz0Qt9G\r\noSsNl33o9QDIUYgoh2bCFKOtz7g3rPaVokFx3aD5h6kiMzuoq9EsC8CGT9ZL\r\nJi4IgQX6XYpqCC93W3RthHNPWj3tZIOqmBcaITQMnkpJuyNwpWZQpVVvbrqA\r\nJ1KBnGmbLH/LtMr56eFTn5uTRu3JiRPRDd+wLHUFtsojsw3dj1nMCfUEKB+J\r\n9q4pV/zp3QcEld/XpjKSaTtOYJhd4I0ZUlTqRoVdvv3K1HcbtXkJO+oVT/Ht\r\nmaR4SXoreG4UAFwQf/CcPQoFyToh0F4Ul4TK4XTH+sB3nHnEuNzUaLNs6Ft9\r\nkqobgLkD85WqIj+cNCn34CPYV/t9xvDQOuVREwrOMzU+FB368Z612IbEib8d\r\nNapUDVeikbzZMBUrik9i101HXTe5rAeEyoclwRFpawHrUuysxIvmiOXyD0nt\r\n0szH6WHEMTv6D4IZDvym1Mh/rgXz5J2t/gplyA6SZbXfRuDcSBIO5P432Zwt\r\nVFPu3/U5dzGT3ZcuRpfOIZwi2DnntfJgLi0=\r\n=EaPZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d2dfa219437727922f4cce877090f9afdd87edc3","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.28cc6791f.0","@material/rtl":"15.0.0-canary.28cc6791f.0","@material/base":"15.0.0-canary.28cc6791f.0","@material/theme":"15.0.0-canary.28cc6791f.0","@material/animation":"15.0.0-canary.28cc6791f.0","@material/typography":"15.0.0-canary.28cc6791f.0","@material/feature-targeting":"15.0.0-canary.28cc6791f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.28cc6791f.0_1664388411900_0.2706941719602418","host":"s3://npm-registry-packages"}},"15.0.0-canary.a515a2d18.0":{"name":"@material/floating-label","version":"15.0.0-canary.a515a2d18.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.a515a2d18.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d20a3ba8e7a35eb7c71ec38e7fff10758a135b1e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.a515a2d18.0.tgz","fileCount":33,"integrity":"sha512-lo1SM1nj1n4WjDpD8KWgYHUCuHxSudazAYh2NRC+IDnupjuX0JG42DkMnwuGlb6KHLOmr/0PQWVcVmwZfW2lBw==","signatures":[{"sig":"MEYCIQDg4gxha5zX9kJyRlgMJ+N2K8EWXYlftu+1VWw/V3bVUwIhALP1z76BEd7s4cdC0lcNW2mivfhjaoSbJu1p+uTNxQLf","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220957,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjNJiwACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpmABAAgT1Qy/i/EM5KZSanfFM1sctWzn+Xhe/tUOyczNbnP69ORNOk\r\nTm0sxvZtrZuREn+k6rKb8OEDg0MMTxEjav+e+V9PFtcBtFHQLWMFZnXidOXR\r\nuIYmIZpKP5J5vo3dcY6mGeElAzc2KIYNAtDENrXN9e9Hnp5R+xxFsi/xrxO/\r\ny0rhTcJKP4uILcX5sMggRKJe6p53ONcTMNShyj1fJr5oYmGyVWZXAQIQ2XDN\r\nYFFdnU+mJ5qtXGZFLg5cg1lhcWSPkQ22nKFwsFQ7YFYupxgeRMsEVUiHsPYn\r\nscrYZQeFHjxdlEF23nHh83qC3lvPkV4WigV7bz/VlJPI6A7hxBZqxxjtbz9J\r\n6du7akI6Z3kyYLpCwzMGAU4u3wGGuSbECbDq2nd6YOSu6Et02sIE6VsT2jHP\r\nlZN7pNuT/OJ+cJS/25BgKOyZ/FeZ/W9rAayFRcOfWrtFJMQ5OMmj9INmGJed\r\ns51b7vvXph6lN561sxwlIsg8NWZZ3WH6+LHsaquKl/AvhbcmTKhV+IrOjVcN\r\noJyoZ+WU1tWYpHAmXTSQMIWYAiiu3LV1NNKKZpucEMunO4Iq7Ek4xBeG46hp\r\nBIgeR1e/nQ9nLEvEBootCWz6q3+4aQnR6gRqKcZVbX8k9pEIUB07JgK3R/Hm\r\naVgAua/LQKtb80NoQBQ5eboMbZ4zK+zjr5I=\r\n=Zmsr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b634251c1f816bc66bc81c76758fd339ec40a76b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.a515a2d18.0","@material/rtl":"15.0.0-canary.a515a2d18.0","@material/base":"15.0.0-canary.a515a2d18.0","@material/theme":"15.0.0-canary.a515a2d18.0","@material/animation":"15.0.0-canary.a515a2d18.0","@material/typography":"15.0.0-canary.a515a2d18.0","@material/feature-targeting":"15.0.0-canary.a515a2d18.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.a515a2d18.0_1664391343842_0.7503077317375537","host":"s3://npm-registry-packages"}},"15.0.0-canary.ce9523167.0":{"name":"@material/floating-label","version":"15.0.0-canary.ce9523167.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.ce9523167.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d740e1d760e37c16578b266dfa1b63aaccca61cb","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.ce9523167.0.tgz","fileCount":33,"integrity":"sha512-4ONbFRr87hSLvhl5a5NUEYhhRtcSCvdmbPZjxfLhafy9b6Ps1yNYwC1t0JbpK+X8ov0dMHOlz/LqNtuKeRkTKQ==","signatures":[{"sig":"MEUCIG13hHpN4Wg6dBxLhWV8DpzEAzYgKyd4Ve0SU00144AqAiEA+ZVTb4ioDKCSu/yiHBNxxAiIeRmoossfSjXKpgMqeA0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220957,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjNgCMACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmpijw/+Kn2ZsmIECSO+oP9AdkDhZZOB0Cyn2GJGOblILzp2oHVi2Klg\r\n90JjdZvDW7tJQBVN0RnT2uGS8JJzPOLXczvO7LryxeIJWkqCnMa0HGmNObsz\r\nsLxHIbYSporD8LrzHS27oImDIIUindcUIbKdEI0M0k79NVc3mbyVAMGFW3cN\r\nxxT3fcaWoNtnm9+BVr+AEGY4APe9Mr4cAzmNSBMTSMnz71/Ylqf0dgntF5SZ\r\nMZJ5n9ntBIiObpLhD2TuSVoiquu/wgEQqD2h/JsaTIMA+cMmJkOWCoLMUP8L\r\neRdMriI7lw77DGOEUfrQqdvHacU4Y+jDthw3lKgqasxWg4jNgt1Cq6+oMgcq\r\nPqbqY9Rz4dRCe/er3wgWtahZ42PAwxt4fhrBO4wUwMjyULEwShId44n1X4z2\r\naNSir+/+kNagDX601jiu540t7fuszQ3XWum6YdxxiFFmTqZZ8TbUn56yfTxE\r\nkY7vVYnU44RZ2PGkWBdApCcT4vlJtbQ9HeHBbVeov4JhdxQfxouyCZYh2P6U\r\n97ZjP/p3gm/vKDOUzfF9htuk58sb9wfDHMJuUPmMlgBevPT9jPgXVjuD9FuM\r\nFQN4Ou+T6AXMmh8Q+BbYBkBaVwoMlrDB4G/TB8h40oHJZ85TPuBFEgXpJXe/\r\nJeff1DUwoNDoWakLD+3E/hXb+XF6poWa7hw=\r\n=u9QJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8aac5a80fa36dceacc7b3a6e2474218f9092a107","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.ce9523167.0","@material/rtl":"15.0.0-canary.ce9523167.0","@material/base":"15.0.0-canary.ce9523167.0","@material/theme":"15.0.0-canary.ce9523167.0","@material/animation":"15.0.0-canary.ce9523167.0","@material/typography":"15.0.0-canary.ce9523167.0","@material/feature-targeting":"15.0.0-canary.ce9523167.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.ce9523167.0_1664483468522_0.1815196071656089","host":"s3://npm-registry-packages"}},"15.0.0-canary.b2310f7dc.0":{"name":"@material/floating-label","version":"15.0.0-canary.b2310f7dc.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.b2310f7dc.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3b2a741e38fe87fcffcd6b5ae9716e3c28fa5ce1","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.b2310f7dc.0.tgz","fileCount":33,"integrity":"sha512-Nau0RwWtJoJiQx/KNSzFI6l/sjTsE6n1kvTla5XEPqBlJoeeDQA0HlKYC7DN0fNGHU3cxLhGWQ/jxNIOl+IXpw==","signatures":[{"sig":"MEYCIQDPH9jqPHrEjp+GVH8VULdvvQK/U1srA3f2NrXZR0+kMAIhAMNcWrW03U5s4kVrAeEGjvtDboijTcEZJAE2tSpQ1lCP","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220957,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjNjS8ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp1jQ//Y1rnCB4MgJnihIqwtzgyXFhQiEXUhr1ETj8rsj/c1oAKJYI9\r\nGuo+KmKSQzFI7slws7KCb6+WsZfK0LxHemcaT74/X+GTj6yD3DCj/6EtStrf\r\nKCY4/e2Z6MbXIIDM1SH0i7aFZbS4jbm8Q+rvEwvk6V1bYkMufvQuCtgwWuIk\r\na4lPkalhSWLiczVdHnrX7SA9CQIleRb3GnQsRPuGhm/WINcfom9W8z0eFNSP\r\npatr8ob5MVLEHWqtBG856/EZ1IvoJaeUYswjOUi6dr95SlqJGYebNMSmps4d\r\n8W4kwz/buPzC8zTJo+AjyjD6VB04YFinZbFmSmslH5t71zvRx/xHoZT/DuoT\r\nt1G089i/khasZJsjrnHtNByuKZUcLJjMhVHsbEIBUlTb3lM/JIVjFQAV8zlT\r\n948R7CbPxmnF5VGaBYoPj/ZA7U+aNMGrz3uVHOSP5y9ns7wlqEOJu4ASMNQD\r\nfOwhGTkwMoiMJWgZ3wi7Vz+3FgP84Ch+jLeLZIiKPxBoi36ceZgQ0yUIS4eO\r\nIjP7m4hX+2YQa0Hp80q7WUgv4s/OtZ6+rIwb19YsDWidmvcd98HhJZZXZ6kZ\r\nX9QzeUjM72+bmtlQfN/iZ36dAvfrhvG0xmqWXtQHPUiz2tUBC3EcgXCJkCIh\r\nHVUo+StbSpzgS0qlNKgzNqtgrD6L1RaR/b0=\r\n=O/9W\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1b1f8d124dcef049ff4f3730b930eadfe1e2a58f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.b2310f7dc.0","@material/rtl":"15.0.0-canary.b2310f7dc.0","@material/base":"15.0.0-canary.b2310f7dc.0","@material/theme":"15.0.0-canary.b2310f7dc.0","@material/animation":"15.0.0-canary.b2310f7dc.0","@material/typography":"15.0.0-canary.b2310f7dc.0","@material/feature-targeting":"15.0.0-canary.b2310f7dc.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.b2310f7dc.0_1664496828614_0.5253296349140049","host":"s3://npm-registry-packages"}},"15.0.0-canary.a44241e54.0":{"name":"@material/floating-label","version":"15.0.0-canary.a44241e54.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.a44241e54.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"024e1f7fd31e00c4bba68bc59bc0b348f2431766","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.a44241e54.0.tgz","fileCount":33,"integrity":"sha512-KHAJVu5JxFRTAPSgLlzWZYxwu9U+LRQKu/LxP9wQJ2oYeh0sBoBAimQNoHwsNkiQ841rUZgBegcB9IK1dqdXzw==","signatures":[{"sig":"MEQCIEq+fPEYUp6BojoBhVwbgP/SHmtukP+bfpduHkz1VW2rAiBPoV8vzMxFXhFk18kENyGApEVOlzSYUGasMBNITeHpAQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220957,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjNqbxACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmpk3w//aayAmXJrOM4AGe5kgcMqK+KpEIafT6mwsmgI3rc4+z09VOl9\r\n/ELAqDk/+CN8PxUrHUjnxczS0AGV9I+PARSPZWPJRuDnWzofvbRX9ixa4bK8\r\nJNuKdbGUVvP/dYVOMSGHWCnj0YqYOElxwChunav14X/+S6EBsEEDQmqgMgoh\r\npl3dJAViDhb1BZJGPtzCeMeeeuBhHQ/AYOCVWx8K30pCB6H5tHW66Vpe15Qg\r\nX3+NdtGN/2kYRcFrJ7CJbsB/f64flS4yPwmJHxzNc8h17+BNy6tMoEYD2Pzr\r\noBcSXy9+pv21HbJJqKP+bP6OdWdE1k//xuq78Dki1ee3LmqrQJ30o0Y4tcDj\r\nc1maNAkoVblooPS0jF2f92WVSY+68UXpw7J0tERqZ/McfjsiIWpTodPHU4jq\r\nQGYpI+JpbaYHo3jzex2GFULRn0b3RP6u4iDFFNRdSnt5HxXvpb+3M8jN15zE\r\nfqoZhFmM+16HVQrL0I7X16miro4fSmXQi9EW/R1gTeTPkozCoaL03041+08V\r\ni6jeowbSML2d3ABUdboxgO9bT1en+nZ7YSzo/B6gI0EyOiKVoSm5rz19O0rd\r\nuNJEIkimlb4YAVZbSFzN8shsm3GBgjyJYpxXzkfdFluElX7/4ZzHP1lEvARb\r\nOQKpF22bj4sKZWaiuRhRgvME4Veies5t2Ok=\r\n=v3e/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2a5fa6460bb58b3b2866631eacb27411a12f8d21","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.a44241e54.0","@material/rtl":"15.0.0-canary.a44241e54.0","@material/base":"15.0.0-canary.a44241e54.0","@material/theme":"15.0.0-canary.a44241e54.0","@material/animation":"15.0.0-canary.a44241e54.0","@material/typography":"15.0.0-canary.a44241e54.0","@material/feature-targeting":"15.0.0-canary.a44241e54.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.a44241e54.0_1664526064934_0.7171268640288899","host":"s3://npm-registry-packages"}},"15.0.0-canary.0ce81e115.0":{"name":"@material/floating-label","version":"15.0.0-canary.0ce81e115.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.0ce81e115.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"228d1b9e437379b27adf98259b8a92f1ef87e353","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.0ce81e115.0.tgz","fileCount":33,"integrity":"sha512-RpJsiNMjx6//FERzpuM7uBUhCci3KatkKDuhlBqiFqJQtz6G9ycBX+QG9PcDo3ftY93kboxew1aNW1ErBWo5tg==","signatures":[{"sig":"MEUCIQDM8+/U8G2U3A4td9RQMMzmke8kgHzOold502FZ55SfeQIgPsnrY+UtBgVDq6+dJs93rKMaWuwiFQdTSHiB4OPYYCc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220957,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjNzLgACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqdog//eltSBJa6xQzh9/P/vh02H6akKLa70q/j2Iel6kYL43mL+9cb\r\nGMt8+w1fd30tdKmn95elxr+nx6Bdq4ImQhZoULaw4SvVgOME6oLg8qdH0tCz\r\n+EK5rufUytHCTNccWqplqoU3+ktX1l8e/pEuHSi00E/9kUqirndi0OeHWuEh\r\n7W+4hLdsX9swFUCdoFpd8ARrvcF2WtJijGrEtN9PMtoA0uNWBe0FUOAjLIIO\r\nMju8ZIW3TeEvKnlfuPcAcccrZO1nEBtVetV9ij/U7OjX/ISFhVIeOdK/2UXA\r\nIenQYdH62mIMUlP2vRUXnm76gnROpk6kgjUTgjJqIR3U2gUNj6C5kQpa80Lb\r\nCaTsQrBdox1OOVZI1RiQsqFuSKD9AKSgFQhXZg5OvNB4VfPMdlEpoYQqOkKP\r\nIPsNjAoKaxg0Nwkn7Ku2vfHtkNlvlUGCVTfNMTRSQEvQ0EaDtMHyhX4iEDyM\r\npG3fSz33lV6Ohs7Bt537GtmhSsrgvr9DDM2HuD1gG10W88EgY0T4SksSD+re\r\njcjdyBzpfgtpm5iOU7JvVQpAg4Ey6x0mpkPmqQWOfyYfeqYxxEXRx5/aQCmt\r\n0+yPtQEMLeaiRs27s4FyU/AV24XOMxuirgjr7TDD4oy712tI3KKktqCg1WKq\r\nQQjMt5aiQqVn5zGTWei42aTy3ToHEx5OJ90=\r\n=0Obv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d690b44f4e157e829199ea749861c3b827d46dff","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.0ce81e115.0","@material/rtl":"15.0.0-canary.0ce81e115.0","@material/base":"15.0.0-canary.0ce81e115.0","@material/theme":"15.0.0-canary.0ce81e115.0","@material/animation":"15.0.0-canary.0ce81e115.0","@material/typography":"15.0.0-canary.0ce81e115.0","@material/feature-targeting":"15.0.0-canary.0ce81e115.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.0ce81e115.0_1664561888693_0.43827122016164877","host":"s3://npm-registry-packages"}},"15.0.0-canary.3cc30f6ad.0":{"name":"@material/floating-label","version":"15.0.0-canary.3cc30f6ad.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.3cc30f6ad.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"08c43f5081bead9feeb655e519e6273f67a05e29","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.3cc30f6ad.0.tgz","fileCount":33,"integrity":"sha512-T2YdoJKY+CjKIG1XLYTrXyl6ovV7slC7ufFWUuzIRpUfpoCaEOj2GfuEPrqhezLnBs/ZeZ+v3p3RveYnPe+uig==","signatures":[{"sig":"MEUCIQDeM4OdR5H7R5c22kyKv5Mr2AmW5RTxqzORuC2msJu+agIgWTMEfaaYg9RK1aIdvIQSXg1+IFMP5jvxLfxOOaa142Y=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220957,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjPGsTACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrFZQ//btmteZtgBaG+dUqAD3BJS6jRnXEsMYNEnjifFRnS+69rhZpn\r\nS4KiWt52EKeFh75LJx5NWSu23TvqdWpT8JuQEwFUT5ms7LQkhUEUnyVyl17R\r\n6edi/DYwrL9oQ4/pFlp0c9Lg22o4+69uC5KDggrBg7JydrT2DbdHf3Du2uv2\r\n6Hmpoz5sqLGNbymaleFXcLTvJzmnOWSkAMaGzoaY3HYCubxsKCw3Zx/aKPEU\r\nJCzXtMkJVMLg9YCudjUW+7H2OnHrmeqD5yNEsnGJtiwUxtGlqxUj0mPaJIzL\r\nDtx55PhWQF6yfSZaIbWq5FaF+M3k0F4yg+ylcltJqGKaNzuRg201CSspvE7m\r\nqiUe03EcXHNCqsUeGwO2bCSP5l75xbMNkTrVlaJ6QhernoTl/zFWHvfdzGjM\r\nscsys6egM6qzl0hPl1hoXdbOau3x7U4dDqRmEgr+KRjTRq84s43Ym7/f10Mm\r\nRZGYTT8TARnTIKFcdBD5/p/un6nsjstTVYUeGFYX1nSlVgNtlt2T0Sip9xv9\r\nQJBy9sH+9NZITuQnSNyDU60ktkSDPmwfV6ARHcTv8asoGTDOC9NqnjBO9CHy\r\nh5DfmhD6B8qrqpUCVCpIlV3tg6hBrCb/qRQcRjxTrcuZH/ap0FAiHVUxmJqm\r\n3irmdDZH2jbN+SMMKd7RMYfxxL1K8KYA058=\r\n=co1g\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"78d02265193749df2eae507da620e7571c09da12","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.0+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.3cc30f6ad.0","@material/rtl":"15.0.0-canary.3cc30f6ad.0","@material/base":"15.0.0-canary.3cc30f6ad.0","@material/theme":"15.0.0-canary.3cc30f6ad.0","@material/animation":"15.0.0-canary.3cc30f6ad.0","@material/typography":"15.0.0-canary.3cc30f6ad.0","@material/feature-targeting":"15.0.0-canary.3cc30f6ad.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.3cc30f6ad.0_1664903955540_0.597529765705477","host":"s3://npm-registry-packages"}},"15.0.0-canary.d9cf98e60.0":{"name":"@material/floating-label","version":"15.0.0-canary.d9cf98e60.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.d9cf98e60.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9cf180e9db7f1514adbc5b707c03b6084e419ea8","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.d9cf98e60.0.tgz","fileCount":33,"integrity":"sha512-V2hHvktGAlsFtAHjFUTcnW1F4EHlTsehhrjnZl31xlEUQDf73PFVeKr+pyTbJOuz6eEjv6v/WER3F/ErarVkgQ==","signatures":[{"sig":"MEYCIQC1/+0N+Mh0Z53TBc0Kb5Dieoxu083vAzlouRhxE9jVPwIhAIJNlmocVQYnTT8AN7hFaAHQyBo9A22Iu9SM9QQm+lrr","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220957,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjPIONACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqHoxAAkGeLZ2W4eczyDYrt/rBwDlj/jzi2eFEbuY9eL3DW9zdl4n9P\r\nxifNIPCz/B8Y6ppPYot4MGOw1LD0FxXrr2anWZ4dKfzjnl9uhfWLmZRCo4J0\r\nGqoHphbsVpNaaWM0eW4u6IlyMoqOKdyAge2Fx1glDhMy7xiB1WkYdhXDyvLE\r\nhS8U/mPwITRlogBtefiOmRNreRJd9Z7ogMsgWKGGadLfDcl+NmK3H8KRhMgG\r\nEbtWoiDWu5Dl3qaKtHuus0ZgS6sHokGgVdCTqfyXYXvOBVBMrqbSxHYdcwWc\r\n1EJeNTTAAYavJO1VCgEF1i5Tk+jwuU6hRhw6zHeeawQN49Rj/4wxbR/dV2I/\r\nF7LHiQMVqf19OLwY5xZnhTk6DxcW9U4rbQW71Gtf53f3YcCgud/cVjOelIfA\r\nznnPltm1qxEXYMm6zGsSFP7DKmX8dirV2mctlssCfC7HWQhRQzmIph4gePxe\r\nVNhDIJrp96tYxpKckd3JfZd67/z2CRA7HOVH59c0Q+QREy9AmVEbU8X6JuWf\r\nfpc4k+KTlXJk+fPM+YaeHvKHdr7CshujBjdgKpa44mUtapfYaHcX26dTVtXn\r\nLubjsa4DwRkKQSpuMpnqvw4oRi7pYykhqUo8wm6B7Ovk8AXC88sA7t7IVB8x\r\nl9YEsE6O3r259V3zEPUFt9yT5YCYpuUMa88=\r\n=XK4X\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"554e3182e6804b0bbc262ea0e730d556747b7382","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.d9cf98e60.0","@material/rtl":"15.0.0-canary.d9cf98e60.0","@material/base":"15.0.0-canary.d9cf98e60.0","@material/theme":"15.0.0-canary.d9cf98e60.0","@material/animation":"15.0.0-canary.d9cf98e60.0","@material/typography":"15.0.0-canary.d9cf98e60.0","@material/feature-targeting":"15.0.0-canary.d9cf98e60.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.d9cf98e60.0_1664910221432_0.9124679881641242","host":"s3://npm-registry-packages"}},"15.0.0-canary.d71935c8b.0":{"name":"@material/floating-label","version":"15.0.0-canary.d71935c8b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.d71935c8b.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2381918cd3c111a4fa057e932a47a08b5b7440df","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.d71935c8b.0.tgz","fileCount":33,"integrity":"sha512-k22B8NYc4oglEbw7KVx3bAKIbXDzn5l0YESk3rrki6MI0JvJFHHRmlGcZNW5v6jfe82BwF6jTjs3VrSl+sat5g==","signatures":[{"sig":"MEUCIG3RrE7HC8vGQJrrLpAv8eMB3dj55WUxK8VhnQS2IRl0AiEA2b4HLWB2qKEYileKrHtJVTaZj1iC1Jexg5tiwm44PM4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220957,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjPo55ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmorYRAAm2IZ/+PHtemlk3yJv1xONz0JzlxL5F7Y6j0b3QdDscQxxY3E\r\ngxepHlnwBY8R200wZaOU3SZmKZAgqFhtbBb3NU/DWePEyqfQ1V2n699p8Eh2\r\nMgNbDCRXLuakMgPM6WIRzXB8dxB2TDHhSHZwdlOs2RlXPBescwcw3m9EgLja\r\nLbjbSHL0DEXzfSniwy6gNDCkmilBY5GNM+fh1rf8/hu1l7ClcteeN2QvUMDE\r\ngFIaAZIrAThM2yohBmYXhzxsbw7SSI1wlpACE8w4rwnzBZRBnetVDRnzgo/k\r\n35sR4KJsX1ZF0apRe9y8GVdlfMHFsqkFj/szbwqYwASp1RLXUnkp8CfDM+WM\r\nJkdjspb6IP9Zu+xT17yD1MgEHFTFwqR6qH93Add9iC/CteKgM9PVUcUOmswC\r\nlwavgmp7yr32nGppwapSVDs+l7ROd4iKX8pKHSNiU3py7Ouh8Jb2DZo0TVKN\r\npwN2B76bD3C4yWEcTcCniF54G4EsdawI+06T6cZ1xEOlhpbsXZJ+Dq8Uh9kT\r\nNjBZyZxCOXdqtVwRaBqDgdi1C9bB4onh0gvuVyIgt5Ecixk5P5CWcP2E7pVe\r\nRktqD6eqR3IoIO1eHSG6yTOkKoEApaYOKfgRp9fYsKVx9YGhO2OHNppvhg9t\r\nmamnL+alx+BLiX8Rg1S5RHxpzaa8OUx902I=\r\n=S99R\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"0e9f697d8ab3c0b93969f61d22a2b06760934fa3","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.d71935c8b.0","@material/rtl":"15.0.0-canary.d71935c8b.0","@material/base":"15.0.0-canary.d71935c8b.0","@material/theme":"15.0.0-canary.d71935c8b.0","@material/animation":"15.0.0-canary.d71935c8b.0","@material/typography":"15.0.0-canary.d71935c8b.0","@material/feature-targeting":"15.0.0-canary.d71935c8b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.d71935c8b.0_1665044089095_0.023320623448874755","host":"s3://npm-registry-packages"}},"15.0.0-canary.49c56a25d.0":{"name":"@material/floating-label","version":"15.0.0-canary.49c56a25d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.49c56a25d.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"21217f360b02a9532fed181a65b609d770e439d2","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.49c56a25d.0.tgz","fileCount":33,"integrity":"sha512-MgejOaHLTVHI2InkXlh10Vy4hSfdGPGqFvG3L79leXRVAkqnCJ3okI5GT9xvh+4uqFDPyIoz2K+P0RhKHC54/Q==","signatures":[{"sig":"MEUCIQD1jKdM1eB9t5n1XJmvMmejODzleiFfqf/aCK1DHsqPGwIgN7eWUYabNmXK22MGHc+a+QW0d3rSDIM7ZSh6zZADado=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220957,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjPyONACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpTVxAAgol0c108KHAm24f/dt0QIpjTKZQPDUV//tUNqkTcBkWBb+lG\r\nDqesOlB7GT+TulbsgeX51dyBCbqXsCP0fpcNn+xbU4aUWwoPIHGUj+Wv09MG\r\nFERWinHju9IoDrefyToxB2s3mypqoLQUQ3nTvs78HQeDD6U/1v8FFsQVIlCZ\r\n1yVghWrlUG8m3ZDKH5er8zIRXTkDjAMsRC8/WjxZsfRbjo/VzkohSXzTQPLz\r\n/BMBFp934Rso7ODl/n9BrtO6U6K6vIy1Tjb7ZUz+DWJgkzPJUf+VG+SQD7AR\r\nDS32Ai3+q/I3DYzSMYR0uu8mit1ZidUNy83ZKo4tUZVDu5k7S3+wwen7axrd\r\n0miQ2HVsJcm2bzTG85HJhkB4UMJYvFcMIyy0chijqIsJUHuz2zLSwMcIjpyr\r\nXoQk+SycIMJAYDB+11NqlqL+qukciyL9Yw58yV+Wq5JX0OIhaMicf1o2ihk8\r\nr0dzPL0qHptGn5/Fhp6/aQkMST7+w0YOJgj87Lz+nrvPfi9/lSIGRRdwlMCz\r\nm/YPfFGux5eSFpXk8gRlp6mJFRCErN2vAM0Up1loWbxTQCd+SUElR+cnwRft\r\nwDZUH8H07RMSMFJQEClmR4xKWPmXwkPIjX8YPANLmMzTyUuem91weMxyjzn1\r\niDa1JrrQ+opATTTbNzOFzqRNWhR4Y7rZbig=\r\n=0Mqf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"46425b4f1ee71ec9e841d7ffacdce7cdc35e7b69","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.49c56a25d.0","@material/rtl":"15.0.0-canary.49c56a25d.0","@material/base":"15.0.0-canary.49c56a25d.0","@material/theme":"15.0.0-canary.49c56a25d.0","@material/animation":"15.0.0-canary.49c56a25d.0","@material/typography":"15.0.0-canary.49c56a25d.0","@material/feature-targeting":"15.0.0-canary.49c56a25d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.49c56a25d.0_1665082253415_0.7808351417739481","host":"s3://npm-registry-packages"}},"15.0.0-canary.07acddef3.0":{"name":"@material/floating-label","version":"15.0.0-canary.07acddef3.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.07acddef3.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"67a0893c3d89ab4126696a6196492b31aa1a38d7","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.07acddef3.0.tgz","fileCount":33,"integrity":"sha512-olFlxD/iyJxO6b8VztgOyJXdEiOy0BmfqaeE+tGynxRqWflofcqRrImck4fsSq2jfKZjNqPHbFIRumftz2hEHg==","signatures":[{"sig":"MEYCIQDysp0XQIAEOZUVzEirrUEy+cMbAXCFB37nhlFsZ2UzOgIhANgCglBgpzctCV95ciNzv9G/flj8TnkvUerHQwsrTEDx","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220957,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjQJwSACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqRcA/+M4kuzgbAeRW9kAUDR4IS04He3115X7d81DzvQV49mAC+SR6W\r\nu3qhGkYPrdwvwcCPRU6WfIslFwvNxk8weLHNrZQP4OBdSljR3pa/PyIxTnxr\r\nFUAMurBjX3cbV1kYaHfV8hWWHKKYsw1Vz9tWOMit+X6rE2Q7hELJHzPzV9Gf\r\noDoflM0KuiiGGOR+d7277N0yObJrh/h6lzvjK3mSGlEZwaIXKEROOy+DRyOB\r\nbwkq2e5HUqltpov+acWcu4U9IUpjAZpjSwiP5TBXK6+pVl8iyhyKz7v6p13P\r\noJsgYfgs4NPrsBrYhZhuDniaB2jYC5PgYl+ULIQ9I9M0EZNzcCoz3hvo3Pl3\r\nz967tIHf2JBOPniF/PY1Jlh477xcVJod9Mxdpjn9vp3sxhSK8Mxm6aku/eid\r\nM+/pmyrOl42zgr6ZkQ+W/nYe6GMa8jym9CWnOCDbqhBG5tosGSa7zwCr0sew\r\nKhbekriPpwZN+/6Wzm3Gd4UzZb6CuTgaTMUs0TnTKCBz3eqjGa0gkJzHJyHw\r\n+Sip5XysyZ380pXsKXCy5Zj3OfImBVTKlMyt9NU0mCMIl2C1dYNIEwrMro4N\r\nW5DpPGNRlIRb7cRTNakI2mkloIYnptlAfNbdlNzGRqC87cbJTv03f865f7+K\r\nduHngVMnP8aJ9/lPUZ53i8EfJPosLpiS4m8=\r\n=ou/0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f61a6c26b4bd60354b690448809f9dfb7ea11564","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.07acddef3.0","@material/rtl":"15.0.0-canary.07acddef3.0","@material/base":"15.0.0-canary.07acddef3.0","@material/theme":"15.0.0-canary.07acddef3.0","@material/animation":"15.0.0-canary.07acddef3.0","@material/typography":"15.0.0-canary.07acddef3.0","@material/feature-targeting":"15.0.0-canary.07acddef3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.07acddef3.0_1665178642372_0.4600956222261312","host":"s3://npm-registry-packages"}},"15.0.0-canary.1c74eb2c0.0":{"name":"@material/floating-label","version":"15.0.0-canary.1c74eb2c0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.1c74eb2c0.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"0bb3c97dd85ae12d9d82526755a6a226fccc7f62","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.1c74eb2c0.0.tgz","fileCount":33,"integrity":"sha512-rMtQvua+Uw9bfMnyfKIpvM3MzWIPP3o954hAD43uAigUuzT3WXzeB3PFruvuntx8JvIFc2fjfeY7Qf4ft6Qsgg==","signatures":[{"sig":"MEUCIQD0KQb1xz/v1Qh9ucGoLHjrDfd9KjZH2Bp04Sk7m5uLMwIgVnJZPj8Yw2/u9OJigfM6OXMKpyaJXQM13/Bxbax5h8k=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220957,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjQKA/ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrnxA/+IzpsilPNg1nvncJMRhaTlwdzQa6Rm5z1BhU2+P+tijfcHPAo\r\nkNDZE9Sbndyo7fVb/rAHBGXugr+xCvumaalu1Gx6Uijr+jy2zNrown/orFro\r\nyTSf/fTROdTY2Qv1OPQJ6JsBEjVX0mIyuuGqk7hLnAHFO2+d5AHyxcgiHnNb\r\nhtsnNm/ukk15oS7jmR4cfaP5jU1aJcsh5yaSi90tdXWf3TyRH4cKm1qNPM+t\r\n+iVST3GkDnuhZ638dGAV0H+0ZeC6OH1l8ZYvbTv10hCyrlCBHV6vAM1WKTYZ\r\nzuqj+l/cYgff2l9VT3yUpMFV6FkR9cYC8eED63H/lzhWjpa7mQ5C2jDc3jnQ\r\ngM+a+1E6KQA2Krnq2Aei5+sEdoks0XlshnpZaHnf6ZAeLacHU7s6fJ4dM1LO\r\nMtQgiP3beKrhFjLjSkWvVEbRG/M31Nxmw5CDNI7wkCbplA769qrCQeXmpV5i\r\nOKbDODTRnNRztk8q7+P36oCZi879/GOILiY3//ctWI6++XtFNGiAxe8XQf4y\r\n5xsHwzAH9AjMdX6U14LiiAzOGNfMReNBjljEdEgcRaRweaYJryAdhYtPICch\r\ngpqigxKjJYWZ4PM7qe1uPZPFt9pc7A6dPWRsA0khB1yDgTqcY9JVBBvr2Goe\r\nvNugCcp9UW5lvgfWuXxZHc2sCr6i3pKMe3s=\r\n=SSgc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"fa2e48f4e71714ca4a637a500ddf18f562031ba2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.1c74eb2c0.0","@material/rtl":"15.0.0-canary.1c74eb2c0.0","@material/base":"15.0.0-canary.1c74eb2c0.0","@material/theme":"15.0.0-canary.1c74eb2c0.0","@material/animation":"15.0.0-canary.1c74eb2c0.0","@material/typography":"15.0.0-canary.1c74eb2c0.0","@material/feature-targeting":"15.0.0-canary.1c74eb2c0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.1c74eb2c0.0_1665179708268_0.46667659171931564","host":"s3://npm-registry-packages"}},"15.0.0-canary.dadfb713e.0":{"name":"@material/floating-label","version":"15.0.0-canary.dadfb713e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.dadfb713e.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"de040a0df0d47da4c85c5a7e8d4774555ece6016","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.dadfb713e.0.tgz","fileCount":33,"integrity":"sha512-sX/Kg0Ip1FwhwBEkFvpq9jPzoOJsbWxZb364GLdT5pCm26gQg1TjoOH4xSdgpmGNgF4qW4r7hPdg3cxRfBIG6Q==","signatures":[{"sig":"MEUCIQD3Qbq61NdedQDNMv6gJmNvnX4wD9FNt7kFTt9kYJBS9AIgbcbASb2UM+qho74sgNF4SMm/g26NL9XMfO63Sn110Hc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220961,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjQQUgACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq1TBAAhBOEa1GQiPXyMak3a7dTKpV+MRbKAl9lUxHagcBY1hnEVjl4\r\nAJVPMArICB1hSG3fPInOUP3iFmnKoc6meyswO0Xwg0bDPY/PtqFD1Acb9j6L\r\nWm2NuYp/ClxxLC+gL7WIzL498cgld/j7h/QQA5FmueSw4pjJMzGis/8UF7gd\r\nIaPf/mOYBUh97hMIqu31gFPwuiN7EBfyh5/fMe/vPPnU5NXjGbomQ+yIH+rq\r\n87PRjyhHb8ttL6R557MphntV1/CwhueWCdHaM68Y9WO5udWND2P8Aqb1SiYK\r\nwwJWHlO3cRrYxS35OEMvUHhFi2F3YpyGSBMNda/cqZuCK0fbGzRAMpjMQ/s0\r\nrH/gHVf33PC+GOMxsQNu0Adx4q8XIBXnC6OjtL+vsvoMQW8viiriTa8glXli\r\nZgug+qK01nPsxrCjCuXFqNYkoIbx3ZXcUKA//7v/c8b/mtI9bUC1gsIHgvaz\r\nmBkq4T+HCwILfc2d/XxNlq7JLuiFM48IIG+eV1SNL2q5+D3OMMj0Gvm/jhEw\r\ngyIR96F2OtNiJ8Y+Trg46t8v6yK62bFMR7jTEQ++Mrft7sAiimzsVbWRdL1S\r\njMQKdOSz9Rq2wZdRNNi81QaNjB/4BY9CGHTt+cESAKp9dxAQU3OKXgi2REac\r\ncKPKinckyPgTxsNLSqQWi1QJLin7e/3rmLY=\r\n=B5+7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"dc577772f45028a4c4dca1d7c8ca8dfcf636e763","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.dadfb713e.0","@material/rtl":"15.0.0-canary.dadfb713e.0","@material/base":"15.0.0-canary.dadfb713e.0","@material/theme":"15.0.0-canary.dadfb713e.0","@material/animation":"15.0.0-canary.dadfb713e.0","@material/typography":"15.0.0-canary.dadfb713e.0","@material/feature-targeting":"15.0.0-canary.dadfb713e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.dadfb713e.0_1665205536259_0.3999605817203309","host":"s3://npm-registry-packages"}},"15.0.0-canary.395f1ce61.0":{"name":"@material/floating-label","version":"15.0.0-canary.395f1ce61.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.395f1ce61.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"278b0972d677095e23032b57f93792069969c4d9","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.395f1ce61.0.tgz","fileCount":33,"integrity":"sha512-KDeI4vqn6bNxggszsyI7EsTp4YXdLWlTHxL1qm7mdva/anomfZOtCf4jkqsRAWuaCgmTqNwN5a05x8FJbo3hzw==","signatures":[{"sig":"MEQCIHKjP8aheQs/+7C6kQexKLZxpC+9b21eme4hnxifc8ZZAiBd4aDvWuZyPVuC8pd2MsScV/7xiNZriar5wNMTVVRPrw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220957,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjQQWaACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqdgxAAgorr9Y5vt06ilud0C/DsRt94LT9SFcj3nSyWRsaqP/0gALr+\r\nWitKno7iyAi7J2KRgqe7zTZtFXqTjUqBhWASVAvgcIkdwGpff1fxen9j7VZi\r\nlmGlrQE6saaEH9plfc7GCF5lrouEdJAMNp1czPmw/27V8/oYTjDltx1XyHZm\r\n3ov7Whd/yxEkCihaR9vLhgn6B5m6UIUFJTTStCsTAm4x6lQ5/8NoeEVzsnMW\r\nup9puziHTc4p97wFZfb0DAexC/JtB+YnTguQH21hR44CCu/p4LibKT5AsjFt\r\nwpV1VU9jjQjWd5f3t7/U0rxGdqeYhd0trxCuQNkw/kauBenRLBzX3GLPw1jP\r\n431/K7jAtZK6YXr9vzFTPnXpziqvWGIiz9Wij0DnEMlcGbmzGuIc1MVdspu8\r\nxO1Lm8TV8BvzDdwggSbZbAuZ1tATb9djZpZTrE9wC85ZhqawijkuhIytxH4f\r\nWEMmnRJkfWZWBQMlVUI4WE1xJuqr5e8eEojB/eqSQxX4ORjTUK/FG2wCNkG2\r\nZpPRAAJLj9K7PNV91FuKJrcWaF/e4ajBKvD3EjLevj5t8JX26hstAKM1X8T3\r\nvrjWxmPV3jOpDemdtAsZVwh4CDFOjKElwHlm9nhZpw0ASmbRNT9Sv86OTbow\r\nLISO0FpoY04S4GUnDKYcxHpz+doQMRdR34c=\r\n=p38L\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"15a2d954f8c5260da0e9b6f65b6f49df69764a95","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.395f1ce61.0","@material/rtl":"15.0.0-canary.395f1ce61.0","@material/base":"15.0.0-canary.395f1ce61.0","@material/theme":"15.0.0-canary.395f1ce61.0","@material/animation":"15.0.0-canary.395f1ce61.0","@material/typography":"15.0.0-canary.395f1ce61.0","@material/feature-targeting":"15.0.0-canary.395f1ce61.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.395f1ce61.0_1665205658728_0.3352426147708327","host":"s3://npm-registry-packages"}},"15.0.0-canary.e741b5c82.0":{"name":"@material/floating-label","version":"15.0.0-canary.e741b5c82.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.e741b5c82.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"877bf81b209e38de757a94d09d99a935571ef2fa","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.e741b5c82.0.tgz","fileCount":33,"integrity":"sha512-vVcFTlR2y92v3lr/3PE+oiDNaEg6DWM9n6xJsqvvfhbiPwSKJBN3VUhs9d/2mV9e6OQjCgeYnlJAxz+iXQjjYA==","signatures":[{"sig":"MEYCIQCHecOH6eFmSq+H3PjAALEANk9zvLD2f9NfBPjGPs/yhgIhAOzAMZ28m7c8ez9axfg6vY4OplAbjyLhGIshcBIYHi3C","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220961,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjRFhvACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpfSg/8DpvlcknajpzuNqAHl4O0PXcnArsfgzlj2vDMaiDHGE4vSN9e\r\nYVAjPh7ZVtbeaIcfGYi0IzcFql0IPWF38HXKRHWs3COiSOUNNdV6dm0fgVnc\r\nP6d2fThpCe99BO02lFn/AKM0ecJ35dCNQbpO1oCGEX1ZJ9vltm3apK0GZmAy\r\nVuaTvAWOcHubt1ie22NOM1o8na8HZnmKe2vFbqKh6zkbkno3NO7VGkfDg+cx\r\nv9eyRkEeHP5VBul97uW/V1NtnkYl15rE99MLqiDhsO8mxdRubPFVyRRJogwr\r\nLCT3RQ8yOLMjrxsDVdSYoBc78G4GUv5h8cdCA9BLMNsJaQFUDcideVkqmYop\r\nZQ13AWQXoTYavdm9SfCzoiPF3wPa2+8Cu9SjDNUp7v89VwlMP0QaTYPfNTOY\r\nSlvKCOw3L/mlKrb+mt1jei3XaYyr+sNl7vKMT+n1PD2wdlMIx0dt3RZvuS8C\r\nW8A7HsVSReYyZ0Jjx7udQcP83O9jz271KTHAJX3aqnAhsp7JQ1Hzg/u7Nq4N\r\nRXPjXZgsY+ywBjHLu8EYeVXw86wmORsigqpg8rT+JM0NbfAncSa9ZLtiZ9cz\r\nkFrX9/RKJZ4Asuf1y6EmDf7moyvB8Yj/JrQnQpw9YU3T58PmOx8N8Uju8L6n\r\nnesRBI74Y4G9+m4RS/jLS55aJgybNv4WmHg=\r\n=UzMW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"489583dc41bf06c909feb0a87f9679b40fe6c03a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.e741b5c82.0","@material/rtl":"15.0.0-canary.e741b5c82.0","@material/base":"15.0.0-canary.e741b5c82.0","@material/theme":"15.0.0-canary.e741b5c82.0","@material/animation":"15.0.0-canary.e741b5c82.0","@material/typography":"15.0.0-canary.e741b5c82.0","@material/feature-targeting":"15.0.0-canary.e741b5c82.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.e741b5c82.0_1665423470974_0.6572908649797498","host":"s3://npm-registry-packages"}},"15.0.0-canary.582f3cc1c.0":{"name":"@material/floating-label","version":"15.0.0-canary.582f3cc1c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.582f3cc1c.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"857e72084e14b9a01f18607c022b3ebab7adf8cd","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.582f3cc1c.0.tgz","fileCount":33,"integrity":"sha512-1u+w3A8gOHBmHTuk6om73FEdSismi0uHz36kh03rYxt46+2FMGdySBMv5UfpyoDmTmGAGinVhDD14K7rda/cmA==","signatures":[{"sig":"MEYCIQD6HoFxg0Im6IB8uWHzXQvhAm6sIa6Iee0GfLJm5ODXGQIhAOxrffd5HwQjjZLhO/UJ84HBrGzrIMJYkUkVV+Kqigeh","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220961,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjRPWwACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo+DA/+P7S/fgpcbTyUCorLmrjHCyOiBMzlCcBn+glEwa5fYlymQTCo\r\nHn5NJhqkj5PSmsiuBLYNoyKSDfVpeZjiDjno+8r6wGinX1BBWdGkud0qSdZx\r\n3mAhfueEE7rVN+ytPtVnMH8+ibtaUKnOnqvVcby5cy0IRA6FqEvVUbmrAyOl\r\n/1mkop1JcMq+d0WmWpzUc4b9KwMdDRasRCCPot16bTfNMKu7rq98I3uTcTOD\r\nlo2dw7xozgBm8RhCYMndhiNH41pDmhHicymSZRvJVAvWUD6VZGhDw0mGOlBx\r\n3cz+BkQdZkIyOsH8i1qZl56YPpA8kXD3xneEk/3sRqQsVUO5G9EEGMhDDNuZ\r\nOYIU9bpoZnq5Z13PLtfTqgCLURtbV8Pu8xHFEYW94i3KOSLd+StDjAfrvTNd\r\n/PrvJ6arXOvgtldVsmrrTb0VoxlehAEDSMboQVRxnNarvJuzWXKSIvrlJccU\r\nuchbdsfymA1Lv16birHozWJRwVP5xba/D/F+0PTE+oFwFpQQomedpYtS1VMx\r\nw5I5yc+dyTfG78NXIoz9omTBPt9gy+45jEhpACSsfHgfbgeoBs/c5+Sl7swM\r\n1+7Sgj0mCakAp6uM2JNbaqE73nsgNor1rsyJRoGHWZ5ji4VhHmXrAU+g5CnV\r\n9TvQgOv/Ms7LZcVQmTXHt0W3rXz0CP0AWbE=\r\n=0Ewl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"9910dd1f5b3fa962bd02fe552774781896efa7ee","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.582f3cc1c.0","@material/rtl":"15.0.0-canary.582f3cc1c.0","@material/base":"15.0.0-canary.582f3cc1c.0","@material/theme":"15.0.0-canary.582f3cc1c.0","@material/animation":"15.0.0-canary.582f3cc1c.0","@material/typography":"15.0.0-canary.582f3cc1c.0","@material/feature-targeting":"15.0.0-canary.582f3cc1c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.582f3cc1c.0_1665463727736_0.8701943895176358","host":"s3://npm-registry-packages"}},"15.0.0-canary.b1a6e3e88.0":{"name":"@material/floating-label","version":"15.0.0-canary.b1a6e3e88.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.b1a6e3e88.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2b295f15bee5d537f3c7fd4683b3bbc6bf2affca","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.b1a6e3e88.0.tgz","fileCount":33,"integrity":"sha512-4fOMDOzSOXZXl4sStJc5hdtrGSgCGatkbOZP/DLzj2gFfwM2h2Lm4yOFRJ2CvzoDbSJc99DKXQLMOrud1ES7ng==","signatures":[{"sig":"MEUCIQC83IWacr6bMA8g0wnkAk0VyZ3zHpQs80FTNYZ0NyUL5wIgFAzRStInTBW+oGQ1rwLq7qYCFN31snfS5BQHHPjrgCc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220961,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjRqy/ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmoftw//bZf/agu4FtnzQjhuPV4u+NFMvW5XgB6lXc1lcGyBOlD3fPV1\r\n2dW07X7iN+eZPQ+VMOBvQPCGtgTuDNNXCUBS2jnS5dX+IRdpT67UIGvEkT5d\r\nlnnyrrOQoA3qrS4yK3LZ3iWeTq1lTjcUVGUqe5n+W+/h3CJKjD9/uRCbCtrM\r\nyo3pw9r5e9xufZRKBCJP9spG7Cib3huNyiOhlnorZ+eSolpPa/DlQ9FD8Qkz\r\nErNHuPCRysd+PhufDcj0Lpv+JKGdJW9e+wbo/zsS+TH/OuSQyyY+Z0GMY2ZP\r\nnR+tVsVKcrPtT88MPHXNYY0UoGtSza+gpy2aAG1IAiSVh25iR5bRS0K96Mio\r\nP060wRFokYPvg/kQINau8dwpM+G899y5if1hhTaoTNrQJQaDUTn+P7z0MwZ5\r\nL5xBjSgKo1KUrmIxZdoBUJJ2wijV5qX7+CXRW2egPYkX/Wz5SC6atIdNBvf+\r\nzJdkHO7xhfn2cF8Or0L6SfjDLtjeQiYXotXMa+OiCILESFesyVOoLQkRV4BJ\r\n66Tg3h/t/lku8WmUNtd3uezj+dxSJxnjN6L5Tgp/UMBefWJUb1dMdfFiftL6\r\n6TimaL3ZkXtNkbAfjSY9oZTTypdAoRpZQtdOVjtec5bo2mb1tkq/413lHqBs\r\ng3BF1u0mD+BLvVEkZJEQWU59FaiXX9GHhzY=\r\n=tzxa\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"fd6420b1b81c64578026927a4acf4ea73b7358e6","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.b1a6e3e88.0","@material/rtl":"15.0.0-canary.b1a6e3e88.0","@material/base":"15.0.0-canary.b1a6e3e88.0","@material/theme":"15.0.0-canary.b1a6e3e88.0","@material/animation":"15.0.0-canary.b1a6e3e88.0","@material/typography":"15.0.0-canary.b1a6e3e88.0","@material/feature-targeting":"15.0.0-canary.b1a6e3e88.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.b1a6e3e88.0_1665576126794_0.03270334354336257","host":"s3://npm-registry-packages"}},"15.0.0-canary.c9b1a31e4.0":{"name":"@material/floating-label","version":"15.0.0-canary.c9b1a31e4.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.c9b1a31e4.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f7d7cad3d455c3f91f206658b3a0e17966f3f733","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.c9b1a31e4.0.tgz","fileCount":33,"integrity":"sha512-ajGszLemFmEu5kmNhgv0TnwiQVQmEv7blDX8VMuXkZHwSZjIw4rrip4UNSNKh+0DRJ+71VEKx8gqcc9rzlwsfQ==","signatures":[{"sig":"MEQCICdv9vydUg976ajtoJzqJ3mCn/M45xOjfqAhdiI0o1EPAiBjkgtXMDhYLHhrrpmWv9rUMh4GCwVoLXNowQlkFvAqsQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220961,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjRvIkACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpXRRAAmS7DUgyDHymqHMuVSMHV80d4sxOyP5oLeuic34ShNGHdLyad\r\neQWrMAO+IzU1UByebWpIt2Y+VJ219fv0i0VOH54ZDC5o6p/A9J4sg5G34n3w\r\nCvlOPYKODHnFeYRXELV1YQ+uWlfyw6ddkuf/gPXabiANa3EHCMhhq/3GkWcQ\r\nWPbP18sUZySfAhwTre7Bkemuryku9ywKXFKVnV9S/9yAXxq0xVK7LDpdzvnv\r\n3QSvrfhfLqGIqq6E5VNngHTCcgRJ5/g7hNg4mE6A8xMTmhYPAGNG2WrcH2Fn\r\nTi+dZSL1mRNumYcWNZQNJuO2GHu4BQszyRA9nXFyL5bdOJMlqtuh6DRIhmds\r\npppG5WgEwR7OxsRcUQivLioImtlQCTYkFT3gXG3QpG1M8DYLGH7qeV4x/05x\r\n+EuhDsn1pfrfYWV63cbvBiJKCAvd8+VcujPdYb1pmFfeFre7NOxui4mmdUQ+\r\nqae5puEji9Hkkveoyjq6ZDYygxowRV/FR4TLV6+jc6tVPz5rKlBvodnROVpt\r\nGaWrVlL4GBHBPvL5GY/T5KH3mN3gkJtMX1X3Vmk5rEQaP5hsX0wO2Y3VvyFz\r\n+ErDZqHFZ6fnE5dgrMez9rmR5N8znTVgK/ZPXNEUasw9HtMInfFBgNV44qXY\r\nJ0Ogo/iphAorRmQl3N/178Y+Xa+JE5Wa5Bk=\r\n=kDDd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f7a6b71c85fbf0d1a9db952402e002f8421baf4b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.c9b1a31e4.0","@material/rtl":"15.0.0-canary.c9b1a31e4.0","@material/base":"15.0.0-canary.c9b1a31e4.0","@material/theme":"15.0.0-canary.c9b1a31e4.0","@material/animation":"15.0.0-canary.c9b1a31e4.0","@material/typography":"15.0.0-canary.c9b1a31e4.0","@material/feature-targeting":"15.0.0-canary.c9b1a31e4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.c9b1a31e4.0_1665593892072_0.8424476866558723","host":"s3://npm-registry-packages"}},"15.0.0-canary.13e9b0d1f.0":{"name":"@material/floating-label","version":"15.0.0-canary.13e9b0d1f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.13e9b0d1f.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"294cfae24518a90c18cec5ad85ef7305c6074995","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.13e9b0d1f.0.tgz","fileCount":33,"integrity":"sha512-pVXr5xhFT4ruDLHLQgtqO1ohrey7VXNAXcK3AklBsEgicfBCZJ0cteyT9L3IM/8S+4buVc3WTfIpDHt9vJMIsg==","signatures":[{"sig":"MEUCICDJW3Rs0rG+ABZWm3ybW5kuxYgjBqQ3wgt4q2DXSwX6AiEA2cjiiagmRz4tIXkLliGS+qWV+vhGeZBOFbZuFNrhIr8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220961,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjRxOOACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoHnw//Y3EbZU6grtUc0X/A+t16/iop8GQZP9YQyHgfXdyQ3/9xkPj9\r\nCr5gDR3NVihgh1FgTQhOMcDaULMMZjIOv3v35xGNLsSks6J1/k9txNzeTWnd\r\nJFwRIen9qkTw9Sy3qBwdXTr2ugdtxVgzVG4U4OHc5s1qZwIkZoUx5lB5OT68\r\nlI/gG2UXbUZozPVyRECMIoH2GHQE9osuy/uHGmNndgRsp8DqyvLQwBpRtet1\r\nnOK+ut/OZfooTuw6Gy5cNI4GhdD68Mi7Q27BRJaC4I/edemfuNG2b4Wp+Wlg\r\nFMjKm3M4r9yHFnxtDGWZ/4Pvy6s4NdqygPBW8DV7AWCGHpVgytLkzr3IwqHI\r\nv3PLavNTI6uS+NEWO+CgClujlXAti1Xl/XKGjq81KSPQlSX2JurJSSo+qcYo\r\nxkINfC0pCh2DAg7fwEAAGa7i9S3H6opa7fHEYqqL6GjzLfmqDH+redAAGDy5\r\nOTFiXkaNPsiEp05fSg67l5MgWb73tDl44KV3iDP3Anbr8DFl04mZZPpDEeoz\r\nDxC3XZdpEVi61HZ5jdVB0HsqlafE4q4/Fvvb8Csu6W20wNfyT6rlogIqQhGB\r\nl8xQq5svB3YCELxlklIftXgpCiNPyY0cjc7E8waE/mgF35AG7QPjrAJXW1f3\r\nYw7ncCmiRE9FgGtbGHME5/8k46vOfRjtQVc=\r\n=WIB8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"4d9f6e4f27b68587a15ebef6f003f73cdad60bff","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.13e9b0d1f.0","@material/rtl":"15.0.0-canary.13e9b0d1f.0","@material/base":"15.0.0-canary.13e9b0d1f.0","@material/theme":"15.0.0-canary.13e9b0d1f.0","@material/animation":"15.0.0-canary.13e9b0d1f.0","@material/typography":"15.0.0-canary.13e9b0d1f.0","@material/feature-targeting":"15.0.0-canary.13e9b0d1f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.13e9b0d1f.0_1665602445916_0.9892081951855016","host":"s3://npm-registry-packages"}},"15.0.0-canary.1dc797e7f.0":{"name":"@material/floating-label","version":"15.0.0-canary.1dc797e7f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.1dc797e7f.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3e80ef23ef2d54b45d134520d26c4bdb2d88bb6b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.1dc797e7f.0.tgz","fileCount":33,"integrity":"sha512-G6IX6BLL0EsM4EiFMNkDAGUhkQ7/aikO+QIHeALu8NHk7xpheRDPOCjL6Xb6UF7ZdnsiVXgZzH0H15zAbCB6pQ==","signatures":[{"sig":"MEYCIQC0TJpkDnwpvt4p40eQ13SY7UPAWZLD7RPu/dr1uN1MoAIhAIC7OgX0Mgxmjrk2zkcDwkxI17d2xrQgP0qx9edk1Ebv","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230510,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjSS65ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoEMQ/+P/uJMzeR8kzZRRfsoOfgBecvM5I1rw1gzEvC6gXfBAoWgub/\r\n6qtMuWJrFkggUaDWgtlO6GSzrjkdtgre5ViYl/bQCSGrOR5F/8D0KdaKc/O/\r\nDE+qd64vTbrVhULfRgvwXPJEg5Uv/Gy70mbxreJ9zhG+QwtleUlpIAilVvhY\r\nT5JBpzJ2hGp2L9U4Sv3LbCoJ1Rw3xUnK5OfqZ3b1/VOeeaDxpjVbiEuNjSEn\r\nevEHJy8nqZq+0iM7dUZ21qEh1rWNM3FVIPUsO4VLn6cZk5oIYZnOI4AKENCb\r\nVIE/votX0WAwwMFOU4VKilIWbbzDFtEYCJrSzrOJA4nrdZ+C+gOUjqsJ2K5R\r\nlfbSFXBbNiVkPY4I7PUbH+XonesN98sARUdYBchHw6+6ea3iZV2Tpa8r4SUt\r\n99bh9Cx+KRa4V8Jbj0OcXlN9m5AqdRol7g4eb1qO7aD962nqdsXlJnrrucX6\r\n9kLQialO6QH+DdGqRqga+XQlQC5xRFBr5Nqi4R3X9q6t0XA9jRWnGTy5MOkB\r\nVHGz2kFt0ycgMuHWT3Ho1z8mE04XzBmIAHkhsRzciWf4njoVzqN0xL3p98f5\r\njljspr5QZ6nCBIUHpSnzFuH/tYR7Cst0Mw5GoIj2jVhw2z6/ds6+vxoCefVm\r\no7d48R5HWfBDAYYLR9P+xyjlmUfIioVym+k=\r\n=W4bu\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"22eb0904d0b7a84996854bc57cc417286deb08b1","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.1dc797e7f.0","@material/rtl":"15.0.0-canary.1dc797e7f.0","@material/base":"15.0.0-canary.1dc797e7f.0","@material/theme":"15.0.0-canary.1dc797e7f.0","@material/animation":"15.0.0-canary.1dc797e7f.0","@material/typography":"15.0.0-canary.1dc797e7f.0","@material/feature-targeting":"15.0.0-canary.1dc797e7f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.1dc797e7f.0_1665740472821_0.7077103376366403","host":"s3://npm-registry-packages"}},"15.0.0-canary.ed4009397.0":{"name":"@material/floating-label","version":"15.0.0-canary.ed4009397.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.ed4009397.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2be8e0a632e7f23fb58ffd68b1745fc5a285bd91","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.ed4009397.0.tgz","fileCount":33,"integrity":"sha512-S8q4m53AhSkLmLOMxj2wSNTCrDxNO4ihYq432muaiXFAXXc9cTwZsj77VeM7RcTAxXUoXnwxVHJYoTovNDdtuQ==","signatures":[{"sig":"MEUCIHOLSU6ENhpzu1ecKQT9WDkhMuvVCijZKWHY0nWl1W2DAiEA+pKkBCIUv0XtptgmRi+rDxZ0qkvKThbdT3k/HHwOkFI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230510,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjSZN0ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq4Ew//SuxWkhlee/4uVrD0SQZPTq51pE0Qqg1u6F+mcm23L10HvcXa\r\nkhvpYO/lA3M03/OTaM2YLyLt9wYfI4XNbYW06CDZgY7vNTJ/zDiaucDzG8eX\r\nxiHIjqA3olS2vIRXcfh1aRKxsIoIsKhqKBo9jcmMApJFEdsHABgI+7kABwb5\r\ndsp1MqlZkaErgsjfWf9YG163cKcBdqt6gQy0XW2mYbrLSv92LMks8eptWqXT\r\n1Nrz98iZAS3qCh0iJrOg7ZOsHcTxF6jJshxuWsVNwB3Rpb6sGEeOphzbUlYX\r\ntbydN8txzr4RqNm7sfa8hdm0jrbO+GVliN30yGgdnOzQm2ZvNsasQH01nb3m\r\nmGtfVdHZRYMHbwa6OX6sr3wNPb9OFL0zlGNs0jZ6zR2Tix5rdbmTFqq8vxDk\r\nzE+eqaZXscPVSvck9HXnJPBvoqqJu4IYh/qnbKOpmDGCj5ssSLz8C9Z+p0NC\r\ntX6EbOZrwYrFFhlm7i4qg592P4alUuyfSJTvKOR1dSM0R4e66QWFS/zLt7Sp\r\nyaHexKVvPaQ0OB6pUpQJTBG4jewOYsDoSnSdIq4WUQaUaGDJaaYemEXAyuDK\r\ngTM0HBrwqYDxDXFjrAUM4ysVcOGReR3OT0thwuXHJejlBk4+0So2dZEu0Ggy\r\nD6m1dd8xwOynycrGDzSW+cLKey0RIziuLRU=\r\n=s14n\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a749634198bd160446873ac2c5cf3d4345b1620f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.ed4009397.0","@material/rtl":"15.0.0-canary.ed4009397.0","@material/base":"15.0.0-canary.ed4009397.0","@material/theme":"15.0.0-canary.ed4009397.0","@material/animation":"15.0.0-canary.ed4009397.0","@material/typography":"15.0.0-canary.ed4009397.0","@material/feature-targeting":"15.0.0-canary.ed4009397.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.ed4009397.0_1665766260403_0.2869851487895405","host":"s3://npm-registry-packages"}},"15.0.0-canary.95ef196bc.0":{"name":"@material/floating-label","version":"15.0.0-canary.95ef196bc.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.95ef196bc.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c2d68719113bbc7d8f8a04dfb755e912941350e1","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.95ef196bc.0.tgz","fileCount":33,"integrity":"sha512-0hLzKEfeyEEiSzHZauIYvm3oKqZ2qXv1VapTFlU+LkGRYPomVmbhVV2ctS+txzlE1l/uKD2jbgXdhob12k0usA==","signatures":[{"sig":"MEUCIQCMjBauar9M6Dn4qtWcAym+FQTa4fsUIurkSeUyWzi95QIgJ6Y1UExJK6j7TUeU7haM3Ns+GOcKQoY5jGzS8GZp9+E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230510,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjSe0jACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmragA/+InalpB6JBs+bJzayKTZp5vRhpC11B2Y8tLW4eHIZ7MLhbUyj\r\nObIVOJte0BIh0OFKnLFUPrxWLkLTvt3evOQRhZEpOApCCpxeg1doGZnnf85Q\r\nFl4LxHK73eaRfmzu2fDmTsJvT/2YBlQH7cBamVA3HWbolfoJ30H8XE4o1U7w\r\nszmSWSACgNctKQgabPzmM9PtIq4L5a5PUDjgKmT2LBN9Xjp7M6/mH/mmbyFd\r\nQ9xR56K0tAA9S6FSSEprhBUcGJDeXeC4l3GYSkE8rStOKwYsFEslaJhIsAVM\r\nB7Bdv0INh2NLSOKPmOGaj6jaLse3td0hLeYEu3Kj8GCCBRoOY50ZAXpsGTsV\r\n2+LZRlXnsaLF/sPskq1q6ubJCA+78jFE2H2x/TMD/GF25cIxDd0uEY4VAywq\r\nWp/H+HPxXbbRXnh9/tLp9XrdWqm3WGM125wuMLQy4JpEIEFlaAgZ6cRvL0ye\r\nh0pdvxz5Fk18Xf8JwyXixJYrtMYPWVah+OT/devcLKIESykZxu0a0JY9kztR\r\nPf1jYKUhcjCO9ICqjdwWGDw3yUPdkEx7pOUmcOHn8PImPj+BKrDhjIJvDGTw\r\nNSOuM2ja+FcrSfEwgqztc/HWRYOfszm9PNGXp0kCEAIiGgeBMsMCWuscB0vq\r\nXBNjohxLhd0tdyei0Q4ZZGnsnfc4x8QxBBE=\r\n=8Y86\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c133997c8c45e50d9ebfe12fabab75ec90d244e7","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.95ef196bc.0","@material/rtl":"15.0.0-canary.95ef196bc.0","@material/base":"15.0.0-canary.95ef196bc.0","@material/theme":"15.0.0-canary.95ef196bc.0","@material/animation":"15.0.0-canary.95ef196bc.0","@material/typography":"15.0.0-canary.95ef196bc.0","@material/feature-targeting":"15.0.0-canary.95ef196bc.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.95ef196bc.0_1665789218829_0.3380050959586569","host":"s3://npm-registry-packages"}},"15.0.0-canary.13eea1b2d.0":{"name":"@material/floating-label","version":"15.0.0-canary.13eea1b2d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.13eea1b2d.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2c07fa793cf0ff3b8149085211ee76fb9a913f46","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.13eea1b2d.0.tgz","fileCount":33,"integrity":"sha512-e5+SH6JoiGj4X3BT0ATaaW4qZJ5u52RjehMjNlC5pS7GLIBZr+fLIf461KK2vfQwgIl0TEo2LYIi55pLbVv+8A==","signatures":[{"sig":"MEYCIQCQTWYQiZ9rohVlPVrjozbmDxBH3s0iHH7YuiL0WfnDuAIhAMRHs0Udpc9daN+73JRBP6TQuYLv5QRSV8h2H8cne9v+","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230510,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjTNE2ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpiFRAAjM5PcQp3BxDpvde+hOraoqbID61GvrmUVzSGZ1+leazQ0Jaj\r\npp5YfdMq0/liwqyF2tJVM981BvF/+09eYkGIz80EhjQCyRYZpKQgvw8XFF+8\r\nu3uMtFf1F79QSND/cfB3plaPKzqhJDHvH8zmPbW3jYbj34xpQbC5CL9rhfJ4\r\nVvgT0nb9ocMfO+Z+hhtlWdtapx6f9OqZ3gbLfBNrPI6loc2uL3TorCyD5eww\r\nIHaHPJ4ZPxtL0piUdaNX/FPDNSbw33pHWD5a0LxKfM3fkt1LMKjta8cUTB+i\r\nEkEYrBCS4iAHBoNOugdVcbrOofqzTfmvkoKvOHaNIItMfWlfxak05cyXQMwN\r\nW4+2QlPy4Vwbehhk1MEvtcJ/7pSUwjm+dM2H1sX3SlqyBETtyDxGRKSGGkXw\r\nDfo6ovQyb5kExDXM4MG+aJujPwSbd9UPpY5frwMkouwa0mmCpuekqB1AW5Wu\r\nPIe8xOhgruGHZosHEwijr9BTAaKBo5R1xz+ecF0c8Q/3YVNZzfNPdEEQDnXJ\r\nQkQMoHOjq7P3RhOR5dX7/NaSUfAobSkXdI6SmWDHW7a+jgrTWmBZR9hD/7Xh\r\noR5AioH6XhlnQaoCXIux3zJzgR9NmkMj8znTmkgcQFUMcjmppD0NKER5Q59j\r\nACevVXfJYjxzs0sxU2fsRihHRoIooHh6ojU=\r\n=OQ31\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e9a13860e495e7f113966b4c71b9c7931a32807c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.13eea1b2d.0","@material/rtl":"15.0.0-canary.13eea1b2d.0","@material/base":"15.0.0-canary.13eea1b2d.0","@material/theme":"15.0.0-canary.13eea1b2d.0","@material/animation":"15.0.0-canary.13eea1b2d.0","@material/typography":"15.0.0-canary.13eea1b2d.0","@material/feature-targeting":"15.0.0-canary.13eea1b2d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.13eea1b2d.0_1665978678031_0.28621739072143604","host":"s3://npm-registry-packages"}},"15.0.0-canary.ef9b2babb.0":{"name":"@material/floating-label","version":"15.0.0-canary.ef9b2babb.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.ef9b2babb.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"bd804727481470aece54d1ecb386444a2e861297","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.ef9b2babb.0.tgz","fileCount":33,"integrity":"sha512-1miirqGDAtjOEieBluZm5rux04J1OonljYaigDgvLosPP+oyl0g2/0HlOS9ZOJc3+IOBSi7K2p58wB0YLfZxRg==","signatures":[{"sig":"MEQCIFGx38Q7B1kiZSJ6ilPzFCc6GS7PydKm7uy7aofZ4zG2AiA5aaXUf0D41t3x6Uja9iqWCXCxBh+jP8DEx7GE1He9QA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230510,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjTR20ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoBWxAAnfmA5KrKY4TIrBjreRoK46UQlC+dV4yDzsqGASr6vKL/IKbz\r\noX/97+hlZDHDgCh9gYTxPTNx0VpaKo1ajl6YkvbD/SsVr7hQ9I66QqYPUrmA\r\n5F0E0MW1aySYqDryg2cNd6mj/8yfkdU4VpAlQDLqnH4YmYJB9COLVZs/EqEL\r\nHZuegWtvDKhYGKshEg1JnhE8blfMpoxSj5NygueVCDpzSwyP+N+Zo+DxAiWX\r\nqjbefKbXnGo87O4hjOtZ2IpVGDQwyHkEFmMx7tLPOabjnKKVEg3N0/RnjIt0\r\nUc9eRCNO0KnrarPmmNlj+VSTQgyZasveau4WOZS/4DpO2m8ZK24ETKNZ8U6U\r\nV4Cp2oUYxlpTM0sqxorlhLdmTTAZIHB00lJ1Z8oVLwCAlxDrTJAdhymVkhho\r\nTFmqxXlCW3N7ocKmAl8p1fJ63RfPfpV3MlG6qzXrZkMZnAtJU+KP/N1tHLvy\r\nktkxhdNcnZww/hU1G/gAx6bhncBZIvsKVbpTKqmgigLUn97cTaWzmMfz/JGv\r\nkh2Nrs5LvKC0ZEAv01VVbeBDUMFKe2TLa90xLUYIiwvh8b7p+Gu8rx7SCds2\r\nkqdyoFoRW75y0EG4txVuTygELjh7t8I/ggABpI2lfCdaNGau6ES7itJoXBi2\r\n40yPrYxOUDlQWUcGrKIK4FqMZ/jhOFdrQT4=\r\n=gw9y\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2e04dcc89ca80bfb50d7ee1e4172ff9713c149ba","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.ef9b2babb.0","@material/rtl":"15.0.0-canary.ef9b2babb.0","@material/base":"15.0.0-canary.ef9b2babb.0","@material/theme":"15.0.0-canary.ef9b2babb.0","@material/animation":"15.0.0-canary.ef9b2babb.0","@material/typography":"15.0.0-canary.ef9b2babb.0","@material/feature-targeting":"15.0.0-canary.ef9b2babb.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.ef9b2babb.0_1665998260577_0.3807535967282294","host":"s3://npm-registry-packages"}},"15.0.0-canary.cec7fb987.0":{"name":"@material/floating-label","version":"15.0.0-canary.cec7fb987.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.cec7fb987.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a79776cacf613702b44d470bf1bd77ec8638dcd6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.cec7fb987.0.tgz","fileCount":33,"integrity":"sha512-mPbyrS1GzYmyVBXknWahttLI8ev8oDcoYRjQtk0oO+r04UtdMqbUe3GtqflJ/eSoXqF0njH0Bd8SWvUhnmq8Nw==","signatures":[{"sig":"MEQCIDOjKzK6Rg3M9/9muWcN0Car4q+47wXFQmIKjX1kw0d6AiApdWjLfzygJJHX/NyVnw4YI+VDFYKHC6Bbaw7/flfcOw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230510,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjTTTDACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqznRAAmNtJeaz4nibhwpYNa+wouWRYbktyZGg+dIE0DGhcpQLPeSaw\r\n8L5hs88mea7Q4pKCZzwt8GWt7bE1QmsAGEDWjWbXaTLz66wZ0kmuGHleo3FN\r\nGHB7LWbrUF/sUDWRN7na1Z1M3FV6YLT3gRemfke9JymQUXuqHW/IbDYrGHm5\r\nFiwcsHbLfFzanVnhwa+0+WBg/r82R3AniXFD03/T6Vp3dOIZfQq6VZ5Z+Snc\r\niZGBI40Mq8PK85cdkNc9KnQpRDv/Y9C5ijah3tLY2oWxvtgeg/kO1tWwebV0\r\ngSSJdeYsd8HOLGFqh2Pp8wKlbh/w16YQVeyy1ifmQd+fwtk/+F1garcH/RZa\r\nSJGnBQVLg03v7jUZ1T4Y3ljiGR33FD9VorcJ1DB5S9BK70MDb+IJHPnVa35W\r\nthEvpjmDd++WRs/kkb7iP5Yp57szhhezn4QPrKY5McKEaN3vaZ57mtMClAL5\r\ngySEFIW6C3oi3Q6LUbwLe4EhCrcCpE+i0Z+qDkDZatiy5NyMdRJyd4Omf+wJ\r\nUnUmuGea8n2NtqREWrJv/9GqwjOEL3O1b7BZT3VCtEVJxzjwwvpxr0DBDEjM\r\nZJ+YU3T8TQxV17ZtbuGPK5OAQyJf6PaquwrpBa/IKNpzvgGXIfOOeOf2TUCv\r\n1pOe6vWV7w1TPJohIxMgdcLc/jRluTb8R5Q=\r\n=6gOs\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5af4beeec511ff0266173424b4b179e209402a5d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.cec7fb987.0","@material/rtl":"15.0.0-canary.cec7fb987.0","@material/base":"15.0.0-canary.cec7fb987.0","@material/theme":"15.0.0-canary.cec7fb987.0","@material/animation":"15.0.0-canary.cec7fb987.0","@material/typography":"15.0.0-canary.cec7fb987.0","@material/feature-targeting":"15.0.0-canary.cec7fb987.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.cec7fb987.0_1666004162818_0.14540272157075407","host":"s3://npm-registry-packages"}},"15.0.0-canary.4fff58b08.0":{"name":"@material/floating-label","version":"15.0.0-canary.4fff58b08.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.4fff58b08.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2f163aba37cd7332fc6f018e9fb820786fc29541","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.4fff58b08.0.tgz","fileCount":33,"integrity":"sha512-DNl3AvzOx3m3cgZs8alGSoxQThhNLrRsiyh1Jz5f1/Z1/Sq2/8tdqn9SoXeGloOKiWSgrZ2O/k5EtstaOnBLBg==","signatures":[{"sig":"MEQCIC2IYkEoJCBspte5Fnw9ADKIjunJzHk5OXHZBtHCUtjQAiAME/MSKYHUvXv0YU4Eg1r3Bj+i1QfIvUQ96lO6/fmnhg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230510,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjTXMiACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpNJBAAo4MjqzjKzP+DFCK9i8R7PqtbJfCZZJlURGU1J/bYS8yL3EGN\r\nKtZLWxqgAgt6ig024mrs1XYDYrYK/1A8JvGPtTRg7rtkVJdc3CUBiQeaburp\r\niuLjV9YlYWilVYiz1fEwxt2wrDRgPsBMZvxL4hRd8LJHNBYGJCQLOvmutjaz\r\nxhGCv6AdzuVjXjT133rvVyEJ6Ta5FmXFzRBm6Dy4PVZLcUJ5dj8xjrtWav2v\r\n0vuLQ4ja1A0X3vJUOVixcO2hclszNJTD0neuwrtbKl1pIlWobO67v37Ds/+i\r\nuIzBIplF5Br9jw4cURTyrRJkdTXWOOxJFmZhQklXy+GqSrr8f8CQEs5njZDC\r\nqxBvInlB92R/FgK2eZYWaAd5Fxy6wGfu0ML1gwt6l7SNrmqlPWlM6EPD5My+\r\n9+RKTopqswrd/wbZ9EppTAUCa/YuIvhUXVW9jv89zO8g236sIeBhRVXDDCzd\r\nW4zRfR/yKF6UU9eW6XzecyaFHq1VjBF5oiVsBZjSrFCH24dCHxz75zG+HYnN\r\nCD0+oJH3Ual11SF+iX+ay4Le85WgjHmZCI27g20wvs2coEOlwAoBbfuhdUvI\r\nh3y0S2RH8pIlRmrnnANZlvdysyQka+L8X0e/gK+f1B9MvwQLIYR8UhCJlS33\r\nvp5UdiAhNoX9ZUWfl+752y1cefCIk9XjRVI=\r\n=AJCd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b44726c7f5a5db16ef660807b5247cd71a447c80","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.4fff58b08.0","@material/rtl":"15.0.0-canary.4fff58b08.0","@material/base":"15.0.0-canary.4fff58b08.0","@material/theme":"15.0.0-canary.4fff58b08.0","@material/animation":"15.0.0-canary.4fff58b08.0","@material/typography":"15.0.0-canary.4fff58b08.0","@material/feature-targeting":"15.0.0-canary.4fff58b08.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.4fff58b08.0_1666020130321_0.011261324058940314","host":"s3://npm-registry-packages"}},"15.0.0-canary.587d8f871.0":{"name":"@material/floating-label","version":"15.0.0-canary.587d8f871.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.587d8f871.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ad8c999acd562fa4b37f74c761f461877b9baee2","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.587d8f871.0.tgz","fileCount":33,"integrity":"sha512-RPfbYhMNpgeoLTkB5ZLYu1oC07gnPJapU/F3LANkh8Xkk7gIzrJTnSr4PecM328tMuqdWh26FWZzNijmm7gZ6A==","signatures":[{"sig":"MEUCIG5X7v7WaRp6WjDVBIs95MPQTC6mczylYkVBp/R0jemXAiEApXyZq6E9LYTjhBxQ6iswIkRvKnS5eU+kFcdeuat1XGc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230510,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjTXtEACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoglxAAkOfypnrMfGiodUkc8xfftEHdlv9ADSWEh0/YDZSIEI6b0Xo4\r\nEoLPWjqzdY0xWaLxeZHTTX4GazYtCZJFXJ+2ag/MAmMl/B8WeVtOKIL0Njdj\r\nzFpFqI7/eUTOr4AHwGut6P0HzczCQsoKghjZmcJRJfSOZsA5NXmTcOfYZIt2\r\nxNoxqZqrQxc3ngCCl8SqueZpPDGrJsDOkNSC0xbCzpDo6RWYEYgrHN4N7cST\r\n6znGc+8RYt6/nTL0UBHth90TRCA8G5dAelvvogrV2HAHDSH7F/hCX1DfmAzr\r\nNMJi+iO6wCrmNIE35OVBv4yp4mWMksMeXgdjkZFdArixZE5c+VZigGRe6fCf\r\nVZPvhNBqiCXE3sM7eohRcWPhtQxb74Fbq54Ns0ibS44MAICcxbCKSTKjxt8P\r\nwH9rf8k0Hm5xy8RJnuEafHPkTh5k63nmpzX0XmG1ezOwCQ8B86OlxLrBblfE\r\nGDdtygmLWt72dXgd1Gq/dtMtvtH4qkW/SqxFTB+08I0Ft6h5gr2VxiUudTNG\r\nTcAx+Ju5Iu+d80CtBMiDyfVEcJQfrWlDb7M/kDphsx9rs4Glqx3+ZooUPuIn\r\nOXOp9w/NfynkvdIuFHACVkS2hk1Twi54Jiw0AGp40zyh8qzb5eRbqwLU6LjB\r\nkr6OUQqV75wdmze/0TmgW5HEQQN7qY7sJfI=\r\n=jIbj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2ec38be871dc355461961e4ac44d48ec44c42a1a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.587d8f871.0","@material/rtl":"15.0.0-canary.587d8f871.0","@material/base":"15.0.0-canary.587d8f871.0","@material/theme":"15.0.0-canary.587d8f871.0","@material/animation":"15.0.0-canary.587d8f871.0","@material/typography":"15.0.0-canary.587d8f871.0","@material/feature-targeting":"15.0.0-canary.587d8f871.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.587d8f871.0_1666022211956_0.18724647210527245","host":"s3://npm-registry-packages"}},"15.0.0-canary.edf4b98d0.0":{"name":"@material/floating-label","version":"15.0.0-canary.edf4b98d0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.edf4b98d0.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"590cb13b64cd0e4b97616ea015c520c9004f7e4d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.edf4b98d0.0.tgz","fileCount":33,"integrity":"sha512-BB27F05pf1+x5fiifWopR9JY762uOfQecpz5T40BZfI8BMVZaMzC5V5dpP3gUbvOwu5clte4iM72xCf7bby7eQ==","signatures":[{"sig":"MEUCIAW09ZQNyvWbWXf5HJOdyDGhu5hQnMkdAxP31OiZxR1NAiEAlf2jl9PrKOCaxm4hV56v1/K3fibwDd2WhxwUsHMzMHc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230510,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjTYVqACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq++BAApDULsdzmwT2AIH7HZdGLs5qsehnPI2IEA/x++h8hBqGeWsj7\r\noNcVxYcj5Msba3/irKz0LrbW3bGy2p5LyYdsHNHzlNW8suAbvu5xI6jjY0Yt\r\nn5MBJsX8IwX32yNYCG4u54+Xio88vBf/b+5JR2EX6tjL/nrOUWSsHh7yn2ph\r\nJipVG+H8pWDgQi0ieN1PWgNg2b3UnmkSCiLufSQ8cFHs+q3g8JJXAhCjkUkz\r\nxc990KvLs3pjWpVJm4/OxmntLTteNLITiDbqgeRKCBk2bpKzZFiAF/sMI/gX\r\nwHr84KT1r82ha7zQwPBZHT41D0kdVXvgEWaixpSB/5OR51iXv2wTzRsNWI/4\r\nmGchU9CkzDZJ0qnwu2CLsma0Kc/iBpmbpnFUMpS5z1iBvjz3TjfU2cVybxYO\r\nO5WoVojH2FQvxSsCSUJOzRIzCfZ23LMgijCFFGUZkXXSHQBrHE4zy2oOouyv\r\ntJ/5OJJ8bV8jdEE6hvXN430QcqAvBMUqghN0IFEW4GewVTWwioie3H2n5tVH\r\nhPuu5QUH5QhBZHjWX01S7yhOjQL/txPduznyTIPcmG02WLIlhAKgQrk0MmE1\r\nYNlFl5bh0Y+JSqcYdAapRdKV3SyYXF6D8+gB7THUzOjebQGPleHQjdJoDx4n\r\nMzSyjd4oLJvBWx8Ee1RTK0eJh9ch4qqP60I=\r\n=OUBH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ad4766965d2bd24e69b2e2e6940c960907c93c1f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.edf4b98d0.0","@material/rtl":"15.0.0-canary.edf4b98d0.0","@material/base":"15.0.0-canary.edf4b98d0.0","@material/theme":"15.0.0-canary.edf4b98d0.0","@material/animation":"15.0.0-canary.edf4b98d0.0","@material/typography":"15.0.0-canary.edf4b98d0.0","@material/feature-targeting":"15.0.0-canary.edf4b98d0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.edf4b98d0.0_1666024810344_0.2565329993977703","host":"s3://npm-registry-packages"}},"15.0.0-canary.024ac5f16.0":{"name":"@material/floating-label","version":"15.0.0-canary.024ac5f16.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.024ac5f16.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9ae5fda73c14a36eb4fcb4ad382c2e80c3dfb7e8","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.024ac5f16.0.tgz","fileCount":33,"integrity":"sha512-IbUzKvup064JKd2wINE7GWCGorwBwwtyq2xU7FFoHpkW1Bcd1JlY49LA/2N2uXsIJKGN2VGP5i+siuyC5LRWUA==","signatures":[{"sig":"MEQCIA5Eyr8AWpVsS47mrfKuBS/L3awzKa7yKC3Zh1fAwOEhAiBWEmDI4uYMln6Fe/j68UJIafZyZiuuZRCoAX4qKsCEHw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230443,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjTdo7ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpK8g/9HLHRCqPRD9JRLPFhRkctYEPrO8iaR8zxodXIfxXJzHz8DdLw\r\ni7reWUT1GBkQmqetToo84jH+k/bfV6iz3J+tcEqKK5XfMRVf1kuyXMrdXW38\r\nEcoTuXeUPRPamcpNcxvGQjhSmGj8X37gLesN9wjwY874P/LokG1uLYUQD1k2\r\ndJSTgZWqGDOtUyNVaNQeHwakVoaTwYyMVWSwJOSEuqTl5NRhdL882FNrzhrO\r\nfJDAc7cHQxABEtzWyTKJ5cExHxfPcBIHhty8P+wFbQ7+49V9VY6RliAUC3qz\r\nYxnHz3evIZ3Qa7j1xkkuxHsV1OnX1hJubpf31Znw7uovXMh3Fd3d+8OryPgG\r\nHOfRBZvpXWG5XPGmkrpbhvvBtt1uI5CDZL8PBB1wch6IzGshfyYthvs5iLel\r\n9xJayPtnqIhtWmzO+RTGde8hOshIpUkOowLPLBKHkuhywXX/TKRxFuSbvxyr\r\neIru3p+44k7tJ7KI5WFjYBedPVkEVXI4G84A6EDwgB0I0h6P5DjxRsvyEvq9\r\nSELcO1L9GIdLEekQLfG98QZLT0m27GgOABrUpc+WtHhV4Gr1FnTD+3+MD0qn\r\n03NKtLutUalIrYsYgBSi1o3OLLb6zps/m/htgqf0E74nda96eNQHBKzfJd4v\r\n0M7rPI36G9BI42UYN+Ndt8e35/GbmL287RQ=\r\n=XIBu\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"9ad8e77cff1167055c10b93b4082fd5b4e1d8643","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.024ac5f16.0","@material/rtl":"15.0.0-canary.024ac5f16.0","@material/base":"15.0.0-canary.024ac5f16.0","@material/theme":"15.0.0-canary.024ac5f16.0","@material/animation":"15.0.0-canary.024ac5f16.0","@material/typography":"15.0.0-canary.024ac5f16.0","@material/feature-targeting":"15.0.0-canary.024ac5f16.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.024ac5f16.0_1666046523268_0.3179001669228554","host":"s3://npm-registry-packages"}},"15.0.0-canary.c8bdf6144.0":{"name":"@material/floating-label","version":"15.0.0-canary.c8bdf6144.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.c8bdf6144.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"caa53f3c10cdae6775d56f50210f0e53f56cebca","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.c8bdf6144.0.tgz","fileCount":33,"integrity":"sha512-6RzVkPz0DxYRP638NvnIuIJCPuKhFw3siEL267+ajAe3qIvQGcS06koJ+zKbfmuQgCa+jPIStOHWkF5ngHubgw==","signatures":[{"sig":"MEQCIA93tQFQ3B8XhlS2nQU+sarciSXSIBa271i+vf2o++ujAiAvMhScGyDbWteALu/eaiHSi1OqnonTi2GS9QSXM+0+ag==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230443,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjTu8LACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo9wA/+I+Lz+zzvCsqHA5c3V/9oWafTQgwCze19vtSnpLLR+g6H88zO\r\nsdgFQpl+1NU3wnh9JixYI1ywPUCWDk9LwCl0XdaJUAitS4fJY7Qu3wWkKqC2\r\ntfWgeKkOGf/1uogWVNjWPcxcH5nA5wONAZw4MApqmm1LI0Vgxi4XsRcEEzyM\r\nDe7POb1L6l2ojFEy9CA8HS7/gQfDsjWNRzpDE4MLX6zGlNjFPOCA8TbDA8Hm\r\npF5gSHoT0Bdor+ZhtEraMpIth/o98Gb1PRLGSIEONKds38/XydeEUw5ZXXYy\r\nVkaLxz8ov/02NmxN1OpFT0Xfzh64iB4UPTbSFOBYYnL0K+/rh8OycMvBuRf0\r\nL4p0qhCt8R2KS9JYQghrTzOvNVO/K6x8/5DrlpPMWh88tlCxBjCiqlCLN8/f\r\nRGflMgYfLJSZJGk+AH7O1WQi4VsM0aSgD1pcP2tM7EW2RCrFdieGy85kkUiI\r\noeE/H1AREC6cNWZPoCk4gyu64OGJCSZWVLriWS0L7uuiDS+EPqqDrESpFkdQ\r\nBCsfqtyvsqxaKom7GM5el+msIsXai69mQucaAoEPB6KvXxu3lP7pHqVbSrgj\r\nVSnrcGh3oqC1ASqOJmfrB19CVGlsEdbttr8NpZZtPaelK2VQ57+pvfh2xOY4\r\nM7OmYk0QRaDLfmI3+iabxrBqMSHa3AwzdUs=\r\n=LiPJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"92f4fcf51598cb8f9b9e03a35332a980296c24e2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.c8bdf6144.0","@material/rtl":"15.0.0-canary.c8bdf6144.0","@material/base":"15.0.0-canary.c8bdf6144.0","@material/theme":"15.0.0-canary.c8bdf6144.0","@material/animation":"15.0.0-canary.c8bdf6144.0","@material/typography":"15.0.0-canary.c8bdf6144.0","@material/feature-targeting":"15.0.0-canary.c8bdf6144.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.c8bdf6144.0_1666117387520_0.3724293048462963","host":"s3://npm-registry-packages"}},"15.0.0-canary.bacda4885.0":{"name":"@material/floating-label","version":"15.0.0-canary.bacda4885.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.bacda4885.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"17a2da0ee24e8c511b15778c0f56b052384adbc3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.bacda4885.0.tgz","fileCount":33,"integrity":"sha512-QUxX44Qn4b7fR2LrtZ2XxqLQa0cbM+WJHnLrjvOdU4xq4XQ2pTxJStK8XnS8nnoEYkMHvI1Bp1sl2tZxdQH38w==","signatures":[{"sig":"MEYCIQCF+cQ1+/QgNbSLte70zWJateGcqfWfkVXqpxK0duAfugIhAP3VdHFBxuSXmuIELHVd0VpQc3wlvMxeYmV3kclb0I88","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230443,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjTvORACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp4RA/+Opmw4ZWt5QpUOxu0ghU551PKZ6cz+Z++cDFOosfHJmlfKszd\r\neDhG4G4Zb+2oywXl7Jxy/xO1cxzaooA/13kXPhiogvgaiSgiJM1FQyy7XQ2G\r\n65PXtvnMkEgolwfXU9z2etQOTdYGhM/BdXsRqiPoMN7IvSYf0CKcyQXimxcn\r\nUYYYgarqL+pG+b6ZXdWMIdsbssJpaOR01Mb96CA/M+ifKhC/Ibns6pE8MO9q\r\nKzWAPkCPEsgOETdYTx0aVZKV1weozj02oxXwr8/b/gMkZKa8xHm+9OKt732p\r\nExwF0kYwNU/p4SUfhYHTjyKdZ9fsg3Ba5PEkcBAbmh/T61BOutpbzCWOd2oA\r\n0as9iHyzdqMCqJRYB2R+PNX2GV2YP3tdJ7JBP7CXciH73w3CQnTLcNH0lSAp\r\nDQWBml8Ll4sApUeV78xE36Df5ic47h2o7iPK6MT/GlPrdhHailJN/rfynksJ\r\nP1x/q/tADvNlBm8yhzLUJ2oE5MjaZdSPf7HPac9r1xWY3CV+gT0PrKUARhqy\r\neFcg7goCLhXnhMnScIEK2FeM7dh8Qvn0l87EIbcN5M45JXQp3NE0xePv2klE\r\nSdLBedR0MpFMLV28B+5NQYkaSGTa6UA6E0MMUUIc3gmLeeLNOjjpD/1ijAGI\r\nl3NJWaU7UvxSXX8cXAvHiUioYL3MJNAW7Ro=\r\n=ZXEP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"9e0a7dc5fb5e2d1554093d85949ffa6c2aaa33ad","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.bacda4885.0","@material/rtl":"15.0.0-canary.bacda4885.0","@material/base":"15.0.0-canary.bacda4885.0","@material/theme":"15.0.0-canary.bacda4885.0","@material/animation":"15.0.0-canary.bacda4885.0","@material/typography":"15.0.0-canary.bacda4885.0","@material/feature-targeting":"15.0.0-canary.bacda4885.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.bacda4885.0_1666118545284_0.33015249671009284","host":"s3://npm-registry-packages"}},"15.0.0-canary.92b2556cf.0":{"name":"@material/floating-label","version":"15.0.0-canary.92b2556cf.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.92b2556cf.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b0a5b1c44fb2d0d55fe71c8c5dd2d710b8b33ea4","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.92b2556cf.0.tgz","fileCount":33,"integrity":"sha512-ZkDGsDw/jViLDOBi+TwjiZm0WqCuKhqz1SGem0yEzjkJPNcPl/oGcbIBhA6Qu3XbJfV0Dm1ZYRiR6rHTRpB49g==","signatures":[{"sig":"MEUCIFFzUA7H1D4iWOdxjOQgmSPy3+n7gy1eozF9ZYSHuIbFAiEArMw/YmtouL7Hjsz3FwNlpnu3xX4XUoamy0aQBdywknY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230443,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjT08jACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoswBAAnjVIVnmVW7NqOuW4ztZgTfA7+IgHwa/mR34LrTocnozD4QaS\r\nduGljkR8HpdWxXpb/ueNgo8eV6tf3cXG8xhj0r4+wV1a6SfMF3nhsvHKMYNW\r\nFC1jhxi54qiCwydzv7myo7mKwEcj5bT8pMO9y/kgaw7/5tfL3GazkE5yijly\r\n+YIw88CyEBKNI9CepzVt+jYnNeystSkHVvnZyOfwSLBFevRb0UzOf7P59REY\r\npdnVrCc2i6U5gIOBhaGxX+T+w+xtaVOfPYEtVQAVhf2B3OaQIrWOOWKN9dg8\r\nwni+MbQUTtkQjq9AM/03Eo7we4oLIKxLjTtaF+bUtMWA5grGytYhI9njQbUw\r\nSpBlYrEfN4wOz1nmfoI+BNChrR/cvj+UnSM6CoGx1HB+ziFwgBXfsRF22Dyk\r\nVwb2DinfFbHUex1BiO3s6X4eai3g1L/RaH1flXyzOkzsL17ySs1kMM1KWump\r\nhQ2sHGxUEcb6qitODV/nWXsonUrpM4xMvhTw/wtLSYIpUc1hHZOtiOxnBy9P\r\nngIP2sOpBg6o4j32vDhS6Ib6JxYHQBSgjAoGY3DSjVBNVIP/ng9ITGkVwe5x\r\n2Us30awbxAwinMHtCBtt9xhcRfQhMcrBzTCtJPItUvHB657VV7JuykNf69Hm\r\nYv65kzLVlye4N38/Pe8YT9VlJ32emiO6kZ0=\r\n=mlZm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7ac326ada7a9c6e84bacf5e01a6d22e675dcda8e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.92b2556cf.0","@material/rtl":"15.0.0-canary.92b2556cf.0","@material/base":"15.0.0-canary.92b2556cf.0","@material/theme":"15.0.0-canary.92b2556cf.0","@material/animation":"15.0.0-canary.92b2556cf.0","@material/typography":"15.0.0-canary.92b2556cf.0","@material/feature-targeting":"15.0.0-canary.92b2556cf.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.92b2556cf.0_1666141987177_0.6074233209269557","host":"s3://npm-registry-packages"}},"15.0.0-canary.cc804509a.0":{"name":"@material/floating-label","version":"15.0.0-canary.cc804509a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.cc804509a.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"388298a7e380cde956c6e54ec1d6f09bd8a75ae0","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.cc804509a.0.tgz","fileCount":33,"integrity":"sha512-CcvltsZNeqQgzHS9pr3uLz586c4Xr7QEiGFkjOTfpkaezDoQqO2YmE5uEOw0fVyWhxHcBsyUr3hbnU1JANKYeA==","signatures":[{"sig":"MEYCIQDb4MHhLzEGU8zCdzP2dSaopGiQtUOCKdZOteTkl05OygIhAMngHNU1fGmuKs8EO7MpCEVU0/AC1nnAcvbYxu2Xxm/j","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230379,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjT1AGACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqmeRAAoFLSUXNZFaVc5ZVe1eLIh8I3fc6iLTsrrHR/5vScpEjzoX8r\r\nwS/rIMJnMqsxMSi7YFfbOu8Krv7DbpYpXPD3Xzw9yjV74ztpwSSKQ+yPOQR7\r\nuRWMqM6tQysTnL66Xeql1FgAS3olUurftaqrni5iV+LNvq7rS1pZpAXGl4YP\r\ngL94kGxUOF7O5yiGz+rQdCXzuR6y/rpokFCaUO6Y+/c1B/Xv9k1XjJaLg7UV\r\niOA7mR7vWuWxtnIQFYj4GgnmfqEmzol2DrSLkOsyb+aA5UhAn3iXuyGvZLct\r\n6g4niwiwvfVaE/QPpF2xqplpydH8jcTebnJX5Zg5dQQ534WC4kQaHSrwh0qg\r\nmODd9Ln6t9RsngCo3ZO6KxAEuTSZiU1/cU8KJZNJyE96+E2DFPtP9sb6hhax\r\nk8gNKYQUXgFwHEc7tyHCGOXSmg2X3Oc6niTrswrT9dcSlUK+tTsw/08o09iz\r\nmGj5BapDbWQlaMnHdNtugTnZQMpAnADqaLGYmUtl2442L2wVdyumud5y37l1\r\n6c75/51lhM8wBYziKEbhZ1Hnwn05lFz4reA932Megl5DhnCgm57iqXbjED30\r\nZ+OOVRrs/1vsYJ12sSb8eBn7hGx8xI69wPF/bl9c+m1/+KjCWB94MzX2LwK/\r\nbwf0qFbpNTXU9340Z0cfV17qfETWyhJPGuQ=\r\n=xzN7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e8cb944f6f2263dc4b4fec5d7ade2bdb5172b4eb","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.cc804509a.0","@material/rtl":"15.0.0-canary.cc804509a.0","@material/base":"15.0.0-canary.cc804509a.0","@material/theme":"15.0.0-canary.cc804509a.0","@material/animation":"15.0.0-canary.cc804509a.0","@material/typography":"15.0.0-canary.cc804509a.0","@material/feature-targeting":"15.0.0-canary.cc804509a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.cc804509a.0_1666142214559_0.09799655966713838","host":"s3://npm-registry-packages"}},"15.0.0-canary.982bedae9.0":{"name":"@material/floating-label","version":"15.0.0-canary.982bedae9.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.982bedae9.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"449849ea49801f32ee0597998bc413fb34f2df08","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.982bedae9.0.tgz","fileCount":33,"integrity":"sha512-LM84MAlkMWKJ/r5nyOcdE/GZHpkrohLWgOJ0D6X9OPuuNx9/4lC189nfWxqz0PfPaBMdzUzPHolaTOfbLe6LRg==","signatures":[{"sig":"MEUCIEfGsELyG9hANloxi6jRfQNrPNpKBGlOGO08eJCTQO+LAiEAjraW1VKfyKXwRNIXmL49WmKJrMc9xdYGzkDscgqqJ24=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230379,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjT1S1ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqz6RAAh1Jhk4EMS6gk0HcEkDzgfXN7CFeRSyZwc/6+JoM33HfO1S+i\r\nfg/EjwrREvvmvGAXVSrLHFgeVyRdIIMqYufSxp06BxEAi8dFB7dF0zvi2hZE\r\nxo8NQOdeZRmFIXDbZ1FKtu7A083YOKhchmRCz1fMGzQBMGKovfLFl27N4n0Q\r\nNnP8Dk0ZsJplJmRgR1IIRvOA8D13wxiBNjLxefJ2/8ejl28zGurfRHjeBP5u\r\njBMXPTSUYirzmRxw3XK5ajD+tFS4wQq53j5YzcJ2EfWb6+bLim3bHVG8AeKM\r\nPJCGwE5aVS8nU+DO/OurHEToXld7yqghz7cTqkNhDV3ScsLgm7kgjRmE4Gem\r\nsWfDlUdYPsz/UqLzzP1PjVHLlQuJA0GacWi0BpCLTSRqigiy1O5wRDFOiscu\r\nbXZZWVuTG+GQwljrGuP8rIuIe/2lpETpOdL0xcVYEnsSn2S/kUEDxlLOnYa8\r\nnV+DuQUe+I8NulnsjB6vVaO4G9SdT2BgtL0FND/LjsznUX+dUUwa/fYaAXOG\r\nbVoJOmwH4FPJADTZKR8gQT400rLI0TgSL/iJ0E41ZKFrQ18fPme1yBETOPbY\r\nL4FI+q9ll3WRyH7bHJY85xmxdWxeVdfz0DDO+eRyBGuxcNRnFvD6a2G4FLKE\r\nZB3Kd8b1lDkPmYgZ/Me7Ig9lEXs+7boJBgo=\r\n=APCy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"247fc73217ef7d2438e876f1477d141e6970c9e1","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.982bedae9.0","@material/rtl":"15.0.0-canary.982bedae9.0","@material/base":"15.0.0-canary.982bedae9.0","@material/theme":"15.0.0-canary.982bedae9.0","@material/animation":"15.0.0-canary.982bedae9.0","@material/typography":"15.0.0-canary.982bedae9.0","@material/feature-targeting":"15.0.0-canary.982bedae9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.982bedae9.0_1666143413347_0.03724796793146323","host":"s3://npm-registry-packages"}},"15.0.0-canary.ee40081f4.0":{"name":"@material/floating-label","version":"15.0.0-canary.ee40081f4.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.ee40081f4.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"fcf109e6870ee6a4dfc0e26b62f695fbe3c33dd0","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.ee40081f4.0.tgz","fileCount":33,"integrity":"sha512-/098/T8HB8LRDwu4Ogkz2/MYG0b4u6lk7X8aw49COCImahLnANjZ0D0/dAVmaENZNOF9cA46sHCa7ZpL9ieJDg==","signatures":[{"sig":"MEYCIQCjeEmcl1TVKewjRsLFhBMsniQsI30L0m0GZTbyXowr8QIhAIqUwoUk/+EhQAs0sIBpMrMOw85Vq8iY3mRzI+6EUHe8","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230379,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjUFnzACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmpsaw/+KzBZ9g0Wa9wGIH4imYqf7u6L2ME2dEb6UyVGYj1PvK6k7/Lw\r\nkH+E/bgw7U1uyV7VcterGvtOO0Kc198ik6neUeYSk7j5yuq/tZUxjorKnXVz\r\n6OLY9H2zG7sI/KzymyUydOiTB87l26PB0PINFwGrQsK8/EePL//kv2lQ/Wp5\r\nGD7W0Jt/ReDDPIaEJwrKUONqwwkC8BHNSVV3THg1JFMvCHfEUE/QVkzgt09l\r\nTZWvCh9RO04qnttOOtpOCa1NANukIG8xLPdhl/uFCF3wSDuu9HQG44DR3qP0\r\n3moFDyXQ9IHmu7PtMU5/PDZm8tlF2BldLRmTcXZ5zXWnRIp71oHv+dK06dCZ\r\noelm2omx6CwyBu22qss6Gw8KObhpbnPZM/VoxGLVVY2+JM+4xrmEmp7YIdSm\r\nNL0ywyro3jnAxlhwDad2ML1s/gaPhHZ6WIt6etOdr+pX7kK8ViZIFEj8b8Ed\r\nX8Z4a8DzER9Nd3oMUOgsEPn2rLa/KOav7elROA5ZNM673NCFd6+9CVVHvIPb\r\nviRKJDVQij/2vtasPYfWSUCAg5nASWfEW2TPhkU22CxwWZR7HUfM11k58eF4\r\nLqEqTCQifEYEsIYUz34v007bIsk38O4hyZtNFln37TI+THdNlKPgEiVpNibw\r\nlPyrKiDUp1citGhF196F1DTFiKpHonTnfC8=\r\n=VpYD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"04ad48e358b6eef4ec9ee359b0ab906b30425504","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.ee40081f4.0","@material/rtl":"15.0.0-canary.ee40081f4.0","@material/base":"15.0.0-canary.ee40081f4.0","@material/theme":"15.0.0-canary.ee40081f4.0","@material/animation":"15.0.0-canary.ee40081f4.0","@material/typography":"15.0.0-canary.ee40081f4.0","@material/feature-targeting":"15.0.0-canary.ee40081f4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.ee40081f4.0_1666210291696_0.8124243336682528","host":"s3://npm-registry-packages"}},"15.0.0-canary.98f1b54e2.0":{"name":"@material/floating-label","version":"15.0.0-canary.98f1b54e2.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.98f1b54e2.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a6a57008d5eccd24b8d9de43d4cc970e62b39087","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.98f1b54e2.0.tgz","fileCount":33,"integrity":"sha512-SPwVREfwn28tyMCj6X7/rJSHZ3DU5FEGVULG5/8B2NXd7zWmzlifXUod8p58NpcRJr9N5pCkfWikz1zxz+eZSw==","signatures":[{"sig":"MEQCIHp87eWFi44L8mbB3LjbhPnouxyXo3bOIs/CQjnDyQvuAiBJNQyEKEe7k8KELMQcopc+AF6+k6QoALEQ/WRHXGoYKQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230379,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjUdIaACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmol6Q/6A+o0xYJPi5+GPQsrU3DxOvogpqHybzS4TaAVSn/e5kZWJ+6G\r\nw11wYyiREzSXkpPlkTkwf5dK79oBVxfHylGiHX4/BYnUQlemt4vVa0cm0uIg\r\nJl0dT2SubyPb5smjS3ZV2dwUQZ8gW1B502v1Li4Ycm9pZJm0V8VeHTnq4Ha/\r\n/isw6lVz/kqqmaAY5JpPINdjrS6078vw8kHkNVInKlK4LgeWoQ4zTEQqqzwD\r\ndeHehZQrRz8QZho0c8fHN6dscfdHWuEfi00LSQnuvBhBrluiq9VS+XO4IBAt\r\n464POAJCaNNjbKGFwaUnY+00TBttGNIWNxZCBKhdZr/0vUGcnJD5OJUONCwh\r\n9DAPmP2NaNo6IF7fqCG+yAw3tS1u5lzTqaU6fg99WRnbexYdwVez3tUvgBOS\r\nb7Jtge0hawGuDVPshaFabOIuTgJ6J/yzSAQ8P0Of5DEf8XncHrLC1KDVL2yr\r\nzbNkiyOa8LHDNUfu5z3pXwwHyLJcD88gnIQygkEp3xU3LxwaROpff+NZTTbP\r\njK5rzH6s8SQfpOnN4Ya+o+VjfjyF65HE76UWU4e9PXoxdgjXqmCDZSI2t67H\r\nfCnwX4flZu0WKtZKD/KMt512OFtnrs4e00i/060NM08HHdajo4iMtfjA7X0B\r\nyXmCXVmUebeo+147byUy3lGXvYRM/gE7Z1E=\r\n=2qpa\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"aaf0a191532b3357cda509746499ff62e3aaa47a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.98f1b54e2.0","@material/rtl":"15.0.0-canary.98f1b54e2.0","@material/base":"15.0.0-canary.98f1b54e2.0","@material/theme":"15.0.0-canary.98f1b54e2.0","@material/animation":"15.0.0-canary.98f1b54e2.0","@material/typography":"15.0.0-canary.98f1b54e2.0","@material/feature-targeting":"15.0.0-canary.98f1b54e2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.98f1b54e2.0_1666306586289_0.7130909643491521","host":"s3://npm-registry-packages"}},"15.0.0-canary.e74b7ba7e.0":{"name":"@material/floating-label","version":"15.0.0-canary.e74b7ba7e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.e74b7ba7e.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"842a44a05f617a3c2301e4c91ef52988e186a555","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.e74b7ba7e.0.tgz","fileCount":33,"integrity":"sha512-HRTrDIQx/DhCvOBzOKQTQYqdCqi1yTTG1qTi5lL9AVuxkvcJXmTG2P/7+iteakFoIYc6LKe2jx0t9egVQXtaCA==","signatures":[{"sig":"MEUCIAfNGdkyYG4jJWZtfVoTzN21lFuFwYiTyrC5HS/DiOb1AiEA0CigaPnDamEXIDTZa94LSZ2tAjA0f1lZHaOjPsAtDdk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230379,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjUtFcACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrhQRAAjVRflfDJRBJS4vo1oyC2M1JOtzxb8bWnXDw8mjgtObPZmC6j\r\nuTZmbhbFoMp7U3/ir4qNRHUIb9Ti1AqaP424tvf/lUMS4bECH1rumEgs/+he\r\n5H8gknXq2StggZRg9zFQyppIayIqaZpdQxRPy+Dv2UgBBUnZuzOuJxJ8O6aa\r\nqwkOsFFovw3ZdsodZyD2qL1gVqTWTSfyPSJ/ubxZaopk5pB2c2TSmoAOL0bC\r\nWjMRcxPeQNO6/IVD2TmhQn4l+MJXzChM0pY8NxJuuN7EjgvB5cMbZyGdDLZ6\r\nCix+kRoinaovRyNiOAWb5PRB3g2iljOt2t208ajabbnhvxCf39YfCsZ5hYT5\r\n655bvEnu9dCmKgTi1Ra5y2ZT+qRj/YuFkklF6yJa2HmQyft/oArBEV94KuLw\r\nkWVh1p3zeu/BOiIGnbv8RFwhYjyox51f0ChBwgiycscbiS89zBSdIJuyoys2\r\nhMxHqalKupWz55sfnV8cqReheqiUvEbYr5tu9XpUWCqne7Gg2Fw2UYqH8cR2\r\n/SWEiIyxpDkCIZe6NCGkZKldS2VMekIAG2nQzQAt6sS5L5PcmXUXHsz1osgo\r\njwrbm5NRLxvffetIvmC6YLfFEQyr0hTsqnr942tmlUKfq/yhtSbWZalqJgt8\r\nv1U16KbBdJcyVklQo2zaUFv9rHzyFnqT4Ao=\r\n=5yhW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e30e36776ed9bc98d53938cfb5e48bf5d2cc67c4","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.e74b7ba7e.0","@material/rtl":"15.0.0-canary.e74b7ba7e.0","@material/base":"15.0.0-canary.e74b7ba7e.0","@material/theme":"15.0.0-canary.e74b7ba7e.0","@material/animation":"15.0.0-canary.e74b7ba7e.0","@material/typography":"15.0.0-canary.e74b7ba7e.0","@material/feature-targeting":"15.0.0-canary.e74b7ba7e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.e74b7ba7e.0_1666371932052_0.8361602611101575","host":"s3://npm-registry-packages"}},"15.0.0-canary.ab55c07d2.0":{"name":"@material/floating-label","version":"15.0.0-canary.ab55c07d2.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.ab55c07d2.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7179da1b97a9c01f15d98e30139e72464b6ad195","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.ab55c07d2.0.tgz","fileCount":33,"integrity":"sha512-65QWFEt0c4SbQsl332kiR1CEukN2V7f/AroY1bdSDZa73JzDOAH0iFLClayRd+TW798lhhZT53fLXYXs5ZnyAQ==","signatures":[{"sig":"MEUCIQDRt41L2gEzb/Gno13SFAt31x2rrlihNNb/dDbMuY0rfAIgNwzHM2scnRfaf53PIi1Bcz5jZdnZk/oei2e583/Mka8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230379,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjVDQOACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmplww/9EjrKjHwK8L43o9Y7BK/sMC+wmOk/U4/8YRdPbQSqrzzNYuBo\r\nwZlythwDILOFHD04zB6MVLYqfPrdWa3JySEa+uyDJNv/PIOqxAiSzZ7WpdXn\r\npvdKjjDXgOhtVHdxhPzXSUQPwWiZryy7/IEBm7LgJKLeYq1woM+3R6tGYCfj\r\nyGqCRA7QI2K4e8aFFIzflAABniOt82rzEmycAp45yWbAjqaJdeXXkr/ANomv\r\naKhvPoH/wgDORxmb0eh2V+1p2D2cplLhOgsKYMBAnervMP7bp8MdKCqNzEo0\r\nSRb68xHWaAZepVoJA7p9BP6aEei8hpRJKH4dpR06FGECpD+TBQs14Ab5PFgD\r\n5t3BxCr0Aapbaynz02BKI4rv5evneCksMvtzT/5JmK5WxE/TIulPOo6tLrrD\r\nfBKD1pzzCaiNitro7GUhRD8AlK9j/x9BkLROTgSZYiItsntJ2h7soz8OI+Fe\r\nEHznJZnjjYDaxGHXD4gnRBwS+IKqjqGiXN0pxE6IaTyvcDI6uqPelvQo3Ymw\r\n330nlXahJy4LCv74czi++WY19Af4hvOE2vfUB1B/YTOy+9BJNd/VLgCQSecQ\r\nVEobCS/ekgrqHVa+RzRr+AsUQxx/hZZTncplmI5xP3DfVLFdZslGItPRRekM\r\n0NZEGVn28rKiFYqZ1MrpuDNZaXbakF48FjU=\r\n=BmcV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7fb32c724b7903a8060cb457aca1f150a15590dd","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.ab55c07d2.0","@material/rtl":"15.0.0-canary.ab55c07d2.0","@material/base":"15.0.0-canary.ab55c07d2.0","@material/theme":"15.0.0-canary.ab55c07d2.0","@material/animation":"15.0.0-canary.ab55c07d2.0","@material/typography":"15.0.0-canary.ab55c07d2.0","@material/feature-targeting":"15.0.0-canary.ab55c07d2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.ab55c07d2.0_1666462734706_0.5131350912986143","host":"s3://npm-registry-packages"}},"15.0.0-canary.fc539db34.0":{"name":"@material/floating-label","version":"15.0.0-canary.fc539db34.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.fc539db34.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"dfc944f3c281e7aaf9480beb066e9af99baec600","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.fc539db34.0.tgz","fileCount":33,"integrity":"sha512-enIR/gcH/bvoWeieZPE37F9VJ4sQic3OMfekrzKwl+i3C64loMmsDAO667FVhPJmkkrV+105WPBpQwcOyx3l8g==","signatures":[{"sig":"MEYCIQDTazftqziZgFZanWPqSHKIH+ESFfV4DdrONtiqxVDeJwIhAM7C0BkTLkHpwB43DwxX0NexRJjmG0AhRzy+EZcS82GD","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230379,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjVuBtACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpnLQ//WRe5W9xqKXOIt/EEpgUG5bwRzKWUUbzs7BhQgGbJ/8KmYwRV\r\n9xhE8D+rxSQbAqkX8luwU3mi4Scr6DotbVFgZ66YO/h6FuBdziW5UUdSOhHP\r\n97EnEiPTeJiRBcA1sNZi2DDWiUS7FBcBCl16nT+8ki0wRAnviK78RJXqv24/\r\nEfwHdmt8eblGoAGatTpCVll5x458l3g7vREnsjhDzbjMfSsDm7dy5OlapMm4\r\n3UyFBXxJWgWYYxyDVBzl1L93o52rC6hsljhX84tgG9M6HpwKCtyyQaISlsp9\r\nlvIBdT2s3VagDRqRUIhXJp/1fdDJSQrsiPz9MAwzQDo/XQ4toDPd/rhQBu+J\r\n+sl5JbV9x3GXOUzcJBpZeKrFxPk578NCX61aBH/O8/hp+HvPgDye0W/BLV7v\r\nj6VPo4/A38DDilhvkINMfOcG+UA2BEHKvWFpBANEiaZ0v6bDgqoPKdcHYPQE\r\nqnIXdFflS1wG/vTQpsmSTYYEa0Q//tSyFKiXU3s9f1K80nwB8H38Agwlgro2\r\n3RPObQ/s04GqmXcvVpcepxKR9QPMr/B4daxCzvthBdrBIvSTZtcIM5WdUJLd\r\nn3QGNgQK3033ChUah8gweJgxxPc9KNoNs8XRSiVVIYRkv9a3wdfCtOneM4EM\r\nEVMy/dZSOsuyZnSh6kQHqPv4A7ri03qKCwI=\r\n=cFYv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"18c679c73aa42d66117f8f1a88ab7cbde6f2a201","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.fc539db34.0","@material/rtl":"15.0.0-canary.fc539db34.0","@material/base":"15.0.0-canary.fc539db34.0","@material/theme":"15.0.0-canary.fc539db34.0","@material/animation":"15.0.0-canary.fc539db34.0","@material/typography":"15.0.0-canary.fc539db34.0","@material/feature-targeting":"15.0.0-canary.fc539db34.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.fc539db34.0_1666637933158_0.347896644363777","host":"s3://npm-registry-packages"}},"15.0.0-canary.e340b04c5.0":{"name":"@material/floating-label","version":"15.0.0-canary.e340b04c5.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.e340b04c5.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"154381ecfbed404866af0310417e4839c06e8f2c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.e340b04c5.0.tgz","fileCount":33,"integrity":"sha512-kSaS1C1+D8WhJXMqDX0wu0EorlNfMmYvhh68eoERNrRcJENaxIGGJnrYU6OJCW7Cp8DwE89IwVwvuj/vGfu/+Q==","signatures":[{"sig":"MEUCIQDbI7fDhI1tlBU7IEjuUedjHaFeFY/zY1k2I6pck2BjZwIgAWb1YyYtE9di967gXGKvE9yUfxWJqVPy1B59I51kzew=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230379,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjWHTuACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrQYw//fMXtQwihAQdBddf8smTsYyV8qKiorD3jjwvzzQY0Jjc1cdmK\r\nsDpMQpV94E25oeNvO20eE+mZoN4o4Uu/fRkAQYWXfNWd2rMTi28jkyNFZ07R\r\nFsINHpLh9FgCvJyJx//w+xtR29TruccJq36ADVOA0aF+GRi1cQuCnEHqNDKA\r\nY4QA1E2xRqczM+2YFp/Zj8LKszW5432b7ZNkoROA9SvThfakUHsxN+Z8TJI5\r\n8mTOc2+ryYYClIFtVhSEFwwvVlWU3dzoyuYCtDz3zpy8cNBucew0EVvxUoig\r\n9EVNa6MDtm8yOB7SnQF5tiGLincvBDwGzBNr2VjoD2jFurvl7SLbdMsxf1Q5\r\nMiXm2PEOGCPqfgt6bXRvlZymBBibhsndmYtz0CcvRTTIzAWDC2Td5554pERU\r\n0L9c0AwZMIZY0FcfG5mndshDze2WwQPYyc5/FLEgXiQZu/HjMDmpiUmql9tg\r\nE4KyrcpkL6VeClqo4Zkfu01PxEb5nbqlKX8j1kNDMeiWXP6J4qwY0dq7ECj3\r\nFB05rZ0Nx3+gqGHbz7K2VhQVXiWbOa8qv4ciZ8jhnAxUqqIM+Y9QiIwrbAce\r\nUdFxY6CugIj9ADkMJtFcXRNXH1gvHR9sN0X99b2WcJTZ+GqDiNOcZM40Sj8i\r\nFGD1B4ElHboC0+Gz14OOaybdro/AovMyVMw=\r\n=Q8h4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f3e39db57f42dc19c08bf6e97cd6918a3ce32dcc","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.e340b04c5.0","@material/rtl":"15.0.0-canary.e340b04c5.0","@material/base":"15.0.0-canary.e340b04c5.0","@material/theme":"15.0.0-canary.e340b04c5.0","@material/animation":"15.0.0-canary.e340b04c5.0","@material/typography":"15.0.0-canary.e340b04c5.0","@material/feature-targeting":"15.0.0-canary.e340b04c5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.e340b04c5.0_1666741486020_0.21761279638625397","host":"s3://npm-registry-packages"}},"15.0.0-canary.2c1a8f8fd.0":{"name":"@material/floating-label","version":"15.0.0-canary.2c1a8f8fd.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.2c1a8f8fd.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1fb32a297cd4b1baafdb92b82ed52ed4923f7e12","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.2c1a8f8fd.0.tgz","fileCount":33,"integrity":"sha512-eGdUb/WT6Js/3G+v9py8wYuA3/fnwHnhUM7wgU9r7Ax1Fd5oTxL+iIhv1gYZz+CcMSzEae7h9+6yp1HvTp5IyA==","signatures":[{"sig":"MEQCIBkMchtGYdWjrQREvRVu4FTG9OADlRtEGCS5YR/1gfB1AiBn1pbJ/NZX+5u6oqrn157M7a1xDBKOY7+e0ZdVqOC80Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230379,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjWW6gACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpXhRAAiG0BWs0xdd4hk5JRoYLMEJ5x7XNV4+Sbur4QjrJbJamZavqO\r\nCFg4PNkxg86Un0WUrV3m2w0/p03r+8pRTW+nJuXUtB+9tSYdtgD3OlWKhI+S\r\nI/UUhFhQeLvhE+E1Re/aR2+bR4t+d9PC08a53vnbHt3XUHYqPVNZVBechXxA\r\nIc2hpXClpqXfqfucdYuALEWOOciQhHrOCiuxQ4j7Hq4n/DlOrZYFmFuvqCAa\r\nKl4F3waet6b0kjiC97FMdZc+YQVIW3itCOkE5FAMEGdtozJfQfKavp1aw84S\r\nHw6YCZLDcbI/WfioJBQOqpSjIGwD/r1sdLnhh6b0PEzAzGpuIOqcwhPSI3A5\r\nlytnmUveMxBdlTc7By03v5RBq3cSvt4vW4DWVtbO/QJCaWKbB9zA9DNuBntS\r\nv859FF9qOrZfFKpVj4kmiocPsTnaT5bPThmunpG+m8IFARsiM/ue/Pso8aUr\r\nhDnmA7yPOivjoileIUNTAym0WlxEVQDCQnJiP5ApvflnsBfr+G+Rs2q2fBe4\r\nzanad9AZxrMt8b39G9DzZGp6g2Or8S43HVj4SFPpWNKJh4qfb8lFAEx4gnjF\r\nfdm2jcqRj/T8TNM6mg7zVGi6ehwL4BpWSl9GtH3O8cLs83aF/XoXnZFchA68\r\nxQ7rgTUpnekBy4fPJxL6dVz0EZfHVatlOjA=\r\n=jk7b\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"dbee023b5e37423b8695520d95f2d00d884bfd5a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.2c1a8f8fd.0","@material/rtl":"15.0.0-canary.2c1a8f8fd.0","@material/base":"15.0.0-canary.2c1a8f8fd.0","@material/theme":"15.0.0-canary.2c1a8f8fd.0","@material/animation":"15.0.0-canary.2c1a8f8fd.0","@material/typography":"15.0.0-canary.2c1a8f8fd.0","@material/feature-targeting":"15.0.0-canary.2c1a8f8fd.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.2c1a8f8fd.0_1666805408262_0.689457779631101","host":"s3://npm-registry-packages"}},"15.0.0-canary.ecfee946f.0":{"name":"@material/floating-label","version":"15.0.0-canary.ecfee946f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.ecfee946f.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2a8351cd96ea2a955067409a3f8deba7417e0fa7","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.ecfee946f.0.tgz","fileCount":33,"integrity":"sha512-3FQMYxUE1EFZzBmml5mqdHCnEoGD9FP0PEeaD15etm/gyCdaf+d6r+rZADDWe7In7qMos2W9uW4v0+sS1H34SQ==","signatures":[{"sig":"MEUCIQDFfUBUGL9RMygwlscwBd66hftJ+weKe0VDtwTmtqzFcAIgHw8XZO4eCTNlYzhSylfm74X/osOcyvHpJT1ELExEbAE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230379,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjWZVAACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmplZhAAmIJ2dCWrOD5omDW83i+tq6N0n6bR+swIs7+b+HgvxogQmV7m\r\nCOSGLsDOXGFEAMKRdvHsZbKZhEdn+SEQJTzXZxVJENRsqAej75UGL34Rb9mK\r\nO+Kk7JueFrWf8+hpowYPmnCtuXzkmQ1iJmhWYO4UtqgNSU3VQjEVzYuQPJHj\r\nRSoykIF3ZT3tdBSRUMjcqYgC+JEF+O3mYYjN37UOr4AWb/9RShZosUuQC8tg\r\nX/NyBxqEQuLaJnqbmJFN2mI5J20hd6oM/0Oe4Cwa9B1TxibLnZk8xmons5yW\r\nr0uTuRKrDUA5Hz9uOaJYkjoaG+l1AlNZSp01eQnf/PM5LChxqc5PX+wZn3Xi\r\n12olVSVAd374L6Gxjky2NzB8c7F5ecHrvXqqzDcFfIGt1qqbeUEfukC6KTx4\r\nnHgWKwK9haNeanL6zU+iyfWHKwQ4zFNhQZx5rYg0QQ9UEynAGg+mtYhvXCXd\r\n5n8NDkAAgxbvhcOJvL9t7eTqPwOJbKu4lDUIKLbf5WuBlQgHDufd2tOoVKRx\r\nThW/dWqJf/I1W5ZKfhjFuaDnOti4/vv2NPn7rgNDvMh/fBiqFVBxb4rLMZSi\r\nJhIrERSaJGlVhT6kOejd/MV2AtbdELT4/2JByTnpntpJXuORkLKQsi3mistQ\r\nF4blNlaXw0K2JUiygDRzKtNItCWfILUvers=\r\n=W5+C\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"dbe05d725a401275de1e88f9d5bd6cd2079a0047","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.ecfee946f.0","@material/rtl":"15.0.0-canary.ecfee946f.0","@material/base":"15.0.0-canary.ecfee946f.0","@material/theme":"15.0.0-canary.ecfee946f.0","@material/animation":"15.0.0-canary.ecfee946f.0","@material/typography":"15.0.0-canary.ecfee946f.0","@material/feature-targeting":"15.0.0-canary.ecfee946f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.ecfee946f.0_1666815296373_0.3411621202905617","host":"s3://npm-registry-packages"}},"15.0.0-canary.73ca9dbb0.0":{"name":"@material/floating-label","version":"15.0.0-canary.73ca9dbb0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.73ca9dbb0.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"03e8d8ce8ab760bb66e1ebd9b7b0f71b6048a8b9","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.73ca9dbb0.0.tgz","fileCount":33,"integrity":"sha512-dDE7Jwz6tPSEjoxM8+Ld02coNolOLQpUPeHBfDfJllSP9bGUmHn0YIZgKGWZZ+9W9YG/5P7dfbuvEHhH1oJ+TQ==","signatures":[{"sig":"MEQCIDjqmmKD9ujXV9tmryDkU+V79R3TBopKTvweyXxfdqyOAiBdLwLLgHvY/DlBYrTelgLkkqLB/brhbERW6qfVGsalGg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230379,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjYAaWACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrDThAAgrE3DSViuJcC8yWYIm4pc8lJRgbQ2MuJwGeu6MfcEtkYgsBx\r\nftibJoVAGQY5htoFvb9+XD/Mkb/ybeQijL1kKLPqbjmzlO+jA5QYW3F+bJIO\r\nfPam+GfPn1b8yANnph8U89s/7L4y+vSd1trBaMFBpUMElDvnjIl1/rrMplqQ\r\ndi71b6GqK8RbRSR0f2Pa8VEVH4+NsHfXVJYuW04M2inpmkblMyKPoKovuJO6\r\n7xOLfTUBxpk5HK+8CG/Xn36Ni7rDWdOv6pT+IuaNkgBNWInLCfOCVXEgJtnl\r\nTxBZlZnJLgZ0daPRXXKdgLSICsXGUvytz0Gm7Hq6v+7vTyHKrvFwzo8OtS62\r\nzpX6GXpeU2zvjslavMfoyeY4tD/R4tfexo3QTDvGFRcR7ePzx7IWCARTXlPk\r\n8PBedLyQz/yp+3GL9v5Ii7lQ0kC4OZXjfeu4Itf7GIObbgAr7PmH42epFXPR\r\nwQgGPwku8QvgRnFn1lKAEbrs7YH4IA0eM4htbth9UjmR/Uy2cO9AwxG1fDqJ\r\n6wat/b4mLGizC+Nf5NgjRzCGTnFvOdw4EjIUoK2WxVAaOURu1eoX9/DJGXJk\r\niwqfKfJ2OOI8UOUFn88mrD/6B38hjR6H9wkAbbW4aAuLmzIvX334H6MxR3HM\r\nHcnExcyAm+w6Os5glnfnPuUsER+6Cuc/MTY=\r\n=Gp8O\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3b1ecde6148e6e8d98c4b0c8a4dd2ba56e95586a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.73ca9dbb0.0","@material/rtl":"15.0.0-canary.73ca9dbb0.0","@material/base":"15.0.0-canary.73ca9dbb0.0","@material/theme":"15.0.0-canary.73ca9dbb0.0","@material/animation":"15.0.0-canary.73ca9dbb0.0","@material/typography":"15.0.0-canary.73ca9dbb0.0","@material/feature-targeting":"15.0.0-canary.73ca9dbb0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.73ca9dbb0.0_1667237526518_0.5407783362462848","host":"s3://npm-registry-packages"}},"15.0.0-canary.357f2e5f1.0":{"name":"@material/floating-label","version":"15.0.0-canary.357f2e5f1.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.357f2e5f1.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"23069d50d861e9d3921740ebe5f8d839624219f7","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.357f2e5f1.0.tgz","fileCount":33,"integrity":"sha512-fdvM5/NJgGxatqaA1ShZQyA3ZcG/KFU4Dr66kygyFMJhq8VODmjiKy+uGRhKPkAAlG6J5G/wr/iZthIkytYo1w==","signatures":[{"sig":"MEYCIQCHLmhbRO33z9ZzZ7pGkVFf8sDY8PB60UDT0JFJtm8njgIhAN7GLykStdm+3sV17cOM4UcmBMjwM5tpRUvPy8B0w6ob","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230379,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjYBicACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrnIA//SG99gDcWquT6fx7RIsRUNRcuY7Ratj4bV8KQGWxQ8soFrSDz\r\n9R9RHRunE/NfghI1FOBrgbQVZOhNMP/M0Kyy2JDQ7+RKntnWZ7eVloVMcsm0\r\ncAJwcY8S6vxyroflPV4yU/pmFUa7+LNyEv/a/+sZIpU50F2MoR5yKA/+Ncyx\r\nZG7MbVO/uNI2d3grv5O/UwhIMiexyfFf1Jkg6Q7PlUxX55VTCillE3nTY8tv\r\nGPvXlc9WDEBd7e9j7zXED3/5q+IqcTAFTKUswKtaLduzhVcvwYmCb8tUfyP1\r\n3YPRkQRkEIZka8PdhLQNLM69qvM5iaCsR50sqCC6oVhcGLhGw5zNxT00l0lD\r\n+me99+OJq6sMNWZE7KM18ISI6V131I/tHASGdKBwPwxyQ9YrEhSjMoeAwWlg\r\nKn4n1vMIgfBFlD8cElWXmOZ1K1ufiNJ5NyvRsIUfRzJvYf7B9Qwm/UlgZEIa\r\nRfpG/PczgXOX/12XoGN/nsCTD8cRLFhzOIK2Nh9rp1KUP3g3XaFqnbgQFyli\r\n/D/p/c7F2ow6HmEAw8kipAhs7KYmcK297X3F4PkWhgV7jThHUHL40LsdiJw3\r\n2lnmaxe9Q3aUJNmcymlNa/0PdA4WGW46XpLIFG5cO5NFvOiKIK4DB8QOSxpS\r\ns9N8ZXXWjsWjTxq+q6TMx+4YAD+nELiEE40=\r\n=nXCt\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7f8af87642d395b497ff80efe06544dd459b947f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.357f2e5f1.0","@material/rtl":"15.0.0-canary.357f2e5f1.0","@material/base":"15.0.0-canary.357f2e5f1.0","@material/theme":"15.0.0-canary.357f2e5f1.0","@material/animation":"15.0.0-canary.357f2e5f1.0","@material/typography":"15.0.0-canary.357f2e5f1.0","@material/feature-targeting":"15.0.0-canary.357f2e5f1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.357f2e5f1.0_1667242140431_0.21527847467134809","host":"s3://npm-registry-packages"}},"15.0.0-canary.eb103d4b5.0":{"name":"@material/floating-label","version":"15.0.0-canary.eb103d4b5.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.eb103d4b5.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6a5cd4a14f3a693c8e16844aeab2abbb01857fda","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.eb103d4b5.0.tgz","fileCount":33,"integrity":"sha512-P956K+YVRF9sb+4oHwhLFwFVTUj3XKbUqVA1JtSAEaj7N8E+QNirAn2ppSLJ/Ju1yoXRMncTgzTxcNVHqto5wQ==","signatures":[{"sig":"MEUCIFt1WU8C1WnwPFaXTZmia4Gaur+VlS1Mf8k7tEO5vdZzAiEA/3q0Jqby6VfLC08k8ezAjWKYn/uxowePplojWtV1vpc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230379,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjYChWACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrkAQ//TBtpQtYP1OAtw1e1i/38qrbOZkxnfzDHf12s2QbzcqQb+Kd5\r\nI+L6NkIylUjnjtKGTUVWg3IsyXkfQBAk+QcQRpo4qICTTdZPBkg2CTMfIR9q\r\nM4qwjBwrWDj17II5Gq/xGvephKRA+IF3f7bIDq4GkxuyuKk844bKpQmE3BK7\r\n2dfhHmA4hhfM0EscqsuQlmowZnFM792IYhtcC+0oMr2Fov0JMGH2sNVh8fsv\r\nDL329b65q+CAefz2WetV0XEPHck5djUhOmVW3SsFPzfEXQ+TMxbAS/9PLDp8\r\nPxwxwuKH2PHK8JMaIisaAWLmpmXuO2urAOrmvNoUGODhosH5W4CHCwqz8o2X\r\nAK99zcVYwsegZXOjhaaa/S+0FHrJKpiGmzOktSwpoCTeafd0vuAhkV1dRxCE\r\nM+e0Y2daNVq5cLQkF9Hinm4j8iBFBXEKIhqOZTkPnTL26qNq9hIJT4xnL8NJ\r\npCr2gb6EuBC4hmqUCuWsS3u1ICG0sD03dAhcbf2jmdfdodmW1dqvYaUxYg6d\r\nKYG0mzW7Ur+p5E0RypW/mJ5167HOCHDyOEXWvxlEaMDrESGslcT4X/jeA+mB\r\nKkT414maJHoj2Y5LnV2l8YTyitAHcwTRDHf7zDwwAxKXYztXz2gt0yEQpElK\r\n6k4kv7WGVxryt5LLFk/4/Ndysd7LMPHBmwQ=\r\n=PpFc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"6fd82c2abdb8567ca00c6847142375ca8ac18b90","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.eb103d4b5.0","@material/rtl":"15.0.0-canary.eb103d4b5.0","@material/base":"15.0.0-canary.eb103d4b5.0","@material/theme":"15.0.0-canary.eb103d4b5.0","@material/animation":"15.0.0-canary.eb103d4b5.0","@material/typography":"15.0.0-canary.eb103d4b5.0","@material/feature-targeting":"15.0.0-canary.eb103d4b5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.eb103d4b5.0_1667246166587_0.034183185044040165","host":"s3://npm-registry-packages"}},"15.0.0-canary.af5f01223.0":{"name":"@material/floating-label","version":"15.0.0-canary.af5f01223.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.af5f01223.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"dbf3ae36ce1c1b55f14821b0ff2c4e4d2ce46b3c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.af5f01223.0.tgz","fileCount":33,"integrity":"sha512-fh32es40HtehxOMMqfypI6fA52hjOlvcn4LHtGwh/0KvtGS7rqJdeeao2PA+1uP2dclgfmGWcj6gHyO/jujOlQ==","signatures":[{"sig":"MEUCIQCTMRFl+JV9Qq7mByhM3D8LfovD6n1Sm881gF7DW15b6gIgXXGfr4kmkphahs3jum1QT9ETm6+UQwvFydEScg6yoz8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230379,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjYWc0ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq8uw//eA9bscmgIELSmASsx8wVy7Gz3apY6trwYcDY+1joTfHwFLzh\r\nmo67+1G+sfMfQ0CZURMV5P4yL+4FIpotD8+qqrgyegAii4I8cmD7HSmExCKZ\r\noxxSonX/x4F4UYzoTM9m9R/aN/q6qWDf0tDbEADJNSDOYZT4+BIORikXxxKH\r\n70TXOr3X+XrjqjMsUJYzbhqGHAUPs0HMFBhCuS9hdMNV0gFdND18HwTTPd+T\r\nRiQWNNYausy5tqdIZCRwXQB0/NfAZ1NbUxZ5OSzUKSxq/ut26XXtFDeae26L\r\nCLHl1QqjRLPFtkkCiAd0XhUPklvmg88wG0Hm7erK/GZOCFZCbiPZQ1Q6n89D\r\nGRWklRwmtV+bC1SpKOmEKhbsGlXcZCEOj9NJ+BryKXGd3hxtw/ENbaYFsHxo\r\nxwkuZPhCDu0hxHQY+dKCpZi4uWrEIcQs4rmurPsGg6PsmHDok2QXhYDrdx8i\r\nHlUgrmpFXF3c2a7HMBtiaQpbmd6cfdYj312Vood9O07KtG3YlD7V3qLDJqD+\r\n0JGDurJC9prr0qFU3CgEq/wM4FzNmgabh0bs95sJ/V3+CQu9XBfgPo5g2Q28\r\nmwei/ZIw2FXurhDGhdL2DQawmVNK2K85/bOd/U1kX98ypm2DR36D8b4Kqrjm\r\nL8MDopfCKps/ubLWG2VpfxYDAJ7EmtlnWVE=\r\n=W9QV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"cc7d8ea77d18e30bad947332164ac02701e1ed9d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.af5f01223.0","@material/rtl":"15.0.0-canary.af5f01223.0","@material/base":"15.0.0-canary.af5f01223.0","@material/theme":"15.0.0-canary.af5f01223.0","@material/animation":"15.0.0-canary.af5f01223.0","@material/typography":"15.0.0-canary.af5f01223.0","@material/feature-targeting":"15.0.0-canary.af5f01223.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.af5f01223.0_1667327796508_0.0316043366865324","host":"s3://npm-registry-packages"}},"15.0.0-canary.58733ef41.0":{"name":"@material/floating-label","version":"15.0.0-canary.58733ef41.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.58733ef41.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"623290f361b1f7a4584b9db741dfbb58be19a8e5","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.58733ef41.0.tgz","fileCount":33,"integrity":"sha512-5fm85uZ7Y8cJXtSdx+FN9gNKEuQZwcXRFBVgnSpBedeIgGJW2IpL1an15zyq/hTyPJEe5FHwifT8C9MeyBvHVg==","signatures":[{"sig":"MEUCIQDzkJzFbQEET6yGx8PdBQO2fmG1lROE1MjYe2fbsX/3UwIgL62yYlbBBF2WkngU4qkL83Qk4OryQtnsOlZ8AAkhMnE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230379,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjYrKRACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpTzA/9HyD0LdbGnddd0Dsu8i5w149u1VbR+NkJt8XIV/4KwLJiQbjb\r\n+ia3Xob/M/O5B2Zr2Yoh9lCVaddwAsTj5tR8cET02aHGvXAFesUFVfp+Q9G1\r\nhmDmdmUBh4sgi4Ili1aLNRTHmO6OZl7I1Wl30Pi3dpU9f543Ei0+lxlHb7AI\r\nHjEQYshm4IkiKOKm1gHzfp21RiVI1aa5cVZv2LGum8a8toGFlCLN2i9YdIbA\r\n6GVlcZWgvSeiR/7/KCVec+C/VupZxWOVqJ2Oi8Oy9MBJFjuzYZgHYu+hWr89\r\nkdMY7u8j31KNv7cy8pFib5ZIgKik2f5veRlCXNdxlPhOEl8RQ/cCOOpIw12M\r\nne1wZ8MwtGLovkkRy9aYl4Npn0E/a7fCAFpkbVM6ndDSFviiST+nUg63pgHg\r\nblEX4/bn7iXwkhlpsj3dW5thdfybphrKhW/39qyGl9v76VUlf+i5xOUGK/Na\r\nhtoIijmejua0fQuonmeBGornfMlsAATGso7OpNBYHq0IdxMrONFAf/YEerYr\r\nZ6u9+TYw9Sl/8kB1ojt0b3oDeVOoYLO4wmC+clFM9zGq/0vdV9lPsf+a+86I\r\nkw4cMNaJCTdpcLxHj+ke6NvSmfRbZlcHQ0B1V/sE76lxwVqBSfj+em/MLz6d\r\nDyHh496RBSqBplCCyHtLustSoN1Nu27S6Ro=\r\n=6Nyn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7754bbdf66b8fd61976d3dbbe04b991d9dbc0caa","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.58733ef41.0","@material/rtl":"15.0.0-canary.58733ef41.0","@material/base":"15.0.0-canary.58733ef41.0","@material/theme":"15.0.0-canary.58733ef41.0","@material/animation":"15.0.0-canary.58733ef41.0","@material/typography":"15.0.0-canary.58733ef41.0","@material/feature-targeting":"15.0.0-canary.58733ef41.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.58733ef41.0_1667412625331_0.3752215777298249","host":"s3://npm-registry-packages"}},"15.0.0-canary.909b48215.0":{"name":"@material/floating-label","version":"15.0.0-canary.909b48215.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.909b48215.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"aeca712e54d5bc5f931cc2a1840632e7a769a4d0","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.909b48215.0.tgz","fileCount":33,"integrity":"sha512-ApuyUBvs/QgjKNneSR2h1VWeeES/9TXkX+hTCxglmZj8GDY0IwsO7+dH5WeTBWCI2jxm6L78ga7hdnorXFIFQw==","signatures":[{"sig":"MEUCIGPqajoGxOPmpeldskw20tmXX4y3K6PW+ZQ4EUYKmYGXAiEAnkscRnFhdtH7bROsqV1lZJDM3qzhAzlrNW/9LfHt8w0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230379,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjYz6EACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrZ0A/8DHCrPEo6eP0PDedGCslpVbr6Q9wzWuKiv3Io/7MZjin2fg22\r\ni8sOkAgslHOeuANHjrLTMnlpbee3e09eAbB82LrHZ6qHOA0wU999jXpDSMkb\r\nbKIELMZ7J/u080eQG23C+vO6f2Jb9r0wRTTF2VNNRDwFLgigKSC2VU3hjrb4\r\nRKTejm5Ran6HYOF8OWUreNldaxS5/ZpnbMSolAJrEBfrTxRDGH8WYzMwzZnF\r\nPh9FPXALtRl6ML0nll09L0r1md+2zlHEAb3GVSQnxFXOMnww4wEWsWHPvVW6\r\nWKVVgacJuTfTsz9HIQ2Jr/S9krN7C0OjLVcFQMi+eXVUlo3guRebxgty6CQQ\r\nghuBhnGlGdmmfiXMkPjbSgTSxTtg6KbR0vgfKzZhevneDLcOQR46L6jk8ZEW\r\njNX4ALaKXJQhdFkdT4A745g1Wl0GJUZDCKDedRggJgDDiFUmkmjbtxE1mGuZ\r\n2j1Rt2aIyzNxWyctXs84SNfDvgF4kVwhLiNqMSJN4wc1i/jPgTaJrQPRbNU7\r\nUDBpazuv1AHwm+kApjm3mYWZsKljt8ebzPR6xt03/Nk/EEmmYJ3r7HdKenvu\r\n0dyfyK8DqrooqF3oIVmhaZcAFpFDRNCHFpxKBNcyqHb0SoBRCN3uF0XAukSK\r\nzhknzguq4B4Z5ZQzDqeBPs0AOzdXkOOrQJk=\r\n=3EAK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"68d372ae12d017bf28fa2ad3c86cad4f70609116","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.909b48215.0","@material/rtl":"15.0.0-canary.909b48215.0","@material/base":"15.0.0-canary.909b48215.0","@material/theme":"15.0.0-canary.909b48215.0","@material/animation":"15.0.0-canary.909b48215.0","@material/typography":"15.0.0-canary.909b48215.0","@material/feature-targeting":"15.0.0-canary.909b48215.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.909b48215.0_1667448451803_0.6750841382689989","host":"s3://npm-registry-packages"}},"15.0.0-canary.7f17127d5.0":{"name":"@material/floating-label","version":"15.0.0-canary.7f17127d5.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.7f17127d5.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9fa1869696966c7692cf8376691d910c9a2f8146","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.7f17127d5.0.tgz","fileCount":33,"integrity":"sha512-Mc5+ZibHGZUFMlqDOOcgGMjFxUWHumXHbA4fLP1pEg97TG7wYfmdUS75IEnLDI1D8VjVxB6xIHt99fZvmUEBTA==","signatures":[{"sig":"MEYCIQDOHHFS/qi3WeZBibgsTUho3bCJEP7JhqXU77Q4wQ3E4QIhALcaI9tu4wy3MPqdDPilBORrl52wYs7N2QaED1uAzEoR","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230379,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjZAYOACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqclA//Yzl7p2TRao183B6r7TSciWi4DqhUpC1LKxk7B8/y3DzlnpJU\r\nuLPvg63hSqtu+30xrujsFCIf+8xJfjJ62VpFX0Ty4lVoIXbllpwhYHW6Rwxl\r\ndwTwcdnpFBOohP5gdieGCEwRoWOlH1bGSoLctNyBYx+2cOk/D7dN/p2DojkA\r\nk8gj+2wiJk5HNmLoFKAoSj16tyWQ0ABQB394Qy7LBS+hl1pL9gw7+IWkTrQh\r\nocDV9mHK7jJRo3WWkhC9o627gF2c25vHFS/8Bo9+/56PuLWnr3qurkRLIsnX\r\nT1csIQHfUibue9+PmzjuoOhnh1SQtRpuQg/T+7l6xzBP8zHfF38V5nP27T7R\r\nOgOzYRrWJmeGZjToPctKd/YY+YhcIcGUY7mZISRQPAdvhFUzKG1MWPXcbbe9\r\nglk1FzjrQYyzIPrFi27MrXgcUJ1dFgLSuypFCUxBAtb9Vh1IBveDDKqTNusF\r\ntzy87L3sN+5sNnKL1XDdZprQYiUVylvkA3bdBLOi8MMxLQ1YcEhJEkQCbUq6\r\nhqwRErMqm2rzds7i5nBegepiKmyd4ayEND4aB9NV3fIFS//loVU15vFeyYfC\r\nDC+KwoM+A7YdjNT6Cwu4QAGFzEkz1fovPES6QMOEwu6TZIFR9ZJZj0E98e1F\r\nR+boDyvS1fjA5c1L5tIHsS+iU9fQE3XPWFc=\r\n=gJ8N\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"26e22af93057c0fa00e7fa9eb104abdc96131eec","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.7f17127d5.0","@material/rtl":"15.0.0-canary.7f17127d5.0","@material/base":"15.0.0-canary.7f17127d5.0","@material/theme":"15.0.0-canary.7f17127d5.0","@material/animation":"15.0.0-canary.7f17127d5.0","@material/typography":"15.0.0-canary.7f17127d5.0","@material/feature-targeting":"15.0.0-canary.7f17127d5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.7f17127d5.0_1667499533799_0.23340128683832218","host":"s3://npm-registry-packages"}},"15.0.0-canary.da95e2a05.0":{"name":"@material/floating-label","version":"15.0.0-canary.da95e2a05.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.da95e2a05.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e8971853399e0dc594bda40b23589b3a260665ec","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.da95e2a05.0.tgz","fileCount":33,"integrity":"sha512-Dz+g2wOhOANn0KCtuoHDUtEx8ul7Xny8rd8HbVvdy/I/8suspntKc4zn3fc1Hap1jjuHlrAF5I9fd6dwbj3cYA==","signatures":[{"sig":"MEQCIB9JvTOxEaWadrg0toNBmkXCG+A1VmdM/lnF2yxsE5hyAiBYCRJNKZFjC/MbLtrOgqBcarUM2evDGIdpQMjtqByVww==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230379,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjZUTGACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpOLw//eJy7CPO5O2tmYsI7Udyp3LhYT/YKZ6dx9aNgmmehrLznlrFU\r\nGbhORbAn8Vc49LGS7/hQljXYiKcmtREwK7MIg3Dxfv5bWCUFdan2eMKZlr+I\r\nDwHNEWca9Dzn2Z8vI3OoZ84ZNTsFwS4hGaZdbu8jK2Yd9zdcLZcA2tV/defH\r\ngvc1R9PPyLtnTNowiLtEWJaZd+zKESYQTSQuee1rq5PK+4sihBAl6Gx1ya97\r\nYzJ/2HYo6SAj5Fz64xDLBB7WuLuNiTvWTGV4HQwIqBzkYRjbHN0DVh9z7Ahb\r\nMnHDq/w05UM3kBLQ/2Oej65iPxzB6u9vQBcnjOrF1jqWrWr/jumKw8XqY3MG\r\ntSQLHedXNRsTJjhy7vZA0+LzykI0IQOx3gVaALiI2iUARvJ9pFkWPSnaUalf\r\nrR62EZWmX5hib20dLiRQJ4lIpku3KCEU9rvuRyaQE12aJKMus10MOy8NP7/n\r\n6WiHjhryiH1JzxClYsXC9Luls8TTrnK242lCNmhlH91UceSsYZTDsNiVv8CN\r\n5ukqDDG7I41C5xHswA2uRAC8G//zDs+c41wTKsgjkNc24AQNqUZTE2FtFgRX\r\nOIdWoSXUOFdvkkfVLza9oLErcdRlRds9jEqIJWByPaShpdbt5WU1fXGooEsm\r\nsPGV5D7cq2zKIQF0T+XdCp8DOnAWunniIKs=\r\n=VMY4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"eb47dc6e824d05fe1a33c55066101c99ce1fe241","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.da95e2a05.0","@material/rtl":"15.0.0-canary.da95e2a05.0","@material/base":"15.0.0-canary.da95e2a05.0","@material/theme":"15.0.0-canary.da95e2a05.0","@material/animation":"15.0.0-canary.da95e2a05.0","@material/typography":"15.0.0-canary.da95e2a05.0","@material/feature-targeting":"15.0.0-canary.da95e2a05.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.da95e2a05.0_1667581126452_0.6949713957205046","host":"s3://npm-registry-packages"}},"15.0.0-canary.4832e2750.0":{"name":"@material/floating-label","version":"15.0.0-canary.4832e2750.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.4832e2750.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5dfac329edbac281244c399d068322c0a3af92e0","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.4832e2750.0.tgz","fileCount":33,"integrity":"sha512-XHN/FMUsu5ytGR4W43poX8B8IwM6c1DpReXoAWC4VRZM5SL18fRH/XI5a8L8iu8XHgXer9ewxkw8aK9xMZAG6A==","signatures":[{"sig":"MEUCIB1c1CQOU5j7AIvyPniu+M5mbej06W2k3BGtCbn08fLnAiEAgt09fu/LVLBuFtntaNN+WMVLle5Vj3gEbDsy+It7glU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230379,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjZXyLACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpPCQ/9F+cEA13ATnRs7MVhtN2Aantj/OWeSBeGyUTU8MgGO4n3KdpC\r\ncPg+0QVmFCbNLjV8h4u/uDLHt0GUWH4d8Ri7vDm05WAFQ1CkYptPzIwP6QNR\r\nFkkv+4cvCiYH1xyr044tDzK96F0KHS0qZ0gapfeV25aZldOCPhXlIRCReESg\r\niGcjk0unogcaSQx2f4XphKXiY5wzxiW9T/dLypUNDXmV4EL4Rxc4GLtllkWG\r\nqdNVcNDfUJ3k6//PTXQVKjle+ioXKrWcelBlEgiLWYoH/oKwz9nAmjPVz+Ez\r\nU4YSG2SjO1XDKeKWsvLh0YAEUlEzE8LGPNTBP0Ir9XiE+cttZzohtF7CUyBo\r\n6Xdesc6AFoCl+j00G4Df74ayScBGIKEaSOhKL6/SDazsc7qn23r/QaRxY0x5\r\nPPTlxlCD4M8LHjg/ZS/SngFkq9lrKxPgZphz7FZRJWI3L/czjm/H7R0F9VSC\r\n9siJeodkeiaNAyfFfQHcXgKFcwHEnf/5hifrtV27s+xbFwS2GiSXrsZ6pmGr\r\nCFnhqnAValhtaUC5mlCW3ILmHbEqS9/nRoLMOJo7av/JWNuIR0VJiynuuNEo\r\noxH4HwbYmWojdCgwMEenxsqcwSkpPoAXOA+P4I4y8q6CIJ1WQnvTvuvLtVcj\r\n08zI6PBGTWfFDNE+iF7p5mOJtmubgie9z7A=\r\n=3rKy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"258def578bdd5ff3b52dbbfbe6f06e14b2b74045","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.4832e2750.0","@material/rtl":"15.0.0-canary.4832e2750.0","@material/base":"15.0.0-canary.4832e2750.0","@material/theme":"15.0.0-canary.4832e2750.0","@material/animation":"15.0.0-canary.4832e2750.0","@material/typography":"15.0.0-canary.4832e2750.0","@material/feature-targeting":"15.0.0-canary.4832e2750.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.4832e2750.0_1667595403629_0.4915461618850192","host":"s3://npm-registry-packages"}},"15.0.0-canary.215506426.0":{"name":"@material/floating-label","version":"15.0.0-canary.215506426.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.215506426.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d421588b47a6ca3e35eb4671063639c3e98fabf3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.215506426.0.tgz","fileCount":33,"integrity":"sha512-XD0mMx85M4J8tybG2lUI/8es4avcWwca86CFmCfvsXeqo34d9br2/dzaA7L8KfQErn4AOovvILUM7ch+XPkOcw==","signatures":[{"sig":"MEYCIQCISBc/RMiAymbpLfPX/9ijFPU0kd2NGDbjxQBmZOJGTwIhAM0+4Dq3bsCyIlpZviqrY/HhvHIsNp89vO/vQ2y3d7MA","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":230379,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjZbbmACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqE/w/9E8j1QUiERm3xdqc9/rGhMQuMqDNQicvL1Nrul4qLkmEVwFyy\r\nlXDlGLLJECudYD0BrvsGmLCc5u0AoAqZNSg0Lpxb0GApiDCQBcnWaXyR98xF\r\nkdZGlE02kOunDdJy9KAEa7AOcEkNkONkF2bGDuVpmsY2qSkXln1ngDrv0lfM\r\nIsErzYhP3CTAiPT/dF18/EIXb9aqXaAxCj+O4L+qSzYSnHdm+lyDo9x+J2Xx\r\nP2sopwoCf0zqg2OtG4YgjFsR4kcYV4CJaZZbAX1rlwXw8khMj2xJ64NQVkKL\r\nbw1l1VdYXKY3E+e4GVLzYX/9LpNv59BgAMMxDu5FM0zQA6A8fmENCfkmmw/0\r\nFmuqn5KMIHbQd0hzJPbYpjs2VtKTP4RvOxkRDRrNkjv1MIXVhNkV/v2UnVOG\r\nxc3psij7YsQ3Bs/evtooPtMf9wZeevsC8KuAgsvzNSe6EIJAqoBff7LHVdm1\r\nStVkM0BZ4kKWmFaXO+qyp65w+GMy5/lATFlJ9Q0QHfQMWivUzbk0TEorZVIs\r\nkfeVsjkNmhiOXgww6uO01P/B1IDKiMyWo5y4W+RxGwN2FqKXJyf7J/+hZGPE\r\nrMPNrW1wuCQCAN9Qqgzvz3LcITJqNcoCx9TwimqU461e3sXu4sEGrjfNBDHP\r\nH6ZG5zJMuAzWovdXluzLCW2IvdATEyILKIg=\r\n=k86K\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c7da5104ce280eebfc1b0cab2279b8acb906babd","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.215506426.0","@material/rtl":"15.0.0-canary.215506426.0","@material/base":"15.0.0-canary.215506426.0","@material/theme":"15.0.0-canary.215506426.0","@material/animation":"15.0.0-canary.215506426.0","@material/typography":"15.0.0-canary.215506426.0","@material/feature-targeting":"15.0.0-canary.215506426.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.215506426.0_1667610342601_0.08418512690399149","host":"s3://npm-registry-packages"}},"15.0.0-canary.4cf917476.0":{"name":"@material/floating-label","version":"15.0.0-canary.4cf917476.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.4cf917476.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"0e3f4027a471f579bc65a78c3f288f6c7cea6c15","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.4cf917476.0.tgz","fileCount":33,"integrity":"sha512-Ja1a/XJnK+RmjWAY1zJAYCqaA4fOfN8+/e2HBiE60qQT6ITK+IluJdq/6JpTAKQTIIUsYM/TW9kwYgnIgc41pQ==","signatures":[{"sig":"MEYCIQC2hUC2SvtB+aPYCqC+nnn0WTfECUKppWSMM40Hz1zr+AIhAK6ewCkkLQ0yIkMOhQGmjriOg58uwPh83jCqTCOO0dPv","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjZqWEACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoUJQ/9E5E/Ko11eWHxIJlc91JOT4r3w//WgAqqzRnaG2OtKC07R49I\r\nMOnKMO2onyjs4M5Og5q1Hf4gBm6FJJRnylxsaHmCesv33YYHMzjTfqnJfRpl\r\nqZKw7qHU/tQeaARv2vid6HpuEg3YuwKR40V0Z9nz8swdknT+oHZd2/s5wq+p\r\n2fYC+nVlEhd+N14DfYWfv6EAvIeeuQ3/wlaPxIliqM6K4ZjibmeC0RXd2u5e\r\nddUACVe73BcqycXcDdOzHIf1xcx3gCv8AHThu1M80GnM9zx8kqYE7nXzGtYc\r\ns78HtgrKwoPFL64mAbRw2XaOhdsTMaeiGxxIQY/RM8wI4uRikK9LzNTrxSm4\r\nxJd4LzNRaMs7W+CRdgCby+dz+VZTxrJTkbc98XkAqifH9Hgf0p5wREQFFK9+\r\n8WoBEz4HGN6t3n9LH1oieeB0B28NtuFztO3x0JqfC6vG2pPJkWpyFhkp6L8z\r\n/KfqvyZ5lTSiTxnaBGhsUbuL+mMS4vh4alZepeBfT/rfaKAWkZzffKfRDyMt\r\npNFngbXdZRjEPlR0YFPMbq8mQiy5bK2oQakz8q3SyKH1JLZEKlmryfH/bwOr\r\nXtduylK2L0yFvebwBPKZYqsg87DUUp1oAteqSuMPmpBxDvDHOpEq9iHzrVvW\r\nhBVVmB0aD5DiLP1qqpHV5BP9vrh3HtHKsKM=\r\n=ZqaD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c7ef38a54cc085b34eea4d38f143f3b65dc649e2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.4cf917476.0","@material/rtl":"15.0.0-canary.4cf917476.0","@material/base":"15.0.0-canary.4cf917476.0","@material/theme":"15.0.0-canary.4cf917476.0","@material/animation":"15.0.0-canary.4cf917476.0","@material/typography":"15.0.0-canary.4cf917476.0","@material/feature-targeting":"15.0.0-canary.4cf917476.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.4cf917476.0_1667671427735_0.4082464282922267","host":"s3://npm-registry-packages"}},"15.0.0-canary.eef14bd32.0":{"name":"@material/floating-label","version":"15.0.0-canary.eef14bd32.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.eef14bd32.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"24e99d7f24f82ead1f325f5304f2164c36d153fa","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.eef14bd32.0.tgz","fileCount":33,"integrity":"sha512-utUxCKMCeFj8MnZBmp+SuXzEyqTRWDsOuzKqQvEvtlstWbETWdFEZKOrsN2b5cfggdJNsKeLEDIXCi10VhM9lg==","signatures":[{"sig":"MEUCIQCtvwq3kTky5ttMuvhXmc/tbiSa6Ujtn1Zx/Q0wT+7PXQIgFFNTrbYVDRb4IeKcOlYVfrvPOZC98iUt2TIpQlziv98=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjZ+3CACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmrjbw/+PTjiqUMxS9hs1cJ/3gvdicveMuwY8lAhcqqcBwGAG0fqE5MC\r\nNAY/RXdNISnjLBd1zPXiQmtnnPZ23fpWfNjwihj5tnGZDgjDKoD4iigJnicw\r\n2iSLV6sz4sTxamIWuxeTFGfFvc2c7KWU1ssuVE9k4kvV0+kalKDR6DsV0Q3H\r\nY3OS6LTANjxhpm9qbu7CL9ql1q3rhSrcVxpQg/TWhaMptzNU1Ixbv8yu4Fjk\r\niDMIWlfo6CRvhalCw+sHLhx2rZR8TDXmCd+Qzi++e+Puc6YeLgx6r8VeqSWL\r\nzS/Mfwnt+GP4FD4iFDUypQLdZ4tGlsMgDxS7FtkC2xDBXEkiTJLsWSd5FXQv\r\nQIjSQjXKAZVBegJmH77xI7akOih+Y0cVvyMDHu91m3QjCddy4cmwLC4srOwd\r\n8l1iLR3OxJDL0v/Q7wgQYgamfcaGqRWI/ynt5Y+ciNVk0PsGa/caXaF/2iHT\r\nyzB+X9/ZbpO42ojjaX8/bxU6E7M7tuSYY4alyT3cW1mJpm2mMbfnHWKxcoS/\r\ndfNZC5Swh6ncRaghdqQPum1t9PiyruPvS+2E2wSUJR10SkcJWtAet8UHX3N8\r\nRJqnIcUWnRnVecp8/Wp+4rWvKsmHkCqvHF32w9lWulrVIMeu8TH8rgUoeswQ\r\nBOaY7rbkNRDdTmiC/2L/jK6jn3Vl+PG10bA=\r\n=RKlP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"40acb6cbe1201f5ef758bfb96da3145ae3c4c1a5","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.eef14bd32.0","@material/rtl":"15.0.0-canary.eef14bd32.0","@material/base":"15.0.0-canary.eef14bd32.0","@material/theme":"15.0.0-canary.eef14bd32.0","@material/animation":"15.0.0-canary.eef14bd32.0","@material/typography":"15.0.0-canary.eef14bd32.0","@material/feature-targeting":"15.0.0-canary.eef14bd32.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.eef14bd32.0_1667755458220_0.6147377758415102","host":"s3://npm-registry-packages"}},"15.0.0-canary.6faa29fe9.0":{"name":"@material/floating-label","version":"15.0.0-canary.6faa29fe9.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.6faa29fe9.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ce681803a182c17052992ba7e2c90e3f1b26fefa","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.6faa29fe9.0.tgz","fileCount":33,"integrity":"sha512-yPY5+5RkGNllP06YPhr0VkkwcPFqvEUYLj7aB//sEAFKmzc0EMg+7WncR3CgrpaCFvECbzwHEriw/kgLUiTB/Q==","signatures":[{"sig":"MEUCIQCIB2WJ2ypKNTX/McC9GaRlnGkkK4GMlAfFwxRm68+uZwIgD+LmHRC9BsmlQ27ChUR+gcD7/Th6eT3ecQTIRkCMA0U=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjaHfFACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmrphw/8C01vVBx0972Kj4C07Y6kal3X/C9bVbPolH5+lQMrTVl+yUaR\r\nXD/06l28Fj/RTCYfrzwYVYrPphklhyCx9mdrv47YF1TIG3hyuJt0jqkd0w6s\r\nAgmSnN/i0MwFVQcSUznitJ+NdbucnI0hNBwWUtXCV+Kq9u3MDaSP2dwwsUs4\r\nNP6akepJNicCBxqg+zm+ZqKnAHlahMvf8a4f07kYdzRHzW2JpcNnrPF1BCYa\r\nYSFMF1gdHkBlQoNoigHZKPyLVivQ3W5A4JkZnM7in7aQnXKgeOsujBcUz805\r\nBh9CWuxJPV2tZQ6kgzydNVRgWh7gi/qVa30fCdFsVPfhnFQhsfA0gg08HKab\r\njqtPwEIIK1qvLFWED9aqoRJJ6sdDzyGkkDc4UPKN15OwNMq7jPMUaHksIS25\r\nZy0BPpSh7CeIopPvLr7HGBTh3+D/Af5KePCv5wrBSfAJVX8il4jiFnaUJBAw\r\noRBOY6d5wpjFYvEb+r/D1GhXDg0x3qIidv28opDfcLIDUsZlg6St4bK5KOsN\r\nLWictSUIWqe77/Hml0K++7QUPRedG8juTlugGdCaIW9YpwFD3xnsi2meZCqU\r\nKK1ahEdLbnU/e48AXMsV94Es8s54rUB6s1AuU0AbQqvnUaA1YnCzajvIo5d+\r\ngaWQHoQxDfc/O6o8fiDJ191p/Mi9LgNL8KE=\r\n=vPRF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1403858386443f73c0593105b5654b6ad8596a9a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.6faa29fe9.0","@material/rtl":"15.0.0-canary.6faa29fe9.0","@material/base":"15.0.0-canary.6faa29fe9.0","@material/theme":"15.0.0-canary.6faa29fe9.0","@material/animation":"15.0.0-canary.6faa29fe9.0","@material/typography":"15.0.0-canary.6faa29fe9.0","@material/feature-targeting":"15.0.0-canary.6faa29fe9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.6faa29fe9.0_1667790789331_0.2539257322135038","host":"s3://npm-registry-packages"}},"15.0.0-canary.9af09b967.0":{"name":"@material/floating-label","version":"15.0.0-canary.9af09b967.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.9af09b967.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"01cd78198fa0a0934b3a49f2f29bf38d1f78fb27","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.9af09b967.0.tgz","fileCount":33,"integrity":"sha512-/PMYbwRgwgItuu0gdHR8BMiBa1KQQbaSHq9gusfd4TCzEMEo1CnujLB6nDB+UmJfbV+OssxgfYDxXDqM2UijOg==","signatures":[{"sig":"MEUCIQD7RfHvcWEdLtWnta0m66jATMYCC+oEx/quj8/hdiSQfQIgQZ96r8zCALMfZV+TKqtB28HJr0NOkyFg18AOhmcVWbA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjaU4QACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqMvxAAhk3UANoWKUEd5NUZukvUTICRvf5c0yYD9ZW4lwZ/JUWpCdll\r\nSRZmTQj5OjbkbUWkSu20Y7r5mdKDPcDOFXILOo+N3scKInnLphECewn879P7\r\nm+PhuJfQe280vFOdERBoisRoR0cpl35JmZr90bBjhYT/QnPQFM2ppbAUK/Wk\r\neDFlRNkkfpfV+Mb+8jmlxEGSn3IjCYyqAhHkaHLF8KXBGWmMB+8I/B2XXCht\r\nZHR1s/d4VfY0vO/JwD6V2nsIY8vVGbUajrSNkhCxnKao1UelfwXjqUBcaZwI\r\nQk5CMH4Jqon6DUD70Wv0LFY2M6vkhXLjNHQoiy6XEShMxAjU83HxO4yZ3qyV\r\ne0VnPOwsMF4SrQqxQaRvFqsZw6xT9xVvbY2FZWiwpon1Hhk8gAb4ny/a3wva\r\nQhvqjx6Kuc9UjKqgNXrxcu26SYZ7XDwmjMJS0w4FCca8R3SJR2sks1SMS8X+\r\n36o4tAOR/NiMmpGQIO91yG+ZAFUDTHmx1lBiNOcqpiStVA/iBVgb32k8Adln\r\nPwUzt5EEO1AjCyMIrE2E2lbdK8uVbKt4XaI+7eB4x7TowPWUBqI7wQCZ71B0\r\n0Q1JbDs7dnGVhZ0pCimHhWmIiNpGIXejbtb4QAZt5TOl/ZtXyR1DAGRMfSsI\r\nFOebJ6ozv7a7eS1gZcCRkW9vih24fQUZi3U=\r\n=lHFF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"745e702463a22f4c5de6e94b3527530a9bdcc9d9","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.9af09b967.0","@material/rtl":"15.0.0-canary.9af09b967.0","@material/base":"15.0.0-canary.9af09b967.0","@material/theme":"15.0.0-canary.9af09b967.0","@material/animation":"15.0.0-canary.9af09b967.0","@material/typography":"15.0.0-canary.9af09b967.0","@material/feature-targeting":"15.0.0-canary.9af09b967.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.9af09b967.0_1667845648041_0.8748804723641692","host":"s3://npm-registry-packages"}},"15.0.0-canary.0f54fbb93.0":{"name":"@material/floating-label","version":"15.0.0-canary.0f54fbb93.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.0f54fbb93.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ca51dfde22fefdb62e75908c9f9c3df627ceff12","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.0f54fbb93.0.tgz","fileCount":33,"integrity":"sha512-h4+NqW7VYlHwFbREUSBJBQ6eqQ9XDw623tp8c2rUjF/CUX64U0EdQ7MSR5TmY6SiplBsu5y/3WNQMmZ59AN1Iw==","signatures":[{"sig":"MEUCIFP1QHjOx6q3HCjn/ebCQ+okIkF7Hv99trZOcFDDZx2gAiEAxqHUj2Wq3MPYnvs5z4e8fuy8Msu1pY1i5urPedzvuHQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjatCCACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqhXw/+LGeeGuqogPpal8AEQeA08ME8DDaycPGc52GwxrME2l/kJG7n\r\nXanQRCuQBuGeKOol9V7QpeAVYP7+Vlu6MYOuoK/KzTn0rZzp82HWeA1ADbey\r\nWv3bCLkQ8eUnKUB+j2Sln7Amu/q6m5MQNmNbMUxjoI8ILkbhPfzbq84ed6+k\r\nk+xkvMUvyIUUx0N/0QgXl5+whC0bpv1CpegzIIAJUQWKB0c3zp9Wmr0xTIwu\r\nIFhutP26zzQqLMncG/NRYTisX7Arm2YoAPZnkqz16tD/J3yxXaeLcDSy25nC\r\nXz3uDvTPfAhVSjBiaG+J9BbmjWz8+ZPtT9Flf4uzzXZD2CHFCnoq17CaRk2S\r\nwDBPvMtJsfD8tVXcwz3vdwInyN3orLA5Y7ffV4uIhyjvcww6LEBgvHwNJpK2\r\nF4SokUSgnf124MV247TUPrX4DTF6h8Ypo/MKEb2+PFITAs3c88ExmgImcNUw\r\nrV4l9Wr6HDgS1sR2ImMwywfMarZxRa0nR+PNCVoggbNo6IS8gitbEzs6W0F5\r\nhZYAqJBOrpBvpWdUgErHTNI/blMxIFOqr5/E8WBcKpabJZp6/arf969u7/Ed\r\nihAa/KoqqqFlMVBv5us87RYJ+eZ2KGcg57cBBNfS5+Q8Ppkfsjz7XnLBgNdh\r\nqUWWDkW+GSwot+RWH8GUHWGgFOqdG3+effk=\r\n=r5k3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5d2d1814fad8065dd869bd95c156c04ad45926f7","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.0f54fbb93.0","@material/rtl":"15.0.0-canary.0f54fbb93.0","@material/base":"15.0.0-canary.0f54fbb93.0","@material/theme":"15.0.0-canary.0f54fbb93.0","@material/animation":"15.0.0-canary.0f54fbb93.0","@material/typography":"15.0.0-canary.0f54fbb93.0","@material/feature-targeting":"15.0.0-canary.0f54fbb93.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.0f54fbb93.0_1667944578673_0.3874375701458894","host":"s3://npm-registry-packages"}},"15.0.0-canary.a8d47f9fe.0":{"name":"@material/floating-label","version":"15.0.0-canary.a8d47f9fe.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.a8d47f9fe.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a3c265b155defb9c2b4b6bad893deb496827d20d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.a8d47f9fe.0.tgz","fileCount":33,"integrity":"sha512-iw6vdgLfqtwRvsTJxdzgsIZd/us4j5zwUE0u4iqYuaGwGRIZC7Kk/UQRbIU522qSk1HpI95gv00LMIP1c/8+mA==","signatures":[{"sig":"MEUCIG5VR4w21Ys/y0sEtmJL6tkITJQX0KDTEMUkPZWU/Pd/AiEAnCRLg1f6c/y6fXS5h0kKTx9RmcXHfYxA5+m0JHyH7Ec=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjaynVACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqnrA//dc00wpiHKCzxhFomThinHln89k2PjsAvOhLS0DJ67jd+IoIc\r\npnppEbyrkEz/bAsqGDfJzUkpevJl3aSjPxeI7ujVF3g973H3MtSfB3VxAgFU\r\nEYJAVF9GjTJFgp16wxtfX5QaJPVsnzjMAjGznXWp8DK7DuTkqljRKIy37uqk\r\nvAZOiyE+IGQhJkCzSu5iSSgtX5P9qxhr73gyDgWB9SBSJFTKJ5SfhFsZsYIa\r\nIdNMwAtZEnT4GteALtffU65sputdK1ppvOMlh4D40J1/q4/Vet9luMMhjMDH\r\nM+ZlAa0i70pDO3cRO+XXdi1CZp8yRY1TJJ9luDmdAPGuI6pLmOKKvSG8/lg5\r\nN0quviWAD2bG8vZhpRAe3yPN+IAJcAnEesIM/tMkJJ9auKxymjdcUvZIJU4J\r\nukkoLUy2ii0w7TURLEw/VOOnnhR3wljw2OwStWi5io4HfA42v3LaBxT51KKX\r\nw/34GHfq0JQ+DhcT6exGYemfpDaN4MVtiIq4OyUjWchBVw8k2M1vhGNtH9PH\r\n1C4iK5nwCrPsC56nemu3kKinSH/Vj+oDHhBLPcoxcwVEkKvyTznO4KyGKjjQ\r\nBkjUUYMRibeIgQF3ljpFpDrov9MchMlRBuNmOVLk7+SUhrxipLKjcKbPaPw7\r\niMi6ORaGmvIMuno/GLG/okCMxpCmJf1SJVE=\r\n=c80l\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"37662af94525622cb00ae2dd17f31f6a93b4eed8","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.a8d47f9fe.0","@material/rtl":"15.0.0-canary.a8d47f9fe.0","@material/base":"15.0.0-canary.a8d47f9fe.0","@material/theme":"15.0.0-canary.a8d47f9fe.0","@material/animation":"15.0.0-canary.a8d47f9fe.0","@material/typography":"15.0.0-canary.a8d47f9fe.0","@material/feature-targeting":"15.0.0-canary.a8d47f9fe.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.a8d47f9fe.0_1667967445427_0.24483011305101643","host":"s3://npm-registry-packages"}},"15.0.0-canary.66a1e75e6.0":{"name":"@material/floating-label","version":"15.0.0-canary.66a1e75e6.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.66a1e75e6.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e4b7ded1ca72634a49042e527c7cb0b7e5f5b686","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.66a1e75e6.0.tgz","fileCount":33,"integrity":"sha512-35vCUll+x6Q32UeI3ZQ/J645tXnX8S0en48/jDYCv/XJreWqeohzJxSvi4I313gqICTE4HoT4Y0V573HcVbHNA==","signatures":[{"sig":"MEYCIQD77mnn7+L4Hv/hBXlhjgHE7/FClfCgRSkTqeZNOJBjlQIhAO5jVCB0mrt9UOTgkNTYEJhgSavEdKaf7BkQLoFjYe4j","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJja3RVACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqz8g/+KLY3dTYG0UyttzSBpDANZduSFwHZP7/Hz7jBLGGUsCBZSjxX\r\nBWqsaGjLHIxPqQTuD2geCzqL2k172/P0H82r+a6pMPToM7jI8gf761tj/2XY\r\ndBtTgBB96eMaKdQC/zEVJJg6QAVJepBhCM0j6rcV8OFqAr0g760cKRMFP9ix\r\n07eX9euPzwb34/9Y6yq69WHaRKx4CBf6CCe9aydiXcSKh1tvPI4nDQP4ElWh\r\nIMK04OSB3K8W5rysUPyKQ2wGLAnze2x6tFECgJcReMbmacLLs+DIA3bekr9Z\r\nQ6LdjlFoemqOJyFRL+BkkjoXhLRmHkQrPpVT5AJdYSAatq7a4ZljSN3Rsv0E\r\nO/cC4W0ydoZ5c7uwKFoj07VttPbmzPzK6m7qoakodlEmMFweU0nD16kmdy7o\r\nJAiWYotWX5XIXquk9lm+IQEE8BwNOQvjxdHcyaD3+ML+jKfrPwc7WHozUrG9\r\n3LoR4pubSKba3naVfFQAi9u7AeWomddN9jHM681jfqZCeBafZRwYyrdae4UI\r\nF6jVzkZje3CyrNNHOytAEBjWb9/rIVF5mRQmUsle9BiFnIL/QyQxaswNsqTU\r\nuAG97NK+huw8cyVml2GIqMQpJ1oZwx94rDoelF94HVUuoSIsqbkLdt3u6vek\r\nYiknbwywtLrIVepPwhZaoQGB4WBE/2Fyrgs=\r\n=UDnU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8ed0cca778858904bcff29669c6dca407f25ef98","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.66a1e75e6.0","@material/rtl":"15.0.0-canary.66a1e75e6.0","@material/base":"15.0.0-canary.66a1e75e6.0","@material/theme":"15.0.0-canary.66a1e75e6.0","@material/animation":"15.0.0-canary.66a1e75e6.0","@material/typography":"15.0.0-canary.66a1e75e6.0","@material/feature-targeting":"15.0.0-canary.66a1e75e6.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.66a1e75e6.0_1667986517282_0.5342286362176722","host":"s3://npm-registry-packages"}},"15.0.0-canary.5e5c2afc0.0":{"name":"@material/floating-label","version":"15.0.0-canary.5e5c2afc0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.5e5c2afc0.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ebe52df7403b98843a6254d941be43c17276e203","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.5e5c2afc0.0.tgz","fileCount":33,"integrity":"sha512-wmueMkJMsuE62nXx928MW/Zvrr5uDolnATc8nRMW1yxZkxwM67JOdRuNtfl7O/6vzXIQj5fjVeQlrMS1ykmVNw==","signatures":[{"sig":"MEYCIQDNg/2I7ifCj8gcqc/W6dh9YI6wgfDTjfzaEUh1aWYBiAIhAP++NWz8mtX+25cXiCW5UkFCrAMJmbsM0BMOazcsKFQ5","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJja5SaACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp6FBAAm8uUzuRrGTS/ktdnWwmaPtSd03wR7HzUQaTRvpd6JsvI/Ai6\r\nSL+Ec7amzHaeSsX2tfDM3sOrwadXamMHLm30r37Jpp5f1E8xz9Yhpe7EgJAC\r\ns906uhn2D8pSg5C/nrYaruCuQjbLk3EWnDPZzA5dSS/oVlc6+ns87sp/UY5c\r\ntikH3Nt1RrAwExmrPfV5jWwsC+I8wJWOZhxwADQqNx8xkqKQ0g2iTZ5puvbB\r\nYxFgpzJgclOqcJOM5uSYcn+FbkQBxzKOOUA2yRi/hca43wOLtEEjDHGqmDkh\r\nClYMsLAdD3uWXppdKxIPnY1HLaZPE77vXZDoGkZrKmUuKG6/mMzOogGYTGvG\r\nO4usEcfv7OTWky+MET+aD+mJy/W8b/4B3GoS3mphdcJlpVlY546TDyK3QI3v\r\nvafwgYuRuDMmS/5oTBNnEmbFc6/QDIy+/XPgOcEulmbdi/TBOLLdsaqeURsH\r\n3Sy+8bJLhNsscT1v3dmi3j06EGGXhu6B3Ix3X4QiYdXtMOm8bSYTnaRNnIaU\r\nzlQQ2YBQTxhOvJ3SgeC7EIVUEsK7k3YqwrwzuTBXg7HjHp2VPsaokO1mawdb\r\nQRc86h8qHaTPfXU5udDho4WmRPKPqMSC7JSaIITVNLb5YVR4N2dqaFx/e4cp\r\nzxli7dWP/p/Ox1vOLC/lHy1t1VkKhWqvFN8=\r\n=aPKh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f14204a01be3c79ff286a8287a0ab731c371492c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.5e5c2afc0.0","@material/rtl":"15.0.0-canary.5e5c2afc0.0","@material/base":"15.0.0-canary.5e5c2afc0.0","@material/theme":"15.0.0-canary.5e5c2afc0.0","@material/animation":"15.0.0-canary.5e5c2afc0.0","@material/typography":"15.0.0-canary.5e5c2afc0.0","@material/feature-targeting":"15.0.0-canary.5e5c2afc0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.5e5c2afc0.0_1667994778181_0.6887932380154831","host":"s3://npm-registry-packages"}},"15.0.0-canary.3e3f43359.0":{"name":"@material/floating-label","version":"15.0.0-canary.3e3f43359.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.3e3f43359.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"50c175318997c79e2f38d4d9b27d3b17442726bd","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.3e3f43359.0.tgz","fileCount":33,"integrity":"sha512-3NMnfye1ksJXPx5V1XwiI1f11ig0SZLlvGlNPrNyl73R/yvANrQDI/PcuclkLWnEs+BTntw4Z+p9ErYxauO8OA==","signatures":[{"sig":"MEQCIEbOPOhz1+521x2c5/a35aDPgYnavKcpY7Q79UwM6mwkAiA3wsby4Tp6MgFJEi50zII1GOPQKEEyhsvR5X6d9BwjMg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjbAdaACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoeMg/8CThV7yzn4p5RZMJ13Mpu/RjLTdUI81SL4WcXGi+58rU2nZhS\r\nXmvPhvrA1piv+AdMnLLwMslhHK4h9wxapAbyRmvdNv0ZIc2h+qsg83HgZ77v\r\n3A9wby1Lr61qJm6bmZri2H3QjnHge3OOUWeR/CFJFWv7ky9aMWA7YhiNzzLq\r\n7hN/gyJhBHZIdH8jaLSy79VoImJhKhGBAsUDyErMOziH0upCA/2gsU1zgu9c\r\nW/oYO8mGpchbPne2lPFAPGOO57oY70UEjkiPkGTRKaiQ07m7LT5H4qWyMGeU\r\nL05zMDeOye6MRV7mzo/hSzGU49qNtJI64L/hShuZjl2UChdgEF81zgMTAssb\r\nUmSDiAUuTxRRca777u8tMDTNPXyDfOCsR6mA1Fu/niO2KJSAh4ROAQwdZZON\r\nfKiF09tRcJeTRr5U/1QnnUqONenCHpdf5mjjuUPWjPCPECkrnosXtSX6SiCp\r\nlVQ0bcMICYXPZhcavHCizZfhgXQbZlSs+w6LJTTe2rr1DMWUjGHj4TzAumsj\r\ntqaqShMnlLknDx45GjoejX9KKMDV//LnpcY//o9bPf36TjNu3Q/tisb3PwFC\r\nMD+5s7I3NaUvebZH2Am2HVB6JW/lWqRPCm9eVRviml+ns8QmoUZa/lB5OnHM\r\ndmcB8CRKvVWaDCtYg9mOfcsA1sdbY00NrwQ=\r\n=2kDh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"722326ecc6026aea1f22d8b4e1c9901bc13141e3","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.3e3f43359.0","@material/rtl":"15.0.0-canary.3e3f43359.0","@material/base":"15.0.0-canary.3e3f43359.0","@material/theme":"15.0.0-canary.3e3f43359.0","@material/animation":"15.0.0-canary.3e3f43359.0","@material/typography":"15.0.0-canary.3e3f43359.0","@material/feature-targeting":"15.0.0-canary.3e3f43359.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.3e3f43359.0_1668024153914_0.3793411262031723","host":"s3://npm-registry-packages"}},"15.0.0-canary.3f667fac6.0":{"name":"@material/floating-label","version":"15.0.0-canary.3f667fac6.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.3f667fac6.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"acc33f263715013267b86b92b98118f67e96b470","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.3f667fac6.0.tgz","fileCount":33,"integrity":"sha512-0cYuppkT9a1uEbZTuQLYGr8+9aMjBK6wVxuXr4lg1XgyPUuieF8SglIsumGUmlMKemQgj0M6HIONPp6WmvQW5w==","signatures":[{"sig":"MEUCIEuufBnfbq4dqtV77d1Z0m1wj9C6Ph0SJNX4ro0wO9XIAiEA8da2/AOvDXhJZ86pslP1A2q2nqIoMsJcb22U5VbhfG8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjbCQ4ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqoaQ//X1/W+hN74IYwk/WYFHsOHNgDEKMPVp22e0KweoEKL/oTzvv0\r\nT5iUxisg4H9bX2OmqjhY+snyLS3lkNmrLI7E0slEYtw3hL11KS0QPdCvWDL/\r\ncoXGmaA1cUxkwn9q2XzwlJBu4B+K/dqK9v9zvSl6BMULo7ykfQ8frRaX5FBT\r\nf9TIZ/jT/0bEMyunaD9HYRryT2BnDd7vioznsyXccglBmlOsgaao1z7yEMwT\r\nzLBZQq3R0ji+2/NZPxFZsvuOVc0d30DS4rmEZgm9fG3AtlBh3AM31cCxxtxb\r\nSoy46xkRwbrRUKabuEuYQPJko11qoQz+6uGTPVy1h1r4pt47A6BUCqM+OUNX\r\nC+Pe5vBdX1K2YpVINJV6Q+eLRwApiQPAw2t5Vsa6b5tQhN20LbZPxBo/91IK\r\nSc9k56GrkdWMNnUMaI8XwzOmQLQj1ilQjhVOCVvtUGO9HPa6uPThv6t0HlhB\r\nPuq7fK3226icYYCtUH4UESDs/N0QvYsmA13hoMKfpkTE+K/MZXffLSMl4YKj\r\n31K5x1cT2IirYmTdmzouctpZJQ7REMnqqYMgSZP0SrJ1aTuNeMA5RILuuC3u\r\nS8faQVi2FnEl8PYd4wwcKw5Ip30Uds2SYBdiEhLbb9BoBztL6OSIscPMEiXy\r\n7XcyrQgP3gKue9Tm6rAnqXYOTZkA8gQI+Q8=\r\n=I/pe\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"0980467335d47e19b4ec72e32644ba0a08bc0c34","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.3f667fac6.0","@material/rtl":"15.0.0-canary.3f667fac6.0","@material/base":"15.0.0-canary.3f667fac6.0","@material/theme":"15.0.0-canary.3f667fac6.0","@material/animation":"15.0.0-canary.3f667fac6.0","@material/typography":"15.0.0-canary.3f667fac6.0","@material/feature-targeting":"15.0.0-canary.3f667fac6.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.3f667fac6.0_1668031544104_0.1535248992495497","host":"s3://npm-registry-packages"}},"15.0.0-canary.faa28c1c5.0":{"name":"@material/floating-label","version":"15.0.0-canary.faa28c1c5.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.faa28c1c5.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a3b684703886c5d373a18c6c0723028e32ea1500","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.faa28c1c5.0.tgz","fileCount":33,"integrity":"sha512-QLhAFuW6YOtzkeW/sJ4l/22LqagAyJG15aJvp4MpLrq7XQCoK7khjVf6BnWSbm3L36W/pN7tUEwZsuHQzkSPMA==","signatures":[{"sig":"MEUCIQDGu1k/d7KldVr7cIRwY/aM7qDSTw+Bsv/vXgx50SoD+AIgM+Q19lCw6kDzCKxkNXferEhPmkNLSj/Gw8jzCIiLMLM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjbnnSACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrZhxAAmoXFLPRPbuO0P8nvSZL8vkRmlVdzWkXxJWcETcltevBq2Ef9\r\nPALM/l+/7g/S5zioe3pSpAlRXaHXCIVHR8JBmztfErocyjGCwoU+duueD/QA\r\nNeEnCnfKrhV1ZDLS0Ni+6uXfpJhh8qVVnhMROX+EZ8OrcGMQWjsqTK/+eoxH\r\n5k/vw9GRCk0VVvfW1CUuco4mJeSbyNllXVugLdNXqNgdRlrV/Vq2tJJneJwo\r\ng7imExok3vaZis6gzEu78lf5QmODShxNxnRHJB+fsKgxIMdr4qzZJ+Gtbm1v\r\nSs/8/ONTXN1Ht1g47xJcsGJB0bkQw3IVH/CitMMf6NpH4ioctgIM+6f4ScXf\r\nMI6XFFNqfGoK8owYI5ag6wi+7feWYndv5WdARa/A5Zxgke4zivATOm6lGgRX\r\n7cHQGvx83J9waiSQVKWyGfPts6dUOhykr3cgUWakk33o0EYN4MZBXokcDJVf\r\nYgjNDt4Nz4KV9yyOidxBrV4l1rnrgZhD7Ao2bzLF1wvs1xrHIYsxWRqihxVn\r\nX2iy+T3YwhbakkGs+qdo6lFBipJVC6esQKI13KFSDeQ0DE1jEf+gYpms+lL/\r\nSgqfUGydYRp0sM/VED42pRB0CjohBQqyRLoS5A01vnF7rkJFXTptrULWmM02\r\nQGRWdoxAmyZaS723sfAkFYxMvlaBGotnc8M=\r\n=3u1v\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d36350ee1c0fb11d053acc0cd521939199fd696f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.faa28c1c5.0","@material/rtl":"15.0.0-canary.faa28c1c5.0","@material/base":"15.0.0-canary.faa28c1c5.0","@material/theme":"15.0.0-canary.faa28c1c5.0","@material/animation":"15.0.0-canary.faa28c1c5.0","@material/typography":"15.0.0-canary.faa28c1c5.0","@material/feature-targeting":"15.0.0-canary.faa28c1c5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.faa28c1c5.0_1668184530289_0.40328861341276245","host":"s3://npm-registry-packages"}},"15.0.0-canary.a868c7866.0":{"name":"@material/floating-label","version":"15.0.0-canary.a868c7866.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.a868c7866.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5f900e799310d0fab4c623db2e5e41da7b97ba44","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.a868c7866.0.tgz","fileCount":33,"integrity":"sha512-kCXN6mNcZ9dmj5eA8xrj03dqJ2o5ct1R2pkI9a+jwywN3haIQ4PVES/bgXlIGITOQ9q09zh+3A0kIa+bm8kqPw==","signatures":[{"sig":"MEQCIEHbDzBAmWOGxtHpDQmk9X8Vnp5ndekB+Ows8rd8MIgPAiAS+ruFdUXjJnFOrfKzJw9ILIRpKkJMhW35YVtHNVBbLw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjbnn+ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpnlQ/+I8X5KABA18gggN5xMcgDtrA5hamRmgNUxuDmMnJtCbnMS7pH\r\nd7mG3tI/oQyVAu3GDJQmd7H00v5tO0DJhhYm5koexZylIXlisDrYnERugJ5C\r\nQJIu1cZsSgjrt7brREf9LQRfip1Dm5n8p/PvhUmOb38Uub/13RzTWx0oL9MA\r\nhyNVCBcVxTxOPoX3sPmXBLrPxHF4BbaXwriQIstTPxeGwj5aEPx4VLrbH9ot\r\nV4A4xSf3hx5DzassjTj06gpHhfkWhnIU8SUmh6ZH1TdWWlLufAtH4Oh/PLNM\r\nZbpwCnUA8hTULhBO7YG096QLI/DKn1xOH3/+UHzyF85VyfS0qo/J0KlNx4L7\r\nKWdfOLW+To57x/WL7JBnugB143cnFE2KhTlJ8wYBCLaxfDpGjICETjRsJW/0\r\n22Qum3ZXgVh9hVCd7K027P2d3T4RIKCHZrp12Udjsg/H1O+K76TX5F+L4A2D\r\nYWcMqlgUtigI6hHohk7UtmP4gOHL+wNQkdBTzDW9+UZ9mluENYHJ6i0QtisO\r\nc6KC+scCTQ/1q6fIphcyJs9MyJlJXueNPsoAUXRgun1WE/DSLTSp89zqLSn7\r\ntxKA9Rclqu4i0rV6PjfppiQ32fkna05FkMWZFDi+Fa5PxjZkiL2Q4A62hqh7\r\nX0kQfIzrCcTBKqSf2T3dp0hxpLrEjPWPyCo=\r\n=e0S7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d35416d7d3365898437e980f43ade48e60904e85","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.a868c7866.0","@material/rtl":"15.0.0-canary.a868c7866.0","@material/base":"15.0.0-canary.a868c7866.0","@material/theme":"15.0.0-canary.a868c7866.0","@material/animation":"15.0.0-canary.a868c7866.0","@material/typography":"15.0.0-canary.a868c7866.0","@material/feature-targeting":"15.0.0-canary.a868c7866.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.a868c7866.0_1668184574230_0.9165707772096361","host":"s3://npm-registry-packages"}},"15.0.0-canary.602fe8efa.0":{"name":"@material/floating-label","version":"15.0.0-canary.602fe8efa.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.602fe8efa.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5a3c57a5b24a78ea69fc8d2f3c1d1a0a5df9d930","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.602fe8efa.0.tgz","fileCount":33,"integrity":"sha512-d/lRMtfilFrULDk6wJGrr5SwolxN70Nm5+SpnN+ER5IeZRL4dOS7KTPicdUYtGisyOiyfPVj9mIrUMDdPGznrA==","signatures":[{"sig":"MEYCIQCnGxcAUotLGArjEPPkPIrRlJu6GTGqFefBzNuwGNH7LAIhAOSojKptpKhuzISvFcGB9TglngXA2fFMfIYEmCBo+LK7","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjboJDACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoatQ//ZEEyO3DhI/ho/0xXB0W27TWf4FfV2OUCA7q5k8xnqWXTUq0d\r\nUMKKJBDnP0jO+QXaLrlIRfQPXPhAGHM5kydQPxkvSveXRlrbvIki8B50z/Ed\r\nwH709hTys5M2o0uCECjNxmuNkSGnn1ERIv4JxLtIaq+FjJOu0RJHRMHoxvjH\r\nxtkjpWZT8dRjCNUgofgx/88gGAy06U8gF/zy2GSqIRmzIaQ06IQATukd7yOu\r\nwV1XBimEwpmp/2bRjhFyiuuDUyPDQMjlm7uJVD6T8cAActWudUkF7Cj6kLVi\r\njcJ/loHwc5U1QUU9RKkRNLwfWsfzNHGS3kz0Gd8BOCDQVpr7MsCfnhEeFEKY\r\nju0AnVBB5Nm5lKLfp6JsBbFJHhHL0SnQ7CCkVOYcl52VroEGzwEAkAXq+cXu\r\nsf1BZA3B5DN14BNG0MkJV6+clhTu1hs3bF+pNt7pSgfM1+bSoov2861GR8CZ\r\njOynewJOcc+rmd2IZPN7qo+mAa6FwPO63XSuzyXbsyx8qnQ4h3zKMYb7dT9m\r\nFxzFmpulWry6mYGJkHL5NqreEcqhdMOxXQHhrEDFYucFosBpgxCDPVMY1hzH\r\nV+axszP48tNDmYg6pF75vlBkP0W66lxkpc3bP2U/+OgjldJkDbJSc+4zHO3p\r\n4hBSC4hrrh2Ej2kh/gp/wcDROgd4NpLMYLY=\r\n=bjed\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"6bdfaf09ca41b2fd7e3db4797bc2f536f8fbbade","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.602fe8efa.0","@material/rtl":"15.0.0-canary.602fe8efa.0","@material/base":"15.0.0-canary.602fe8efa.0","@material/theme":"15.0.0-canary.602fe8efa.0","@material/animation":"15.0.0-canary.602fe8efa.0","@material/typography":"15.0.0-canary.602fe8efa.0","@material/feature-targeting":"15.0.0-canary.602fe8efa.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.602fe8efa.0_1668186691242_0.5633631097752059","host":"s3://npm-registry-packages"}},"15.0.0-canary.558c2be62.0":{"name":"@material/floating-label","version":"15.0.0-canary.558c2be62.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.558c2be62.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"eb108bf24b2fdc6910cae9c901562dded7ad6b08","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.558c2be62.0.tgz","fileCount":33,"integrity":"sha512-cSAO6WKDc8zu/2fNzfYAxzcyYaEOWZJkxVpJeqCtiShyGF1+HQbMWcxWPxtTu/nDK7cnnPlC6ze3L4PlGv+THw==","signatures":[{"sig":"MEYCIQCCALxZnoOQlFResUinsU1ojrIOdCCkqtrULQKtdfeESgIhAJzS6QSeuGk/vcO5Nie+TT93bIRoQhfswy7vxLQ+hUYc","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjbtBsACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrGtQ//Rt38y6roQpm02Bhj8e2cTqR+TxEAtI63CL9dni6IbEyUeeRG\r\nDny1GGT4eu/lNi2h+pYfiGjiPLuRRd9AZQZIfyovR1MBujmL1BmgJijtNGx6\r\n744tLjKOu3oFPGunYrgmBhBLbpNoPcsX38wU4VED0/p6Sr7ScpaNUuFbBQMC\r\nCs/+IPBRzms1p6NOkbOSHkJ59JjhF0T9owwko+lRpZ7x57jXmE5vLTyFhIU5\r\nGK/1guFsDdo5VbZh5y0xu0HuihB8axG6j1GIC8eO/kW7Ey1wYA2/RDu5t+e4\r\nFwlR7gaD45Jc/8A8+Lm/JOc5dUVD5a6nzpZsPr8sQ33Mpz5+cnk9KNz0hPV/\r\nfQ4ylOoM2cLRkDUVPVp+UH3cCW6FPOmZk7I8aZ48bt87d1syAyPco9Prgq5U\r\n1X5O4laqvTNwN/+KdYI/iSm/TTtOkngaeOvffNnleUaYYeaFKS12/USpw4Ra\r\nmegID1NtUTUUNSY2AC9Q9fQqvfGJIGOvYVrf3CzBqSvzzpPVo6R9eTnp7XF7\r\n4ueoei+w6xzyKT12UFsd1U8ZOfwtq5bEI1jBIZmSKAdjtglzSX5hvt8haXh8\r\n2pdclterF+VxpXhOP4TATwaQdu0NaeIVfjTo/1oM3k6jqU0DizlOLta4FX6L\r\n5RnY21RRbCVemox1ZKJnjLFngcEqKwpWUxI=\r\n=zT4c\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"64666caf2aacf562ab6ab5b701e89f28a9bb5c74","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.558c2be62.0","@material/rtl":"15.0.0-canary.558c2be62.0","@material/base":"15.0.0-canary.558c2be62.0","@material/theme":"15.0.0-canary.558c2be62.0","@material/animation":"15.0.0-canary.558c2be62.0","@material/typography":"15.0.0-canary.558c2be62.0","@material/feature-targeting":"15.0.0-canary.558c2be62.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.558c2be62.0_1668206700316_0.12441501061701254","host":"s3://npm-registry-packages"}},"15.0.0-canary.b5c13a7a8.0":{"name":"@material/floating-label","version":"15.0.0-canary.b5c13a7a8.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.b5c13a7a8.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"519947d9205e4a8397d6f2be212be1ee7ccbae7f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.b5c13a7a8.0.tgz","fileCount":33,"integrity":"sha512-J6JZ1wW8pPP68Un5zWWTwyUI3ts32oOZU6jQDmZeFM2nxN9SD+C9YwfbF7N3QlGRSwMboX7TH+ulyzyWK7jN2g==","signatures":[{"sig":"MEUCIAUYAelVP5uWa6rSlmgBTGCnRYl3JdbeoDHnfsYRVxVvAiEAprYRAy2xUVHLRyxlKVZfF2wpBDNSuByl3cZHV/PcWcU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjcmWXACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq0khAAnv2QlqNftJKdqTUgg+eFl+EZFg3GeYVbyJK7JHBWRvoaZrL/\r\nUxikfD3g+ZlU6/AmQTdF378BcK9S8YP0BKOM3/m4klPcZacPchBeEVSOCnP4\r\nVJ5y7Mk866EmYD2ZU5ZpiKohJCnXwzrzTLFZVcKzBdjvkjkS/2rrKAncKSeN\r\nkslWdRoyQWUqaO0434Y8fVlrisEoZCbUzEZYQflu8eVatpbO7lJJah+4tsV2\r\n0W0Bw0PNhCREWOZ4zH03jUcbE/5EId154sy/S8o5Vhi3doMe1Xwra5I9n0c+\r\nC4wlVqV0/1TKExTwCzOKK1CBnnt6KCEGk8wDeNWs+GWQtlunDsSMIJ7Irazc\r\n8S0jJfQHcHls7Qr7W/d5BFmh7MWI7Qj6tzdAXbDChPU27i5Qe9JPgxGgGdTR\r\n4jHP2bs1d30DM39EfRW2piMZ0hpJ2aB1IuiAo8gfA3Sw49gGrl5Yf/ytCm/O\r\nv5dpGzjw9F9XQaqglQpdUdLBBNkONIrEA+JkqpWnDodPBurs7OyS6bKHl4jG\r\n7z0cJwddSzeW55V5kX6a8KsLhH6DQ9CBfWTANAoMmz3SRQYN6JGBQVi10hjK\r\n+k7YRQV/57SX0WtDB+U+EUjtmTkCChtcgfqKbj0+gcF3DPr8/z30QTkkPOIX\r\n+bJtuBOGk/mTH3j163c+lHFo0h3Jd/4DNYs=\r\n=YW3L\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d7e326425877e3ba53b64755680e3503090a01cc","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.b5c13a7a8.0","@material/rtl":"15.0.0-canary.b5c13a7a8.0","@material/base":"15.0.0-canary.b5c13a7a8.0","@material/theme":"15.0.0-canary.b5c13a7a8.0","@material/animation":"15.0.0-canary.b5c13a7a8.0","@material/typography":"15.0.0-canary.b5c13a7a8.0","@material/feature-targeting":"15.0.0-canary.b5c13a7a8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.b5c13a7a8.0_1668441494719_0.5548847129835037","host":"s3://npm-registry-packages"}},"15.0.0-canary.a6e1c0702.0":{"name":"@material/floating-label","version":"15.0.0-canary.a6e1c0702.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.a6e1c0702.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"834611f2b5dcc3f5dee2ad97caf3a85bec185f0f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.a6e1c0702.0.tgz","fileCount":33,"integrity":"sha512-a1kqwIWULmtsu1tDeBqGlxJ73awRz9H2iQE7pRCOLw/XjKIY9xcvI8jq29B9WWUx1WgcZMPcMH2S7dcNpbvbMA==","signatures":[{"sig":"MEQCIGuRtEnR6J3UHUiHeVF24JAUW3uCrllurqbISm9sD1DOAiBHGHfCILbocCUM5pFjo163qVci8X/sS6uBvextCJCZsw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjcnpWACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqzqA/+La6YLc6eGDMYXHmz3N9CiV9pOjqlD+qWJlrbgDpIsT9udTbl\r\nDwjIJq7i29ZgfyOHTtXrqhkUSkwHOqprORA0E98UzhEctSQdyxs2TFNzXera\r\nuuZ5XYux06omuDFb0U7tRwktlhC7OapqYUzLIrCNnqxoaqFU2Ow+kbNC/Ks2\r\ntAORP8o1uGDPxXTbA3JAYq1o5BSf3ujDJLgg1EKN+qGNXN6Jfmd244fT16qQ\r\nqguWQYbVx+7AhQi+N90Fn+HMXNSirgUC1qiUKjSEH26+Ci/KVe1G1GNFyzPw\r\nOCuLdzhyCZJPMdzUjzpWgEEcw+0AZWySbyBAajRaoaEiPDvpJ4T1LRq5QsYw\r\n6Rtjr5jqtPPmizSLEu/X4xx09KTh3DcLBlVAh3Cv13JJPmcGgMoU+z1RY3ll\r\n66ijHLsfBSDctSQuXXnzH3jPztpimJ3hCTVsWOYoRz2E+72L8Vqd7NiiZBdT\r\njy3ypsi2XR6lr9Cg/n+hmZSBGALd3BNEhRxGIElDTdtRc1rltRNI9g45r4O3\r\nYCaZZ4PJVgkNKYG7vvZRzY+dZgare8KBgiWZZyzyV41l7oXOh/QcMiMmP3ii\r\n4rtEm7Xx/CzfuSieW2DyG3ITm374UVQP06SVC+mQBojQMYYG+FR3ZdOPHMHO\r\nRCIyS8Je46bue++9jatIWpCniGnWALhQVig=\r\n=1uvq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3c1ee7333cad68ece747437d4bab1a737d6ea96f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.a6e1c0702.0","@material/rtl":"15.0.0-canary.a6e1c0702.0","@material/base":"15.0.0-canary.a6e1c0702.0","@material/theme":"15.0.0-canary.a6e1c0702.0","@material/animation":"15.0.0-canary.a6e1c0702.0","@material/typography":"15.0.0-canary.a6e1c0702.0","@material/feature-targeting":"15.0.0-canary.a6e1c0702.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.a6e1c0702.0_1668446806648_0.9359014189013701","host":"s3://npm-registry-packages"}},"15.0.0-canary.b6f8a06de.0":{"name":"@material/floating-label","version":"15.0.0-canary.b6f8a06de.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.b6f8a06de.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e283159767954faa0835cd728995c485a4f240de","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.b6f8a06de.0.tgz","fileCount":33,"integrity":"sha512-6DIrkEO199qO7h1cfyYC/tYzN1olOMDTGRf5jtUsuajwQWYI1DzNggOaWEY8H53FOs8CSLBNMIC39Lrhi0UdLg==","signatures":[{"sig":"MEQCIFwqMmVDNECbOeJpCYfRI+30rLldIAjwgd+bboTOEs/CAiBXuTAjg1/XaEGpn54NcN+RM++eV2n+yEp2sQnXrblEbA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjc1ueACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrE7RAAl6jSa4zAuprZbMPSNAucc3Y5KSryzrm7wg6Nkr+supGcLmHW\r\nvH9TAs10v9ZRyFQJFwfzEMK+S1lzn7RpSOOlr9X7Ne4PXTYVxrGDHVHCGuAB\r\nmIuizAgSHNL12cQUGlcvYL4UHrt0u2bjr9kD/NlJHk9Bo9iWijUp7F2mdK3y\r\nBpwA+HogZaXCqcAhFxoLhhy+nfRZqKj5FUFf6wy6n9vJXCZRPUq03v2rskb4\r\nOI/UKnb+pUQJhC35tLiYcPAIX6qnmVqjnTi9Re2vVvoxV/K+A/PCR+JwLjmP\r\nVA8KzfYPsquVghfISFxzabP9DU+XrZMj95M6xAgAKzZbFE+HNYYpkmhruHOW\r\nz+PyPEztKOHVAkWGkfYZfYmQ35jGr2U2ndNSY3PbT98QqEE89bUPvFeLj6OW\r\ncLxnTFTwtEbVflwfmeendGva8a6uU2OxrAnAUk9UFSRX0EM9Zifyt7vZry2l\r\nnZOoq7DBgMSrTKa+d1K792ao26iGWTGTQ6+HvqpefjxxjgOnN3OE8KrXe+TK\r\nNMq3q4t3DM0r09zT6WrRXumc8SQSYRDL5CKoae7xbDqbIqxxNvni52b/9QI0\r\nQxCXWQPynJDlr1BsSjNcD4ZMghkK5UBV3K5IHHU21ABl+Ss1HgAO6TCajzsR\r\nIdLXm3UreDVPjFeK0x5K/66sy087KKaJxs8=\r\n=i0xY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"92681882b16f14e6a94df4b1ac983fa86e242640","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.b6f8a06de.0","@material/rtl":"15.0.0-canary.b6f8a06de.0","@material/base":"15.0.0-canary.b6f8a06de.0","@material/theme":"15.0.0-canary.b6f8a06de.0","@material/animation":"15.0.0-canary.b6f8a06de.0","@material/typography":"15.0.0-canary.b6f8a06de.0","@material/feature-targeting":"15.0.0-canary.b6f8a06de.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.b6f8a06de.0_1668504478314_0.4734641791225387","host":"s3://npm-registry-packages"}},"15.0.0-canary.0163f3ba5.0":{"name":"@material/floating-label","version":"15.0.0-canary.0163f3ba5.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.0163f3ba5.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"27ed20c6ebe7fc6d4280fb7120db977c143587ef","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.0163f3ba5.0.tgz","fileCount":33,"integrity":"sha512-yT3zrtmXnXlTgvVGT2/Nkpuo6f5DP9Un6LFugqb826L0N8+lFlAJCA39v6x2HedU+LD4BqHTY+yDwKdqikZLpA==","signatures":[{"sig":"MEQCIB93Iv4AWo/mi6FAV6/nqfTfipE6QKj/rZeXnRILNuppAiAsFeO8jTegHR0yZAr2IxKicXpdrrLIEcxxoEhXUMXVPQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjc9QLACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqmlQ/8C3fMqTJbjjhtV9ApfMsKCoGRyWwmSKXzM7Y4nRTcIJhj4ybv\r\nfveUBkPL76aZ3CzwUPLNFwodn1uqy+8/lrXe0hmYEHWLjMA91pmCPlO9p5zW\r\nCpStlg3eFA8N8/IoTqNVT5DuUt7pLikK5Joh3n38XG5cIRz+cXsSAyGGMpXH\r\nvmPjQxkeQ/O4ZZ+IxhLB/tbLhtTH66M9Kx7sVqpH/Y83LCMxp2+0nIIQz7EX\r\nEik+h7//t7rZ3mykTU/QnbAtx47dBa6t7iwFKGd21YLD+9ibfdxkWWwnivDO\r\n1kZ1fLXLNKWLf+LNhlGxYWfJV+hBGl1alLyKEimbqO8ocao5UZKjfecuWVdf\r\nNwYMh3Z6qTrUKkhH6v3n1/p30scW53hM7x5dIV3xxTwMDYPuvbl5Q6vjPr9t\r\nUgUcikUACutdvwoIFYk7ddYiOhq4cDz29CE7TJshyLI5r3B1kSNzLYIKaEpD\r\n6tZnviuoE42onEOn7lp1np+3vbhVvZ3a2L51Rff9hmuxzxISvC53Hfr5jqs8\r\nrW6XRs1VeRclOFUNOoiRKCpxQddp35qz+m95xnuXSV7bs15m/mNttyquFACW\r\nfprhedaESZnhLlSq+U5KKHbW6yMvXxojsHamy5Z9in9deCfSHoFXUl8sfF51\r\nF05wAIzHtEKQqwQ1Is5y3DejhjvJjOZXHUk=\r\n=MSxX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"4198cde77ba33a68c74eb5e814d92df422f464c8","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.0163f3ba5.0","@material/rtl":"15.0.0-canary.0163f3ba5.0","@material/base":"15.0.0-canary.0163f3ba5.0","@material/theme":"15.0.0-canary.0163f3ba5.0","@material/animation":"15.0.0-canary.0163f3ba5.0","@material/typography":"15.0.0-canary.0163f3ba5.0","@material/feature-targeting":"15.0.0-canary.0163f3ba5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.0163f3ba5.0_1668535307553_0.7834810618945727","host":"s3://npm-registry-packages"}},"15.0.0-canary.66c5cbb94.0":{"name":"@material/floating-label","version":"15.0.0-canary.66c5cbb94.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.66c5cbb94.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a95dbd11f5891df3a497a55b9890f2952ac33afc","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.66c5cbb94.0.tgz","fileCount":33,"integrity":"sha512-GOS5k5lvG1F7P5+nAJDXEhAdAF5UpQDIeUUcxCgBFr0QtKed+0b6UsH80D6n69XVWh4/RBvLh52vs36P2NjD1A==","signatures":[{"sig":"MEQCIBsEefNj3esvfV0xi9B+sOSU8/uxorLZJEzbNaQ7P6InAiALCrFjeO+B5VfY49ixUnVP6xnJ/mcpr5S4n77CEhix0Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjc+ipACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo3aA//QarhrtMpno6JW48g8eNUZbnRpmcCy3lLifoCaKZ9o7v/3iMA\r\nPOxO9QRhpPQ5/myEL83etPcOcc3u6G2luP3L5AjGTTeDgIpE1mTSo4RNsWTP\r\nkXIpLGDhKkVh8Ot21AlAud85HzTx0FsPkSYg5xpLWM4rGoSoQMUWQJj0WNFy\r\nJl4vdsPbefwvVk/JBRNJ5tyYxVF8euKiToXkvPL2AyWaY7FxXwiAzZkfhi21\r\nQLMR/YvslAj7qntzCfOcOpxhMmfXGCM+eE17gFzSAqCpx8jOljGSeHEnB+7w\r\nNmt022K0ws9uEuA92o3+fxYCQSwPyyAvtRVVoQM3wEB5NoZ/lx2Fd9FlJXPT\r\nsIUylx/dSV9G1p5CULxuDyMoU5FHbz2zd+ADBGDDp9iiEs6kx/zMpx86g5jU\r\nXQAeVDcBYS1vClM4W91J9TZDr9sSKYRlZ5X1RHisMnkCogopOqdM+dv5CfkT\r\nH2z/AP5Vy7V8E5D0eax65EuSPmWOfcDaWWME2Z0cvsjRmiYxAAN/ujo/AhbR\r\nr4A1J2BFbb/v0e+os5XGAK4SnHleSD8DIwlsg3nexi0QfjlPWVQ4prUcXGhL\r\ngRCp/9MnrZ2nSAPLLAwbXhxqefXEDzmh5oybaIycaccQuKGN2lRJYqIm1fFJ\r\ncQ2mslRyDdwv26WAO7ZGdhhwaUMX9k8OG+o=\r\n=R3kR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5d01716a4e4556657b2c4ebb469b826660673327","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.66c5cbb94.0","@material/rtl":"15.0.0-canary.66c5cbb94.0","@material/base":"15.0.0-canary.66c5cbb94.0","@material/theme":"15.0.0-canary.66c5cbb94.0","@material/animation":"15.0.0-canary.66c5cbb94.0","@material/typography":"15.0.0-canary.66c5cbb94.0","@material/feature-targeting":"15.0.0-canary.66c5cbb94.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.66c5cbb94.0_1668540585093_0.2530693337684884","host":"s3://npm-registry-packages"}},"15.0.0-canary.b01136063.0":{"name":"@material/floating-label","version":"15.0.0-canary.b01136063.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.b01136063.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"8b0827a3021977957425787fb237a6d0b4974c90","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.b01136063.0.tgz","fileCount":33,"integrity":"sha512-QNbIa0KcRllFMVzFpLuKLofemLkNBfF+N1fhLCCDny46613jjbwdoZnwp9A8a7mi8b/ofRxKRvDPFEsH6sWwDA==","signatures":[{"sig":"MEUCIQCr6/4wtNjmFTRszbZHKpqS2WeJ1FzgorjN+8Jn4XqqmgIgKgSBQxJUD6mAqCGoenguPW3r6b5lWVTQm5nCuP0blSM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjdCuhACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmom7g//SGtcnZr6wsUB5JwkUV887adybuuWJF7YgFcRAJhSailNsQ4H\r\n+7ukwrnF3TTkdqs814/ABhKun1kNxwIeUN162UpCZ0XbXfTKVk5WT+SLuqvE\r\nr567auaRi5se5yNkQnnm2TvRh7j7rn/f4RyujhipDgi2KAQTpA4KSWjEUzoA\r\nq8m9fcuQ244oMIw+P9hHYvf+EO9jBaTfQB5aXSI6OBkEsR2m1hVrQaREvTBd\r\niC37Bm/i870MThUEgSqHqLjbi0Ci5NfjmqSOJLtUvDNV3yAaI6o+vG25hPs1\r\nWkJyDOKbw1B3Rsky8E6jpWFR5Qbc9XnrmbBydmuq7epva7RbKEgV9BqU+1Bi\r\nWsF4fmgz4Fb+7JT81jAsYKKJlR9420Pdyk7j2RPJwHqw1A99xYqlwK8LG48s\r\n9yYS1v0RuU+vsnZpIBq8FnYUzxSWMTonopsepqkAKYFuPTNiMlTrx/um5dzI\r\nYHx7IyU+IjdKf/kzhhdzKRwLIBNOC4FvX93ReZ9GSEW02ccwb6A0dyXussYb\r\nDd6UtHDQNVvnOyMMo3deM6kr8qGE0+INn3s959o5ZDJxuzLr4q+CWL3zn+H2\r\nWgKq7Iz68d7UyqlgCC9bQWuwk5KmX9B3fgkXm2rZfTZ2AqS8Ww2HWFGVuCDv\r\nMaMCnVqN9LAgABB/W+MOUgmMRmGL7itVrN0=\r\n=OKv+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"125921cea459cbed7dbe3e1c938761a0cc03a263","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.b01136063.0","@material/rtl":"15.0.0-canary.b01136063.0","@material/base":"15.0.0-canary.b01136063.0","@material/theme":"15.0.0-canary.b01136063.0","@material/animation":"15.0.0-canary.b01136063.0","@material/typography":"15.0.0-canary.b01136063.0","@material/feature-targeting":"15.0.0-canary.b01136063.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.b01136063.0_1668557729267_0.29184151126928826","host":"s3://npm-registry-packages"}},"15.0.0-canary.01da0cabb.0":{"name":"@material/floating-label","version":"15.0.0-canary.01da0cabb.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.01da0cabb.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d2b65fca974e8a42861c6826f14bb0794140b2a8","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.01da0cabb.0.tgz","fileCount":33,"integrity":"sha512-eqh8ebnh5p/sP7eBJKIUhvyxcXOO6/TzT76trcSEtcXvhZc94lJnaLdUGZ3q3JpO+nVHG0LZI69QeZLGC9+iYA==","signatures":[{"sig":"MEYCIQCDkI1F87eCyGqBiD4mGkRcHIq4YoRhsZdFHyPY+a1EcwIhALkxRhxR/CSZHi7dz5JVmkMrwfmpJSjxwvOtsO4OTIii","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjdKmYACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp9Ag//ejw8emu/ycN+j+WBixlw66x5w/Ap9Femfr19yom0XYCflk0X\r\nlZzAZPQguO44R01pMrubOSi48JqOPfHDwXz6CRAcLdnpHIMR60knz/hh07cM\r\nfRml+KFb05b4yDvOhP5yCo4Fx+evG5doVlB8IQ18C2lrBnS3GsRPSm9DGezc\r\nfyzmN5rypRupilyRZPuyqm1c3Dz9dMVqDDZmLFB0UbMK3yezxMVdiUo6+THY\r\n9rZxjSOLFD5OFJXIciyJo+67GqM5rY6NAq3cuDs4zwKSUUbFNrqZrHhncBZE\r\nXANZhhRD1+vHG0j+8oM5w6cjgancn8gg2cRvcPaFkKeZstni8zytFfAjcg48\r\n6MRIv49JttYvvX3oelWVwm/ntj5BD/X+gojkFljlisz/btNwBGOKwmjBrC2V\r\nd/2edD7rY6b/sSuVcgoTrD5U3BvPkvF/fuyk1uKjz7Cocna8XVXPQjtsqugO\r\n8f33TWQFA/akzI3mlK5TakmzDYVuFMZcrNn1eN7ASpUyBVMIo1vBhuGdd6Nz\r\n9TIZON4cvMAFxUBxrs0qljtfwbxphLHxbSOq9VnHpNWEUY0tdPjI2BOCJqbe\r\nzHamVKUWDihGkDlBJtv/kJOEoa/R5+bJNU4vaEdFxyCN2RAEmlV4tKPZJu7J\r\nUZiFu3TP73mwt6vd7H4zd9sIOfKzDCylapA=\r\n=DP36\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"63a5ccdac9b23a6c70c2bc776e20ab703cd1dbfc","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.01da0cabb.0","@material/rtl":"15.0.0-canary.01da0cabb.0","@material/base":"15.0.0-canary.01da0cabb.0","@material/theme":"15.0.0-canary.01da0cabb.0","@material/animation":"15.0.0-canary.01da0cabb.0","@material/typography":"15.0.0-canary.01da0cabb.0","@material/feature-targeting":"15.0.0-canary.01da0cabb.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.01da0cabb.0_1668589976215_0.5097733301505285","host":"s3://npm-registry-packages"}},"15.0.0-canary.4ac393164.0":{"name":"@material/floating-label","version":"15.0.0-canary.4ac393164.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.4ac393164.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"168bf66a0164da2cb12adc820d90d5d0fbdc6944","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.4ac393164.0.tgz","fileCount":33,"integrity":"sha512-VvHg/JWUzNoQcW0artbRyN+5izZaMvMuawvBHKSVj+gob8bSkmuUgKLJeYuAcPrIOVAoFRhNYlLHbE15C+HRMg==","signatures":[{"sig":"MEYCIQDyXFnvmThSMN01wqR2QbJdTQZU6bmRONwosrLlaA4BygIhANUcs3B0XYZvzPN3FYi6oFu524wQQH6sEBc4q/JXlqQW","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjdQyIACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq3kw/9H2ItUYxVi/vt1V5zeYKK3a7ryrPX8bjqO/IGE3ABlHqHrxXL\r\nlxKw0Mv1q3nJY+rXfT2kaSxq/2Ex8dxXmkDGfsO7JpWb3QaBSQ7beq7LCRID\r\n6tgbWDgUKKfv2ewMOwwyhJ6ql5K0I+pl8d/aR7ckBKtk+FxL37ECELL7E0SJ\r\nItJVFJLlUWiC/Gd4EFH48qrX+sZmnmWobRl2YoqUY7yZCVRhcwlS0xvUNpMI\r\ncLe63E2OnCqX7Sjnk9BVPo4jYKtOXt+6X+eJhNG3gdQPPWHjW7whD+qxPFev\r\ntMX98J5kBnnVgmtVUCK8+G+lgUSC0c208nSgRmGt88UWKqNj8E28of7rf6/L\r\ncCJcdFkQbZY/qY4SEOp3hP1kKe4SDMOwiVq1uo/QTh0py0HSNUWs7q1ZQina\r\ncTW3wkF0YjonCRgFNzAURz9lFPIXDNHbwtafQ16AbWVthgWthncfCuZyCpzj\r\nFNDSq6IFPursONs+6SpgTnDNW0ttLCckOYFCnUdVfFbpDATE7kmeRUYxBQQI\r\naWPEElqx+DqV6l0vbob5r/jWTUu7eqVqlrTGjMqxeZF44ZvuY0nNZcjsOvdT\r\nfUDBAGiWHIrbOG3lehBpCKvAnH2kycSxEMtukbamJ7cVqHoKLvob2XxjjOif\r\ndlBgH8T+MD09JMGFhjsEjVNGyy0gQY9dA4U=\r\n=7JRh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f14d3444d266ac4c6c92142c377275be3fbc5d0a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.4ac393164.0","@material/rtl":"15.0.0-canary.4ac393164.0","@material/base":"15.0.0-canary.4ac393164.0","@material/theme":"15.0.0-canary.4ac393164.0","@material/animation":"15.0.0-canary.4ac393164.0","@material/typography":"15.0.0-canary.4ac393164.0","@material/feature-targeting":"15.0.0-canary.4ac393164.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.4ac393164.0_1668615304391_0.9499746450350661","host":"s3://npm-registry-packages"}},"15.0.0-canary.6048fb563.0":{"name":"@material/floating-label","version":"15.0.0-canary.6048fb563.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.6048fb563.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"23fade85a8ac47af619f7d2f2115b85c59b4cd21","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.6048fb563.0.tgz","fileCount":33,"integrity":"sha512-XGgNaJpxRxp8NAuj8TYaWe8pbLixwP1yBsDSEMAqH4db4HhKbUHUQ6A8F1tUCM0MWyvkbjnBoKHoHSV+2scV3g==","signatures":[{"sig":"MEUCIAq3MuCzNhhw+Av38nN4GNtqIT9bZ3g9wZ2XSilyuUv5AiEAy0JgMBxPyma8UUKYpJsS9NmJAffReCsq3nKt03vRQ3U=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjdQ0NACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmpimg//VDXcKMjN5fqNCpbj83/DPumdikgrqpAroavUAb5IhO6VCJJ2\r\nOgrdOGh9n+zKdCMq8ikrvUYP4Y4AVnc+LceJ/7xjzuD12dYYYrIQacM5/dJQ\r\nZ2nKpP3iaNmHMiGu9/548v8v/uNGwuOZqmohfEAiigTYWJMlMLlz2YgXjeyo\r\nMHNSlc7lk6M4/2RRIzt6nnJsF9vulABx6CjzlyftA9jGMd48sRkxo3VrRdiH\r\ncx3VWUQmoroIo/r/ZLa/qEdBgH9WV+Us/BHoGRboFJzJkjhWmgGQJ5AyMGaE\r\n9XhhRylEymiJAz3w25afgUkRgB3MRuwlafdKY8SsoQqQIn7m7WbhJ4trM3nk\r\nksS4IeCC5JKAghgadmv9DTYjqRi+BfdrjEnxuOLoSvQ0vwBGde+dGtP2bsvF\r\nkKE+69bwm/h6OVDjJ/51Fy5yTEhCHxauQh8mfslM4WspKUBsj+AsJEVjavui\r\nUCE+5IsePiTt6nLKyz4E6CFV0rrqb/+FF4LgDtAI+otR89UMBMkUJdwTPPj8\r\n3GAa4gVwZSf9eB6gaffluO3XUtFKOBmejzFO9ql453JM53lE155EKxaULfMC\r\n7eGTD+1vnoD6l64Gl8bC5XG6otzDImsfKD2kMcXaZxlxhRBQj354TzP23EjQ\r\nHXsPuY8oamRbOeG3aYuItyCKsUjObXOi7Jw=\r\n=vZtq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"590020431978794ff2128a91f19756dff9dbc37b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.6048fb563.0","@material/rtl":"15.0.0-canary.6048fb563.0","@material/base":"15.0.0-canary.6048fb563.0","@material/theme":"15.0.0-canary.6048fb563.0","@material/animation":"15.0.0-canary.6048fb563.0","@material/typography":"15.0.0-canary.6048fb563.0","@material/feature-targeting":"15.0.0-canary.6048fb563.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.6048fb563.0_1668615437682_0.2632145217673185","host":"s3://npm-registry-packages"}},"15.0.0-canary.3777b03cb.0":{"name":"@material/floating-label","version":"15.0.0-canary.3777b03cb.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.3777b03cb.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"696ac7bb0c3dbb3b70f7f7f6101be9c1ce2e42e3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.3777b03cb.0.tgz","fileCount":33,"integrity":"sha512-dxLCKwV9W2NzO969XTyEStbIWpSzTmosfX7k5pmiloUHJ74pRPJQFIQbF653HnPK/4FuW7fZ6lYCdWDMekB4pQ==","signatures":[{"sig":"MEQCIB4/QZdXItHdDfpStw5lmnhm5qpvEdfKYd66PN5XXk++AiAiabhwlTC/uyE9sRNzz7pPwfKHFVhPc+Y4zj8Uz2Zcjw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjdS7DACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq9Ew/+NFldsbjH3xim2e7bB9tixXR2t6CfJgAJs6EricUABQoTOLJL\r\nxPePtW48FqVLoLx+vBYa7g21Z0t4ZcNZhM/wHeE4hzLHmNfcGR2yT7NbjNua\r\nxv+7VybQ2Lpk02fSegsV10I2V89L4liHgVGRs6ikpKXx/NGr8rSYzpObK0kC\r\n1gM+RY8Iub1/hop87c/ehS8cXmIDPioMYJ/0tNgKcF1GhBZG3zVqbSEgbeyd\r\nf3ElqUi9q2uJlvRPKqnNkdqyx1USiJh4dHC2i/yujebX0RT8yDjJOSHzDDX+\r\n+/9lNrHnnXO8IV1xtv+Ftml+Ry5Y2mV0Tndl4rRxxB52ET2VkZC5NzTouWAh\r\nXyS3SW29BoA4cMRzD+2LQs9vdi143je8l0ewTTKu4vYH78YdyI0fFyLl9Mzz\r\n3pC878WbuPqwx9Xzvk7ey9YRaGbVCx6Bw/dvw5YlOiHUHPfH8IOFAuiUzoz1\r\nNTfUNnu7HRfPwvuU76fgqdxZ4q+IUxXBYt5F+1pk+Xk+lOVGOhq5IyRw4046\r\n28blOWyNqxdsvVyY/UgdVN7JhiX000T1xzKx3J2qaSbJR0pmWWgk/Ne9oyJ3\r\nAPwYdcwLNFwUaZflSQPH1XKbRnf8NRmSLMc7c6g9VPlYByocOhFTFQ4VBOj5\r\np5eeDvloZ6qZg3yab+jUeCR9OomfHpem6Yk=\r\n=QjNX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e02f6251b19559b874fd1998a9f0bea7d651e41f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.3777b03cb.0","@material/rtl":"15.0.0-canary.3777b03cb.0","@material/base":"15.0.0-canary.3777b03cb.0","@material/theme":"15.0.0-canary.3777b03cb.0","@material/animation":"15.0.0-canary.3777b03cb.0","@material/typography":"15.0.0-canary.3777b03cb.0","@material/feature-targeting":"15.0.0-canary.3777b03cb.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.3777b03cb.0_1668624067464_0.20114319637605793","host":"s3://npm-registry-packages"}},"15.0.0-canary.f7f56fff7.0":{"name":"@material/floating-label","version":"15.0.0-canary.f7f56fff7.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.f7f56fff7.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c0797230d35123f4cc8d889006eda77917cad09f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.f7f56fff7.0.tgz","fileCount":33,"integrity":"sha512-Qdl6za+b6wd7wsEUsiqNRbZntniXmU7Yg9e365C+PrAdPskWWuGUsKCcFxrmupob7fgE1jb8ABW1codpUF5H/g==","signatures":[{"sig":"MEUCIFi3JFfX9GxZ09MPWQlWsCma8vf35VCNzHiF9Y1hUl22AiEA7U4CacyW/lPfCMDLsrl/w/urqOKkbsEUkdSLr/MJmzA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjdUA7ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmriTw/+Mb5S2hJ3uNhB/iXIaydFLjiV9UZ6CQZdwgRxAj68Gr+Kk1R3\r\n3q+2ZF8ovSPWKQ+2pGeFbq7sCmzrMP425I/3fl6eb5H5VmWHtyiAWBbtYK60\r\njzmQuZ4evblaI+Eekz1TC6nc+5bgqIVwlixaovvEnxclB0dwlo8NYNiRzrEb\r\nL/hQ4HcOVpBp8O+/FWPgP2Zv+5I/qGTFwAI1k+oG3kvmhCFCd75Kp4/IOvTl\r\nJ1qnLpT1uDChN4BTgQnzCHXCQMJaPPCN0JAjcMEqu4Svs16JD736I4X5iojy\r\no/NxxTRaKw8uhDuXSflkpjZcJMeDw7y9Ajf8w8CeoMPsn/qprl0ZGheyfW0u\r\njD9JbW7gFBlFeepD7biC0LOSKUAx/LGsPGtwjWbPjq6Fxc7aadiLoadx7HnX\r\n6ELaOe41G+uTgqVDjmgBUL5AFb65SeYOUoYwe3aoR2drzvzPv3g4DCos/hQF\r\nKYTwge0T+/UyeiZWuE7eHU7i7szaNOt4UeI+zor54y8gtUsq89ooKbX/lLW2\r\n62mKpx1z9HeKAjGNXnvQ6QhZbyJvHhESFtOnXrpcJ9B9DV5aeyMYUA5H6rOw\r\nM1e4LVx3vM0zdCWmI4HYE2Wz7WIdwidGb2qfMlOFq6xAVLl1TiiQmSLJBwCM\r\nl4Ml3AAAcOhnwrg8LMeUOxQJpIC5HVFOB1M=\r\n=pPtb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"bc90613e754d04f738197ec3f3f4602e9b362d8d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.f7f56fff7.0","@material/rtl":"15.0.0-canary.f7f56fff7.0","@material/base":"15.0.0-canary.f7f56fff7.0","@material/theme":"15.0.0-canary.f7f56fff7.0","@material/animation":"15.0.0-canary.f7f56fff7.0","@material/typography":"15.0.0-canary.f7f56fff7.0","@material/feature-targeting":"15.0.0-canary.f7f56fff7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.f7f56fff7.0_1668628539360_0.6839996625127631","host":"s3://npm-registry-packages"}},"15.0.0-canary.7c73f6134.0":{"name":"@material/floating-label","version":"15.0.0-canary.7c73f6134.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.7c73f6134.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"782298b00111b08f7904bf1b24d9d759869d175c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.7c73f6134.0.tgz","fileCount":33,"integrity":"sha512-5EkHX24jw2k0v42UjIx2szKPrfvuPNTerPfl/445uDES9Bem0rnmTqDXt9UijXddIbwFAUL8ho79KMLnkAi8Uw==","signatures":[{"sig":"MEQCIFZPgkaobZ37uulZmg8v0QtSDOJyKc0iij9kNnRBPL4AAiAIfx5IrQlHk/thApqT10vx3N7Aw1V8nlaMoXrW8Hd0Lw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjdUEfACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoONw//VubPkNCrKQ5jCZSCsR2b/Xp1aJuMS3Uz8eK0RHlgN3GkJXV6\r\n4QNig2wNvh5greutGxvNYNl9RLXIKc/zEpTriZpklDUWusXI7H7dPlaupEqS\r\nFC5lgaqgl7NTPwnJ04QRKNk4WvsHLdKdc57MTe7yhr/CQUlr7qhPeGBurf3c\r\nsM1687NpDOuturTIrnl6ZS2kBt3pS6xZHcnonsAsGsc+J+EhUX9fheoHq1cE\r\nD5+LEGwQNVEViOBEWKXPfWbKifJCMi0wMRbThAtIthxyNtl08RgmBodzuXE9\r\nm2XzefCJupswKWtEfZ+hVBULySDANBudPgKjpEgLy17QT5MOyIzIQeKP4qTY\r\nwtoHwB11MiJxML/TGTyiptxi6JSivI5RBJYtGvkFDrilCjJkveUbs4hmNfTa\r\n0Udxl+/zSMv81Uiv5KRNhaafZeexbEMQ0f0bp+iOn45yR2Q9gaKOEtGEsvCV\r\n6qtdcQt6EVB38ThzhBHnceLndx7VfQLZxdFV2rcr/pPRuTngfok6Uoi/UaSd\r\ng4ar5g0KuxzhXPl41uQt3YCUOduZHJe/M6LigPh2hkTZoSh9P7anW6BkjV7P\r\nu9txssloxdyjKxxKPga6cPznLo14485H6xCl2PJ4dPzllvhquFY01ymNnt3l\r\nkO2AtTn9VKmwqI6NEbBnzP2w96ZyVuAV3F4=\r\n=HKlm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"14f53e565ed77defe907254a486b9ecce4b45146","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.7c73f6134.0","@material/rtl":"15.0.0-canary.7c73f6134.0","@material/base":"15.0.0-canary.7c73f6134.0","@material/theme":"15.0.0-canary.7c73f6134.0","@material/animation":"15.0.0-canary.7c73f6134.0","@material/typography":"15.0.0-canary.7c73f6134.0","@material/feature-targeting":"15.0.0-canary.7c73f6134.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.7c73f6134.0_1668628767417_0.6420865750795408","host":"s3://npm-registry-packages"}},"15.0.0-canary.f1e037150.0":{"name":"@material/floating-label","version":"15.0.0-canary.f1e037150.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.f1e037150.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"92733f7feb8a3ac5a299add247c5b4f3761ada53","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.f1e037150.0.tgz","fileCount":33,"integrity":"sha512-BOd6WYU4soEiVPXHsx50bpXj/Rl+1ueGcU7TaTgZrWCY1R/yS0egSgze833XwNk/Ff6ehVKIudRjyqVJo/CXDQ==","signatures":[{"sig":"MEUCIDF3n8fuP1KEAWsNjUkPGHAOrVo/YgJE/8tDSGWxiFinAiEAv66bKPst4eZVaGEvEbXVDenUumSOe7B96A9RgdWCyng=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjdUJmACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrtGQ//UgmsDe9+HFYvc0Y9F+7SP0iWoJhG54mmQ/Qstg9YWB9WbSyi\r\nmzVZRyl5qHJBeeORO9a1DZb2PEN9i9zY9tWnvJtBvjhxiq8C614Z22rU3PSd\r\nzd3xwbAp6EOw47XV0v1kCx4vcUMoKwBIVQ/8wI3AnMSJCpY+VcWn7xh9ECsn\r\n9CXU4N+T0SFR0aX3Ybh0IhIIqpsbHIa+2f4eDGVekURfWtOLz0BWYnCPWoxl\r\nK32hL6vrrpJgYRHxEh2mNpg6fHdmMreYCf1OjWnHhIAaJ5Iqr1uPm77jglHL\r\nuWlBYvtiTqwZ5WJrBOhCrODK8RoGVA7/NKqUbPXjSjJ67N0/Hmdl4A5kPVpX\r\nvvmAGtRSyZ9+bUqGPLWY2EQrobdceXmICplVIt4S1R7sOpP2sKYx0K7p+Xxw\r\naLka6CR9KToLtFNNSa9gQZSyPamm0OvAzaU0IEQEIUZLJnlNCGFgKqUvTb/a\r\njgAxhUSVEKK4APUplvgrrU64SIgSxQ7OTIEGCEpL9uP3LDkrP5hfs9OBwQcg\r\nQPPNKULYpk1x6T6TGwpLyylZ84efr7GX9CRxDdKY7EDAp/X7gGLl/ShReVUR\r\nA10CYKl19dIzSGV0U7SKHmpQCL/CeUZwGzxOY2DXkNCV/KkhEr3w+IFSKIoC\r\nC6aLd2pjrnTx2RJjVUTlirW3TZCIjFxNK4A=\r\n=7Cje\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a639195febefa28bbed957ef46942b3da6a4cecb","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.f1e037150.0","@material/rtl":"15.0.0-canary.f1e037150.0","@material/base":"15.0.0-canary.f1e037150.0","@material/theme":"15.0.0-canary.f1e037150.0","@material/animation":"15.0.0-canary.f1e037150.0","@material/typography":"15.0.0-canary.f1e037150.0","@material/feature-targeting":"15.0.0-canary.f1e037150.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.f1e037150.0_1668629094000_0.5261554514434572","host":"s3://npm-registry-packages"}},"15.0.0-canary.40b18d043.0":{"name":"@material/floating-label","version":"15.0.0-canary.40b18d043.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.40b18d043.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"77f26812d0f816c08a9eb1a1f0a7761c8c5e8dfe","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.40b18d043.0.tgz","fileCount":33,"integrity":"sha512-k6LIAJ3vVfBqnobwdgixvo2nceUwXX0PF4QDXpAz/jlEltZPNWcyfqoc+z5a0EF0L34Ztb1M0tNi811O+TGa7g==","signatures":[{"sig":"MEYCIQD84hefQvjQDboxtbFkEgI9/Z0c6Vl/SVjtdz+c/GvzdQIhAPKvU6iF38umuPMJ7r2uu5HpURdQIjEqnw3OjVB2hc6C","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjdWsZACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqDNA/+PdbMbC8RtehVPiyU0u4Pp89dndksy3ai1fQ/CUra4hYQp/qy\r\nongg5Sqb7AOKHI5BpFm9xbBepT7hmjwiSF+gEs2XFuw44zefYIhiWwwGa9aD\r\ntxkgP0hPzcw+WbDrk3Y0JXjjJMdJAzkAAFW++IMUv1uPDiOI4O/z1nK8VbUT\r\nUE6F7XZgWCNMRkHNaY4nvbt5gbIPOZNqwRw/hpEKn6QoEAgFonIKns9dF5OS\r\ncpmne+axdwKoyLGi16hOHOPgeVYvqfB0A92xBMC68OwUf8KbjK/nUHkCKzjG\r\noaWsGcEh6yaxPPmah7pb48FJUXZBTHMuCBklyc8otPXeKNS2dtIEH4ef4bbj\r\nwC+2bOcs3e0+o+6wgSjBv85DkvwcgTIrYqr66ZMkG4UNJBCMeQZJESrqTSnZ\r\njf0hW2RUJ1NlTFzgXgpy+PFjmIdOVkzaHLe198Ayjwtx95cnhtxe0s3cWEzk\r\ngrdyDZXspDeRCCOWSuvtdarK00yjxVIo9ANG/FzTBXBVv9ZQWsZsbfVubUCJ\r\n2O/1RdqPRhJa74oceL5wYX/1cZQrtyacqclHFM9QF3/ixVhjJcWVFlTCA1+e\r\ndxxdaqWSOjH+sIP8jyq9urWtQYGy569ONztbe41X1lEB5YMflwdvQ4ivq3C7\r\n0ISlFoKD3tuv4a9VMtiwFggCaLApE2EsQrM=\r\n=zieW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"9ccfc97518c89cfcc2b5e776dafe81024d137f31","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.40b18d043.0","@material/rtl":"15.0.0-canary.40b18d043.0","@material/base":"15.0.0-canary.40b18d043.0","@material/theme":"15.0.0-canary.40b18d043.0","@material/animation":"15.0.0-canary.40b18d043.0","@material/typography":"15.0.0-canary.40b18d043.0","@material/feature-targeting":"15.0.0-canary.40b18d043.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.40b18d043.0_1668639513692_0.8262352809378335","host":"s3://npm-registry-packages"}},"15.0.0-canary.86bde5c06.0":{"name":"@material/floating-label","version":"15.0.0-canary.86bde5c06.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.86bde5c06.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"0bad2c1aca3c2eb58b542c7384a5487faba4c86d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.86bde5c06.0.tgz","fileCount":33,"integrity":"sha512-9GShm+xN4zFqZTKrQzcD4Pcdrg+uCuIrColR8NDsfhBmvW7vkp/ZU8/JrN51cp8SkAjRpvAviwnOLsbbjWceWg==","signatures":[{"sig":"MEQCICqmEuWHKU9qLQaRUlR9wvoptoWFJYx6LQzWGYVFu8DcAiBH4WHMOrmyUnwBwvW3xasb4jW13Jiww9ZbkAg0Hv0Eog==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjdW12ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrbQA//SfroQEykQ9sxBpi/v708jXmrF4h3Uys53KaS+B50o7JNvpO0\r\nwhvp0hyNcrSlipWpGAgTYkjVdh7N47JU2YKrAMbWN87s29HC2kgO3aQXUfIw\r\nfWz0JxIm/SMRLJeS9QTjv/xA5iqmUsv6l2An1q+r3RYhyFa9rKtHVkjJtlal\r\nLBUAuqt5BOna/D3K4Fm7w2KHCA3BpDzjX36lxYMAbe8tv8m+/8RaHRGTy8N7\r\nK2R229dOe4qeatfvYMrdTJUVW6/NJJ4ENRnCuShkkexBsSXyzGqloB71zPtp\r\n8IM7eReOMeIx/K8YtmOf+Xt8C679hE9lPaoQgYlre5jG69nf8lY7o+dJxFKF\r\nPjoVwgI0aW2U24W8TmSI1nLjuLzhzgjNspLGF/XJlL5zmmXhwgOUO2rShu5J\r\nIUIdwSVVin8Q6UbGEx8zbh9THUgv+/j6C4OrLLBudFAnI00RmOuVGldc49Uu\r\nx8BA4DVzqDH2aZtb2pgz9upStmmZYRqcBQBIS9KMmS8tURksYF3eo7uuNaLP\r\nkWP5gVCk0bDt8+OEykEJRn2AVW9SW+n8BUiIkHrjWsinE8JyDP/MuDrb5VfP\r\ndp1EV7VoTFD8DMPiY92dxcGd+zCMAFcIOVhWLKlGY6STIFYNEnIA7n6N+a1o\r\nv2dgYDG21Ca9TMEF1mxMuhADyn4rn38RELQ=\r\n=7uN0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b9cd39d4936a1961536e39eb1df855c5164d5840","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.86bde5c06.0","@material/rtl":"15.0.0-canary.86bde5c06.0","@material/base":"15.0.0-canary.86bde5c06.0","@material/theme":"15.0.0-canary.86bde5c06.0","@material/animation":"15.0.0-canary.86bde5c06.0","@material/typography":"15.0.0-canary.86bde5c06.0","@material/feature-targeting":"15.0.0-canary.86bde5c06.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.86bde5c06.0_1668640118341_0.21128746463358095","host":"s3://npm-registry-packages"}},"15.0.0-canary.bb7751002.0":{"name":"@material/floating-label","version":"15.0.0-canary.bb7751002.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.bb7751002.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"885a191d0075cd3fd5d04e739656623f9354aac3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.bb7751002.0.tgz","fileCount":33,"integrity":"sha512-iaQZteMp7PEOzYTWLkKbH2O0uLTMPJMwiV9vZTxLmKkRjuHe4SkuDxMJWdSCeNrtKZk1hI9wcAQ0KsHANekWrg==","signatures":[{"sig":"MEYCIQDNvLyUVw4g/wmzCS8G/Z/eWlS09S+3d3CL0OurgfSJwwIhALT1YaQjbMrcY+Ye6/Xcnusb06PHUkIT5Xyg9Jx+zHEe","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjdXl3ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmptfA/6AjFeIEHDnlkAOF7j1m9gc0aEZQxMhNmt0yx/A/9EHhxN2Y7c\r\n5JJcwSSI7wSPzCWjvAElKpzaK0B+06vv9gQ16rBFTEyJwwh9HcopjQzCDzCL\r\nDEq43CGf7+SdkbXs0+WNX+NEjYDtDJqu6nhsvlWO9Wjd7iKwrShcUyFQcCSc\r\n+P8jATYYwLgP39iP6xQqetr4QjI6cE882aaKXi5V1C/UxQc1kAbcLUismMSQ\r\nhjotyUOMUVhTXlqyszsVIVNHfgSkY/p7ilOhnhwTdyA45hIgDFq/tR6PKzeC\r\nq6gfqeTUOudf+Mouov8olyv6H9BdiVXxC7OdaYqyzC96MczvQVd+NfA4jJVF\r\ngGvZn4dVSszHrLvf/5U7kBINdrl94OtCVwAOeScWDxWrIbS9+pEcPSYs5L7H\r\nfrTUAE99mhyTQBDEhABgSOIFG08f2VG+pG1+zpbGjikh11dVa/S6G/KpZplr\r\nc32H1f5L9PDABx+ZeiUcvvC2KTyXwrjiUPtCrtbqWAiNSiwAKz6Qt/N8PbXJ\r\nM/gqoXje77QQNqJXJiakw/5RykNcR+vuaLWK6ePut81mlhRwhVoDw5twJXFs\r\n9gthR7fN5ulCdY1p4sAYd2jGD5YEVeX+AGK3BnmFKzA4b8+THzC9Ea91l9S+\r\nYn/yVviMoOz1OJylSvjgrvx/nb2oLSGDaNk=\r\n=7dJz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f83cadc3a1330a69930926dacdce7fdf10432f98","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.bb7751002.0","@material/rtl":"15.0.0-canary.bb7751002.0","@material/base":"15.0.0-canary.bb7751002.0","@material/theme":"15.0.0-canary.bb7751002.0","@material/animation":"15.0.0-canary.bb7751002.0","@material/typography":"15.0.0-canary.bb7751002.0","@material/feature-targeting":"15.0.0-canary.bb7751002.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.bb7751002.0_1668643191396_0.7962771342406554","host":"s3://npm-registry-packages"}},"15.0.0-canary.63aca9af6.0":{"name":"@material/floating-label","version":"15.0.0-canary.63aca9af6.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.63aca9af6.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"da5c74d3eb83b754631d228150dfc845fecf9691","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.63aca9af6.0.tgz","fileCount":33,"integrity":"sha512-5q32q0o6sr4aQIVgEyyBPy8g+GuC49tJS2wvrpOTtCsOT5EIOV8o1Zj24LnvAPXsSR5O0wIrQU5IhF2D1ic2+w==","signatures":[{"sig":"MEYCIQD39Mg5hLq742kZTqGyfye54g5x9XctqXSt1cEEm3i5HwIhALUk9xxlQ9UFyEiVJW0Rxp7IK2VmdeObG0KLc/hA0Jbh","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjdoTyACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmrirg/9GQ+2GGvF1pvmoj3E+uPR1cATjuPJysl9wKZx5wgTK8On5jCX\r\nJq2T4beyjUopbNUfDhV543um/ucTFVAuLmPfeFI1yDjkaVwuK4aut1Z9eu9q\r\ngO/hrPz/h37ZhOjEuvxwp8s26rft+RulVOmcBu70UPjrzsPzsuE7JkQhpquR\r\ndrSm5gwr3dpy5ukSIJ0iXYb8Ll9mM5hvrq7ZbXs6W6fD2H/Cl4Uc+ZwDNEP/\r\ng6lrSfbC2A0xPzXHNBKmUhWMQpiWq975crDHGV6CE2k9rnk7jQLWwfwmoIED\r\nQK8oMPL3GngO2XgjcYolS1yXbZYKjrAsusORlTDZEgdVv+8x0PoZKzfSNv6m\r\n6e7f2q5rVOFI6u0qZZFIdYxqEjFmEwARIz0cNc6PGh4X9Uzc6qSHP54s6QRG\r\nS3IgVh4XRoa31uFBxUWBBgK0oe0DmRPjqNUldRHazzLstTrEzni/AslAH96B\r\nLvcN97p/TbZO5CiU0f65pNyhvGnohBUlo1zVtYxTGSr1bItesaIZPCVCaY+q\r\nbXHY3VezlV0HyvxEzvxjI2uliMHnPm6kObTpr5Ae8yKvlEbNxXJxNSUrzcfB\r\nB7HeE/c/qXFjC3KYOV9E6/P64ArtXe3mFFnjupXAX6y2QLjMGUULQ9E1KeK5\r\nVLLxeXt1LAeCAsA8L8UNgpNmwljfDbbSr3o=\r\n=zjwC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c2c841973403116b6a405bb9aad3ae8476bc028f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.63aca9af6.0","@material/rtl":"15.0.0-canary.63aca9af6.0","@material/base":"15.0.0-canary.63aca9af6.0","@material/theme":"15.0.0-canary.63aca9af6.0","@material/animation":"15.0.0-canary.63aca9af6.0","@material/typography":"15.0.0-canary.63aca9af6.0","@material/feature-targeting":"15.0.0-canary.63aca9af6.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.63aca9af6.0_1668711666057_0.2663286219925085","host":"s3://npm-registry-packages"}},"15.0.0-canary.56482dc2e.0":{"name":"@material/floating-label","version":"15.0.0-canary.56482dc2e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.56482dc2e.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c39a7183482f2c963b1afd5eb6318656b583dc86","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.56482dc2e.0.tgz","fileCount":33,"integrity":"sha512-fHzSpB0GYhOD+ob/lJ5G7c8bePwjZsYN7c7zpJSqE7goAJpUhUqbOYlsfuEA1m9yIjcNaAakoLzMHFhFx4CFXQ==","signatures":[{"sig":"MEUCIEOp4BEJlpk7uKVcHLs0Y+xqyWjTHYltKgoeyNoNYwHLAiEA99s5IVK9tECuDQZWzxOcqIeiRLK+h2nT4wyF/9vBZwI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjdq2wACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoFqg/8ChbRm5IJD8rEjn01lWX+43KcFvl9uHMhkMaT5QmX2n9VKR7a\r\n/DrMA3CNgGSNZyekl02OnVRsDt4EI6X9N3MPK57QPt7CQqNofDu+qp5+nK1z\r\no433Cb6vxhRqhqYUJAntwe2Q47zqK7Rz6HrYh54HkSWvg5S7lRcSEXn7jlRn\r\nHo6MNWnk5wF8PKly4+x+X3HWtrHKn/GMlKNRlRiQ9PhdG8uZ0rXDvXoQYlCV\r\nqihAfVPiwO8amS3HI0WSTCtV0hdwz3y/mr2YAV4k34hFwb/BeN0sAEpPlhPL\r\niglKkiZzw8fs5kxKBJ3JGCQrLzrtZO9WtRYAgtfr3oOAxKTdwdiTih7ME28d\r\noj5ew9OhxCnKQ9VGASjpL6c9rqfxJkbMx0FI1Z8axMjWoS/Vt8tLsycCaW60\r\nECYNeSqxmgQLwMjFl0kDhHuByzudm4piIjz1NfePMhjFOD0qFEyedDHMTxMR\r\ny+n6w9MZ7EQT+/owLrws0RAV4lKBRiTIJzDVybOE4/bPviBdxJaHJO9WZ/7l\r\nDaiN+ZCvO3NzdC5uZwDiBTM3yblEDVAzfWj9oBLOp3U/GWPcCb87G6mauR3b\r\ny05X7QNqDVE89bPeKCSSbr178lL8d72ctmEP4SeVjuTZAQ541mrP3y5nirYr\r\nEzz+S4MjXDvgRngjf5S2IJsRUAjyp90oABk=\r\n=aajU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c65945fd8948c8e5ada035d0f2538dc2ced7a28f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.56482dc2e.0","@material/rtl":"15.0.0-canary.56482dc2e.0","@material/base":"15.0.0-canary.56482dc2e.0","@material/theme":"15.0.0-canary.56482dc2e.0","@material/animation":"15.0.0-canary.56482dc2e.0","@material/typography":"15.0.0-canary.56482dc2e.0","@material/feature-targeting":"15.0.0-canary.56482dc2e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.56482dc2e.0_1668722096271_0.32783654989184297","host":"s3://npm-registry-packages"}},"15.0.0-canary.953e689f3.0":{"name":"@material/floating-label","version":"15.0.0-canary.953e689f3.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.953e689f3.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"0cecde9ee94ac997fa4d46295112a839151d8174","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.953e689f3.0.tgz","fileCount":33,"integrity":"sha512-p4czqTJeigsmASEBw+MSA9E3PeXcCAFlpT2znFm1gXGuKkJ1jBmJqnx0r4bopTbWUGs1bxTlYDHRLtjo5+VADQ==","signatures":[{"sig":"MEUCIQCAqAgA5Q5Ke2fRMVPa/+thrLk1KYt1T1p//LZYpxKfOQIgLJMfhO77Ij0u3+8vapqlYoGrjvn05nRmu8G1ck+BRyw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjdq/nACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqRGhAAj1Hb7yvFRuRbTAxTfDHfeVjBXP9RD/4uIZvBcvlPnORiFS4i\r\nP9rxBQG0dsKKcfbqL2Buh2QGWF9/xlGWicIUFdAIHP1HBdLR89sxf9vyitD9\r\nLqNi5uhpPapb+XxuCwpiSRZu74Ebwae8dE/7ZOEFaRTno8bOYKWBtIhxO08i\r\ndbYoscHzYT9ktMyQ0RwmiRCNnbiuaITPmHSVvijT7RtEcWq4yu2/o4mHRi/b\r\nB34xdE6/PzVj7r1D7TEKhfCa27VEjIiSH6qr7Yw9sSsH0QC1sXjhDZ6rJADi\r\nSczxbzmhOi6lzgWbusn+ZKb59TLx9YmO0ukcVYo+ZzQnHcJCKYDHQ1aVc7SW\r\nFaYBTkezcgQfOU7hgvTYDUUGJfu2SoStVHZLotjQ8qqu43GDxNFq2gpTBbRI\r\ngzbXkgNxsEiXKIXmTladUCNH2+iK9MW1UUEroRAhNj3qwvi7FtBDFoY8iTrD\r\n5y8IoSbfA43JlRphWUnyNrbJYG24T7jYEcta32HrgY3CpO27YAnmy+UHwKzd\r\nXfnH8qm6x1L5j4oc3NGV6A24YmPsWf5FdVN5gOTFGI0shozuijUCBzrDE89N\r\nDPBJxTBqHwbiskhOxPNNjAjWAE/d4OqjbbC9gWtmXRjgxG6QM46AW2/TJeYR\r\nZf3rJ1srrDzjm9qa0swFDSKUGoB5diGrNcs=\r\n=TD5h\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"9b9adee0b4f10a2d6d77fc10e9291c3aac8be42c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.953e689f3.0","@material/rtl":"15.0.0-canary.953e689f3.0","@material/base":"15.0.0-canary.953e689f3.0","@material/theme":"15.0.0-canary.953e689f3.0","@material/animation":"15.0.0-canary.953e689f3.0","@material/typography":"15.0.0-canary.953e689f3.0","@material/feature-targeting":"15.0.0-canary.953e689f3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.953e689f3.0_1668722663447_0.7836279707748925","host":"s3://npm-registry-packages"}},"15.0.0-canary.b5606a793.0":{"name":"@material/floating-label","version":"15.0.0-canary.b5606a793.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.b5606a793.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"226c2fc9b511156c21b2f5facf100e17e6b09a13","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.b5606a793.0.tgz","fileCount":33,"integrity":"sha512-xK17Uxeihvyqa3rouDBR734G/wrM56FhzRgdVpUIGOGRhBLvEZ4zzLilb3xCGaprm59VFXtJhQ6SYsjlaVcD5Q==","signatures":[{"sig":"MEYCIQDK2b+fO9SvX4d+eNK6Av4ja6gIxE16n0hrEUf6tspq1QIhAPXcLBVC47WWhvlXf4YYIZhEboP1a+tPeJWAvCplfwEx","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjd1yEACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrFxRAAhxPBnJM/uhBeZsFGhyj9bXBkuCh6FuYaEdNfPwJpQR0/06Cy\r\nw0h4gxGkE2LllB5JSXfqr6sr/DYMdr7W96YIET9JLn8fROvswY9KxcoPptmx\r\ncSC+2adTWzG6UA/qrjqt4gYyX2NZOxAsaK7u1Hopw4Ve/FJnzkebT2zfQ9kE\r\nNZDGTqkH6WFxAooTpwbcrCTLzetjyOzIi/ZKU/7hUSugcMIRfS7S1Zk3IJUh\r\n9fpw7Lm4vi90Otjc38qntTHT2sNBNNSCmUmdMZAZow0gfjDWOUwvdFn3xFVw\r\n8G1jbPngN5Lfc9mIebG4hCNUjyMkgRJPRz94+RaQOmsPV7lHFQS8HDH/JLju\r\nW9MFRCh844PYICevjyMqn1St3y+C7JxWKgL6QBFyhXi8/fTBUlWHiEz3er+a\r\nm8GcePzzKCFh6IBnnxrakgVwjKL/8oGAPuL6K3ml7/KVQ+rbXLt9bF/2HP0l\r\n8Cyn18yn3DWrDKKXaFw8U+maP2IoMtABSvhNJ8DWyKPWHJU9rJWOCdoufG6Q\r\nMuWWL61mLWUb7c3evPCHkG1gTLEbTGJm3clFGy5A8QQl7wfja6oeh8F8L9mj\r\nStFrAZzEGY5w4LAXhjoCmCm8PmuEZwAPxvg4ZACRoDQRUkB1cApjAINsQfyH\r\nUTfPGKPw4r+9NwMu0RVlqEVf3j2Z2pLoB8Q=\r\n=ZJZ/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"681685532cfc9993a6190aedd85bf5cd1b3f80e3","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.b5606a793.0","@material/rtl":"15.0.0-canary.b5606a793.0","@material/base":"15.0.0-canary.b5606a793.0","@material/theme":"15.0.0-canary.b5606a793.0","@material/animation":"15.0.0-canary.b5606a793.0","@material/typography":"15.0.0-canary.b5606a793.0","@material/feature-targeting":"15.0.0-canary.b5606a793.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.b5606a793.0_1668766852632_0.9630710434040373","host":"s3://npm-registry-packages"}},"15.0.0-canary.8c5675942.0":{"name":"@material/floating-label","version":"15.0.0-canary.8c5675942.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.8c5675942.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1b42fe7b69d60de6bb3be03ff3c6d491812049be","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.8c5675942.0.tgz","fileCount":33,"integrity":"sha512-g47rBC2xiu+6h6hD2drItO3pE9be8T8XFcQNtj369exDnzC0dWY5+ngw4YyIs/N7ymAlg6j5BwleKistelwQzQ==","signatures":[{"sig":"MEYCIQDrgcDi1M4mfzAjow42UwsE8sU7o9XcZ7qPUjAixucfbQIhAMhPc1FTRTK4wpD8vAZw7oE2CVNmXOMyAeGzQ+x8/GQl","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjd6GpACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoTYA/+KO5kp15Y1UJADqgIpMcAAm3Jtj9ZiPp/DBwVNljtT2i8dgOL\r\nD/G3KBEY/KLL3TkWGJZNAFoNim0lnmD2FxdXCleOFYl+6OmTYj9KcD8M/uE/\r\nBBrHcKkRUmp6UZb+pvpwa1EB4KkBdsUfjvkQHOM6TzA8IqIHhoBwunVUcNhq\r\nwTjag7xP+FzKTCm25Ba4FpOTZqXThdlE0Uc9CbtfZWJNlV3/zIuztinQGefm\r\nBRodDnkaNSKMVrt5ZmNWvmYJyhxyhlavI4Qfo4xSIzu0+ut0PlwuVsk6683C\r\nmqUfuh5yFt6GfxKF+b+CMPTA02cAk/xG1NQzBpE/+m/RVnHdZ+7s1TAEhNOD\r\nlEd8wLPBycsE6uMC2W9FDG0IxgDrSCctMIth7cBcUy7DuwTQQ6OlSEL9nLDU\r\nNnEwToS+j0yPObK0uHlmZRC6S3ag2S7F1QOT1RLSsP4ELtROc+bk6D4GgnWO\r\nTmOH8/hmZUCJv4ZasXR5YQIJdeAPuRtMGJ8INR+53+tj+20XCAjQ2FjEiVB3\r\nGZFklV2WWEpgDtC3FL6hA5RXV4JnkwjJSkzTs91/W5G8xUOmsNt2OimvNY+f\r\nU44zAzE/tcMycVVlablj4JDiXLhojnKhvUxU4U+p7+vxYQZPHh5n2738mPH1\r\nCrG+XRhG3wvFB6jj2Q/mtKwsC/PvP8SpmjQ=\r\n=qMf5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"46367ab28a14e7ab75dbddad4b3a00d97443debb","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.8c5675942.0","@material/rtl":"15.0.0-canary.8c5675942.0","@material/base":"15.0.0-canary.8c5675942.0","@material/theme":"15.0.0-canary.8c5675942.0","@material/animation":"15.0.0-canary.8c5675942.0","@material/typography":"15.0.0-canary.8c5675942.0","@material/feature-targeting":"15.0.0-canary.8c5675942.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.8c5675942.0_1668784553431_0.66347757551244","host":"s3://npm-registry-packages"}},"15.0.0-canary.697fbdebd.0":{"name":"@material/floating-label","version":"15.0.0-canary.697fbdebd.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.697fbdebd.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"90287520f6a4cc2c8c13ac3cdf2ded9757079af1","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.697fbdebd.0.tgz","fileCount":33,"integrity":"sha512-Fwi/KZHkUid4rDEMsWQPa3AV1x4/kGn86WX+Ht5Sg1OeztOS0Aa47QdwB1hKffgCoBCJgptYv+cRUYzY89NZ6w==","signatures":[{"sig":"MEUCIEWaZEeT8Q7Se0SaaBYf/UJ19HrVNVOAZr4dyOSoEiLBAiEA5Rc39TAKG9mCNF1XYAXyXsfNazw8Rzm9IDGGqehkyRQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjd7opACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrhSw//YuIMxSRF/lzENWlWtrIEQVvmg/SpphIXsyodHV3fmhnDnep0\r\nKW2o7BvkDqeucwKXk+wHsq9iWpwusmXLJAJJjLX03n2/LxCraiPowpxBH5AB\r\nR77Bfhh7i9Y0u2j76Ec69KtQRqmvymNuzegueBDCJcdJ+lfbgm5vgeLpdTsy\r\n/sZihWMz6YQKJPx/vQNeyzUJNhNrvLRcoMd7MY+qN6XA/soW56DZCzMP8vbZ\r\n++BYm4drY9ECP5ZOpxW+fcQeeCj4sk8d2wVrohyNlYpAiguTqvs+FyE1Q2s7\r\n0uCof2E4HAzDcl6JqaANCcZgAh4fzyrt/YoeXJyFEjbysp6EeCv4N1YZyGbf\r\nioQzlm5gOErESZcjw5hTl1Rep+55JSEEiT/hfmrZLW4MuFvmY2H/11ejks5F\r\nHaKKlClnDDz/oK5p5LgAmnjTOt13TWjnWr3js0Le41i1DoV0nA4FIup2cRdH\r\nh0lZZYgd+SKCt+9bSwgjDX011JXq1cvzOklVxHow4lRWS27Z0Lsi5Baxw7j1\r\nRHTCq42estroP4OLhl0XvznmHvsPVjAZGiFxj6wdoDCTnREdWSDyNjLLHevD\r\nSGN6KsbNLuIIueQ72kB+kxfLJEuzgmd90WCPLp6sxhKk2fzoACloBnQuJeLR\r\ntgNWSdqj3bnY8vq9KyGuI4baJ60xzlFVWGY=\r\n=eA81\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"633705dd01d68334d80bad5e354eb7e71d9fa30b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.697fbdebd.0","@material/rtl":"15.0.0-canary.697fbdebd.0","@material/base":"15.0.0-canary.697fbdebd.0","@material/theme":"15.0.0-canary.697fbdebd.0","@material/animation":"15.0.0-canary.697fbdebd.0","@material/typography":"15.0.0-canary.697fbdebd.0","@material/feature-targeting":"15.0.0-canary.697fbdebd.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.697fbdebd.0_1668790824752_0.6406561988039976","host":"s3://npm-registry-packages"}},"15.0.0-canary.d58410453.0":{"name":"@material/floating-label","version":"15.0.0-canary.d58410453.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.d58410453.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c30cbc46a16a4d5d22c330ec99f1b0c46e2f8b42","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.d58410453.0.tgz","fileCount":33,"integrity":"sha512-+fwxdSvXXA0D2+Np9bIUs1qjSxvkBZ/h0YI87xQx+49kveSjt0353Igb2r8b6VrMRKsmyjfSKLwQjJW0JvItTQ==","signatures":[{"sig":"MEUCIHiNBhBlFMm3gBHWLwddc6Nm3os23OFFLGHpysCzmd8WAiEAp7+3Kzcbwxx5BWgAOu7aWXc9HJ1qqOFO9nFgOexJnWg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjd9v/ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqnSA//Uy/I5uop0nw4qJJkoSZLSm9T9a7EtQ59Rx6QX8jQ4+8TvAu6\r\nZELuv+kEa+4UNsHL9yrRtDFJb/VAK01IYUueDLIaVOKEzdOCZPfZ2Tt8GOt/\r\nzAl7fAJbHvsPhMywGnlUqe/m0daHRB86OT5C+3wh2Lr6azkmwxEBTpLCuXKE\r\nR6D+qnpOtNgH36ujsyseHV8ZnWF4kl3YjJ+HeMxPKgtOmSY9P1c6Gyp0fR4Q\r\ntRzyehTyuLnrpYX+KXzxcNafhNrip9W8Q7tqyp2SzITzV5PzFfrOhQ6K2nQ1\r\n+7kkwWlED+O5FvUEZ/vmQfvYNB9M2xn9AAS3yz6ATQpaJWFxdrbSmP/fGyBs\r\nsSBjVYpF4LOVO9j0mQqKF/cpOsy5avR4R1oM7BtvvF/pJX18oXzEd34LZbsI\r\nkgWdPKrSSyd8xm9V7EYNh2AIqyr6XVGGmSCuVqioses/HgQ9I4hV2JSZxSZp\r\nUk39lEQJoVTbpCsJXTob/PLXnHgchQg/Zs4WL0svEwZ3GTwoINrIELHm2iSe\r\nvHTFeNo07teMUlc4mCUXelCChz0qsc/EkjBhKYfAkRCSy9fo69pbwJgDJ35f\r\nz2p6/k4reYn9Q2+RGM2GEv8CXZIf7Wyd+oCk8L3sTGkCdmggRAU0+zoJSzMC\r\nE7V3b3J9ZR4GdOP8wIaX999dfEwzv/PxTLo=\r\n=th+t\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"65248afd9a1318b7afdd324f3def6a9c8e67c90b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.d58410453.0","@material/rtl":"15.0.0-canary.d58410453.0","@material/base":"15.0.0-canary.d58410453.0","@material/theme":"15.0.0-canary.d58410453.0","@material/animation":"15.0.0-canary.d58410453.0","@material/typography":"15.0.0-canary.d58410453.0","@material/feature-targeting":"15.0.0-canary.d58410453.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.d58410453.0_1668799487747_0.06558727259435004","host":"s3://npm-registry-packages"}},"15.0.0-canary.7971d6ad5.0":{"name":"@material/floating-label","version":"15.0.0-canary.7971d6ad5.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.7971d6ad5.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"8d7153e225df7807b9f26a9ab755a8d9c3841a69","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.7971d6ad5.0.tgz","fileCount":33,"integrity":"sha512-Tjv2xnYr+VvsojRbRBVVmjxmut/y4hJrRCBMjU1982cTUYQlfqMaM7BUObt49jwRBKDLr2NjM+fwNIo0//YItA==","signatures":[{"sig":"MEQCIAFpKR1QVfe4BUh7awXbza11x70IYyQeQQ3GaYZ9kawuAiAoQsc/Kom0EdsNSzcGPAsYaCRZlyho17d0InDwv678gQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjeJeJACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrdJhAAjT2s4mFGUcwlIl9+W+Zd6Sy6XqFop2b0zmbf5eCfsaz+ao/4\r\ntiQp/7ftP4II0JxcxzLguvSUc9qSNpbHrFIwgVcIF0lnIXyFi6+FqhaJ8FpC\r\n+1YICW8pAnHWua9p9WvfBPz4iKetSo4gQ/JKhTojt00Qi+c64sBlxS9po53E\r\n9cK4FsMqk0dwiQiVlPRiy8by+MIuEXJA1Kp1B40izs0rrQD/UkZNn07ct/Rb\r\nim9p2iQQMbvMwNcczGEVx4sADnRLKL6g4BE4er5GK/5VxMr6aI6qsLckUFL9\r\ncYJjAmGfrRylqFof3tP4NDeH7AiOM6tb1TO5yqRLi854ZjdWnS86ZRxI+ffe\r\nZB7vvv6zRqLmPSKiI6CQMK6Pt+0gd7x6hqbu+QtLX44X4Pnag2Z68S3Nu+Ly\r\n1351egT2SidU8Cdnx8T//S5hu1xGVpx0zSEfrOkdNOy/ZHYlZVol6FC28z9D\r\nW4x/oVrJq2X5bIVzJs+F2Pi5naRvFrTG8Lrf7N2E71Pfd4ja9QKpzbivEzB/\r\nUqaISUgGlG62g+WynrWZbcQomxONYOaAB8Hd/n8Pu7UPcd84i8tEarBw7Rgc\r\n0+YGk2RXXxO0tl78PhcpM+38pURBvV+o3W57fBRkUarvG/wVsSGW6mansJKc\r\noShgqiNjkYkFtVEiNfiEgC13YpEhSYLAgbw=\r\n=+doE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"caa68cd6e7b5cf4d64e037521bea18e312048e69","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.7971d6ad5.0","@material/rtl":"15.0.0-canary.7971d6ad5.0","@material/base":"15.0.0-canary.7971d6ad5.0","@material/theme":"15.0.0-canary.7971d6ad5.0","@material/animation":"15.0.0-canary.7971d6ad5.0","@material/typography":"15.0.0-canary.7971d6ad5.0","@material/feature-targeting":"15.0.0-canary.7971d6ad5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.7971d6ad5.0_1668847497129_0.8951058087745503","host":"s3://npm-registry-packages"}},"15.0.0-canary.a0ae73b0e.0":{"name":"@material/floating-label","version":"15.0.0-canary.a0ae73b0e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.a0ae73b0e.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"8c42ba1be7dc8eba6e0dc85b4ed3173f45696aab","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.a0ae73b0e.0.tgz","fileCount":33,"integrity":"sha512-CSfm4RIGmyDTVTmq5r2L1FcSs3zZ5c0hqVuiZLREmif6VdPS8Lu11OzOZXyvBUfaa/hIB6eI1h5x3CX4W8KHlA==","signatures":[{"sig":"MEYCIQCMAVxI61rAnuCrZF+D9STa/dmUljM3ztudUK7+eWhZ1AIhAKBqjj0QeDlgcFgwpJkwyys2TU4wEu8r0kuxfg2NRh1a","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJje1ilACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpRtw//TO2U/8+Ex010+oXqsDZK/rhuK0dLixf47xdxMJe0gcdirjiQ\r\n6wJ2/WYoV+eVx04iGWItvMxaWsZqIpItJADb7pZmdsCNScQnyIP02GUGHjO9\r\nMIRdrWvgFY4eHur4ghUxVnIgkGpleAe57Hq4I/j6lah3p6iicUVsijBGQNJl\r\nVaXj+QM9b59Jb9oantdkBviK7qVE3Pcv4f3TsXGXtBcQL9Q3uwxmfB7pqeay\r\nzWVJ2QR1Vd3rKQgulmDJN5WoUN0tB12nuBiU8LxDkHN69BiTZLFE576TPBGo\r\nBLzG9NnNMeMIfvxjMNkH41ltrPmwaGUQh6O1efQSV+G4+BY8niOxlqIgXDLd\r\nDfvmTQSdWzj3QQI3q2Xf4Tb9HTnNK3TJ+akZRh6cFv0MIsvIf8TTMKDATUaZ\r\nymewPLFIKDjicJXPJ1NtRNod6x7aaHZjvhi/B7eCLE5wRSHcYlowiB1FftK4\r\ntzi90hyN5SuSmHczy0R46mIFNkWp70nVkpZImjbP0XnA8Ns5wikbK8fUwrLV\r\n8o4ma9QSUuzXmG7txLDd1XvR1pNLJK/iRyqO+iUBtt6OsDhUomqx4s//Q6n2\r\noCURoJIIuLolPBseQub6qYqP5DMnDAi5pHl44SO3KJ6kEMzI+oqIXU92JWMR\r\njqkVlEnkOpJJaQRxZXKeXmE94KUgXzHdJp8=\r\n=8835\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"92b496120a9385203165ec42657a2edf41099000","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.a0ae73b0e.0","@material/rtl":"15.0.0-canary.a0ae73b0e.0","@material/base":"15.0.0-canary.a0ae73b0e.0","@material/theme":"15.0.0-canary.a0ae73b0e.0","@material/animation":"15.0.0-canary.a0ae73b0e.0","@material/typography":"15.0.0-canary.a0ae73b0e.0","@material/feature-targeting":"15.0.0-canary.a0ae73b0e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.a0ae73b0e.0_1669028005538_0.7530390732312657","host":"s3://npm-registry-packages"}},"15.0.0-canary.96f472604.0":{"name":"@material/floating-label","version":"15.0.0-canary.96f472604.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.96f472604.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"bdc5c82cae69a6127bdc1bbd535d7eae70cfe547","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.96f472604.0.tgz","fileCount":33,"integrity":"sha512-FnmerngAEST0D4nOb9UGO9k8MbjPjkik9gywfvkVYiOZcZrZ7nqDZjBA6xmVgWPMGChp5E4c7nxyeeV1Am9Pjw==","signatures":[{"sig":"MEUCIBYL79+5B5fFVcm+aoHIkhKiZ7F3XsUy6pORNX5GOeNCAiEA4jDPmAnN01BERYS13LwTJhov5Tml6NhMM7UqcUBdzKI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJje3SIACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoirRAAjWEZ69wbh1FYnZ/lkmiADNV18ivaEkwykb1QsC4gzTyq+boR\r\n08Sis4puDpuOUTyg9sJYsBxcwKz1p8gx9gT/RAK0XNkaf4ZwX+igBrDlSEcU\r\nvojyG0pZTdhnIlpuFKqUgUT7c+YYE1J7cUteuytSW5HqZmtmoJi5u/HwG02N\r\n5TeNgDecR+flvrlkDyaHqXdMacLhN+CWXwt1WAm2dW4tafqnwGIewrFdvSOS\r\n9jsPRua6R3GeyH1L4aUW/Ji9RebEJZ/qW56IefFvPX1ltvrWVpZbtYQWi+s4\r\nF3qObHcDen4hvFc27A6wcSLzO2eQ5vyRy1KBh2yW6F6+fgNGXN140watuUZe\r\nHdyPmpL57BwqKI7+kbQLUbDA7bEwx4TFSCOzJaM58JhMdbZ30Snsb6yaWZpJ\r\nnRN95KLrVGMmDVI1Ibwbo/JCRzQFyCMwxw2/T3lz0dcoDCYE5SX7hzTKpAu2\r\nC3v0oQ8WsWY8h9/AnY5D8VfNirAVYz+w5arpnEHzZwtf2iBfC+U89eGuAMhc\r\nLRDdVcSL4ZsSjdJDveunfuN2MCyfDwlUg02/ey2MhNMaJIKIMeBMgrCklmpQ\r\nZIndsQoi4Wh3AuexNrlqR6FxhTlzQ7yVf06QnJEER3Q7OPi8kKppKARYX1Sj\r\nKXKPG/iJtdlUJ2oEdxqSsahTwMJDhZNS3S0=\r\n=0qGm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"28f313542547c982f69fc57b98811983600931fa","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.96f472604.0","@material/rtl":"15.0.0-canary.96f472604.0","@material/base":"15.0.0-canary.96f472604.0","@material/theme":"15.0.0-canary.96f472604.0","@material/animation":"15.0.0-canary.96f472604.0","@material/typography":"15.0.0-canary.96f472604.0","@material/feature-targeting":"15.0.0-canary.96f472604.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.96f472604.0_1669035143964_0.3594733616878867","host":"s3://npm-registry-packages"}},"15.0.0-canary.18b8f31e1.0":{"name":"@material/floating-label","version":"15.0.0-canary.18b8f31e1.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.18b8f31e1.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"deadca662991177bd32ade17c2b940bcf0e011f5","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.18b8f31e1.0.tgz","fileCount":33,"integrity":"sha512-k9Qi8NBH6P0muZ8HZudX3qR4uwsBG97oUjOoZmK5nFSu+AMKyW+ScVZsdhk3QJ4mMKEGM/C3o8gw8+XQ4IqCtw==","signatures":[{"sig":"MEQCIHi3kGwIK2TgbJS5Bh2dZ1NcHuO4ZT41RcMNgC6ZAxajAiBj/DwV15TlTGvzKPrUMEcXQcSY88TvxZdLrdCpyKFm/A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJje6D/ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmou1Q//U2vpVNc6wLsBwhDonMLbDZN/dPH/5z3C4wdEaM8odo2ej9pl\r\nVgICo7+Cc4UPVi10LaPYpPWZ7ToExCCXrVCrinlXOEdP3H42nBRQH1jqYNBp\r\n5bO/qiDOmlyBSrwQiFc2C92e64hN4yA3KvGmYla4WRD/qjun+x7tNMdesM2u\r\nTKp2pp6v+9aB+hsI3pbh7Tai9Y0MF/LrPEUO0fHX4XdYpDzw7UgcFeb7OqFC\r\n4bwCS5sHEmleP5Dtlv2vBoTlPnusI7yyOJ9iDDg9JDkSmay2y6E6wwfwrLJL\r\novqUndW7O1p/nHou//jmS2LeocfrfgcsJXobVeesctjKjNWZiBMyOoFbsMNG\r\nmzDJHrnHu9S/SO3S6TQatiVP2PX8SbEPT8WPCEJphpgKdm91llsqWkavrZmS\r\neVSwyNcC+DVslOjKJJHMC88gNoN5cF68FUDMR6iDGpUgSJwOOzcEz8+dPzIL\r\nFUGOrmyMC2L+YlSV31ODfCpDQ+Iw/onij6OyVSenvtr+aq3zWYbuB6VqBsDn\r\no7LFTsfNV3XX5XnuvrzrfO/rRczG8Z7qXS0Kab3CYMIVeePCyE4xgsLCNr6l\r\nrAKYTAqKWQWktihaU/v2pHA4ZtHjtt7BoqdSt4j7kSCxzMd+U7MJpu7MitAb\r\nG/iGMdGuOVUSYRP8ZRvlLTrmT2VbwNCItkQ=\r\n=PNFO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"99a6c50dcaf8c9db8b49ca9378d7bcc70fa3d276","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.18b8f31e1.0","@material/rtl":"15.0.0-canary.18b8f31e1.0","@material/base":"15.0.0-canary.18b8f31e1.0","@material/theme":"15.0.0-canary.18b8f31e1.0","@material/animation":"15.0.0-canary.18b8f31e1.0","@material/typography":"15.0.0-canary.18b8f31e1.0","@material/feature-targeting":"15.0.0-canary.18b8f31e1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.18b8f31e1.0_1669046527487_0.5263024735365092","host":"s3://npm-registry-packages"}},"15.0.0-canary.912f33ce4.0":{"name":"@material/floating-label","version":"15.0.0-canary.912f33ce4.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.912f33ce4.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d6c861b71b170fbfda7469f02083643a00b3a113","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.912f33ce4.0.tgz","fileCount":33,"integrity":"sha512-NBuT97zN0q7C4Aw29SNrY8njA33Y/aZAxEG4H5uIeLijeRllS8Ofki3Fq9cC7Oc9kT/6wWHBKfiT4MfL3UkG9w==","signatures":[{"sig":"MEYCIQC95XxJz2ZwThDOlpsF3/EHALs8QbtFxmwdh0aDvBBHbQIhAP6yMuBoAuvzYtn7dX6z8bqg7lxgg9ExPMxgf3kJXj7G","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJje7soACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpHZQ//Uzz/J1gYnOvOQaP+52/5tvUrG9eP++gdsKP8kykl6jwYj48A\r\nqDn3IFsIrlnuICXZm+WeDIY1e07+y6iM5NXzrAot330eizFcon7hkgu6F56P\r\n5pzPHtOOI8A8Nho8FeGXZLC5hYcJ1aMGliZ0VqJKBTcvFavcpAwzRj+MJU3E\r\nSiCnv5rI+ZxiApTGfU4AIggUFIDQA4BX9j7BzMt4fhlS1amotorBIyVb414y\r\nnVD0SCTE7+38XHCUZKzjZ5KaeUVU+vRlMrdYteKpptNJZvQZUi7Qbt7iCRaC\r\nueqpJy1VzLXiEbl5FlbofeDrlcI+uWU/lJf0sTxXwU8QFJoZYP/SNQfFMO0Z\r\nAnQqyKQ00kagarFhum42oR/iC1J14zKgo1gTfb8kc+D1pPIOJgldt5BzCFxL\r\nkU1SnyTQZ/66BtuBPlWt8CfAhZMTD3p6/GjFxuNZjpsi7GVosAjsO7BfKlud\r\nMcThruinEISrtmY0Nym2d6fg34ygFpAiGD++6Gy+CS+rP7NslhMjO1dTzW2h\r\nUkTtq+Wu66to8HsJ3SYkMG2Hv15fOcvLCeBwCiOUI322TABVIyNwTjdsvNDl\r\nITuE4wh0bseYwAw7LfnW6/UiFWcDf+vnKCDG9G4M052LL9yv3qG8YnEKwxLk\r\nQw4QeDP+XyolhoVyrW+sXLNI+Dd7kcqtB8w=\r\n=NRFT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"cbdf5145fa19b6681004b6c2d5de771b50f5b6f9","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.912f33ce4.0","@material/rtl":"15.0.0-canary.912f33ce4.0","@material/base":"15.0.0-canary.912f33ce4.0","@material/theme":"15.0.0-canary.912f33ce4.0","@material/animation":"15.0.0-canary.912f33ce4.0","@material/typography":"15.0.0-canary.912f33ce4.0","@material/feature-targeting":"15.0.0-canary.912f33ce4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.912f33ce4.0_1669053223805_0.11449674670052379","host":"s3://npm-registry-packages"}},"15.0.0-canary.1e1b1c369.0":{"name":"@material/floating-label","version":"15.0.0-canary.1e1b1c369.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.1e1b1c369.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5e424a2d7533c376439fd7c7d879eeeeec149978","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.1e1b1c369.0.tgz","fileCount":33,"integrity":"sha512-r8ywaYuTn5eLD1wv+7BtWZGSgQjJzrZHdSxFZUBjMd1WwcvQYOWhwHa7uEKZ+hVTIq9tGIvCjawbmyM0UVM/kw==","signatures":[{"sig":"MEUCIFigJTcV88TCPKYy69lmNsZI6coNxmEqUHLVXjbtEz21AiEA1+mgrMvL7xkqVguyFVhCXbnWiWBJuSJJAjsmICO0LDc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjfm3BACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpQ0Q//dnfAo9Uglj7nlcsxX4zojI0PrZtLa/IHyFKzMrLUweqLVyIZ\r\n7ykFz/YE8TeZwZ0eHB5QTYrWGw84qGEblePU+8TQrm6CaciTYAs6p/hUB2bD\r\nY6sDfi3XzbPkD9IPB3f8VmhREB8jqNbGqzqmBCH5QqUan5Wd8MzrX+M1Xok7\r\nklhFA+R3QkpEiILrWC1/uY8RSowmEN7k/eCHl8BCBfbGx4fhSNNRyI2uWjYm\r\n3o0G6QB/Y+s75In4vHKGQ37fP152iDNhjUy3dr9pSjPLzRBQG7QoVUErCJO6\r\nV/8sowj41B+L0qdwZcfwOAmgzSb3/Qf8SMAzJlDU1sdtuL0gjyTegYOZxDUN\r\nyVErROqR4q0iZ4cGhQJO8LgNULXqdwNY3f0m5Q/+BgRP7TL3GOWRNhrQQikE\r\n7l7HQwm/J7tnwuZYre9zPsq1P3kMrHd25Dh8MBVM9D+Bf/yNhrVnYKIt8zbQ\r\nckdoK9V67OrIbi7dJER1wf6Y0xrOfobC+xHowGP+gj0HpmCNW3HVbRkbITOf\r\n5HHV8tELBz3yDLBhImoDznE1wf9uMZrH6zUiTql8IEh6j3kVBr7TOjrfW6CL\r\nGj+zASoYSH15dog6nckdAX2C1vYShXwyxaZPX071RxE+UHKHb328l9dInbmo\r\nprzCLyAeXQpv2xHI+nzohQqApgMcfLdWI3w=\r\n=HLvl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b59baa6ec6a8114401e616de0c9d3675a34e4206","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.1e1b1c369.0","@material/rtl":"15.0.0-canary.1e1b1c369.0","@material/base":"15.0.0-canary.1e1b1c369.0","@material/theme":"15.0.0-canary.1e1b1c369.0","@material/animation":"15.0.0-canary.1e1b1c369.0","@material/typography":"15.0.0-canary.1e1b1c369.0","@material/feature-targeting":"15.0.0-canary.1e1b1c369.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.1e1b1c369.0_1669230017259_0.23013307950526096","host":"s3://npm-registry-packages"}},"15.0.0-canary.a2ec49244.0":{"name":"@material/floating-label","version":"15.0.0-canary.a2ec49244.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.a2ec49244.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"50216f8cc3f6bf4d065523c6ee38a5750cdd4cb0","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.a2ec49244.0.tgz","fileCount":33,"integrity":"sha512-h0M3wATqY8UDZV35YhaM6UQ+aVANKoa7Zbr6ucFwHcUthBip8NJFaCIXIGM+rQqDKZA6nl/dOKBi3Ugjt8QP0A==","signatures":[{"sig":"MEQCIG4XNElxOs9KC40yQVMQuHUAejmJOHqrPPvTSv9/GaKxAiAW7m56vjs0A8iEb8T8pdhNOSoWVQgDNJRmDOHF49c0Jw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjfnTgACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp+8g//T3jwI2mfD/lTynb/y9EwgBgM33xfdVl9S/YNgkaB2RocwHQr\r\nyLjtWgX665BGRKWtph5HsqgjmxdC0xyyOli4BLw4kBsvQMwZlZ5XXN3TBfxv\r\nCmefxVfLWWLumb1E2MNcY3ZzhA/Txm3ZS/dsVRIqqav3ikxc+WzGQ2GELDwd\r\nKWQfJLYe9fHS3h1j1B7iwhH7hLZ94BKbDzPazbKZ6LX7hiJvziA4a1k1bpzt\r\nhvMXXxQ8G8ImDR9xXL7xQAJfWc9rjVFTkfvapUS6AzOQPI0GLB3lgpu6e3ZW\r\nhbk5crgW1J9NgnGv3NrEiwmmGbMKq99/ZkRDoR+WRE6H2lwWJxPGhdlGeR10\r\njLz7cS/CdeoEHlitEvEKo3nUpVZJzwDwwdzAVachtSVzCQK7XwMEzAYbx1NT\r\nbu9dx0yqTr5XnMPTuXlmmvMbeXgwFN09xVYTlP4uf3w5xSkLV8p7a75NX3oA\r\nx1ZClcok4srCphDRwyn+2Iy1LjbSSfN16R5P79ellTyhtA4tXxbm75EWsXuy\r\n4WRQ2hyGuzeUZWTiMeEZYp1yJ7M4xQsD24ByHLVkflJY3V5N31ldFuJ38mmu\r\n/VrS6gcBXOlfV2j6b5CN0gkjSnyNO6fA68/P5T8vsv+mERw4iqOiDsNmMec2\r\ng2u45cW08F4VOi23p3LyAKwRMU3Nd4BuBa0=\r\n=j8ML\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"fc59d471222d0010e05a636e8c3a9a5a9abe2b3e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.a2ec49244.0","@material/rtl":"15.0.0-canary.a2ec49244.0","@material/base":"15.0.0-canary.a2ec49244.0","@material/theme":"15.0.0-canary.a2ec49244.0","@material/animation":"15.0.0-canary.a2ec49244.0","@material/typography":"15.0.0-canary.a2ec49244.0","@material/feature-targeting":"15.0.0-canary.a2ec49244.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.a2ec49244.0_1669231839853_0.22586199619808212","host":"s3://npm-registry-packages"}},"15.0.0-canary.a7458ba0b.0":{"name":"@material/floating-label","version":"15.0.0-canary.a7458ba0b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.a7458ba0b.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"efc4665c07c72fb35dd476604c839662184987a2","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.a7458ba0b.0.tgz","fileCount":33,"integrity":"sha512-JxLl5BEeToCe6+q21uggil6YwFoF1NeMevDmuxu66qDM8/MhWtQ7rsSFWnDjFs9yKXGOTaNWqdJOBoLJgM9p5Q==","signatures":[{"sig":"MEYCIQDLhuSexlQjmuSC99xAJM7EVdxpDFuhWRVTPhGQ4fq4rgIhAJxwTvS2KZgz0nfAd8EIoFpAhzq8OPmlN7Fh+XMI4nwk","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjfn+IACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoObg/+LwphhD0D8QVSXMzNqdgkd+D9SSwP3fJHlP0ofSXT3Kzwcvqx\r\nvhW1u8Ve/jIaJIpIiYt3onpKmQSG7971fA1NqU4qAmPgHzwnrJODXs6Xpfby\r\n/+O9rR5EVf2NK9srn/uxD04bjXfC79wYho/lTQtKq2jJsdRivqhiqQ+4k2AA\r\n5PdxOlXhv+sc/KsZAiyge0h+YZk2jkVdhxNssyZFboxUFAWvT6zmBwbdtrVd\r\n57Bq12e6uUhVIk6Hrds5Fn3Ow7qn0gg4e4uI5xmdeXA+kB0pfx0eHGzfs8V5\r\nYqG5ra7/v2JD4VouE3S8C4w3LNa7cTDAM+J7vuocKToy/fa9Xfs8cfp5Wixm\r\nWhnPdjw4JfAxd7jEBeNc69NZQ7GYvxLJ9owBChPKVsqDJ6CBU4XyKpK5O1sD\r\nEQDlbJywRgL0MU6kcq68wUjNkX2zrrtTLEcNEv9ajQvim56Bkp5u7XIdVC9R\r\ngNkCwPtz+ChgGj3r1x30tZeaauNZEsD/2oKK0RJO97mRwYJL5EG2OBR6ryK8\r\nZgnMaKms9mjkK2nD0w8hEy4sPPWSjEhZvEMwUjSq8X3w/3poRVrZ8Hz3ESDf\r\nXcpTrH4VPIUfC/SSKPr5YcAECW7I43t03TiBvP9iByIU7lpswwwZ8fBO31NH\r\nRrNZXwbgRzOWTAiENDbOdnwyqr9rDWyrh9c=\r\n=89cG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"62e6a15e0784982b77df0a1d824f81d5a15cb6f4","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.a7458ba0b.0","@material/rtl":"15.0.0-canary.a7458ba0b.0","@material/base":"15.0.0-canary.a7458ba0b.0","@material/theme":"15.0.0-canary.a7458ba0b.0","@material/animation":"15.0.0-canary.a7458ba0b.0","@material/typography":"15.0.0-canary.a7458ba0b.0","@material/feature-targeting":"15.0.0-canary.a7458ba0b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.a7458ba0b.0_1669234568779_0.5621678718146927","host":"s3://npm-registry-packages"}},"15.0.0-canary.7c35e5036.0":{"name":"@material/floating-label","version":"15.0.0-canary.7c35e5036.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.7c35e5036.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"491ef528f1ee7cec7bb39a5bd58cfbeb8540db1e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.7c35e5036.0.tgz","fileCount":33,"integrity":"sha512-9/0U6r+pkTw17a03PZTx3ZKuZ+W8cJJh8MSXSsYpQPaqVvYtiJMDKtndKuj2JEADtHfhw7m47SFg+KV3fapl3g==","signatures":[{"sig":"MEYCIQD8smg6qyPLmd4KwKgEPGRDBJWLqhu602hCNg5oQxUBWAIhAJilagaVkCiZ6WElzr5fSyfYFFwb9r6mu7h+HhYhqm68","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjfy2wACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr+uw//aLIYLMD9qOkAQ7oX4DpY5Bd9a9TV8EF1rEPIm+M9z/H8c4Yu\r\njPi5zjIzTTHbYuOfhAMygfP+oQTXMhJQ5dih+E7UwmDfl4LqiGoogdrPxu2N\r\nc5kjgpv0lEuvoYwJVUzI4PteMpdWrwd/ZaR7GJyi8XdiEJbQ8ulja2FBkmgM\r\nGbDnzrdaWpx53VHqVkENFPZP1er+bqKHcaJ4KmW/MjTgityV7MmNpuDUsAJD\r\nPMERGoqOR1TekS+p8DLB3ke3u9Ghq+NlOE0ZicSw9n12r54xL1e5GFKiZWMe\r\n40tVCcVxi6uy3PxJQ9a81R6OUi3gBRN+L5/zT0iJQY0ZF/GrAcC04q7Y4oDU\r\nAGn44qgexhDmYurr+3RlO4LGCo6PqfmLAXxSFuFkAq4YcUia2SqKuFV94spt\r\nxBFFilapV4D/1HNzHml67Wi7IjXRXEc54SbABCrdj34EPqPo5e3gleoT0TBo\r\n19FHS0TicUb/DLsYO58UJ0oSFgON6ulP8qLqLzIS927SP4hCC8ngw2ejG1la\r\nSg0bqtd12S2Uwrf1CqQl/xKxhEoRgt0bEKUPRY4Ke5gRX3gZA+JgHZIrWDz7\r\nMVzoR/CF84Y/1H8SM+P7Z0bM3Gy6Kzl/qde4gqw7Otw9R0MjYrrdlOZgeHbb\r\nWRKfL5XSQfRIupKGR48YlWeU1utpG7eJf4g=\r\n=U1rb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"bb1e9aff747feef28ef92f415776fe33dc1216c2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.20.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.20.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.7c35e5036.0","@material/rtl":"15.0.0-canary.7c35e5036.0","@material/base":"15.0.0-canary.7c35e5036.0","@material/theme":"15.0.0-canary.7c35e5036.0","@material/animation":"15.0.0-canary.7c35e5036.0","@material/typography":"15.0.0-canary.7c35e5036.0","@material/feature-targeting":"15.0.0-canary.7c35e5036.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.7c35e5036.0_1669279152461_0.9786435375763805","host":"s3://npm-registry-packages"}},"15.0.0-canary.4356e05c5.0":{"name":"@material/floating-label","version":"15.0.0-canary.4356e05c5.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.4356e05c5.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"15d46825947d5493a05f5a4659fd9fdc73e53c02","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.4356e05c5.0.tgz","fileCount":33,"integrity":"sha512-naN50F24Q4TGIWMwj7c7k5uTodu4HL1iRfd1WKmBSYNAQRcTjdVXwH2w3djN8wKyHQX8nxMH0w5brpUQzqGEuQ==","signatures":[{"sig":"MEYCIQDePFVf0hIZWGjKR/RGurviyiHO7cF1jgcAsotijGUIRwIhANVvfTJFJ2t1n0Oj4xFMZLhsAAoSSHgS0Ds+ZKnSkptb","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjfz/MACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpVKQ//TIoJk7qvJzLPADREFSR6I/sJaQbYyz01KryUtaCps5NvpZhe\r\nxcHC5SYyuhdkyntVYrEtyXWBHW8LVqZM8MsXDk/5F5fVyzI1LUV9kbZOiv+7\r\nrtrPQsu/TKO22v+6+tV/WOX8I+WeV62Q0qynIGheKl4eSMn+9/zgaAJTCV8o\r\nwStI5NkicT/Q28To+7C+8u9qToM5mcA59ErzaxnxVstWnqig5JeiqeTthT0n\r\nckLPEjlsJI3ytZLeMOSUhl2p5hS5pXhk/02loPzJlwjt37P5yrx6oS08lyAv\r\n7kYrQcclK0X5y4BeDzuGFO/b1l6nxKsq5Elpzvgrtpjl0OXtXOwywEZIgjsV\r\nhmBPlU6PlqgZEd7gsC06BnynWKy+4IR215ZAdGvkMK3WWrZMitosbPsTKZUV\r\nASHeXM1+CgICH2zgWJimd8WbAimfpaIFjGb6M/BtmNeFmqdR9132HRXcBCaI\r\nqC/DUXMCKYza2VSVp5phy5Ocm+9D21HMnspdXQx46B8jpa9UI4p7IpL44a4b\r\n0/XIhYK/os11b5i8ebIoIjXPbggFHaUo+I0uthLakdrBpXR1lpVmF+6q18kP\r\nHbNWpZnP4JwGUEwqQmXvDJBTPiVGYJordT+tZIA3/K07kt6XsV9VH2zpwZUs\r\naZnZj68hF6LeabrVVIkNIPDuBNOWJciDeVI=\r\n=UsMe\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8f21a6abb8b52fe9aa5804b940eac0cd94256fd9","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.4356e05c5.0","@material/rtl":"15.0.0-canary.4356e05c5.0","@material/base":"15.0.0-canary.4356e05c5.0","@material/theme":"15.0.0-canary.4356e05c5.0","@material/animation":"15.0.0-canary.4356e05c5.0","@material/typography":"15.0.0-canary.4356e05c5.0","@material/feature-targeting":"15.0.0-canary.4356e05c5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.4356e05c5.0_1669283787805_0.6310530869062096","host":"s3://npm-registry-packages"}},"15.0.0-canary.cb605f8af.0":{"name":"@material/floating-label","version":"15.0.0-canary.cb605f8af.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.cb605f8af.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e4ce2a2bc5a13134cd303d075c31346dcd83d0c9","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.cb605f8af.0.tgz","fileCount":33,"integrity":"sha512-zQ6MafmpGKgW7dvQ07hl0gy9a+evCNPEZvquXEe+HSgTey6u13woIOsTFdcjWFooXjc5dFgD2drJQGyo77475A==","signatures":[{"sig":"MEYCIQDb6BkCbhcFG4Otq4+ogEyjl2MWoPCGO4D2v7pQOhu9cwIhALwB3sAkQlHCu1wlEq2atwruYYDARVbCYMkRRwFWvDm6","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjf0Q3ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq+qQ/8Dw58qlG2QDLxZAYaU6kG5fTkUYjjaC0yfyRvPanDSBIqUvE9\r\nXyd+Kkdl6RWnAJd4d4QH5IRlUF65ZV4VqxI5Hk6FeXjICvOxA7uI6/qPO4Ge\r\n5J/WaYl+awC1eRg6iCu3c05k1a0Nzb0oxUz0YaF8ZGiU2mgvAaupMxIV+61h\r\nQiOrvvOmbKTzLmqLrac30LB/glT3x/njBg2jpmqeUNuDNXleLpeil7vyQoJO\r\nD4r5xGngiWirV/xRKd/V/mLFlTnFsgoexm0Xxp8zD2akHEi8hcgoDwMEVoVJ\r\n4HiT49rR6c4IAVV7/bayv0p3QbZUZfaDUKBYXa/N2QIz1p6v3bXf4AbrpfSK\r\n0BB5oWGRnonbQwkvv3hBJDxgJntbGJQ3vN149cIz9IUKQ139td/RBvwRqBY/\r\n0FemrmE3Xvqmoz4PP2O3fsj0bfa0UOvHOlwpdyVyLah/Zhu9z5XNsy/osBP0\r\ninn7ogRxE4i5JEkL8GfOm0fx+Bk1zQPFr87wUW8lZz2bITj5Q23FckYV0yST\r\nGSg1FP/Byg1o/rer825buXApnoTFgmZQJJMssu9cK8my5h8np5co0ZlI2R5P\r\nij79xCmvBlYDsN/QF3zKmUDOufftENIkGOjegg4m8N242jyRUJIrVvJshmE8\r\nWCNF8vxQuLlQQj1qmI/owRn6OO6fy0phwns=\r\n=HnHV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"9d617d11bc1506bf595e8a4f05413067775d3880","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.cb605f8af.0","@material/rtl":"15.0.0-canary.cb605f8af.0","@material/base":"15.0.0-canary.cb605f8af.0","@material/theme":"15.0.0-canary.cb605f8af.0","@material/animation":"15.0.0-canary.cb605f8af.0","@material/typography":"15.0.0-canary.cb605f8af.0","@material/feature-targeting":"15.0.0-canary.cb605f8af.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.cb605f8af.0_1669284918849_0.9329531216561406","host":"s3://npm-registry-packages"}},"15.0.0-canary.05fb07f9f.0":{"name":"@material/floating-label","version":"15.0.0-canary.05fb07f9f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.05fb07f9f.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"30749c0e67cdbe5060aff96e82eb2087bdf15264","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.05fb07f9f.0.tgz","fileCount":33,"integrity":"sha512-R9Gy2PcylDRR0u1Hm6W4Vo5m1aBu3YPqur8cFOmVhrTAQNRNFCM8rDR0XodNUacs6cy7bWKDrRAV7qevWmc/5Q==","signatures":[{"sig":"MEYCIQD/fyU0djPk8znVU6h1+IXS713SpCGVXcP3kN9EeA/mDQIhAPbCcfZqBtVwZK8dbpgwLCQkJA2s+61b7X6ePG4NeIZn","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjf6Y6ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoGOg/+N4ovF/IEa/BCzsEndlskBgoqyCGI2Hhii4rFmq1oFAI36tZh\r\nSzcrxwinb4TjOGa8/v7nTboTnKrx0+HOEKon+cxVlAiplLheuxtHA3mjNI7o\r\ns37xZwMgQfNsAnMRyy2VIVcHWeAhhI7oLkQl8WAl+ElwTZBzOeVKemYoOhv6\r\nnAl9kotNEo2qzLstta+dV2Ci9KhYYt3TiL7DWnEfiFwvXJj6oNrjQw4++d+V\r\ndaSzKgifLTEc14R3ZU0Uxk1M3XoZAB+5ZJ7MTlA4tOnvIMb1DfCiCoFgIUBU\r\nwP6jB1J2bzNEr09VbWfZz5og6JTq7urNtqDfA/vHkIEK3DTszxKIiwMjmdiG\r\niEpVtLvWFotgg/RPJ67y/SrYFGU29oTl4guZfYHm4L/rEBegOnLGN0B1oP9p\r\nbqdOoPfkG0grbXqhdMZGpotRi0psiQ0zLtpEkKBpPYEpPB44O52CbhsH5Yg2\r\nRJgzFnkgaTYAlRd5bhfM7xx1xb8Lha6dnjtuTBVKX7ivvpAsICA9Qy0m48PE\r\nKJLJjXdDrG/SdIzHgaIzI0HDwm1lOEkFME312J73VtCmOVktMky3QM3Hv/J4\r\ntpHpwNajDA4q9USxpVW4pXK+DiAkHQY31wBY2izos6N6ot1tUoX6RMKGRcE0\r\nMFrE0B1NJ8hQkabZlGRPclbOLchJ7Bv+j3g=\r\n=Vvj3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"fbbdaff1715be513be46d4628f7aff9d8f7e27fe","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.05fb07f9f.0","@material/rtl":"15.0.0-canary.05fb07f9f.0","@material/base":"15.0.0-canary.05fb07f9f.0","@material/theme":"15.0.0-canary.05fb07f9f.0","@material/animation":"15.0.0-canary.05fb07f9f.0","@material/typography":"15.0.0-canary.05fb07f9f.0","@material/feature-targeting":"15.0.0-canary.05fb07f9f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.05fb07f9f.0_1669310010637_0.15885867998732395","host":"s3://npm-registry-packages"}},"15.0.0-canary.a911b386b.0":{"name":"@material/floating-label","version":"15.0.0-canary.a911b386b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.a911b386b.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"89126d944161a4732a280487e56108704328fd35","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.a911b386b.0.tgz","fileCount":33,"integrity":"sha512-ZqIWqZNgA96c75JzspV8pszhnKfFECKCj6Ny7e4a170LlFtsHmzUKd8xR5nVIj9R3YCCuWNSKkob52gGmaFtXQ==","signatures":[{"sig":"MEYCIQCpkVYjBiID7IPCCkxAVipVtYJwlMhaiaWOzAw5IEYpAAIhAOqsO2QbZ1/kEgLKXbrImj7cGZwu0jBoeWL5if37AuBz","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjhOYIACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr6FxAAnAMPBFfuJ6QD1UiuLoqFuvRjuVvEXfmASOC9xphaPKXnujjP\r\nQozpCMsetzqs7PqsZazrCYlRMB3idk8t7AlU7+IxOFplx5OgpbuZqjSJ1glz\r\n6ynOGcoGcjXMibt5ootl7LG/1p0enxhXDkENz7TqmyPj5InCEvRoQfPFBuZM\r\n/3Of9vg2WZWOTw8D914OKeFw9iRHgkt3fv+E2C5AwBtV2PyX5wg7wk9zJEe4\r\n9PxfdhtF36CJ/CIPdI2N0N8u0WFIM7mxxrZw8gDGmqvHmXbBrfQbuIK6Y1MF\r\n+DJhsm0LZC+xlOQcqi8GOhMxTcUpk3eCyVKCf8EF66RjZTcSCYOJzRgF3QJm\r\nwPx6bMtPedyPbqQKgz+Sd2K80yk8o/azh+O46EmcADEXac+mNel7LwQ8KNpZ\r\n5QGRF1kij1/aOxb/E9w93lEjx74JRSYPhslmsXYX2ZpdwuCwJy3jsWCIBM14\r\ndg4N6ow/j5Gctcv/xfSwBTyyecO1CAGW4jRFCFGgORqMC5GdUe6v1k6CyrAr\r\neGIKLzx3Lb2jHX36aIDeQbM8QNoYLEHjfDDXhnJnujVEwl6evC+idH3u9YE/\r\ntS9/IrPRwNAirRM10iHb//Z2lfxjksZTgK0DMVP9528MCUs0E7cBoUrqbTZn\r\nJoVkGBJG3vRMOxJpX7rRZe+0ohbeG8D3sM8=\r\n=0Fma\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2487492bf1103f4c82913b328eb64ca5b71b9f5b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.a911b386b.0","@material/rtl":"15.0.0-canary.a911b386b.0","@material/base":"15.0.0-canary.a911b386b.0","@material/theme":"15.0.0-canary.a911b386b.0","@material/animation":"15.0.0-canary.a911b386b.0","@material/typography":"15.0.0-canary.a911b386b.0","@material/feature-targeting":"15.0.0-canary.a911b386b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.a911b386b.0_1669654023995_0.9186427435007041","host":"s3://npm-registry-packages"}},"15.0.0-canary.2aa8050b4.0":{"name":"@material/floating-label","version":"15.0.0-canary.2aa8050b4.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.2aa8050b4.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1546f58fad409f798e7b9c94f6d9ebe1d6c5f09c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.2aa8050b4.0.tgz","fileCount":33,"integrity":"sha512-50O5R8oVDJoyOxQX9I0Yln2e6LIRTbni4ra5/aYiU6JGI76HLqYojCO1veR8FRvrjy28d79J/+p9YghlUJnsCQ==","signatures":[{"sig":"MEUCIH2a1AbL2t6sAZMnR86dR8GcIVeWUbjRgbe7GQn2RFDyAiEA27TX6i1YQniv4PA6VpSaTU427Fg0H51NFoB4KrE1Oh0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjhQfYACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrabRAAkwoOUxAo0ksg9mUytV4VVIVbkYp+9p3MxOMRMVc2CKRewmo1\r\nX9TascTPN/DkmvXLUCsEkhoDhJim+kp3AXBp8EQNpG7fZUiD4vq2WndxWQnV\r\nEG2V4rk2rai6E30TQbIxaQkdwXH8Jb8tIiAoC/rmTWUy4Zc54qRCSfOFmK9V\r\nOrRuWP5fDx9Zo33DW4pmhu+Z90Hd7o/jbdmDXFZg77/QduPAYO1LXI0TsTWQ\r\nwOv+97Y1Dxs/2ywpZm4teIPhN9StPlXUiRVQLRizE0o7xfA7G/KWNpseHpSx\r\nEjaBgK4R71YoVnIxLPMDGZg7s35DAU8r/zTeo8FIM0kfrj9Z04Qn3flxwE1s\r\nFQoy0p5ias/k249Ke7mycyFVhAqN6ZRNvHTbky+QpZt9TLu14//roGxUfQiO\r\nlWv9oVkCgDuE3tWL63lYoK0EcnEFaX/6wtNhEwJhEsp7eF1E3+uKA7tUgfnC\r\nSxKo2yT+tMVAsxMLQzGH+OBpspN2sEK0xpYmtTikHhvlX0z3JbDZ4rs1xrgX\r\nPJe3ssicEN7cE1pnVSQQvKKXAOOrTa9DjibBLpTBW0b8KiFbsoprx3Th6w4V\r\nPCh4FVVaZDq2NWI08hxm6gKxB77tul0DA7E1bmkTlWLSsDQomz9GTn3HSniJ\r\nGm7sbqeBQR1Nhv3Q8NymKAUkaIZ00c+FzTk=\r\n=B5xG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7ea9b47d90d470adeb6f1cbc0c1c98b88392e56b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.2aa8050b4.0","@material/rtl":"15.0.0-canary.2aa8050b4.0","@material/base":"15.0.0-canary.2aa8050b4.0","@material/theme":"15.0.0-canary.2aa8050b4.0","@material/animation":"15.0.0-canary.2aa8050b4.0","@material/typography":"15.0.0-canary.2aa8050b4.0","@material/feature-targeting":"15.0.0-canary.2aa8050b4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.2aa8050b4.0_1669662680500_0.31736627354091373","host":"s3://npm-registry-packages"}},"15.0.0-canary.323904a9f.0":{"name":"@material/floating-label","version":"15.0.0-canary.323904a9f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.323904a9f.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"47f422d82e8c9c6562de4d453dca7076a52b01f8","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.323904a9f.0.tgz","fileCount":33,"integrity":"sha512-Lq2oPDhxjwfwkS9hRF/xJuMVcI9xx1P1G+V5iqscNl60LYBtFhBCV+21scrlYPOeH41Jx8ngamPQCUQ4y4dCEQ==","signatures":[{"sig":"MEUCIGmHFjRZ18QpmkiiOGqCXGyBfqYyUiqZ6GHL30PhUez1AiEAjMgnVW9Yls6Fb6lG8s+MkIYG5ExAXrsC/ld+8TYRO/w=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjhiZhACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmrp+w//XvivgE4Jj+0Hz0kn9NPG6tTCZenmK7Tbw+2n1ajQ2hPFgxmG\r\nAtV+ywMNt/pCWJu/FiHOZ64buq4Eb3z9ygy6avyPBFodsmhGSs04eRM79kNS\r\n4smlsT+ATVGAps+CDEa4WYLSpXfvqgAmN63/AG/MCG4aALU0wfgOgbvbXv4u\r\n0uQMFROIctwdfltULXPkS8/oVHVEWHvoNoapuNsf9tK4DbIsO01gpKA31EJf\r\nBEH7qWN0e8roDP4fP3sgL87YE+F17xSxyFQYvDnVd3YCiMlt0JwU6l9Uxy1s\r\nuf4E6azBJbHFqqJm2az4VSdzf2/NmWY+WjxU4mPldaGHFx4/mbh7ufkayx5g\r\nfnED1QgBFFXUqvEfFi6sf0ARQg0P5KJK4KPS4fQFGjj4sgxsD5n7tHqjPqqw\r\n/Rjn3wSbWFa5EGjC83+zh084n52RHpO00o0hvmAjpXyZMNcKFvi1C3xcdMyS\r\nGw18oyY1nrd7tmpvy4Gr0EAIJbkUafVZsxJGmy+gCIbll/yhlde8q9eEykpW\r\nDGovMt3Qr5pltAy+lKvTXVS9lJFsKueePCaxjLWz2IPmu0Gk3mmmpQu+HuOe\r\n38EUBjqdwFkBYPCpj32owtbACdsTyRQvaxqv+zk+yLGdu5q0omVplbh1h5vR\r\nJPr1OquxIwnfIEfqweG2CNhZHBdC/AZf72k=\r\n=dx7H\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a69fa8c7160aaa07d868f5bc365076bdb159bf99","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.323904a9f.0","@material/rtl":"15.0.0-canary.323904a9f.0","@material/base":"15.0.0-canary.323904a9f.0","@material/theme":"15.0.0-canary.323904a9f.0","@material/animation":"15.0.0-canary.323904a9f.0","@material/typography":"15.0.0-canary.323904a9f.0","@material/feature-targeting":"15.0.0-canary.323904a9f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.323904a9f.0_1669736032875_0.18623167423094578","host":"s3://npm-registry-packages"}},"15.0.0-canary.168a629a4.0":{"name":"@material/floating-label","version":"15.0.0-canary.168a629a4.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.168a629a4.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"00e6f34e98e4eb98c42601c5861d35c73b2a88c8","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.168a629a4.0.tgz","fileCount":33,"integrity":"sha512-KDyw6CnK0xVjhIqEkpyFjeGeDGkOdnAMwOxw4dKcQ6y7nQODHN2dLRcHuVzY6fjCbO4NymscPlDX0tyQr0o3Ag==","signatures":[{"sig":"MEUCIQDi9BUkEdzok4v4qE6TYRGGx62e1QfYNwALyZ9EsUiN8AIgHaDdr5/sNgQ7/XvQK38M5DIqG1G+Pu0NTOZVOBAA3rA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjhjfeACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmplgA//dvkCyxNBZDGDU/lqqzy0v/ge3hIoFmvBZltMIz9dYLGtSr+a\r\nzuuWkVBUGqysu92UiwLcE3mPG+bo4z1GCYyQzBdZGfhxLtHOcfVuRjLl8Tdc\r\nhf/gamh1ptk5yHbtbjTj26Yi/jy9T5eiUgpulzRGgiRtW24ab+fb5Z+ZJuD5\r\nqvG3pumi9u/N+7F1Hh/BBzuHx1W6uotMl3tDJTU6IHKSu+pO/VvB2MVhvShH\r\ncDqU6izGPIIJqSCB7zR8s1B+2Mjt4BSLziyMH13Kmv1DDgU0GSnNtC6wx3UU\r\nhviStRtBDVmY+BaR6I0vYL7IVR6dJOmPki3CgIs3iTx0bukXtes66NE8fLpe\r\nJD1cC1xfOsqnbnGfGCNZHCXdZ5hYL0blnO4S7pY1A6KW7o+9MV2L25vlrp3v\r\nLEZuo99KyiQ3wlWFJECoeo9z1qbdzWYEMg6gRnh5CGHVJmsY1Ot75ugLm3f0\r\n80fAPrbIHAEZC5xHBjiL9/ceTumihWb8DwVY2Hhyng0o/6CktKQEbTZ5Cv6a\r\nl77lqVKfm+umsiz9lQdlFMzCWSUEUHrpFAUKGISlxnbmrz6oM88M2xpRBian\r\nO3Ega5dzlxGsNYdZmuz7qRWOSLZfccZHzGwe5TJoSf/aXv7qABRFR7OZLlBo\r\ne0HonOKMqG7RByFdAoN6E1JFUg4fcZDslRI=\r\n=ZaCK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3091b344799132cce493f92839da8e544fec7c05","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.168a629a4.0","@material/rtl":"15.0.0-canary.168a629a4.0","@material/base":"15.0.0-canary.168a629a4.0","@material/theme":"15.0.0-canary.168a629a4.0","@material/animation":"15.0.0-canary.168a629a4.0","@material/typography":"15.0.0-canary.168a629a4.0","@material/feature-targeting":"15.0.0-canary.168a629a4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.168a629a4.0_1669740510188_0.774802797246489","host":"s3://npm-registry-packages"}},"15.0.0-canary.65c411674.0":{"name":"@material/floating-label","version":"15.0.0-canary.65c411674.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.65c411674.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"cdc6078141729cb2bc67ce30ca6cf70c18350cd8","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.65c411674.0.tgz","fileCount":33,"integrity":"sha512-akTgSCs4iOZiYnQRrJvCYHj5/gD8VUYaLy6cj35GL5QqLarcu2iBVcDVi3gtGFKx5rLADAesMaPjkxOdfAOqMg==","signatures":[{"sig":"MEUCIQC0YQYAfhs8bUZM97w9ZDLZxopH+xGwtV86H+C0Yic8nQIgO05001iigdFaUj7LLhp7MllubRv+LafUQyPOERlTBrY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjhkN3ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqYUA//XtmGtnBpJnXuVLBa114JVciITtZhdJlqNNi92wbn+vJzpHud\r\n9cMIV7t5U/GDJmUyCqxeRzjhferrppV0Pvh7SwIT3GUJoxQFb4DN0uLopsbS\r\nvM8TCd7EbbT7xy+2smDIkxrVTrFSUaMXm3W8RrKs54cD2HPo7riebhFQxXM1\r\nVQBY8fdGzyaVuYqlFTDIkuzcdfkd8GRKSyZDkWIDqy1hvSYjxMRI9h23MCmM\r\nM3thdJAEDQu5BU9yNhhOuYvBMhTDnxuIx2qpvZZpgjYzWxY1X8FxETDYg2pU\r\n9qCqZ7FD30mUma5/8TqSMTRR++urVPPPmvWXVvY7X35HInoDbzxwRe6QKAl6\r\nB/VcQ9W0s3y9ixRd8tltyVh1TR4IHqn68E7vpiUX+rcKlQ9BaV78AWkKWFjP\r\n7cOZcg1ki0rIgaZZfEn8fR3BovS9nLF3kvtfu6/SiavjKtpJ3ebqFx74kDgH\r\n4+ma9WyS9XKs8mmHBVR+G2wG8ROS8I/7P37sWfA56N1oPl5oD6Dw3UKPSKeC\r\nYVk4HMuCm/aNY863kQSx2GA8UHuCJ74DdzQkvqEkN2eWW505qFQKKD/s9yxQ\r\nN8OlsXrJW4HDHhfV/KnU/GJccPJPHq5r6pZEBr1xHrKvdslIjAwrjL5cpk/S\r\nY6wQd0Horp/xQ83QPyWRqJz2pA0qS1wKWY8=\r\n=C++Y\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d80879a8c467caf0f52227ec97481bf5b7f2cb16","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.65c411674.0","@material/rtl":"15.0.0-canary.65c411674.0","@material/base":"15.0.0-canary.65c411674.0","@material/theme":"15.0.0-canary.65c411674.0","@material/animation":"15.0.0-canary.65c411674.0","@material/typography":"15.0.0-canary.65c411674.0","@material/feature-targeting":"15.0.0-canary.65c411674.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.65c411674.0_1669743479096_0.20220835971963425","host":"s3://npm-registry-packages"}},"15.0.0-canary.a86d36fd2.0":{"name":"@material/floating-label","version":"15.0.0-canary.a86d36fd2.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.a86d36fd2.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"29f01adfcbe87fea43bd7aa9eccaea317311c78e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.a86d36fd2.0.tgz","fileCount":33,"integrity":"sha512-6wu+EbEjI1OtRHPLvdl9MP3i5UO1eznOysLqSGNDd3EJp4qrH6ucCqy4hN5s1rcEaYv2RzbI2/34/hva3TnlPw==","signatures":[{"sig":"MEYCIQD6tY+i3SVxhbSjQWI1rQhTRsKFsDnllW+h5rko4ALE6wIhAIvi0DCEAggMkm5wFcPF2YPE23uIc4V5eDQFSsazzUFV","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjhrxjACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp5ZBAAlZHyIiu4xtF11rJwxx1fiIS5++ejN3cpouJoWRQzRnEPTm7N\r\nt7ZLhjNabwiLTpQA9EShXkgonIl0o1z5tCW00MJHiBqoUpkvx27YpfQiFIEO\r\n2icwHEZHxoXXecUGdaDqaMwcqYvfTU9NEhqGUDCU0wc+dOEL8QoCZ60hAODN\r\nVrYMGHZLt2AVGXtfg+0bVd6+V+E2/E07Aigz7Nmv1m7Un9QftnZ2Ltf/oTKZ\r\ndk+sVxoUmH5UZ+QhVbpv1IEEuuOM8e996VpatE0qs1byFQ6Jcu/MSLT0JA0i\r\nEwQHkLXRbk4RUe0E9Yjin3y4XboHyWllJO9IIcaFsZ5teQfPX9TEnbvW4Ldx\r\nH+ks9tKuSXNo8Z79Qn/l1/kM042PirC+C0hGjMlSDN+f3zKTuEy2U7PIe8Ck\r\nWNCCnmCHoOk3yA+FEOUOIsSkS5hUMCzindWNs4JaFVoR49OaaN+obysNcwIv\r\nyMfc9PmvkvDQkJDVKYV7zHeq9cx2am619A4fU+nFgMLGe8hnkQ/JuhHoaEzk\r\nBbh72vXHbIBq1Poln8MiHWLUIzqRVWhxIJ65RNi1v1Yfi/0zOABJLE8UTJU9\r\n3piIlRkZX+WIRKnjZZisky5/UIhkMh3RohHtYXSeQgjLK8m85ZgcLIr41wVI\r\nDJ9pw7/PxM+0k0PLC+Q9E16fG3lkTavWqWk=\r\n=VlkE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"85d3ff6d42516ecc839fe336441543c8df62326b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.a86d36fd2.0","@material/rtl":"15.0.0-canary.a86d36fd2.0","@material/base":"15.0.0-canary.a86d36fd2.0","@material/theme":"15.0.0-canary.a86d36fd2.0","@material/animation":"15.0.0-canary.a86d36fd2.0","@material/typography":"15.0.0-canary.a86d36fd2.0","@material/feature-targeting":"15.0.0-canary.a86d36fd2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.a86d36fd2.0_1669774435416_0.418376179657477","host":"s3://npm-registry-packages"}},"15.0.0-canary.3a1f46c66.0":{"name":"@material/floating-label","version":"15.0.0-canary.3a1f46c66.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.3a1f46c66.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"35dc0c27967f0f6334d5ff80260bcd3737127155","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.3a1f46c66.0.tgz","fileCount":33,"integrity":"sha512-vDbLUP5db/bF+Uf54OEhYtznhziEYsms4kDucuGcMproDv8wIqf4F9BDL4MTiAijpQX2+ZWeQu/qsodpt4IGig==","signatures":[{"sig":"MEYCIQCDvPu4KQkCZPqZnKthKYa5Ii/SpUKfH7zkbGMeizxcZgIhAJXvkgE2dxsU/j6vBzZDkcDYTlUYNl0DJk3ybPYaNqhJ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjh0dZACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr8VA//SNLNlN1lL6DFZPf7MoH4JTXy0fCJnLuP9Kf2fW/5/ORPBsVF\r\nOQN8SmgZjCrfTBQOllQrPHidsKhj16FBBhk3F5GkfQrtTqGzglCaPEJQVj5v\r\nsy7805K6xp8LfyzxToVaKgVXsBiCf0krFhEqC2nbpRxCQ4Equ8xAUUQaifbz\r\n2Hhm282Rs6p+dG+4s5j05Lc+IRFwROfjeKKhhYuBGymcd/azlBqCURAVAzmN\r\nBIFBrjpgIWdfa5IQQhPCnNHL9Wm3XGEMFq6+RHE7ZCx5S8i/5VJbM3woQwNL\r\nw5aDRkn7PGbCDmDs0MHZYjrJwC1OZSPkmMQqBITAjVfdeoTTxULAkGvwtYdM\r\nZ+7CdpVkM8f6+mu2nSOWZ1dhL5gEDuzjCdYzSoS1GMw4fwmYbhwf7vXL8WMO\r\niYjrAQgsZZtFOwRDtHRz7m3gtgEu7fgboUhdGCXjbtwoA+NJJ6uf2UgNsBjG\r\nE5+lDVUcJlDXc7e2TE741sXLL6i7OxjHsrkpq56YsyufDnHg5Uvgf74kXzfx\r\nRQ5Irhor2uoDVsgz1QGfvSwkq0G/sEBk+RgOZWbS6fQMOQ2ACG0xkGO9cykw\r\nTQTs/f9UR1Cb4O+GJAcxnIIi60UiUdiYKggvpySvFTZeS9DBXgZ6CutZ/f/x\r\nRLhHNBbLkqKwIv6NSKE0y+o/GZNXLtwA48Q=\r\n=hHeP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c3f9c47a1b8fbcf554e1fce6da44837b6d412e2f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.3a1f46c66.0","@material/rtl":"15.0.0-canary.3a1f46c66.0","@material/base":"15.0.0-canary.3a1f46c66.0","@material/theme":"15.0.0-canary.3a1f46c66.0","@material/animation":"15.0.0-canary.3a1f46c66.0","@material/typography":"15.0.0-canary.3a1f46c66.0","@material/feature-targeting":"15.0.0-canary.3a1f46c66.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.3a1f46c66.0_1669810008952_0.2937466023682549","host":"s3://npm-registry-packages"}},"15.0.0-canary.32d8a9648.0":{"name":"@material/floating-label","version":"15.0.0-canary.32d8a9648.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.32d8a9648.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3b6f2606904bf0d16eb00606de3ae340593973f4","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.32d8a9648.0.tgz","fileCount":33,"integrity":"sha512-fPK9CIhV/JU1e+TJGFSpBxRPcI9BcH2dy+rj+KRWi0ITPSW+J04juujOxRr6e5y7gA4bSDGAOIAvJy2XbKSrtQ==","signatures":[{"sig":"MEQCIC5AlqrguFAuckzZjD+Pcai5lbTF9XPtaPkdvkOfkhNtAiB3HXnUdPu0WtgmxwT8cu9ZwBXkt7nX9nCKBrawRFfyMw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjiORWACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo27w/8CwqD2EnACChuH8n+PvtSr/q3kWkDAXvvBWgCNyDRjUqTSpYi\r\n63ntVbiEBK2AXItUIPqgYeX63hHlWMHvV4AyRpZ2ySyT79eMRIyQ5x3BqSqK\r\nGEcjb1yLNt9JOn6ZMf3HmCtVUb/EMmxT7xPAhSbKpMXB1taS+S86V1WK3aM8\r\ntEM032Z3cKBGg+eTiI505cx+D/ksl9Dw9/S8U3b9lQHAR3z7Q9emawzNmuCQ\r\nDT8f2uh7nbL+dLem53SUJa0sWfpGgO44vQMWvAF7pGAbu7Y3WlrIXpKPDiDx\r\n03GvxjTrg4hihMuakB1B9Uwd55eHIm8a1yBsemP1Dnfh/ulfXByTibKwL/i3\r\n0dOJtUCTXRwWsb2TER4MMN0rC+blR7lHjGuv4o2JYYKSHRu95sDD7qINt6FK\r\nIhLfj3QNahpyDMXn4JeZmEwRvuGmvxrmrqCBq5msJ5cCSLKcF39s8bNwzujM\r\ndZ8g8TPgu5dGKE2D4SfptrFsvQ1FvCtFFLmVQC0nm73IQj20V9IyM2Tj1Ybq\r\n2AaqVljiMqlbTrOH+Tw2PW17O7pU1NuhfYwZLNEaGPFPfMUnkGyxVzUP8DHF\r\np6YC3YyoLQZQkjdWs869/mAV9iRp1oHpMo9ALGO3XV1Ugb8ejbVyJ6/WI4Q6\r\n2vRpnaOlOMWX1Lz5hff8CO7DAqYGmPq7o8E=\r\n=1BSS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5833a540d2f362be3d86a707323bbeb6cee2c627","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.32d8a9648.0","@material/rtl":"15.0.0-canary.32d8a9648.0","@material/base":"15.0.0-canary.32d8a9648.0","@material/theme":"15.0.0-canary.32d8a9648.0","@material/animation":"15.0.0-canary.32d8a9648.0","@material/typography":"15.0.0-canary.32d8a9648.0","@material/feature-targeting":"15.0.0-canary.32d8a9648.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.32d8a9648.0_1669915734381_0.07669800853214026","host":"s3://npm-registry-packages"}},"15.0.0-canary.03618ab70.0":{"name":"@material/floating-label","version":"15.0.0-canary.03618ab70.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.03618ab70.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"0575e35b498894c39e3220eae499de75144c850c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.03618ab70.0.tgz","fileCount":33,"integrity":"sha512-OHOHOxHmik9W80UkGQYg0CjYU85atVVaqg10xhiCgWfIA7yphaG6QPksGyWHG/WvOfmMHL3FOKglPIeG0DJhXg==","signatures":[{"sig":"MEUCIQCrVc0l7JGSSTYjknmDfv2DhSOXMsogrnQ5VSqXsn8FZAIgA8Z4Dee6zQ8s6/LuscDHbfv4bJ89Vflg3X+f+X/hrfk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjiRR1ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmoluw//T5ILP6eOXFd77egsuyu06UkMjVxhenmQnpBYussApe6e+iie\r\nerH0Qol2lzmUL2SVvp04dBnUwXucP6mn62/TjfL1rk8fLQVYddpU7NZ85bdO\r\n3JBkFv7BngzIePbGEBnhjscNODPCuqEs6UXChDmSHIh6q2CrTmp4WK3+U7YE\r\nYYpyqOhuuNzevAYkKh8Sxwrywxnz5Ts9J7lmrSpLa5klpsh8SKhmbW8isF5r\r\nvywri7ehz/RvdL0u/q5+Zu/8iyRk0UvhakOLXVOtlUrVmFF9I5Ve1WhJ9+Za\r\n/A7lcN3l4QWq1RAXpd+Os6abtKhE+TwdVfmLveW2bW1DKB/1KTmIZlmkYdLg\r\nUWXpy4j00Bb4gJ7aDRwmWBebgTpfJBNcN0Bm2+MuBLMu/9AtD7IScyg4qWhY\r\nupkJB/aMHHdh7Xfrb9Z4ebQvSrMnl3hr3n2Q37sgh8yVTXr31F5vFJ0CS3rY\r\ny6VlJQTxFyqTGNJ2b1DilQDRNObryxE1zRhcktrzv/LH28a+CVjAnzaoEKth\r\nzAKmSe5zrRMuEzVc4iYCwzt3h2kb/+BFfpN8QLMwuQZyqBSUOsfokyRuqF5r\r\nX+T9w1Xg39YWEHRFC75iFzt665KMPDOta4p6NdotB7zUZ7TarUmcuamUtxVn\r\nV8TkLIWEbMHL4Vvs7Ng5CAlwZJAqWz80zlA=\r\n=ean3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b7755627c14a2cf095b6ee87d1ad15c14430ebad","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.03618ab70.0","@material/rtl":"15.0.0-canary.03618ab70.0","@material/base":"15.0.0-canary.03618ab70.0","@material/theme":"15.0.0-canary.03618ab70.0","@material/animation":"15.0.0-canary.03618ab70.0","@material/typography":"15.0.0-canary.03618ab70.0","@material/feature-targeting":"15.0.0-canary.03618ab70.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.03618ab70.0_1669928053483_0.4599770230638027","host":"s3://npm-registry-packages"}},"15.0.0-canary.68aaed940.0":{"name":"@material/floating-label","version":"15.0.0-canary.68aaed940.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.68aaed940.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"06b39476f9ce180dac4421f961100168eddc89d5","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.68aaed940.0.tgz","fileCount":33,"integrity":"sha512-MalLwNiMyeFY+vJIXV5UR1a4Y20CEBEdSJZhJFgY3P/AA4IVs/N8LW4M6L51ak/vnZF/S/beBsA1M3hx4UQjiA==","signatures":[{"sig":"MEUCIQCziELghLDO1bjnK5j+RrGDDnM7COCDiw4VYwCfv6pmTAIgBzRCiMQMzVFTEDTXE3dnI/5N1/7/WX2M2khD66qe6mo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjiRtnACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmrd5Q//RVEZ3Cf37abVekzWfJXPNhXoNWopUvDIOmp5pAgFAgsF4M3k\r\nR48V8zOhO3roP8t/5gamfBOMudeeHfU5DfwvcXcKJIKlLi2jI1e6TKYS7Q6I\r\n+6z1fzM/LFFqtkaT00mgpTnRmsijvdn5pxKzyfpTrecUYzF9MVRTMS1Wn8PG\r\nK4tooaBBnTbFTi6axMKAEW2iCmiRxIgsb/0d6UfA9b8E3bDLGLeTUkkNOGRn\r\nPvgm05C9zBD2a8GJvBcNuTcbujUtw/vb00w7tUvt3Thxcg+cVJCMEe+bTgSl\r\n57QWsO9JvD/w15eWqRw7noiHIVW6N3m03fkybW4dFdMhlA1pYf35sGAsdjOH\r\nJOnBTykfPYjtdTtOQ4HpjRckwfwGpPtKqKAipK1cen/d76uiUzB/WBvjTxwu\r\nTnmITvuR8xFRXwNkXPMYh7dvUJlvlJoN+nDj019CB6YjgYJNrZMtmiAxcKxJ\r\n6VGnVsgst+/34ZQlKvxvU5YfXcNupgF9hgx1YSamfj/QPJy9VnOV06e1ed/j\r\nrw/hbgoVedeiMLnJaJlFY0VsfC+PjA4C3+wBPphXxOmHETuEciWTRbbF9Zje\r\namah6Qy7EZTWp7+/BW4v1SDhRqA//GuD8VK9LNMgkvhGt8EMveWqIPeFRm1C\r\nTc5J7CEh/qIDAFqOGCf2X0V4O1xG/DTaoW0=\r\n=vch8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"6092c4f3bcdf41ae7f55d37c6ad51793eb8f040d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.68aaed940.0","@material/rtl":"15.0.0-canary.68aaed940.0","@material/base":"15.0.0-canary.68aaed940.0","@material/theme":"15.0.0-canary.68aaed940.0","@material/animation":"15.0.0-canary.68aaed940.0","@material/typography":"15.0.0-canary.68aaed940.0","@material/feature-targeting":"15.0.0-canary.68aaed940.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.68aaed940.0_1669929831292_0.36700586709602323","host":"s3://npm-registry-packages"}},"15.0.0-canary.f0a0bbc75.0":{"name":"@material/floating-label","version":"15.0.0-canary.f0a0bbc75.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.f0a0bbc75.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ca7e45adbde1e8e771ade2e7634392060e197c8e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.f0a0bbc75.0.tgz","fileCount":33,"integrity":"sha512-vyXgByDh7MYsl/fh29sSiil5nrs2PIOiDt5xlMcFdIm+XG+jLvWG8LhfUvqtUzqT77mX3qlufTKvUaQNqqh9WA==","signatures":[{"sig":"MEQCIAFwrpe5p8FJ/NLoItv3dduoClBsYe/2AR/XwSlyVGIoAiA385R2qUs9QTirWuOUFwFzTU0qV8XLVjSWZHoXRgP4XQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjib7qACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmrl/g//SOPEfK99ENTL3y+dnTvqZpDYz8dfilwtxJ2+RUNVN1Vw022O\r\n4uidO9Rx2KYe+TsQWlzh/39QBMAezRuGrQFAe4e6qlSV9SNT77Fg2q+Kl2TI\r\n+zkFa0p2JXwciuSQpnjpKuN/r//jat61V2XDd6F6Oi23QQ3JsvOAFd5FfOXM\r\nnipM3JSEXAPPimuzyPP8E85YPFdXvDHagjzcatD32M2j1iphS+CLM3r1w0Yu\r\nXotrTy6y9hJI+XjwdBkhLvHwXmm97Ts9VLrwnR/KEu+Z4MHd1O7RGgHOapl5\r\nOf8wUG/aTKKiy4Ny+Sr8uAH4tYXVXFIGrD7h7yGP2Ua7Lp3IGBv51nbW/VRV\r\n47gKtG1sY1S5KCxyNSdbbYy/tWFeqffceyVPP3MjUP0pUFxfW0AWbL8r+xqu\r\nIk9/07wwwyqTvq8HuT9q6BKkcQAJJHW/N/YKmhUB6mudetuTENE1zy80F9jN\r\ntX91A3qS3s3NFKKvFZmIZbE1FwemnNJHQXITofteCdd0mE4QTeevx1GlS+G/\r\nGqhEC6RDihL5uIicy+ITG+BulTaTy/KdXIlproPp9fE8XDO1tYcr3DtEwOXD\r\n/d4QQUcWHl876XDeVKyt0x2tE09+x+TGns2lHw2Ct5WnR32EQmzZ3fpJOLrR\r\nVcy5kEZDzXWLzrUBwsES9OyFcW0Au49dL5o=\r\n=OXiJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5111125522be9e3847929d9bbaf323f31e9057c9","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.f0a0bbc75.0","@material/rtl":"15.0.0-canary.f0a0bbc75.0","@material/base":"15.0.0-canary.f0a0bbc75.0","@material/theme":"15.0.0-canary.f0a0bbc75.0","@material/animation":"15.0.0-canary.f0a0bbc75.0","@material/typography":"15.0.0-canary.f0a0bbc75.0","@material/feature-targeting":"15.0.0-canary.f0a0bbc75.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.f0a0bbc75.0_1669971690386_0.07907605047330768","host":"s3://npm-registry-packages"}},"15.0.0-canary.dd99c8764.0":{"name":"@material/floating-label","version":"15.0.0-canary.dd99c8764.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.dd99c8764.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5b236619ce637cf3f2c70662295687433c8a4348","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.dd99c8764.0.tgz","fileCount":33,"integrity":"sha512-1ng9w3xtSRGJY3u85vQzz/PHeLvX0sDtEQR2ZR9AxaGfGsazfpTgudaQ09/kbzV6lKzFODCVoYPF3ySAJS15VQ==","signatures":[{"sig":"MEUCIQCr8dXIS62utUK+DQB41hDbS+8vkiYsHaiys0aDpjegYQIgFeStw1k6prUfG8G2XccKcxJUB/QvnLHofjwdYM0T4DU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjigUMACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrHABAAi4lCoCYgHDPOweE799xYGk+tcDqvom+Z6cvwjCbxreNjx/+V\r\nH2shbElRT7b840AYLn2ZA81cizf0OlBqMncdUp4lhy0RbLSbk19J9vCIVVAL\r\n+RyWK4Fes6ZRv/r8NMj8mMGFfaMSxqi1PruEWsInSk8oHTkK45p9CmNsrmLo\r\noWodiPepl/TCmTr7VMkgyH30JcWW5d5UOjPb2hvob7mPwFphGplQ4DkmOR76\r\nXBaY+b8bHycNitpui+W3jRj2qjwWN5QYT7g4NrBNi/pnQf4oVZ4Rscgqk2CK\r\nFosMy2ka1SJYCbqwMuF5yDqSo4iRzxYXfdZjV4XIyRnHp5EGJpKEq/2bfDd5\r\n0vJDMowE1X1onMbkFuY/pPDct/ybT2TeNYIkpzkTVnB0zV9aGlK5IMFMbWJQ\r\n5BIy7HpqKig6qgnvcdTVblqw5DwqOxM64MwCuIxNA8xxIn19vDNtxod8rin1\r\nLV4dT0E/mVrZBdEdXxN1BacDiSfdGIDC5uOTQd9frwza+pe5OOV5U3H4r0JY\r\n/tEVo9CdHu2p2DgF1LTTE78mqd+J4jSo+eENR+6GvSLj+ZErAAW0b6iWFHiz\r\nmxRIjPt10pnY0XcgPr1NvthB8OXi0sfxg/bXqQEUqpd3scBvy73ubnfPBYeC\r\nx56kz5ee7NiDcy8jkAPKRQWnUhNMc8jnOV8=\r\n=xbfO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a9ff7973c7dab53b620d5be8d56e0c491cc5e7ed","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.dd99c8764.0","@material/rtl":"15.0.0-canary.dd99c8764.0","@material/base":"15.0.0-canary.dd99c8764.0","@material/theme":"15.0.0-canary.dd99c8764.0","@material/animation":"15.0.0-canary.dd99c8764.0","@material/typography":"15.0.0-canary.dd99c8764.0","@material/feature-targeting":"15.0.0-canary.dd99c8764.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.dd99c8764.0_1669989643948_0.16854556100153806","host":"s3://npm-registry-packages"}},"15.0.0-canary.fabdcca3a.0":{"name":"@material/floating-label","version":"15.0.0-canary.fabdcca3a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.fabdcca3a.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"8e918d8611705cd361643a5933f2fee2a39ca3c2","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.fabdcca3a.0.tgz","fileCount":33,"integrity":"sha512-AJZ7dlP/Q8e6Vfx6ZlSnndw2ELQGKQWg2ekjBMQ3zd0XK/fRMEQYFw4NqKj+HMMxxrGppVDFIdrFt2b8w1RzyA==","signatures":[{"sig":"MEYCIQD/ogJx+u6ZAnToKTBMTLPDrP0EQCN5nZEsPIsdAWxzQgIhAOkgPx64b2qgv3gYsNSe5s+fVmF1fwv5DLONwzKhcqen","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjihR+ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpAMg//UIInDz9dTVIdxMEe1paa3r4DrwMwRqRI+jeXFQw4mCB8EsXy\r\nHcZz8dkH2p1UzGURJo1ZWk5kGn70Wlrfo/1cGQQScAyko4oI05bvtTjcviqX\r\nJ3c+q6fmk2EjGZUUYmLJjibm3ijT7xZR/Yo5lENcZ8ryVwpVwDFd0SJ5dO77\r\noNLaTNs08UQoL31O9DeqPxlXK44EfVLWccPEGwQWzWIjI4RAQ1zwJSLyt1sg\r\nWbF0fXW4X8dmSHOzPLfdRdAB4SBTJlSVS8230cwbZwW0ZxRRBWILaP2KU072\r\n7iNVeUzkSEORhJ1VNam3mfwIEzpD/bI3sEmoJC08GxVnfYoA3BjkrdP1rND/\r\nbn8MtPz6x0TUiB/8Vtus/ku/v3luc385taY4qlnkIgjL21hd/rUuUT3UZ1Rw\r\nO6M65qy+LqfZhOR5X+SU1D6qI66hWaiMzcTtlXTHHel5SUcNKmlmimy7bQuw\r\njYi/wdB7c37eFRYo7bDQyx1b9zDel0iyjtFTDQei9QLvhqyf8IBgoHFt3hp/\r\n84J2wLSQgS1rUQRAGGKGo1sWGaFkCs6UM3uKWO7GknJQia2wrFX9CoZAJK5B\r\nzr7RAHcNqbJ4p5/ZcI5bKnNI5HxWJ0OsqmUDw2r8qM7LsWpvxZiSjExNY1aN\r\nYmQdIQN4vEdOuc0Qy4fHwLl+L0g3GA7+ovM=\r\n=iIHI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"18ea36a1261419acae3218fc917dab4ca111bb9d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.fabdcca3a.0","@material/rtl":"15.0.0-canary.fabdcca3a.0","@material/base":"15.0.0-canary.fabdcca3a.0","@material/theme":"15.0.0-canary.fabdcca3a.0","@material/animation":"15.0.0-canary.fabdcca3a.0","@material/typography":"15.0.0-canary.fabdcca3a.0","@material/feature-targeting":"15.0.0-canary.fabdcca3a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.fabdcca3a.0_1669993598630_0.5826630236096324","host":"s3://npm-registry-packages"}},"15.0.0-canary.2d26722d2.0":{"name":"@material/floating-label","version":"15.0.0-canary.2d26722d2.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.2d26722d2.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f24b0ac2f9306a9a53800e14e6b0ec08227aff21","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.2d26722d2.0.tgz","fileCount":33,"integrity":"sha512-0LGpIgETp7ny8tHswbFU/AzYS+hmBmmwxzC2mlvKiw7ysY9m1RJF3eawtspSR5Hdx9MtUNm1gg7ARHmVAQALaw==","signatures":[{"sig":"MEUCIQCE18SFkUnZAlbPba1IAXSZ5MsvnZ3Iw37M6PEDGLqJnAIgBuRdmXUSwWG7r3lFEq2RvPeH58q0dDExzkwEUyudMl4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjiicrACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrvHw//TfHSc4be1gRxFsG+gWR1an6tzmdb/mgmyiLmfAVl2DzN52Rg\r\ncn/7MLjO86Yl4h90a7uH8nBNTmqCJ6QlkAAPm2uT4ntT5cDPyADqh+fOQVoy\r\n/qygXFsUxxup32a4tFHIU/OgGnjKoWvLQvBniVjPQ4e8z53sBen3Ogqt9Vjh\r\nOdGI0DJKCNZy19fWsKAhEHyFXO39ddvrT+RD78wYNEtWUwiERfZxuH/WziZi\r\nkXaM6dTeU2utroMQnRhOD4mnRtvtXMX2jRgTIEJ6ArkwkLiQi+gQwmpXLKZy\r\nXlCEszqol4GTYlDALv5BKLu5nfngN8++4JTSaMqCzndSO8OH5YwqHMzt2e8N\r\nExeY9MAK8e0YbnrySOzfEgeaDlXUJM41OZoMYjMA5qxxzzjSf1/sy2C5I+/f\r\ntEjkU0bX8g66oRUarMS/+wqUpxq8HOmxmj/vhYMZsvwdNaEkudmr95S6/5rv\r\nSLEW4mgPkCl0U07HFO9MPTvNszp2QMNwfh+y6u5lQhWdEDANBcTwg56/eP4l\r\nOKAS7ziDMuKV36PYTzllNcLfDp4wBb11WpUyxdgAj0Jjx+PMu6qWcbP128QD\r\nCPk3RE/iXlroa78sQfKU15D1G97XCLtYY+JvSMptXPqejS3gclYyFAKCzTZs\r\nqxJ5fPpsA7qhcLxlmZqtHI5GYC/O9032uwE=\r\n=fhus\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"76df2659d7f71f74a86512b38245422ca356fe12","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.2d26722d2.0","@material/rtl":"15.0.0-canary.2d26722d2.0","@material/base":"15.0.0-canary.2d26722d2.0","@material/theme":"15.0.0-canary.2d26722d2.0","@material/animation":"15.0.0-canary.2d26722d2.0","@material/typography":"15.0.0-canary.2d26722d2.0","@material/feature-targeting":"15.0.0-canary.2d26722d2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.2d26722d2.0_1669998379041_0.3846787313998714","host":"s3://npm-registry-packages"}},"15.0.0-canary.eaa0c3a86.0":{"name":"@material/floating-label","version":"15.0.0-canary.eaa0c3a86.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.eaa0c3a86.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c220d4a1844842fa3917296135ec42a33ae26074","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.eaa0c3a86.0.tgz","fileCount":33,"integrity":"sha512-JKP1hlt9C/tJ/wMJBcROoh9oMZQDeydPXDlMQKPV2FVF5FwvITOrJi+WSPTARirXZ5ob/THOkOqw5N2wmg2+lQ==","signatures":[{"sig":"MEYCIQCqgDli/IJnJqYnRAw3f0+8nEg9P//de6EdTAKdJdiDQQIhAOC2XTGX+zmoFqRZJbmDZ5HF/DCENlyvHYLBgwz4cpbh","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjijj9ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrLCQ//TrFyF69dVG0qU2zwtjWjw1Wy2ym8GNojB82/g0NBdiMuBXce\r\nvbPVisttz1i7yg5YvqbOrqFQNcBpj/ICH2ZiaXPmZsMa6uTzXe4GzZ4zq3zU\r\nW/zaLYJJxcpWd8zmzWDT2+pFFLluCkp1xDhRdNBAA+mj4+7C4NIrSJLIKh3P\r\nV2sqD0hiScFpe9htUGa5vo5+5WcCCBp+RIKtQMUqPCSy48Zl/1auQgiaTw3a\r\noN5L1gPHrPPXw8dxYIvop4AbJDpMmNthoNFPnOULEL5UGDTnlbf4EeaYXaIk\r\n2/E8XUGZn+6hLfm6vmrw5uL77mSUWHUXkVThBkT6KS+w4p6YUt61ErDZASjO\r\nzS1hCVd1Wh8RdV39jkv+fTUXW1m28w1Gog2D7E8H2QOUV0ddReZjdleqHVTs\r\nWstXA2DM0Hscn5niix4JQx0feTFs9v1YrT+4M/Ry6TBCnXBfJR6HFTcAnWpd\r\n7PX7GKPw2vcACs78kiFmvh8dRd1DwWEOGyQ9R87t1BTQ7MA0hDXjcOgwrxYs\r\n4MP17+NKW1lefnawRU5ibjZMPEZfzG1FbvWGvzbUtmQ8NH/tmhh0KF+awk7a\r\nENfcdCwIgt733nMF89tjE5VpzRYxzBVyoyPzesbJdalhJXLisE5d9aqUfI2K\r\nQDEx/E/cJ0hAzn1WfNFwDCso9YO05SH/Wfc=\r\n=NOBr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c54316c7c60bacf8254758124c9235dc48d44064","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.eaa0c3a86.0","@material/rtl":"15.0.0-canary.eaa0c3a86.0","@material/base":"15.0.0-canary.eaa0c3a86.0","@material/theme":"15.0.0-canary.eaa0c3a86.0","@material/animation":"15.0.0-canary.eaa0c3a86.0","@material/typography":"15.0.0-canary.eaa0c3a86.0","@material/feature-targeting":"15.0.0-canary.eaa0c3a86.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.eaa0c3a86.0_1670002941112_0.5547588651206985","host":"s3://npm-registry-packages"}},"15.0.0-canary.79a613bbd.0":{"name":"@material/floating-label","version":"15.0.0-canary.79a613bbd.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.79a613bbd.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"dbacf7bd082c29e5dcec3bf76e05ee8fe239b5d6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.79a613bbd.0.tgz","fileCount":33,"integrity":"sha512-CM8njplmMWkIOKOLqNV9Wm5Xjr2/RaSlFFF/ZUnxmwetpg4vGJOxutExytzNgspIk63tltm4bZVD3DjWZ1h2CQ==","signatures":[{"sig":"MEQCIEmkqATyUL9wzZS5StZXEIc+HM9jE4um7Yq+g38W2ikOAiB83msR6TIRs7nUtRZ2Scmf9VvIVhHlPISXGaB3/QgzUg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjj1DXACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmopbw/9F6TTvg1IK5e9rJWNQAXPf1+AhKNv1oKk7sk/ZBk1RVBX6oue\r\nlXaTei/F1OOc818SnB+xPMSWR8+utrNbcLSU8oHHe72OFt/qIf3eR49S7Ixw\r\nylLIcTxgg+QhZzuiBcs7GRGMTArTJUv5avqESyUrjveGiTrebvzbQsl+NP0d\r\nMa88d9cwQMpHp7qzRoN5xEpigYo3Wvm+ZjVJZKewLeyE1SRgwAx3fzjq9fP/\r\ngxGBeEl59P3E8PF1k98U2wnIrnTzwGJHMRELAQ4Hz2nAuZsR8rfeBFUsI7cW\r\nmph2M1jCsEoyOtdVjV7bHbsO31Vru0wWz8sbfTTl15WXXJ2Ras/TmoHkwShZ\r\nVYr1Kzu1aNLvlsFtCBCYNRtcDc2o7sy/4XTO/k0M72vYAB5NBlsdXjTIURwD\r\nNeLFbFD6gyG7GCIQi58Yoa+uUr5nI5TdnYpG97pKvQgWg+SQxv+lSO4cgWgN\r\ntYFIwAmIXWpxOcMo5totIhEeapZk9T78qtP5QCAlrOi8OFXd2r78HGUwf40r\r\nGeZCH7/Gl0dnQ+RyNwKjcffcKsklCUwgbDTrdUWjvfrHSKakvs6HY/r47nHU\r\nNb/FAHyKlWjRlyKoBpTcUpo69UTrNKCaxO2XGWpL3xKdBJtUhoyXa0Nt+Ty3\r\n9SkCTtb5zXpZpmnw/GbM19XjXzey10Tcsos=\r\n=duG9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"755ec1ef0b2cccdcb0c8b888d199b4748e3ba10a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.79a613bbd.0","@material/rtl":"15.0.0-canary.79a613bbd.0","@material/base":"15.0.0-canary.79a613bbd.0","@material/theme":"15.0.0-canary.79a613bbd.0","@material/animation":"15.0.0-canary.79a613bbd.0","@material/typography":"15.0.0-canary.79a613bbd.0","@material/feature-targeting":"15.0.0-canary.79a613bbd.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.79a613bbd.0_1670336727419_0.10938327365954925","host":"s3://npm-registry-packages"}},"15.0.0-canary.c871fe61e.0":{"name":"@material/floating-label","version":"15.0.0-canary.c871fe61e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.c871fe61e.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"382fbe6d76dd2040171f88c73293c94760976e3a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.c871fe61e.0.tgz","fileCount":33,"integrity":"sha512-IFSLXbz0kqyQwlQ2l2bO/kR59IPUU0M78o7bP4RqJlsYZ/uj/11HrjTJOGzeuadIrvibDRARXiJEftEm9Y3KXg==","signatures":[{"sig":"MEUCIQDFIkx057GwfY5Aqt10th2CqnqClJxxfvwzaOTDngo7VQIgR6Q213Zx6TUC0/qilY0ndWFalIriuniwEAhQjR1Lx1w=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjkEYNACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr+ZhAAo2Lh9ci/YyBVLtvx0gV7jHS42V+tiVPuwfeCkXRNPGZxhl1A\r\nCeNpzPnM65QUSinqmGYqE4t5kctcZlvBZqt051cwqVDESN9TyL+Y+q7/AlqT\r\nd7rFnvi8YZdyFxH1s+hH2mGE7vmxD6/HUNQi+gNNgJW0s/rWySuvL3Lmy3m2\r\ne9xz4JsI427XChfK7R05S3TrGUl79TeoZKzO9IPXE7oMgOZhh7R7E7fJTqdV\r\nxfrLZj1n4L3dc5W13dHyfhyfA97yZnn/DEyb1OABPuwfcKNlfZtQ0dDCIDky\r\nMRiv8Q1qKR9hVa6hnXqHDBrkjaniGDKxywU1swDcCjih1711Ftlds+7yoLr7\r\niGnITwOgBFSUx6GVFR8jjDUxqxdtJe4CSTC3A3T5DnNxnQFMYuSWJcTSPt0C\r\n06vBx/lnwONAf5nGoTKQKvLCudmpvcabC5+/KcU7xWlQbXp5Bn1kvIO4GwYW\r\ndz2Y9wMUlK3uatHp3uE23AQIlHJBJp4Fp50Zs6moB9rO+PdflKkLN9alkh3/\r\nBSEwDed/UL/ZsIrOgYPOSsOMUzmMfFeoFm7kvjBR+idpxj9tq71xrXacdMXv\r\nLXvTUm4p5uTs2St5G17FwUtoUKaF5qlmo++gU423GJ+92yLax0RoaYcEfPgl\r\n7xLcXc6EegzIOLIDQP4er/DoUTrKqkEygK4=\r\n=aRNe\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e69be4936d1304c30ff7b83af8488b43c0ad5fef","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.c871fe61e.0","@material/rtl":"15.0.0-canary.c871fe61e.0","@material/base":"15.0.0-canary.c871fe61e.0","@material/theme":"15.0.0-canary.c871fe61e.0","@material/animation":"15.0.0-canary.c871fe61e.0","@material/typography":"15.0.0-canary.c871fe61e.0","@material/feature-targeting":"15.0.0-canary.c871fe61e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.c871fe61e.0_1670399500942_0.8904393480534796","host":"s3://npm-registry-packages"}},"15.0.0-canary.9eaee7936.0":{"name":"@material/floating-label","version":"15.0.0-canary.9eaee7936.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.9eaee7936.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2f18ec3f738cfdcff0f6de4825e84cd7d11462da","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.9eaee7936.0.tgz","fileCount":33,"integrity":"sha512-gGqFFN4HEaWipCCZtN3w14cok76fHFcO//mffg9mZ7N8D3h/Howh06Xir0WS7jT/VU9bw7xkGMcNnTSzLXzjpA==","signatures":[{"sig":"MEUCIQCx3IIbkBLs5JlCyGu0hEEJlhT25u/hJVh8kTADu2U4XQIgL7XarPNCVPIuW8myjLPNPhYNmhNlgCzylFuYh2vbIZw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjkPFhACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrtSg//WTCQM5+ZeVkwdn4FujVxbeRgvK/1e9xOM6rldg/5siFAof4x\r\ndyHr9ykqWwS+oxkHn3W1rbpKOOzw7NGzKZp+F9NdvVg+bczGO3OF/l3jHz7K\r\nNwAThmmRQQLJHJf1MAGtKRtgx5qKIUv0ppCO49w8uxrEpC7jOHtnjRT40Rh6\r\nEivqxI9CG5uaIU/aj5VEviQattypd48/zTUfT/SPa/uWLI41sjSi7Q0WAWIc\r\nHkqYXjInY7opuopmgPjICSSI2RZ8YyhaumJK6GyGNB0pEkLMSQ+E/goDKCMf\r\nZqp1DCeTQ0zQWt1N7Tz99QTDkxr35+WRJM8P0j1DW1fCA8d2IW/Bn9Pt1Zht\r\npizitHkP426z/i5oXlFoW6iZT8tiMvW2ueU3GTZAQ/uc+vYiyBm5I/upQhCy\r\n3QENfYX6/czRJRAuzdKwif07MKRlj3zXyQqAc5FgnRHSnNQSHVG1LCX7WsVm\r\nqSgjK58y4iB7yk4Xtc70RLnUQBo/x2CzrPRH0tErdGnTfF1gGZOu+1BsWHlQ\r\nbwVBW9LpJvsc39ZZTBeBbEk6dY4kv77P018UHTpGNx/Q+nDIPE8FrIAqzS6+\r\nDBrVLbkFGQ/eSGRLnsz3EQZ8/nMSpOZOiXPa/UdJayDW3E9VhnW7+Wek/aZs\r\nRBZb3nZdxOsuPqbIGqiFrWPLUP1mL+4ebLM=\r\n=3GNe\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b1b576e68a716d1a80dcdbde7a572c11ca937fef","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.9eaee7936.0","@material/rtl":"15.0.0-canary.9eaee7936.0","@material/base":"15.0.0-canary.9eaee7936.0","@material/theme":"15.0.0-canary.9eaee7936.0","@material/animation":"15.0.0-canary.9eaee7936.0","@material/typography":"15.0.0-canary.9eaee7936.0","@material/feature-targeting":"15.0.0-canary.9eaee7936.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.9eaee7936.0_1670443361207_0.8867607099215229","host":"s3://npm-registry-packages"}},"15.0.0-canary.1d37bf601.0":{"name":"@material/floating-label","version":"15.0.0-canary.1d37bf601.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.1d37bf601.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2871507797b1e38195a0f87ac8196701ea71838b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.1d37bf601.0.tgz","fileCount":33,"integrity":"sha512-yESbHrAhnQVphN+Udc28YzfIfaL02WDcPad3M/kWjF3ELOdel/oLgiqXMlai13ThWi3QC8jZCz0MHw4Qa+y48g==","signatures":[{"sig":"MEUCIQCtZwnhlRJ37T+OeqE1kvqcHx4Zo1p4xruuSqKM0zcGXwIgK4M1/MpQWpSWvqSVZmANPz8MWwE5KCq0+fXZZd2oMOw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjkPpgACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmprCA/9FXJ1C4CUXR0k16eiEl6gNFAY8fATy9IW0fObGM4fQToQSGt0\r\nIP1cyaQhtPraQ6jryyDaV3q6t/7DYiwi36RSIcO3/QFf2RGuXJ6cxrGC4c08\r\npkMnNSD/818JWH+LWrIjMUw9MCJ7dF0e9zyfW6BHx6YCum0p1J07DnMfwT9t\r\njKoD0q5L+jVlU5jK4Xq2k0qwTIJm1iMgIn4P8Y9dzGMeGXPu+DgXvJ/t1che\r\nPS+nMh/CeAEzW+r2CKqfkKJc/AFR846NExEQXh+proYGbRaV+2qQu0FDMiCc\r\nnAdEfmDGYxnjCrtX5SBf6reTaZ6gG59J9F4WlpS+ErYPPTkAfsA22+AVQ1uq\r\nMCq/7DD/Ii9ivqllwKmw/5ss+Kc7XFVmuIytjdtcuu9vjExKMKkaF8jJHtv+\r\nepI2rmikCcLyBspvuR+oR53fWqjjjCahm0f11Ek7xDUPbmIe7T6xbSfqZwOo\r\nXJ8IVeiQV1pIQddSUsonRtfDIZN0ylkeXCJQPdacSmD2HVnDDK324Bs81/BW\r\nH0TVANekOLCU0MXf9TKP61qTtSD8qKDFKDCuxeu1BoLtTxqiNsdrz6mVcEXH\r\nPqqffv+OWen17rOezphYVT/83gf4yE2HyF6C9QJQk2xBudR5XuQZToT3F7Ko\r\nPyqcXEGofVtxiHNyqw/XgVi9qcxkbJcyJdQ=\r\n=LM3C\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"747a03f19fc88f7a2358a382989e729013e06df4","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.1d37bf601.0","@material/rtl":"15.0.0-canary.1d37bf601.0","@material/base":"15.0.0-canary.1d37bf601.0","@material/theme":"15.0.0-canary.1d37bf601.0","@material/animation":"15.0.0-canary.1d37bf601.0","@material/typography":"15.0.0-canary.1d37bf601.0","@material/feature-targeting":"15.0.0-canary.1d37bf601.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.1d37bf601.0_1670445664460_0.9200300412869453","host":"s3://npm-registry-packages"}},"15.0.0-canary.a5fe069d5.0":{"name":"@material/floating-label","version":"15.0.0-canary.a5fe069d5.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.a5fe069d5.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"86b1bfff0ef52eca9f9d1b1e68a31cffac750c7d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.a5fe069d5.0.tgz","fileCount":33,"integrity":"sha512-+GSOEdergAaEaXa9XxY8tCu0DbvwY588ThZuuMCZ5WgCqGVUncS49dmRIp/8T5AxtjiaV4O0jqSTF2dCxbBcgA==","signatures":[{"sig":"MEUCIEUGEQTFcsJ0BUa/2+aAlZZE+6khOuWEupuDreB4GSoZAiEAg1Afj4qx/4nUGRL5wXABJUSx/O0MW0vI0uzGDsjE50M=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjk4HtACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpfZg//W6T2O4QpuAfqVc8Ccq2WIPeAR9xbSr9o5fvbKL2rXnUIOyVv\r\ns5ScloqCfEKEWZiPlwf089qRVV50lMDAPBAKUEuvGeeehnxZYlQuG5Yy08x3\r\nSrpjTC1+BmyypXr/xEC5qIbpJQy95jJB7EMCea/E2s1Ed7LNEEtsO9IJDwBk\r\nXLX7UJqbyXB/nCBUFNL2EkEOGkl+VEYL1GRaUPcd1wpTa808ZBwTbImIdkMD\r\nryRaOzSFLxBnt6w9Cm6YKLdp9RQbdMMIszJdHl1ZZprcRbZD+W4q0fU0WtFS\r\nGe8doArwOeGhYSHcSvt1TgQvWLt6qGEma0Wf+Li3yxYwU4BcJGYAif58Ml/b\r\nUu5jVeOrWXwWU9IbkZ76on44WJln3Rf1eQ8+ZtBbRl+7O1m9QTZ0SRRVIt29\r\nIdS5pZUVVAWscjnhgljjnxhYYI3/M4INBQRl24G2BdQcu6O141nZmHtVdqOa\r\n5h1k+cTgcEP8W4CMiMKiFmgO3ceyteBoLJnSqPN9+wwnweFdORQ3kDDQlnl0\r\nFcbBwfzIq4AvUbIZgZ8ykyhff6aP3eajtzdvIL5USCrK5TAB2qH1H+BIjYJR\r\nA59RrjC2uk7fk8XIIZ85LfFu1w9gm5cO9Pw4YDdmMDhIziTtJGiMPCndrAqs\r\nZrIyuEI4W7oC4/fLCP+W5tZHxMiQ0PAHTgM=\r\n=gPkW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c41dbe93704a7d03ea10d8f1b4de13fb8c6e19ab","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.a5fe069d5.0","@material/rtl":"15.0.0-canary.a5fe069d5.0","@material/base":"15.0.0-canary.a5fe069d5.0","@material/theme":"15.0.0-canary.a5fe069d5.0","@material/animation":"15.0.0-canary.a5fe069d5.0","@material/typography":"15.0.0-canary.a5fe069d5.0","@material/feature-targeting":"15.0.0-canary.a5fe069d5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.a5fe069d5.0_1670611436896_0.5616231870378299","host":"s3://npm-registry-packages"}},"15.0.0-canary.ce8b5326f.0":{"name":"@material/floating-label","version":"15.0.0-canary.ce8b5326f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.ce8b5326f.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e073020dbbfa088f8cf69e118dee2546d92afcca","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.ce8b5326f.0.tgz","fileCount":33,"integrity":"sha512-LatYMmXppaSaTuhlZuwMngYjiNuh3F4qUugaW8T+3Oc4PSM7o56o/p4dNaRSZxVTUlSJO/EKoZZm5QgRsEbgCg==","signatures":[{"sig":"MEUCIHRgZZaveJIgn/cH+IIke5bhV0Wonh92tdPYVIKPebRjAiEAkdn+94or2tJfGcfau0cKstKxnRt3OnQPy+F8u3NPlBg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjk8UYACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrYHg//fA3hOJcd/DvMXGBZdWxE+Q07vkg7sw/XF3Q4mH8xM/yI41N3\r\nNj6DNolGCPjEgar17BmQ9GaSAMzkmlKtzmmkZkh6vXcNNCoXTGY21tiNA3zV\r\nH1vM0mrxxbC7slV47DiizgxzLoNINFgIO7f1oO0Q5gOXyfgRaYv3QW5ePYbX\r\nfnGfoY4OpNLb4qGI09egoJtKZKEE9OxbXyCoRHn0agnFhYiIsPDhweZG3NdB\r\n/uhJ32bX9w3kVEX5Q0ZvwO5YH7kGdVf3f0P8kDI2kl3lK2LvI810tvFX/h0O\r\nRQP9JReszbiMZnCu9IQKmuMwxK7X8Tg4kbnL50W1jb2xdQzDUwU+jb++1gvi\r\nUD9YIaV8KQBnCGpAwBUnAjrYZmC7rPvGC3ENElRUeqhscHbMFNqUosk6BmgU\r\nEcltO0L6f33mCwOskxY1m/+D9tsSpeUwX6cgPWhV92AZwhDHd1yluH6mhZSw\r\n38JStF/Si9ZQP1SZczU0VLppeqCOQzWSbDQmSklw/uQv3JDUhQFmx7+rzd+6\r\nbDew5VoKLUpn+YzgFi+htmcC9FmDfeeoIYoIi9HTYXzaUx+I641+QIcIXiMD\r\nEiFiPL7gMX2psPpa9mKuvubQOqUM+lTgq740lHVUGMI1iya0MQs2XDSVyST/\r\nZv57ziNI4FyoSIaJG7xwSggrC1odCOOIFq4=\r\n=PGE0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8ff7f9974a16b8178376e943748356193d364587","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.ce8b5326f.0","@material/rtl":"15.0.0-canary.ce8b5326f.0","@material/base":"15.0.0-canary.ce8b5326f.0","@material/theme":"15.0.0-canary.ce8b5326f.0","@material/animation":"15.0.0-canary.ce8b5326f.0","@material/typography":"15.0.0-canary.ce8b5326f.0","@material/feature-targeting":"15.0.0-canary.ce8b5326f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.ce8b5326f.0_1670628632425_0.5466704056652743","host":"s3://npm-registry-packages"}},"15.0.0-canary.43f5323bc.0":{"name":"@material/floating-label","version":"15.0.0-canary.43f5323bc.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.43f5323bc.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"34b6b33234e0ed9f9cf2e67fd5abef7e4d422be3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.43f5323bc.0.tgz","fileCount":33,"integrity":"sha512-bedJIXoT35m70upShXGrnka9fyVvLjnb9ymuo+v7fCZ6bJf5Mq0vJ8ISA4UGZWn/kCIrghAn5kISuLZaB7lDuw==","signatures":[{"sig":"MEUCIQCRUYUx+5HzeqxXogGGybpwF064BW0d2Ajvb0yWvZMEXAIgGzu4MCte6Xd+98aSj1S4kgPhNCcipnXzvI04SBt+zFs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjl1rYACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrzOw//XsK0shRXQZtJjsh7ezLAOw10VgUXxBfsIa6wqksbWs5brJyM\r\n6kmG/9jRrn2SBYVI97nfr/kGuV9S/ABpqCdamh7bb69m+5354ZW5P4oC/kAh\r\nXrU+6beZ94WV0W9Sk/k1LPEhR/6UQpeir/PPmQx7yvdtkb2pkg8igj8SWZzE\r\n6qRC88d+wEx2N4JLYpx92Nx1i/7ClAfZ2/sSLM0avN4bmiRlTml8nUSDn6Vx\r\n4EO0gmNluUXGZMFGxs7RjnwLvEtzaWSMm9LvBUEPCFQtSh8PmzP4jLstnl2n\r\n5jvkFy02hr+C2RXGLtNPdxlfWuyM93/r01oNk2bMLnvut1dhtGzxIsLOlQde\r\n+27q1JYlOhDiS/wazmn0oWfCcoKwJB1MrTw4Z6SpWXM95HOnoUErI4mX3CEO\r\nVHotKvFGjNZOjmAME39gc4IK0y56xj5IqNwglvbpxPdvrTziTa1dEMSNNgCq\r\n8QxN61SDyNv/6IMqLTWM9ATEBP2pj1GFFuSHB1TUp1nJhl2aLfHqg71Lrkkr\r\nPObt7rM56cgkT9PwV3jVtUiie5fevo3Ojwdr5sJ4T8Fc5jfKFE8j/a8zTB44\r\nQIpxwciBCACYLNrMsnQa4LUFGkDlqMR2xcNchPFXZ4G3ZCHjMVvZVAAj/JkN\r\nzh77ffmoqmjLhPwEk1SiIrd/3h6hs9o48Tw=\r\n=RQ4B\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"00be798d56184d5daa74ad6f53d4992db90688bc","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.43f5323bc.0","@material/rtl":"15.0.0-canary.43f5323bc.0","@material/base":"15.0.0-canary.43f5323bc.0","@material/theme":"15.0.0-canary.43f5323bc.0","@material/animation":"15.0.0-canary.43f5323bc.0","@material/typography":"15.0.0-canary.43f5323bc.0","@material/feature-targeting":"15.0.0-canary.43f5323bc.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.43f5323bc.0_1670863576537_0.20164088930038715","host":"s3://npm-registry-packages"}},"15.0.0-canary.5490e32e7.0":{"name":"@material/floating-label","version":"15.0.0-canary.5490e32e7.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.5490e32e7.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c0ca4ddf6957ebb1ac99737541e7da1f90a2a5f7","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.5490e32e7.0.tgz","fileCount":33,"integrity":"sha512-v0CtU+s6+y5KvV7QjPiZPSVW87J6dJGMnEV8iRIh68O0rQPR80N2WNyRYPOJIZwWScww8hU75wkywA+fz63Q4Q==","signatures":[{"sig":"MEYCIQDGlG50Ud2fnfSg4vHnk40ZpKEiPshIN74L1HYbVCcFCAIhAJdJh20/Kydu3Uxif1ivTxnUHEApZibMDtg2VMufuhDi","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjl16GACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrAABAAmjXU1S0//raoIa7joGjzj06FmeTaY+I7LwdkYEsStwKJROAe\r\nV+HsCH28p+f3q2k+6kduEodNktpMIzLbj595FI0/R4SsydHrAt9h3/fDsMR0\r\nds7ppvZh/ecVFxVhkzCotpULvVd61nkEnrAcfinIOHDHIfljVUzA7s7UU2pC\r\nodIR8s06HGWTdmlD7L8831Wvcyy5I1g74S8uwYz1SIKaqizWRxaejuoZ6B4N\r\nqfIl+G1ZYawgjPyQZMtlWjoGMoYgXXg7uedl7Y3QhGY2aoY15PZ8U2/HSa8w\r\nakFFoncn0vx5UEoD1kvEjT3IPOZv7hMUGhIjoE9M1itLNGsDtsHmxiIQiReu\r\nO+Iv6YVv2rFXw2LOmeFpo313WrluDJNT3ZShwqsmIi+2oSEyFVYQf6LgRseT\r\nnjvA+P+ST54A50rYcsqf9tsukz3xrqVUufLwcOLofsMlFT7l1jMTeRHa5Yqq\r\n7VRkJXGSOloOt1egFYobWdLvaUPQNyNKD6pzlH+FrRXAW0tNnAmSsqm4sfQ1\r\nuvfiPkdPtdZU1YW9AwDLicq1f7ED510F2tbhMkC/mlVGMvxd2gSgBUMsJSrD\r\niXn0BmEpmn2rYSTySi0pCEsKcPUa4Ntre42JGnVS8/oE+3wEwcEfdsWA8F7X\r\n9+mS/McUWxuCDRyRXwUdvPsktggXwTelJzM=\r\n=vOOH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"968b84204c7a8626355569e2b90063abd574f7a8","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.5490e32e7.0","@material/rtl":"15.0.0-canary.5490e32e7.0","@material/base":"15.0.0-canary.5490e32e7.0","@material/theme":"15.0.0-canary.5490e32e7.0","@material/animation":"15.0.0-canary.5490e32e7.0","@material/typography":"15.0.0-canary.5490e32e7.0","@material/feature-targeting":"15.0.0-canary.5490e32e7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.5490e32e7.0_1670864517913_0.7228668746787417","host":"s3://npm-registry-packages"}},"15.0.0-canary.817002c29.0":{"name":"@material/floating-label","version":"15.0.0-canary.817002c29.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.817002c29.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"dce6adfdd539af3fb378c090754e517f0129384c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.817002c29.0.tgz","fileCount":33,"integrity":"sha512-qEF8OjN6tk27vm5Q5NrVUCJTUfaP1d2y65maok5YftACtBi4po84pgQ1X78fKoTz4hOP/dTno2B60nDWOfBGxQ==","signatures":[{"sig":"MEUCIQDmUC/LY6CKuOIu0nnBnt75OmzsSH0e6EKUTbrl+bEpfwIgTSI8u/rQBAATAUNS8Q80mMacT9iQa6sfQ6V+nMboAzk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjmPRrACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrSKw//Us25VTdUAOMNeN674lzsrZCtVb+Y+nMwElbMfkN0R04wN6wB\r\nnzX7aCKd7VAIzwcmxBnOPis9GwfsKd07o6nrCJTybxda/Oi3RrK3UjzTbD7C\r\noj1ZoWoIwTPXpm7cSkCDvxFFN3hgIYG6RXStc0NqulcvunHTGhfVOBSyolGv\r\nYYX1hZ/izRaOYtY7GbuzcfYutta35SpaoqSF9tyIaKUyKdYgaTMjHWYccKa8\r\ncxpvQpcXWBhf8jAzo+CIrmZgpyWRxVAt7fCunR5/iIYt2cL8OEtVhLXCNk58\r\njZX/D0MuLhEG0mM0uH6Oxm6Dyoz2VsUfzMwaYyrqdy8RoiNvkmMuxm1rl/OY\r\nuPuTs9MEgabDgOPGCBBfWVT6RBVjYW71NEUXmNamE/aD7/qSi9vPvjJyUVpx\r\nsJU6fw8oUApB2XUSmpgxUSWg3YcTAumYQ0JiUSAy2uyquYMZO1gctcIX8THc\r\nsz2mU3tNUaMUVGsViRLTpZfsMM5nsiLJQrrrszsRpe27Y/T03NqWV5Z2CsR3\r\nlIZldLWmdDLanNMus7Y+A7j+3wlqSxed4BlLHUN39Cfs34rNYhxzT5GO1G/N\r\nawBIRog7IqKvY3YneZebiyVDblmuhaonWrl3LjpSoWLdizasrrzyh2JPx/go\r\ntQ48TYW2BLTMJ8l3rnT6e/vP9VzJz+Rm4U0=\r\n=3yCZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8a85122d0f4bac7142c66fa54e2fe9a569e7c4a3","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.817002c29.0","@material/rtl":"15.0.0-canary.817002c29.0","@material/base":"15.0.0-canary.817002c29.0","@material/theme":"15.0.0-canary.817002c29.0","@material/animation":"15.0.0-canary.817002c29.0","@material/typography":"15.0.0-canary.817002c29.0","@material/feature-targeting":"15.0.0-canary.817002c29.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.817002c29.0_1670968426997_0.2529264188454394","host":"s3://npm-registry-packages"}},"15.0.0-canary.313a1326a.0":{"name":"@material/floating-label","version":"15.0.0-canary.313a1326a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.313a1326a.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"8cb6fb14d8baf651cfaf2e9d02bcbb8de6a2e589","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.313a1326a.0.tgz","fileCount":33,"integrity":"sha512-z9xazdeqoZmd6GyLkW5NH0pMhOM06oPY99KGMyOMystZr91ejMi0tY2MkfmIgDlzDDRwF4vkoVdoVSTt4dkO3w==","signatures":[{"sig":"MEUCIHEzviTv2zUWp7jCfZiamV1IHNs2ICeTxuh4VEoqSoieAiEAsjSjMLy90yKHvstS9T2zuAfTGWEZWumHrcRjnJBWTHM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjmaVRACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo2JhAAjmjSFQIX63xKHfZ+OI8jQLdxMfUbh3ZbAqzrTCIfV+a3xbqS\r\nRVmQW2EQYuDwOh59fVpnlFZ9viB15q9qByUtSeylg3exJj7sSHZtzr9pEr3d\r\ncY3il8lVhTaFnjg1KkuXYlmgbILFM2a/6OTMbu/XcZI9LU9mfOcCUpcA57j1\r\n+9VZG6fyCpjbjpKCr8oVvbMjesxFSEOSTIl5/MeLZZCaflBCi/2hmOyiTKOF\r\nNUI5BukllT7Y6Q9olTotv3C32wK8VVNje1bDOb8lfi0zPS1KJMX9sx/3b17L\r\nsc8RvqRWIEnDAUnP5ItCB55t08fy82avCPohoK9/C07X5/G3937GDP+XoliQ\r\n7g9PjRLz7XIK+z+w+k5ArIu0kqhdR30OzcpWEfNYGK8oLBwGVmLj8gp8oiSs\r\nURPBLWI0pts74THRFFq23E8jFwMqyBS/e6tEWx1qK2yy+Rc09AF6evrMXZOh\r\n5l8+yi96l+7Ih3g1pq5whipVdJS4cv5KI9Iyd+vWbICk/eEWzUyWF/5sl3W7\r\ncEZUSJnP2GE/CBynGkblqxvmeUvlaMNfk/1rgE61dSfmJ09BYyuYhbVRnMfd\r\nx5GPHnyRjdliUSWNWJd4hFpmVJ97q8e242G+/qb5zli+fZpNi90I5ER0Ks62\r\nO6PVEbQieTPsTU5MDE9oj9f9rV5/jkBGz18=\r\n=bW3b\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"899522d523dc8a23968f530bb4de8698a5b0e78a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.313a1326a.0","@material/rtl":"15.0.0-canary.313a1326a.0","@material/base":"15.0.0-canary.313a1326a.0","@material/theme":"15.0.0-canary.313a1326a.0","@material/animation":"15.0.0-canary.313a1326a.0","@material/typography":"15.0.0-canary.313a1326a.0","@material/feature-targeting":"15.0.0-canary.313a1326a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.313a1326a.0_1671013713281_0.17429599632599935","host":"s3://npm-registry-packages"}},"15.0.0-canary.a69c14e10.0":{"name":"@material/floating-label","version":"15.0.0-canary.a69c14e10.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.a69c14e10.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3956f9320501b00b4b61c0cce482922a7fd0906c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.a69c14e10.0.tgz","fileCount":33,"integrity":"sha512-MiuoWbFT3eVTG8tH8c5uwVxKKT5rT5iVSPwrlzk38CgNXVQi7etjgiQHSUCikbegF7FCe+b7onGUTc1Ks24gcg==","signatures":[{"sig":"MEUCIQDBsNiQZkY3h0YVzjhs0nSFFhL5JxDrD/M9XCYnOpZW+AIgbdFiEVbMhbSF5uZtDEmFTXXWFwHaOMEuHuSKLPoLZnM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjmbEYACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqG2Q/+P+DJlt2QIGInUVsMJRY7K7ciozy5e2NCdNpwzHuVnw107bIs\r\n3uvTNhX+LL8qwdomvNbK9ugxKfjv5zxdHMPPc6dcMlgiWOPbehHx+as6+cW0\r\nPQKmC/blYftHyxJPFMURSP0r1gPBCaLjFTgRsOky43tgbU80AkIw9tcSHrXw\r\ngKHvsP1QASyuWBKv849YndmtlHYMrBrt1f7vHjzzDKRsTldUjvVqo3Pox1lI\r\nViMGLMYDZ/vcUu5fBaEoNNa37NfUEQQKMj5eV215EysSpy2LR11wLwSC+ftG\r\nosplcIRq+tBjrg2u8iHF7tYkSOYZzgRtA3IDcHPCPSgJFyLfZpX+TF/amsYc\r\nmE3X8BtsoGvaS/4tdEU8LiKiolD6gJHkA5H9/kGcTaYVvxJXr0gGGeCHscB4\r\n36Iu7L9tmOiFWHfF2r3UBEdpb+EA2dWVJSZ+crHebkyHeNBj/MUmBH9MwHuN\r\nnJ8q3coZ5g12X7K1w2U7WNWEU7OtVbgSJSWDQ2OTUNi2LFYEPxXlFLu6eDlw\r\ntWwphTAb5JShNolkfvjChWQGAOYuNrdzK1CPECIyGE7gR3LpLc6rTaqSy9SH\r\nG7IankbOEnujcI1DiKmPrZ0i6vNUPV7oC2h6YlXXKd81+PtO62NVP338euJX\r\nWW2xH4IQJjFhOHdOwStfVALi9I8nxi3oXuo=\r\n=A6fC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"39b456415cb22d1c1b4de3d505f0e2412c1f5316","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.a69c14e10.0","@material/rtl":"15.0.0-canary.a69c14e10.0","@material/base":"15.0.0-canary.a69c14e10.0","@material/theme":"15.0.0-canary.a69c14e10.0","@material/animation":"15.0.0-canary.a69c14e10.0","@material/typography":"15.0.0-canary.a69c14e10.0","@material/feature-targeting":"15.0.0-canary.a69c14e10.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.a69c14e10.0_1671016728174_0.0768938347998418","host":"s3://npm-registry-packages"}},"15.0.0-canary.f43e0ceb5.0":{"name":"@material/floating-label","version":"15.0.0-canary.f43e0ceb5.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.f43e0ceb5.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"26e810a46b177cee8817fb3961720f7b7a8a3ae7","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.f43e0ceb5.0.tgz","fileCount":33,"integrity":"sha512-otDCBVxPqpypCMUGomFAFqk/84SvVJWi8rZ8MmT2nYURtL7Qf2zXdFXwX20jZ+wwvLqt6xmt0tE6cFD2Ae1AIg==","signatures":[{"sig":"MEYCIQDGxD+Cb9kf2YGcFVwC/4lnjBa/TJ94aH9VF/X0qTgCaQIhAN4k0ASV4MY1Mbo5TBfQzH7agYdFNt5797f/Ipwat7Q+","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjmf14ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqaQRAAg72njM8hihu7hVdbN67rxXUszvehjz+gJ1gIucBmofIS3Zu2\r\nQ5XOnGZJxMSdd1/iX3KAmZS6mL+M2jQGs7UXeJNp+QEh2xMxydORcUNC4R9N\r\n6uFHmL9dquazQmv4YFg7x+k0ToFN8ceJubAnFK3LVjc/GYj3Knlmkr4lqFtD\r\nxfwT0Gvs8yOiPcSwWVbTliqV8AFCxfeqTv92fAaU2kYequDcd5zSEUy4C0qM\r\nHBkPg0dxAElDay5GOmazIZbGqJdYGVp+kQA5+pbAm2oECDHaW7Igc1RMYbIg\r\n+KL+Y41Zk4BICzaDeaPO1zANxOtO2nVNeYExKOe74rUXmZd4+mQtkM8g6wjr\r\nK63zuExXDM8o70nNNNZO6SQgmS7Cl4+wX3zDsZc6sg8OJWMOiGcMT/xmLs0G\r\nI0XEr4kVVi2RksBIH3CBIpyZiV16HVZW+LlCmfyPV7uMnl52bAi7a7YMFb32\r\nQBZjLOE1oma20SS4PgrsQqnf4la230c5Or58uCtPLMXhzw9svrnjnw29tP19\r\nq3EDvtaXGjq5bAkyLN/2zAA/E37B8LG1Sareql5J9vbmI3FUgoOZMXBsMQ+v\r\niVX85p9oR253hIVgs8SUHjVNYf6dcG/ZceutGe3waVcLooFqyqYuARyoUKEJ\r\nMXl92ZhX4RRE8N6WK8POuYqdFtniYEgS0gY=\r\n=BGUr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"35662ba23c37e102fa09f72d61e38e5ce3b10881","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.f43e0ceb5.0","@material/rtl":"15.0.0-canary.f43e0ceb5.0","@material/base":"15.0.0-canary.f43e0ceb5.0","@material/theme":"15.0.0-canary.f43e0ceb5.0","@material/animation":"15.0.0-canary.f43e0ceb5.0","@material/typography":"15.0.0-canary.f43e0ceb5.0","@material/feature-targeting":"15.0.0-canary.f43e0ceb5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.f43e0ceb5.0_1671036280319_0.9951950332108328","host":"s3://npm-registry-packages"}},"15.0.0-canary.34767110.0":{"name":"@material/floating-label","version":"15.0.0-canary.34767110.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.34767110.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"78282b4e0c2a9181fd286aae334e851c146df507","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.34767110.0.tgz","fileCount":33,"integrity":"sha512-K7eOZj0GD6RgzIR/mrvZbFcojAF7JxN5ZmSJc4d50+qMQEGhrZb60hr2H7q6ZCgFjmgiYV1v4zf5wyPoZNnGBw==","signatures":[{"sig":"MEUCIQCSmftj8a4qjbWjedegqWaarK9KU8F2BddintAAwlRjUgIgJeqeKuJp//1i2ggiatzw52bmUZsQxIpDnAW91PJTOdU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233718,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjmgXrACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp9vg//a2muV6X1GegnZM7nnipQZ/GF9emO9CyOT+EbJu2H992cQmKi\r\nJ5dWCwCMBPoiBAj0GUc8Sxs1h7XgnnCuLH4ViZknakZ/2U1QJSv6vT3wpcRO\r\n25sll1YAL/s9UkTAXwxh2Zdz6Dsab0o5rMZG0T3I1dJSjKfOLFxRVJAPP+UW\r\nAxIJkpzrOsjiIHZ2MDZ5+aOxAzRYSf/J9fOJJ2f/ZqUQBUNFtpPWV+eT2ZEK\r\nq/iTdXpbhreQR9nU8Vf8Nk6ZbaxhjIYk54apoMKaZbM7jxpLQacdmhgcbADh\r\nV1y8RrW3f6qu++GzGSTbAlY17UwMPUwlDQcIPX7EfzIl7G9Ig3DoqhmD8bP8\r\n88PhFJc/WqqPgNvqnnJzVCWnV6lxnFOtN5CVq+SI2eeJeXEsbnXXb8mMHzqq\r\nqVpw2iK8VZn+SxcJwZEkHj/RSmbX0XcVHAWgou0tJMu8B7MVaOMbSQyj5fYd\r\nmEQbwKxGTfMMlr/nWX/8L1vY1jPLbVKDWHYqWSQ98iRrsDW4bGOo2g9xYQOf\r\nyayCQGy3LEH5ZriDCdNpffCbFIDUrkeRgqPVj5yO5xGRPW0zABbG2IpSJelj\r\nNtUQcR56zPmGhsSVIOvR/y3A+idwGTkvFTwz7owUr2GQmu1DHFpqiMZU3ARy\r\nveYnzIz3XL1NitU13KsoHuQt+g4LiXF6RQM=\r\n=RBk8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ed8adbbccdff96503e43dbe6291e95b5d2bca2c8","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.034767110.0","@material/rtl":"15.0.0-canary.034767110.0","@material/base":"15.0.0-canary.034767110.0","@material/theme":"15.0.0-canary.034767110.0","@material/animation":"15.0.0-canary.034767110.0","@material/typography":"15.0.0-canary.034767110.0","@material/feature-targeting":"15.0.0-canary.034767110.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.34767110.0_1671038443293_0.856943791645264","host":"s3://npm-registry-packages"}},"15.0.0-canary.1f99f3c50.0":{"name":"@material/floating-label","version":"15.0.0-canary.1f99f3c50.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.1f99f3c50.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c707490139ddae3f65221950bb5350799cd37c74","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.1f99f3c50.0.tgz","fileCount":33,"integrity":"sha512-EJIt1IR2A0DL8i6MDeB6uAneQs1opi4511Ih05PL5uUPBG5YDdGE9H6Yhed5EtzOByX/hEgKstGCa/v9OoZvqw==","signatures":[{"sig":"MEQCIARPDou6EQekiLhtdRVJsFCFi+PQguG4LUApsWXaLI7DAiBnqotntiH4yhjUMZP1yr+gCjNbfpJ3UxGNQBRQrNHwaA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjmy5OACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpUKA//Y5UbeJPBi9dK0DDBgcua49Uwh5CkzVQXeQW35zPMOa4bbp3J\r\nPDm/fpxU6RmHoJBk8TEiWgxxHYSLiEifaoo0gvNJWo2pBuQdqS9Nao0Dgy4N\r\noi43Xv3WMpBZW22RwNPSJGBm5jDKNfX+orjOY6p5Zi7dnKuOd//9Ja12I12J\r\nkuB39pkr3PWWOD1vjA673gplx514I2nwqcXPd8uESD7MABx4HAVtlrgBfysr\r\n4bwOjFxfuFQdbp5j1+B3IrX+X5DXhqyio9/7LQa49zU1A2KzZDi60SaeduqX\r\n4ZIrVyxKxk7wnMbo63ZYbuiw1WfQvjIPY54O7RTlpO159DSZ8W6dgRQ32iJT\r\ntiJLVKmJ9xdEZ5FrxGA6CP2k3MHfQMorZSg/PN3WxNHh6PLFeB4YUG6f5x5M\r\nYzmNWrGv1c/ydVlTptol0I7FkpOaVUPGU2ZORj3P631hLd3T7jqY5qK6/xD4\r\n03W6kQOF64F+Ei1t3TCoxpN26duqwox0INz2KwMUEEYDV2ifYPkzPe/qWG4e\r\nh0f0PUkru/QvDFUQZCMQNsQKPof1r/AHX0HLEaO4JNRZJ1U58VUkP4iOP+Eg\r\nqVpCnaw65BsOXe5n3dUr0tIF/Du+JqjkLDx6KJavY6rA85CaozB80ae4uI0j\r\nsorbV6mTH6oexxLheey4ebJs65YZXNdQWyY=\r\n=S4vo\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c9094e8faca1eaab158d26f7ca8ee4b42fb54bdb","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.1f99f3c50.0","@material/rtl":"15.0.0-canary.1f99f3c50.0","@material/base":"15.0.0-canary.1f99f3c50.0","@material/theme":"15.0.0-canary.1f99f3c50.0","@material/animation":"15.0.0-canary.1f99f3c50.0","@material/typography":"15.0.0-canary.1f99f3c50.0","@material/feature-targeting":"15.0.0-canary.1f99f3c50.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.1f99f3c50.0_1671114318358_0.8308114649722718","host":"s3://npm-registry-packages"}},"15.0.0-canary.cfd69490f.0":{"name":"@material/floating-label","version":"15.0.0-canary.cfd69490f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.cfd69490f.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"865583362aab9bc5e97bee59eb192978b405def7","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.cfd69490f.0.tgz","fileCount":33,"integrity":"sha512-nK4mN3UAp896puY4V3h7++k9nXAGIUB9ezI1c31CDF88gSo3j9jlK/9jBUusq480BMvXcgPDYld5fzDK7Ol8AA==","signatures":[{"sig":"MEUCIBZez7jJprHZo37vTMPdC9am6R/Zj90xjCkYo5b3+i/2AiEAm5CxPunAkZPCJfq5Ychaw/NRkwTNRLKNU6hNK3qHt9E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjnNA4ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqLtxAAhh15v/ETQ0v5lSaRd745NDU4irG3u3FHyET8yFXHN+c66fNq\r\nYqVlwrCA0Ewpg5VlmUEg3R7NCbT6Z1Yz4rttLNPtfm2pmyoUpD8/d3sOiR5Y\r\nqwvE5+4WfstPQREGkhRqtqblCJtB1s74Ia0A4STn/oy8yIDfI2QoRXKIeHNe\r\nVUWy6+xCEQbrihonLyDp8DLs7ik14sZ2G7zzHkwRlWXTdSvvJnLXGqesx5dA\r\nm+nkOB3p++xk/Eaiv/j36j78lEkyBjk4AUUijeqRIDdxCuqCx7DXdtryCNYn\r\nz/dwj3lJfscKRhzkKRS/MypMJVq23OfOex1ehtdOkY1yF75GM0en/AhcQudx\r\nAobGJmkXY0X/pD1NNjQsV91+EtoS+/PLLECIX+FLfeIQfkYIiqxsHG4KGbwQ\r\nFRYca/L7pXJC6MC4ZW1iwE++z0/zPghbqxdNm4wixBTzezodpII0aYcGScQ7\r\n3k97in7LD7UfvuCeJfP/MsnfHYg+PYJkd+4lP6xz3MtmY84Zxk//+3rdjYZe\r\nWgJbZl12edEmeMfUYJGU+WrPfL8H6lQcu+embRBpGubJt5NdvSOe9yK/Wlm9\r\nfGBPuqgA6m84fFJny6nNgx/75svDh8IT33fwvsQByAHG9PR47WGfpFF2ysTm\r\ni+CyfP80GWraMNw3sFLN45cCVCtgEri3VWg=\r\n=2qoN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a7b9218e1ea7572b08b54629159e6f3a98970096","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.cfd69490f.0","@material/rtl":"15.0.0-canary.cfd69490f.0","@material/base":"15.0.0-canary.cfd69490f.0","@material/theme":"15.0.0-canary.cfd69490f.0","@material/animation":"15.0.0-canary.cfd69490f.0","@material/typography":"15.0.0-canary.cfd69490f.0","@material/feature-targeting":"15.0.0-canary.cfd69490f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.cfd69490f.0_1671221303813_0.4209054591798562","host":"s3://npm-registry-packages"}},"15.0.0-canary.94ad8d986.0":{"name":"@material/floating-label","version":"15.0.0-canary.94ad8d986.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.94ad8d986.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"8879925d3ee0f3e9db59a950222f261de638228c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.94ad8d986.0.tgz","fileCount":33,"integrity":"sha512-2EH92FOxLQ5sOQJK8d3SLNHFKI+daZQe1Y9HrfKJYzE09xpxh8AVdNPCYdFq+DE+dT2rHdkS8PdTucob7ekmSg==","signatures":[{"sig":"MEQCIAa3UyCwBEz2PTaeZxbpiPvIbkiu69KGb9OJLmr+F533AiBuIghU98CTzJCEkXqpLLX1nrbzEVSheeLEhAGPPILikw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjoLr+ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq2KxAAlFD/v0gQwigTWX5t3KsktPJvuiHz/T6997BaESLSQefxzlKK\r\nSS+XYm1ayEIRzs9Ut/u6hjP15/Azio6RPRTS5jD9k6t1ICHbjVM0wrluFvRy\r\nlijNFxADBT7pa867p2SFNrtkzB5WdJNb+I554in9B+C0Niz9WqLddgshPzak\r\nbYV2Vzq6UEIV3yGktTBsB/LAFdy2aqFd5Lvm6ZAVl1DeIhVRPP7kC3DuNx6e\r\nRQD4aRWEgVIP5uSJslAoAKy2SL68lx++5id0UKCNvGQZpH5my5savN7um3y4\r\ndsLtKwVuR0VNBpqI50PEZq8zvfMuqKgVicM6u8NBcve2rPbTTyNEzKddCNtO\r\nEd+Y4xYKiG7gRYohie85dtaCKp6TbmHt0lIzH7+xUPqjBqQAXEvUL1XWiCuV\r\nkePSjOwO2vfqqrykwHJ4HBC9s+Iaqo6y9gpROt8kcSTiMHNOya7nVA6dpp31\r\nORbf4dS/T/H/5/sEsHfsmea1N29NOFxF/zeXDzbPq9Ocjh/sUo2XmmN+VzXa\r\nXyUrb4DM0WDyDls3THWzEsXhPJmn9MauLr+psNzeVimWDMhfsQMYNnSn8/Cg\r\nvo9vfuFOhTYAnphv2f514HkFgEU/P+0l9UIKzUMJD8Zbz8hWPcZ+AOGUx3EO\r\nqRhXx7c6dHhoepB/vX4h8r5ohqPRknMP0/0=\r\n=AYfD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8e8a69afb313ffa8badca57ca15ad4a464b9f718","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.94ad8d986.0","@material/rtl":"15.0.0-canary.94ad8d986.0","@material/base":"15.0.0-canary.94ad8d986.0","@material/theme":"15.0.0-canary.94ad8d986.0","@material/animation":"15.0.0-canary.94ad8d986.0","@material/typography":"15.0.0-canary.94ad8d986.0","@material/feature-targeting":"15.0.0-canary.94ad8d986.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.94ad8d986.0_1671478014216_0.5101365985641673","host":"s3://npm-registry-packages"}},"15.0.0-canary.604264203.0":{"name":"@material/floating-label","version":"15.0.0-canary.604264203.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.604264203.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3e7cdff274e98bc9840e794f5f6a66b33883b250","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.604264203.0.tgz","fileCount":33,"integrity":"sha512-bXDkNBKJ+2bYgAQVeHmjlmtoDuzvFzYKl/kye7ggftBF7YRFWQnpCS+s0XUJTs2lByZker8Jtrm3Dx3pXdfZVw==","signatures":[{"sig":"MEUCIH+X2vgLTH6d0VD7wfXsZt9JJx4cnqvyPjXiyqJXf61WAiEAtq5iklkOyzZbbsOAVkCn4V3prJIzvkXsZPzTVKXb56c=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjo31XACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmoi8Q/+OSrSZEc76iiDQ0/aHvHJMXZTHOS8F4Q3KS2QVzZbRQzsV+Qg\r\nnIM4lOoEmZmOeogRzA/k6MinlAFtD4HFgGsFewyxTp0e5ObSgktBYZwWsdC2\r\n6Fnp9GkAvmwXhE2Aiw6br3VRmtKFc/6szBKFfXXbCgMCVvHvoy9KWKI3KDyU\r\nV2o4dN20ul2f5lgaTInWM/YDSXCtQDWxFBp3GI4CWj3KqznLCZKyWGL16NkN\r\nu98uwCThzpkz/GmD566dTtRTOZ9BdBtVqunBjIIqUAXE4YyTLmHIbW2EvmcF\r\nQbXuuEo4DgejrNW5ASC2HXBw2VLILpVvrynIrNL7+6qSV59pYZvL30GQ5r1g\r\nosyma4hlYSl8WxBG+n/VQUQPA/1FAuRx1HQTfPHagKI4UXxm4x7qjWdn6Klr\r\nL/Du0dRfgqnispRXSh5S0xLd7ERjeM/ySg9fbfiNNpcXMwiEeBJ4zXzkOa/g\r\nFpkceGybGVCAOlSKCEGW9+Bk0do9NOXXTJvjjp3Hn1hkeQPDZBYivyk6LZdT\r\nh8NP6/X3vZfkU+X+vTlK7Y8cdE1Q7IqHhwmLXlKF0BSFG55VwaQIawZZov7P\r\nR+LdJU6ECPq00vvHS/BIyv6p218CAC1oBRUS6TgW633c7bE+p7oGHS7mzZgT\r\nb1KXYmGG6K/8HDjtfVCr6bs2lTIUc5eC9/Q=\r\n=p3/3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e37bb80002397246ad3ebd1bf11a465b2eb763e8","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.604264203.0","@material/rtl":"15.0.0-canary.604264203.0","@material/base":"15.0.0-canary.604264203.0","@material/theme":"15.0.0-canary.604264203.0","@material/animation":"15.0.0-canary.604264203.0","@material/typography":"15.0.0-canary.604264203.0","@material/feature-targeting":"15.0.0-canary.604264203.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.604264203.0_1671658839147_0.48586556167740946","host":"s3://npm-registry-packages"}},"15.0.0-canary.85bcff6af.0":{"name":"@material/floating-label","version":"15.0.0-canary.85bcff6af.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.85bcff6af.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6f60eaed3ceff64a231c0d86e9daed1a999536f7","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.85bcff6af.0.tgz","fileCount":33,"integrity":"sha512-OZQvZOAJFvJUsmTetElOdhpZe5huLqd5F+VspqvwQ0dkHDAY8TWeV4e+eOAbgaBSGf5kQcBq6gzK5SbOe4Dm3Q==","signatures":[{"sig":"MEQCIHIf7CSoMq5NGr4fW7zKkVIJzIGOODI0CwWnIsem7FXyAiB8DO3KUC0h5gkOMcp6VF1QRy4HwdrPKzx++eVIB/u9Jg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjpDB5ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrQLg/+IUex7vvGdzgjaGSXK2YSn0i4ETAlq3X5dKyuiE5uquWTRDoy\r\nZnanFkB2intfeHk4EJJHRVKrvRvTT6/8j05ndMdPnP4GxrDmBVRqfaQWrzRI\r\n5E0onjz4Ry5VD7W/bw7dyk7WEv8AbvDPm1mvyqm5kY9tURnHmgqY9T/1SFxU\r\n608wWisptGmIEgnMAPJAfH0cSaJrulVc8kCHv95Mpqi44NsvYF7pMsvpNs8T\r\nqq9PoSsVMRPa85BzPcHxI2+G91/Qlvk3JKp3LBGb2q2F8DtwZaQWzW58NC2Q\r\n5dnE2PqWox9cap0eRfCE3uMAWLVDPj8ljoK7zL84vjHc4xOtbLDrvFPsF6Ea\r\n3weW5Lq9mSGzqUa/nc0ftnncsa8W8kQvE74PeZe+7eZfDTcf2v66rMA+UXdi\r\nbyW4ArwbFZxF0OfxQLYpvcafb6Rsi3BAIYMb0EF8cRkIE2YRop+hUOW5Px6h\r\n8mRhEdiwDDTw8OUtsBkqQIQ22Oxel66MZ1D88dc7SgzEG8VpLXLD2VhKXXWz\r\nphqGSL8ZswNnZJL9nFV1gwNVRkSJmvW7a+/8+k4Z4LSXE0P4jwNaksfzNO1T\r\noW6ppbnrUFGrSKhz1p/TSSBYDJy0Jjw4XEi+cjKGnXvIik9bZEeqzEivawpX\r\nGywGCXYz1rlhMQM/oz0ypToRYbYki/cgZ4U=\r\n=Pffc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ccd1f76fc7f93266cd894275969c05a833a002b0","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.85bcff6af.0","@material/rtl":"15.0.0-canary.85bcff6af.0","@material/base":"15.0.0-canary.85bcff6af.0","@material/theme":"15.0.0-canary.85bcff6af.0","@material/animation":"15.0.0-canary.85bcff6af.0","@material/typography":"15.0.0-canary.85bcff6af.0","@material/feature-targeting":"15.0.0-canary.85bcff6af.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.85bcff6af.0_1671704697510_0.7192328515900936","host":"s3://npm-registry-packages"}},"15.0.0-canary.ece3e8d21.0":{"name":"@material/floating-label","version":"15.0.0-canary.ece3e8d21.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.ece3e8d21.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"allanchen","email":"allanchen@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ab13fd587e33d1a4ab2e99141cf106bb7b93d0ff","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.ece3e8d21.0.tgz","fileCount":33,"integrity":"sha512-p3sF5uPPGL6ZO8sjOz6Odwfl3Hty4on8CBXDzDjujvORhY93CDs/RqJAXMY8MIk6b5um36Dcc0r0UPrup0PyMQ==","signatures":[{"sig":"MEQCIB9hUHIJaiOhP5H4erNKqD67CBZmir9Y3YAZJUc63bfsAiB0TcmmsGAbZfKoS39kXc3HXJ61j+skQTIEIyzdhpQLiA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjpI/gACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoUaA/9FMCRcaB07NG4z5ZsQoVktGA2AGmAm4Y3nVEN8V+sO4C0sXSF\r\nt/haAMdBV4eug9r/xTeQuK9QFzvYn8WqdQRjyK6YUr9bYa+dKyZWBYDG64HD\r\nc/+mG8urn3hX3vG/Ein1sbFfAOrCjn2MbU5MM+JB5wGeG6y00yqt9vT57T4O\r\nF+KbhE1Gxv4/SVLF8Y6qsAAVAomC/bAyRsSAyAjGAZGX8GLfmz1uFaBLb+M1\r\nsXdDsZJHRzbls+VrDUQzjBKX3fj3/y7YGr1oB51wDiaE3zfEVyCySTP5NqeQ\r\nqkTKBIM5gZsyZzjnWz1bcWFxgH7i+pR+1/yPSl8iBrPi/Ow8CDMNCkpJiKMK\r\nSE7+4Bh2oCZokclSRJDnWpjQHOkGS5lON8yhgzpOAIxNUZO0EsQsVTQdbFt1\r\nubk+iV4iXrf4cwFz3u89lgyXjPKc0AnwndC6SQA7XQO7gaQPtVxaEHYN8oZJ\r\nC5b90YEKs+QVAe1chcY/LSBsOuG40dKUstPVv2EA6pNXyigBTJATvIze2BUy\r\nMFRlZHRDaNLWlTBOVV74/ASvceKTVOVe8c22WoSxqE2Uw9hT+w2wT3Cr3bzd\r\nvzI13QfVpO/NELmcqWXkgPCm4RcfUjnjoIGLOyQzlDc48opq+koIRwCmXIEq\r\ns/yRGha9+IzZ1Hfp3FkyFHQdWRQ70j5c+mI=\r\n=PcvG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1a4efd7042befb584384fcbb35f1ca445adaf1d4","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.ece3e8d21.0","@material/rtl":"15.0.0-canary.ece3e8d21.0","@material/base":"15.0.0-canary.ece3e8d21.0","@material/theme":"15.0.0-canary.ece3e8d21.0","@material/animation":"15.0.0-canary.ece3e8d21.0","@material/typography":"15.0.0-canary.ece3e8d21.0","@material/feature-targeting":"15.0.0-canary.ece3e8d21.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.ece3e8d21.0_1671729120741_0.6152985702779878","host":"s3://npm-registry-packages"}},"15.0.0-canary.278ad53d1.0":{"name":"@material/floating-label","version":"15.0.0-canary.278ad53d1.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.278ad53d1.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c5285a63552c49e637eaa1740a7a9e0146e539c5","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.278ad53d1.0.tgz","fileCount":33,"integrity":"sha512-A7IjRN/1tctsJacC4AixQWssohuEB4y8iqlmEss6VTCQ4+MdT3LlZQerakp10hDQxe6wGiTNqGnsST6O/sSoXA==","signatures":[{"sig":"MEUCIDw1ov8khcgKA61/MdENfwuFGgw0Od/vhaEtN36H6WDdAiEAlx6q4S4kDgK1ct6kc3gwSBP/HnKhByy+K6hdn5V1qfQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233736,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjqyWzACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrTLw/+ORfYxte76mgeW9N02tSI5cIRJNQFibeUYddPGYOPfcBBuJkE\r\nfgmpv/zBW/NdF/QEDpMQyX3haRmaUgY1USXGaUKtN2tHOgxmauP9y9MrQ7da\r\n2ijGTC9QsyKUahveQJmkS6qFSnnXC6jYNFazsTjDRCB8PjSNa6xi1uJ4j+ep\r\nVIvdZ9S87FSTjBNB03LuFKyckq/XOFjbWkmREB8SUXQKyn3Dneidfj0oTXGS\r\ndU0+Az7L2/ioD1nqMhAZ7lOiB7CUTF6Q6IQ67xfUBquN3RM2PwZQsResq2Ny\r\nFrpOmYAc0LujH9Uw+05kBgwOXUrZ84rZpDWPY2RNhMMcxcd2SDBVQ7+UyQ67\r\nUwYvzARDJnZwawrTUqdD5dkvCHuW414/i86IF5nNYCqX09E7KmKBYSnCD7JR\r\n84lzy53iMst7vDEyWtW2Pg71yUrBlDNB/E03g8cwMc+Ejif66K+A0YvYn/D8\r\nktO+/0cdivzf7Wt/WvubUunyB+vkzRbMtWQQHxrb6w2s9qIQcLxR0kgabtXJ\r\neiAwcjVX5R+eciqVPS0jA3Mr2cwDrSRXBysLSVLJPpFeeJSwUa0exuNcjRJ9\r\n91kerDT7iu9dR0ZjBT6zT31eqsP4LRBAHwH6g5Aj+JvP2G5eV3u0hzcDyHUx\r\nIfQIG7AZIQc5Es2r6p7a11mxeaEGxkDR6+I=\r\n=bFiq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"967cf83d2b9fa8a3e6bd992aa107c66182e0c65b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.278ad53d1.0","@material/rtl":"15.0.0-canary.278ad53d1.0","@material/base":"15.0.0-canary.278ad53d1.0","@material/theme":"15.0.0-canary.278ad53d1.0","@material/animation":"15.0.0-canary.278ad53d1.0","@material/typography":"15.0.0-canary.278ad53d1.0","@material/feature-targeting":"15.0.0-canary.278ad53d1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.278ad53d1.0_1672160691370_0.78185203107021","host":"s3://npm-registry-packages"}},"15.0.0-canary.a7d8389e1.0":{"name":"@material/floating-label","version":"15.0.0-canary.a7d8389e1.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.a7d8389e1.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"92a255bb6c52d57ed3d6d6c3e2b8db6d4e4d4e72","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.a7d8389e1.0.tgz","fileCount":33,"integrity":"sha512-wJ749ZKSyYjNscNRRTDZ42EEwRGNQsf0NQT/Ujrgyml0qGZsTpkZngKf15c2wS8AjledyN8357lxJrAtd6b+oA==","signatures":[{"sig":"MEUCID0bfsR0C0KEeW+BGu2LcePfspenJO+XRXLr59D+VXifAiEA3yO0aaFpwE4G/CklFok8ZR42OrNxlTjOdJdHDk/B/Gg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":233736,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjq0GIACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoDow/9FFEL83LAaUYSsUu36YKEK5n9N4g/ryJd+8sc/vrkd3NsAYAA\r\n8cDmxkL94pol1sikgW5nGnnpTe1Wo1hX8926qIYqNe33o93uyD//+sAWJ2AQ\r\nTHMTdCNxJA+DBnWihucN0zyF8XkCtJ84e0r4+qLXhN4ZDuesvXZhUX/OaLH3\r\ntliF4x+zEp6m+0pH7cHtK2jlJsOV2WvaBhOwWjlYY0qJ+6Iimib+jGmTQMEe\r\nV37a15DCx/+/srD4+SzMJI/cPGPJLjmXrwx51ApCRUjyphNc7GVECAa5sMGZ\r\nBR2o0YMHxgy8DNWiCo0ACll/3n07iBFU4Cy6AmJjA7I7W+Z7awsRt7llh7nX\r\nv4o6ujXzlvO+FBAIL4YIHWdbM6PTsMcRIKCiKhkcjfx6zDzHdwN8xLfAorv8\r\nZ9V9V6SdN91z731T11FYPaz8zNB8D+9puud6c9JJU4qnHxRw0q3wj6xTN7bB\r\niYi3MWhodSrrNSlN79BBNasFwpA+UgcjF6XswSLAbZwWYjoKawULzfORzI5O\r\n1PFLo6mPV7xtuI6dMsU6Cx5D7+kFuzrvsMCiYGI/HMGHQKxoO2+1AJNn5Aky\r\nhPyFRgOzp9iBBhETvDtYkDj62hnZ6LZInqt9EjV7En+ARLxhVBy4LUsKoOyp\r\nhKz5Dafq3VByZw6vqkl+9pYIYqNuDtCege0=\r\n=Spea\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f9b27084bc44ecd4530cd2252389b0dd8116709e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.a7d8389e1.0","@material/rtl":"15.0.0-canary.a7d8389e1.0","@material/base":"15.0.0-canary.a7d8389e1.0","@material/theme":"15.0.0-canary.a7d8389e1.0","@material/animation":"15.0.0-canary.a7d8389e1.0","@material/typography":"15.0.0-canary.a7d8389e1.0","@material/feature-targeting":"15.0.0-canary.a7d8389e1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.a7d8389e1.0_1672167815896_0.2297100245611543","host":"s3://npm-registry-packages"}},"15.0.0-canary.8175d5eff.0":{"name":"@material/floating-label","version":"15.0.0-canary.8175d5eff.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.8175d5eff.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f77b0fa1af796f07dd636ca7ac83d02ee71a08a5","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.8175d5eff.0.tgz","fileCount":33,"integrity":"sha512-mb9TT8qliWb+5dxh6zBS7kCn5IL6uaGKZftvQkfrzRVYYraHtIPnBr8YcO4u0uNjqdIuNa6woNn7wGv5xyZm6w==","signatures":[{"sig":"MEQCIE8niTmLA15JmrO+oDVDm5O9RVIinnMIRiLtI9g49hcCAiArG8/aOJT/OZWpVD+8dhK+4ZKZVfjO5UK9pljYjvFJPw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":234939,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjq6EZACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqMjA//WysmjZBV2Kr1/q1kkgp78P8KbW/Vd6wx1aq5aWoTionZ9nci\r\nXTGXpeeKTZEeKRg0Q+roNz7n1gqKFCG/yxlX8k/V1x4KKfpsz142FdA7wGOY\r\nNJm5G2pB6Wvp5G+L2dS0ch7EzJpwC4WHUdNznIluhIYSFIXKzGiTCYF7MRkb\r\njCPPZgD0PBq6iQZLPFayZJfruxuDtF4geJP9rchnP7ndhmDN2fxs0ie9EV5V\r\nj4ohF41b0j1kdIoyYL43BIGTK+sFVFQUlVnpgo2dENEqpeyCTOeKAqDDmTz3\r\nYNtcI8qHk+8jWoW9cPuXCJlagEemQScJwmJ4mG2qfukNxTWe5cdwbGV93p5h\r\naV9vzvpVKR6avkwlsH3Tnm6sNCPo0SuQG6+znlXUB77PFC3pkLTnVAA5ly5z\r\nxajobWBixkVNADvSwwUdLaGScLDpsB1Oa+ew9YeuonnCE15Vh1n7u5Phwu/q\r\n5WimYgmYdphbk+yVXP2s0yBoaQ2jlIoOjpf0ONlX+Ll6Lu5t1M6dKs+lnJY0\r\nBl+t8VwV/mbyhlyY4KTYDm0SSHKH79SPFr2wKfwrd+1tkYJVS5eMHhQHH7ol\r\nDhHSwbxCcET5c41UKzMtXPcsmMXhHbY8gYvbqwlN3jJ55nMdmdLlpD0w6uh0\r\n9XJbSf5gE2g1QiwQMfKxN/yWl0NKgdOhU3U=\r\n=Ypnp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c3bb551a6b32480853dcc8e29f7f8513d62154a2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.8175d5eff.0","@material/rtl":"15.0.0-canary.8175d5eff.0","@material/base":"15.0.0-canary.8175d5eff.0","@material/theme":"15.0.0-canary.8175d5eff.0","@material/animation":"15.0.0-canary.8175d5eff.0","@material/typography":"15.0.0-canary.8175d5eff.0","@material/feature-targeting":"15.0.0-canary.8175d5eff.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.8175d5eff.0_1672192281328_0.5458237527701524","host":"s3://npm-registry-packages"}},"15.0.0-canary.16abb41ed.0":{"name":"@material/floating-label","version":"15.0.0-canary.16abb41ed.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.16abb41ed.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"0e13421865ba07e984771d140fbdab155eccbd38","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.16abb41ed.0.tgz","fileCount":33,"integrity":"sha512-Q5YNmAlTzk7kHbJ4CneOvCnWD1ejmwZRi18fDHeZe2o0kb3sTLqKyHLIFHwUp8VuRepmDpU56komy/L4vTKIKA==","signatures":[{"sig":"MEUCIQCgMdWmKmVruJNkrRSIEhfHVsNzUm1ztBepQfhky2RKmgIgExsNCW6NBKodoN0DYqE+vstH4KBBfxQvhnHRamyRPz8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":235042,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjrJslACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqNfg/8Dr6DXV5v8jKi5U6OyAQUf+hiifcJhQCXAlnJirV9Kn03l11/\r\nnx1KZhzl4rXSZuTSz/pwD3/lgkurvrUE597sjVJm7CcLymEXLN2sgeX/R7lb\r\n/ikZYFK8wPRUxfEHqoKv/p45b3vQeVPneOSmdKFQlqyS57OMLjACCmZky2Dk\r\ngDQlkm2J678ybWSJSaS3RsuipJtaPiuigRuLiM9jd/1h6wVlkWd1cyQvqF4Q\r\nBZTb4gsFfT47KfHvbixHfudHZ321Hl+WXGGQ+dG1RphnBqtlLndI+qk5io7B\r\n71j/dTkMGcY9G44iZAKcPqOhELE3tqabkVGfnVXQ3Xo4bsTE5bYbHjW6oMNf\r\nMdOnjo8g6GTS0G9g3yf9kSuGiYZPDJRwtDRMIaX+fYyib/OjVwBr+2ApwR3w\r\ncoHOQgGgYY1SJvpE2qOmeaStgUhD+j4OmlTKr8vlq/3CBZtnLK8LVgWzJYFG\r\nENSi5KtqsstFa5D3+bAHspp8DTWgMcopiifefoi8fHD3oL2GHdAepeFXgYlV\r\nWClpYXCAXzojISfOUN/AE0putgQywRBGYOCkxhSnMMC5H1nUW3cJS9n1Q5BF\r\nxnCRYq2Vxy7p56g24BKCTdv49hFdigEHrIc2GFrtUHPm/y7SG+3pbhdDwQbq\r\ntoUJEt98s6ey8eYs21nKNRj51MACO7Eg1fw=\r\n=G38T\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d76b7c826f30ccda72f622ff722cc7585648dc34","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.16abb41ed.0","@material/rtl":"15.0.0-canary.16abb41ed.0","@material/base":"15.0.0-canary.16abb41ed.0","@material/theme":"15.0.0-canary.16abb41ed.0","@material/animation":"15.0.0-canary.16abb41ed.0","@material/typography":"15.0.0-canary.16abb41ed.0","@material/feature-targeting":"15.0.0-canary.16abb41ed.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.16abb41ed.0_1672256293597_0.09286003664667275","host":"s3://npm-registry-packages"}},"15.0.0-canary.e21dcb86d.0":{"name":"@material/floating-label","version":"15.0.0-canary.e21dcb86d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.e21dcb86d.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e6c47ff0495d7f8c8f6512dad5bc8fa56a2991a0","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.e21dcb86d.0.tgz","fileCount":33,"integrity":"sha512-K62OmNY/p0AUpSpObLeZ5wKizLrldEoJuNMIQp/BA2jWmw9j61q3IoZGapqF3DM5cNnwLfH919S2P1jny5dtqw==","signatures":[{"sig":"MEYCIQDRWaUqx+ZUDwS0xAc06vypNi3bXKlvmLaSGF1oRdp58gIhAI0zNX8ktfxbqxYlXx6NzjgMA5Q/bVyjPva9tDHwTFDW","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":235042,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjrZ3ZACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpZCBAAldTS/tsAwTK0914fK7+8g53RzxBWW0McZkmovBRHln+DNTYd\r\nzvRDjCnI24GHTKQCsSdmIojHkrXtobibRWnhBkdx3STwFtFxR3Uasl829mHe\r\nNR3w667DMDhx7PlZIq8YtGFAsgo3VZVxVCTUg5EMr+yTho2h74kdM/3KJ8oZ\r\nZnWcTtfeqTwNSolA95TDwpuyppy3C5JAHpvhkMVd8rmqb2b2T0SHX4wvUQDI\r\njG0F8Gl8FFnO9uduvaOMJ4UgV/UmRSgXdnK03gV6MMPn7jLxR+alzdujVhrB\r\n6kVvJX+RvvxkzxvgASW+zTbcFs+9yB56YJBb8LmkQ9ddH/09kU7nS6V4fPh1\r\ns7FN0NkmR7WGAhXPE1usF1j0a422f++y6K2ReAyyWTnwD9t0TACKZOkkgic3\r\n+TssqMDMHfxgK3eM7Mxq+7fU8TnIgXVQINgcxIPtLP9lk9JfIOmCpyS+U9/k\r\n6oRjqewoou10o77Sg4oaEYhkp4gp8u0AWRlhTd55oyf+sjXOpXkBI6S3WUjl\r\nJBoFu2sdZHsRD58+9q/cdILzu48CMuk/cZ+5ZymRtMx1al7c32cS2WTFMRQP\r\n6/KA9iKpvpAp/sYN82xpEzHbYRZA5JNpAbn7oONY0enZV6As7HgBu5taT1ji\r\nbpiuzJtO5i5qj2AHJDNxD/94XS2EXwAe0KQ=\r\n=xjCI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a32b4ac6d2bad60870533296fbc4acf050735b8f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.e21dcb86d.0","@material/rtl":"15.0.0-canary.e21dcb86d.0","@material/base":"15.0.0-canary.e21dcb86d.0","@material/theme":"15.0.0-canary.e21dcb86d.0","@material/animation":"15.0.0-canary.e21dcb86d.0","@material/typography":"15.0.0-canary.e21dcb86d.0","@material/feature-targeting":"15.0.0-canary.e21dcb86d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.e21dcb86d.0_1672322520892_0.761414405513098","host":"s3://npm-registry-packages"}},"15.0.0-canary.20ab6f5a8.0":{"name":"@material/floating-label","version":"15.0.0-canary.20ab6f5a8.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.20ab6f5a8.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c8edb6c717bed747b6b2357945c2e8f52738d733","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.20ab6f5a8.0.tgz","fileCount":33,"integrity":"sha512-GIAHvZGw/C4TAwMBkXwOTIO71iN9nAszYZ1MIDgA/XosJv/VAhB0YpInL3S0aM5JRFd9BWXs0sJ7JaFLFuva5g==","signatures":[{"sig":"MEYCIQDU6fy7ma2xfviCem3lmw+Z+8H0+XoS08im4G3oPQ35wQIhAKEc+3dORc5XfbOVAJiHj/wGHiONilpdpIS5b+E9W9gr","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":235042,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjre0+ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmpq9w//ZUSq7xdP5yKskxBEc5TGrYvO0et2JvEOVr/Xj9w9i9IWgyTc\r\nO4fHC4NVjTUKT0/nrOg9ftqniXr8aj2MMS2Yp62yMmKabV5EapYmOAL9ygs6\r\nLKfYHFYeTnOhYnR07MIpBbQX0/AnxAIPz/qRoqGSzxdYMW+UVIxA/zHTGaFJ\r\nFOh8+XMEip8m256miWH+oxHsLmI0iFgY2Na3FWrBzS2GjZH6eS6tAJNEO8ey\r\nuKu9ARFljdErXya0PLBGKHm5qBNsNLGhSo+izmlWjEy6oOwykoA2LSnb6ciB\r\nEWvrLY0q7DErdtdZgfVZ1dtKKgmc5jZbBoSc7T/vGwGx8TfIMCAjUCWT9GQ9\r\nJ25tFroRcR7xCOhEOjgS9VewnjTjmG9RmSW+NwEe1jRgTDB47MBnJKt9RKpV\r\nfKSKqYSnJeKH3WQk5nuYlXIlyVa4C72oBadRnBJle3iighP0Gguc4LpqoCBf\r\nkZrrGOIZOTh3cO6urz8Cw6LW55OarLbiQQl6wCv/L23WWQh09a8J5lYI3jcT\r\ntBHNRmsaotOWLuFzsVlvNq2SJd3OK1vpcDmJaGKHU89OCmyhuSURYCBhK8Z7\r\nziahEiIswV20MC9ZgXyu3egZG9CECH7WA4b/msdSYHItNE5GsUCsGLJYRGGV\r\nXDcV34R21B0QslZXdHyOzJuRu0rRoi3HhAA=\r\n=41Xh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"abf2135af6e71ea44b6e6a4de17493e5923f7255","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.20ab6f5a8.0","@material/rtl":"15.0.0-canary.20ab6f5a8.0","@material/base":"15.0.0-canary.20ab6f5a8.0","@material/theme":"15.0.0-canary.20ab6f5a8.0","@material/animation":"15.0.0-canary.20ab6f5a8.0","@material/typography":"15.0.0-canary.20ab6f5a8.0","@material/feature-targeting":"15.0.0-canary.20ab6f5a8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.20ab6f5a8.0_1672342846068_0.6568252388598708","host":"s3://npm-registry-packages"}},"15.0.0-canary.b9806f623.0":{"name":"@material/floating-label","version":"15.0.0-canary.b9806f623.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.b9806f623.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"fce17c530b22da71645f67b79689ac950b1bc252","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.b9806f623.0.tgz","fileCount":33,"integrity":"sha512-nrolTZrxqvsEURz9KrKonTXMSuc6buQ/KdL7xX56QDh4NVpbtqe0nOuN5FixV7YHLMkhaAuVcpyeKzJzHQ6y1Q==","signatures":[{"sig":"MEYCIQD/UFxVdxJxh1n6B38NnyvceUim7bKiQZKxc9kOuUEgjAIhAKLhs/Z+wBSvbFmFfTZKu5bTNIEDXhKlmPsZoW+DoOu4","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":235757,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjrh1EACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqupw//eqAd5JEVFC8IuM7xqL5GQnbBHOKgeL9YHQz7VtrXLaIqKbia\r\n8UJm17QT33duNq/KjQJNvm0IIJ0Q15+zmcnOZjd19BiZuqY3L84sAx4MN6a3\r\niliksjIRnazJWRldHhkc37lkIBmAObQsRVVgDEI79+PmozgZrMdh7aRj3VCr\r\nc9c5+ApDQF0H6nFC9qirYvsK7WV6V4nLJ6x/I+0k/Ap+6sZhmo/W3KgTSYgo\r\nePiSsAMJnID9Qm8iwN47HRup3loX3KRnjEnjmYjMr9jpuER5fbs0OFq8Gs1X\r\nTq/72p6npSg45XZxHQgj60cQJ54gHk/r6wurS6RJmntSTuOcv+KZkVt5jWTS\r\nI8rHj/GlDkTvmqVG98fCmc1t4i0OVZaLfZSlwNmAvwn9BDm9vWKvgMww+DqS\r\nThIi+PRWKj00ynGPp22gyTEhCW09RKeUOdj8Q4wa/RQUnxiLm3iNV95OQ9nI\r\nIAM2AYsrPCwsXZ7Op8/KTNDLAyCoiZYeJRRI/QBONzHn3Q723YLhez0qOxth\r\n+A8vMPlDnFMVEl7LoY6ykjevA0IWY1G3lO21bpK7cnKlggWSrl86KWBPrYjT\r\no3L23FSJJSRecd46VifsHannuzc9OOxyCOTw9FyVTvav6yBrm+azCDVPO1Sa\r\ndm751nBo/vA7TLylVp/OZoXRuAdcYTtoRRQ=\r\n=hf2v\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"0eb4b8fcbfba4d68dffe3a2b5c7478e69e2e2eb9","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.b9806f623.0","@material/rtl":"15.0.0-canary.b9806f623.0","@material/base":"15.0.0-canary.b9806f623.0","@material/theme":"15.0.0-canary.b9806f623.0","@material/animation":"15.0.0-canary.b9806f623.0","@material/typography":"15.0.0-canary.b9806f623.0","@material/feature-targeting":"15.0.0-canary.b9806f623.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.b9806f623.0_1672355139768_0.1939876318974112","host":"s3://npm-registry-packages"}},"15.0.0-canary.50c9f550e.0":{"name":"@material/floating-label","version":"15.0.0-canary.50c9f550e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.50c9f550e.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"12327ccf90ad13eec4d8eb6e07b33134d69a6097","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.50c9f550e.0.tgz","fileCount":33,"integrity":"sha512-VRXE7TZ1sEpZWopzgJsxHYyN42+Zvbd2DwyxYi0bRY2fs/IwGrf3WAjfF0T/Qps8W103+ijDxgnw4bjNS8fWxw==","signatures":[{"sig":"MEUCIBvLFpnrp3VdCgmBKGze/QDkVoaxA8Fd7z/IFWCkIUuqAiEA/pet0BcXmq8fipH1ZlCpPVphLUhojFKxo77NwuIv4tk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":235757,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjtE4UACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpcEQ//Z9t8ZpPeRzTSoOemNhjqEWhOuVrTntmnLazKvU2hNB8pp93w\r\nlu6wWIYBeRVySrzc6ZdwUuSbwRfaXbtIILyJuHJY3etb8nqIdvoUtUOlJIDm\r\naoG0CdugqoW5B4aq80Z1TUi6rZ3MWH9kDIufaLcV4QtEg6a2V1x0Um9v60+b\r\n975i3+n+10XYrMnMYYFwMTEtME4bukKMxABc5yjIA8lU+4PBVIq0L3o6kUnT\r\nEQu+ReReU5PvXAoxkE981K+0lod/XALpgNqQsRvxZayYvjS0QGvjedRYXcIu\r\nq6YRBHdRBeQMw+n/+tcLmxyENpAq7tuJdPolVoJZI+smok0Fg8RvQBMG7Odf\r\nBnVHPl1ou3DPrFWsnxc1v8kolsW2i07xCZRlCjoVJMxtZO7/ZqkPBw/19FwR\r\nbgOQL4K7U7QktZegSM4hNpfjCQGBhEW4Y5NGCn0wdBJRXu6nKp8FsfNdCPfH\r\nU+TCpE59zESKVfjDOIqeIQBdMlVVm1I8Vpaw0/P+xbf/vlKOivE6DLqMTYSm\r\ny484DESXq71IRNmBPJ4jkbAOUXqa6lUcDrJXNcwUcgJ0qUp/xNI0l+kRIFit\r\nZCzHwjrP+i53JwG7Q+xjDdaYG66UrxwyBb9zXtyQrL0RHHAbxz2hbEZszC//\r\nhHWk+fpbUvAKF+FeIfMzwDwy6fWHLCy7rF8=\r\n=FxUh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d020b19d0ab5525ccca1f803a00e184efafb15e3","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.50c9f550e.0","@material/rtl":"15.0.0-canary.50c9f550e.0","@material/base":"15.0.0-canary.50c9f550e.0","@material/theme":"15.0.0-canary.50c9f550e.0","@material/animation":"15.0.0-canary.50c9f550e.0","@material/typography":"15.0.0-canary.50c9f550e.0","@material/feature-targeting":"15.0.0-canary.50c9f550e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.50c9f550e.0_1672760851872_0.8282490292628208","host":"s3://npm-registry-packages"}},"15.0.0-canary.af490a848.0":{"name":"@material/floating-label","version":"15.0.0-canary.af490a848.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.af490a848.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e04d006f19bde05bc5d5fd8c902a82d3a4bd1a51","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.af490a848.0.tgz","fileCount":33,"integrity":"sha512-lgQ23oU3svj7fPGEwmDGeu9ROwCrddG8bO6cIQuTQ9DehRfyjoQsmrnsTHeStBSBhIcOiVmodNaZTQ1jBDn4UQ==","signatures":[{"sig":"MEYCIQCZdPW4M3KTrPm/Ac553EugypXJb6Z7srfSZGKN4CDq8wIhAJmJXZNxh+LXnnU7bsbgLmbjZNbEjbdVyFj8U6J436s3","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":235757,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjtFBFACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpmVA//bh8iz6Ml85mUTk2h2pS06pR8swY59drVUUAKqw5L/Vapbw/X\r\nMrahw5rZnu+xbogj9plBAbn5v0Kw4ZpDiTpZeBIQMVHVKZz7cOuqH5U3+Mjo\r\nywiU36DKt7M3Y2cZv07hye7DEyGCgayBIUZJSuf28rDvDqNpL1SBRuYEUdrn\r\ngMp4s5ar+LTu6kHghANMqFsTvXx30eQs1KFr2aRhfURSIZMcraxqLUnaLpsx\r\n6rE4k/3RGbnnmCK3sZ31w+EUwsjo0O0kw7PHWEn52+PasiuytKwO8mdO9IPb\r\n6F7sgC/tcLr4TWLV/ua2fD7+r5/p2BPTAuSnvSA2R1WO54wVUrJf1Ztvdw0U\r\nug52U9yXChOj3tX2l3yyRameUmvpOjEpzviJ36v+ivDzLrZ6fHe91e/Bpr+e\r\n8piHgYIpsetKzNvbj1m+3ZF/FPZcS2LPogA6LuPt/zyzOocVN18WRlC6ViTB\r\nZg+cRUqmO5qyaOmZO63VgoWmFd5ABVPmLIERyRCNf6tQkgv77RBVNOqZ2jxz\r\nXMXwgbzDQlGm37geH8/bwDwLhYSKNxH/7hFuCAC+tNdekWfijFZZ0Pxu90PP\r\nPUsnzu0oGWdXxJLTZoJgoHyMcWBJadbWUQZ/oBnXiyfxFpxCAf6CC/+tlglZ\r\ndqICR/kUyua7037F7GPUM3PmApslv04YI2A=\r\n=t6zl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"95f5499a3dea1763e53574fb3b884e8e45cc974e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.af490a848.0","@material/rtl":"15.0.0-canary.af490a848.0","@material/base":"15.0.0-canary.af490a848.0","@material/theme":"15.0.0-canary.af490a848.0","@material/animation":"15.0.0-canary.af490a848.0","@material/typography":"15.0.0-canary.af490a848.0","@material/feature-targeting":"15.0.0-canary.af490a848.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.af490a848.0_1672761412971_0.420250139379994","host":"s3://npm-registry-packages"}},"15.0.0-canary.7cf487c98.0":{"name":"@material/floating-label","version":"15.0.0-canary.7cf487c98.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.7cf487c98.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"25b9a6355dd91fb13e9c4fee2ea294ac4baabdf0","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.7cf487c98.0.tgz","fileCount":33,"integrity":"sha512-v66PRXDFFwRMSbmgZDZ02Aadd9hYBr8kCYTmS1w0Y6DBP7dhCbHRRZGQjI9nkytgfJGaz5/3/yWKBU0Oa54TXQ==","signatures":[{"sig":"MEYCIQCD79eWCix5+4yE0AAY0oZIK2VEfunIfUMAA6F+vteMkQIhAOGortTz3lDdMCfUX/CBdSm8+x2KDo5xwUov570ea3B/","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":235757,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjtGgZACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmpj5A/+K91ecoXqrlLTKyDej2enRo7jEHxY4ZiMwDrDW0If7ExfwAVk\r\nsuUb8Fqk3ZNFAPZ8DnmYD9aNhY8sstakQTQlqNlpU34IkDiASjUs5gOWesZT\r\n836NLmmgdQfnVyE9de7Uy9tEBEL5ldnXBFNQ1ge8OsJq2DrylvCzri0kjJV4\r\n0K38fn3sMpud5BbxlUI1JVLuVZ+e+E1kQtZ3012u5wMPZuN9UXEhT4ANYmN2\r\nfycEY+TqOsmttx96Lxue6piKpwX96+sLiY7r59esUOdHTxgXkGz/1LMIH9Hs\r\nW5kCzeNcgwTtDOialGy8YBwbjY/OAMFYsnm9VST6WPiF0ULCB/3RM53nxmwZ\r\nvcwPuhGFU2rfiuDEiwZTOTYzHXRx72zPzPzaknXqIirf/f/vk8hIFHF0ySEI\r\nRU58RAps5esrGRnMT49nzHSbxtLPLiSf41nEDLcnpUzmeCITAkLhr16pVGrr\r\niNCuFyl9n/dFMC2Ykkd5++amlspaa20F3/Nekd1y9FQ/1PiXHO4GazGfCeYT\r\nxx0NMkVfi2pok+iR0jUC792MEZtryTv9NvMcy2X9qlDyGWY3ckwnLMrgGkkl\r\nFUHQv1Y5wKdYjTrm0GppsxIu0Xwseps/WAsGZl+n+nxoA+yBzE0/rQ7e099E\r\nG69MUeYo053urZczzlQAPSmHhdwAseCUcHM=\r\n=Sw6V\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8d246270c785ca072651213aa63882309c7cd5ae","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.7cf487c98.0","@material/rtl":"15.0.0-canary.7cf487c98.0","@material/base":"15.0.0-canary.7cf487c98.0","@material/theme":"15.0.0-canary.7cf487c98.0","@material/animation":"15.0.0-canary.7cf487c98.0","@material/typography":"15.0.0-canary.7cf487c98.0","@material/feature-targeting":"15.0.0-canary.7cf487c98.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.7cf487c98.0_1672767513432_0.8548558347849484","host":"s3://npm-registry-packages"}},"15.0.0-canary.a52be2d5e.0":{"name":"@material/floating-label","version":"15.0.0-canary.a52be2d5e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.a52be2d5e.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ec477ac06df5439dfa5c32108682a9a01f607c07","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.a52be2d5e.0.tgz","fileCount":33,"integrity":"sha512-A2jcTtlJxSe6Yk0wrRNKN00f/hYiDv2M4+q6xG6BqdR8fnUwBLLLZ6CweiOYz8S+1XixrmjhcO9TtnlrKlv3qg==","signatures":[{"sig":"MEQCIHdB6rK8zInMkHrN8UdGrK4NpswpRasoR6AQINIZLVfYAiBTD/JdwDe1sgjAdiMt3siSVjWb7Q6M7Lr01fAG050gnQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":573716,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjtH4+ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmplHBAAnz1hLDYmZKQJ2j8ygv6iM5aGxeb9emP78P9wGeVklw0XEX86\r\nRdbhNWTBSM0PFJQSEV/tWacq7ewuuUbvQJwV79xfqEkUJk/tmRpXxZQA9emz\r\nA7FZYltR06EoeHLuA/h7XkBUY8mDkxRxOQIabQEYwUYqQZBQirusIl0VI4cW\r\nyVaWlj08Y2uJYwkBiDetz+YmNyhHfLO5pvQ3ge2WbVg8PMMyYAUIWpMG4V5o\r\nK57+YPw1zW9CIQuSXX6a0o1OKTEHdNVvoXZMszMt6sSwd732sI6s2vnxuzsK\r\nBzose+Q6SpbLaaRou3GTQgKlZzmnGSc2ofHqavT8D0MZ38LJ39YiFHb0FKyw\r\n05uCi0o+dxozKDTsVzoiXDnKEc3OuUOWAO3sGtgugoaW1g/mQL4cycS8468Q\r\nF8cwWZEv0vqLZ+UD3XuUyvKLhdl9E0yb7ejNsWIG3TlGUyC/xVVIM80sxvt7\r\nt8RnUOws2mQjatISfJzi7EARKEybn6FSLTC0iO31Sg8z9vv7XjdiwgZ6/IU9\r\ntiIPJ8r58Aj2XUZ0ngydPF/ssUbTJ3+rZUHbj70RY6vOMLHnPdI+kTrWROIp\r\nfuRYhxsWuBP6cXHHJaKL4SD59qXYhZ+etqKc9yH+BAY+ZELNtXR237lpaOfU\r\nu6WX1NzTx1dKhuvA2WM+Z7hJAYUiRQAHEBM=\r\n=WWcl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"6c2c2b2b16d0188fcfc620c5bd95622d34ab600e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.a52be2d5e.0","@material/rtl":"15.0.0-canary.a52be2d5e.0","@material/base":"15.0.0-canary.a52be2d5e.0","@material/theme":"15.0.0-canary.a52be2d5e.0","@material/animation":"15.0.0-canary.a52be2d5e.0","@material/typography":"15.0.0-canary.a52be2d5e.0","@material/feature-targeting":"15.0.0-canary.a52be2d5e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.a52be2d5e.0_1672773182256_0.04969757754932047","host":"s3://npm-registry-packages"}},"15.0.0-canary.e38ba17c5.0":{"name":"@material/floating-label","version":"15.0.0-canary.e38ba17c5.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.e38ba17c5.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e7682aafefc0491f9e02a561b3b794436f15376f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.e38ba17c5.0.tgz","fileCount":33,"integrity":"sha512-BP1CWgnfAtl1YtESgPE16yleVTUjQJ6mUu2fwZ9tZ5H8IYUFq3UYN6m+K9y7jHfD8eZqoE7Yvg3KEtYY7bIBtw==","signatures":[{"sig":"MEUCIQDwImzHEpNrf4vDCar2s0nYND4ffblCnwOsqRc+3DeqRwIgG6tXC+jkKFQAYwegZtvR4fT0S+jds5S3s0tN+PfCU2M=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":573042,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjtKz3ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpAVw//XdOMLydRNUBKGuRyuCzT5q7mgxdwgUu9pyC82NKgStB+Ew6p\r\nNIID8mxilkeBlML5elcahLPHl6zIXCzhqWz7tf57mudjepX3hUHMHoN18No/\r\nhUx4byR690RlXjGsR3x4fyXNAQDfhcYgoDMZJjBE3i7hcnsUE589dC1h4J5T\r\nFqB8TH+R1A3X6iFLsqj1GWJl86ZGfL5nX7M6YHGXrU/xwIMt5h/no3Xzu7vM\r\n2Ss/ebo8feTnPa6mUn1XLNPalx17rA79KGRCcN5WvTI9PSX2WV/bNfs///uv\r\no7MqHWIXp5joN70fjKVv/BjQE/NHzQR5/YVN9VsNAJKBDyj0SoEyZW0Gokl1\r\nicL1ZjqVFXC3SFRURwf6lEM2Z7bWFUaPV13PNddfW2TkXA0qqIeg/d3F1WTN\r\nds/3kfO8WY/3IphzCGnAI1Rd+qL2XAswTQWnCKKLZ78DtnfL5ly5T45eHV6x\r\nvH1q5+0ZRWjW7bvCNYahAj726MekKYVoD4E1wZgGcQcgupjQeNCvML8hhOyg\r\nOmQlPszYlDfvwvaagAl42V5yl/fTKHbICoOnjQ8yz5a2cCCfEqX4iRQO4a2k\r\nE5xTg+TjzMDA9OYR1zJNskaANBDLnTCfz+VqLYvRIroiqw1h0G6lVk4oEOZ+\r\nvxkNIr+wl/nq4LRKvAbwIjBdn5JIWMnSxuU=\r\n=xnt8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d44100693c450240b468ed28efc3841fdde62da4","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.e38ba17c5.0","@material/rtl":"15.0.0-canary.e38ba17c5.0","@material/base":"15.0.0-canary.e38ba17c5.0","@material/theme":"15.0.0-canary.e38ba17c5.0","@material/animation":"15.0.0-canary.e38ba17c5.0","@material/typography":"15.0.0-canary.e38ba17c5.0","@material/feature-targeting":"15.0.0-canary.e38ba17c5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.e38ba17c5.0_1672785143221_0.8061589415627746","host":"s3://npm-registry-packages"}},"15.0.0-canary.49041a6c3.0":{"name":"@material/floating-label","version":"15.0.0-canary.49041a6c3.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.49041a6c3.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"44367531538f4d47da302191d2e31696b859f833","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.49041a6c3.0.tgz","fileCount":33,"integrity":"sha512-XA0mB951R3HOuz/o+aWUChjd++hUo2ySdr/VeqFDMQ6F/qVPSWa81Q+/0WTp2lThAXLKu/XlVmTwm2HzbbOxmQ==","signatures":[{"sig":"MEUCIDL/jPfcnMRH+TKaX9iY2Nk+TTTxPW3PAkEAPd3mzNSxAiEA4Wsxwz8Yu5S4/DIb2clmbAeDwZUuSmp/5MpQC48KqOk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":573042,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjtZiLACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqmsw//UnMKZ+V21r1PXC/FauktbytMhMvVnKbwHH1OHt2TiLzfOoeV\r\n48YibileQbDnYwY+rTLu3/Ke2o07E/B4AIxwsN5/WvrgGxzJ2DsukhTJRVgC\r\nQvyJUNxX5hFx7hX7KPZdy1qKYdzP6386MCfk6+RyrkphsqRBJ3pbDhzfEfdw\r\nu7yVGl56mfx0y0Z//wNwHc68/elK/9pugQZVQHKP9aXIHnLsO2w6zGLh0mI+\r\n12jgEycNhBRomTx6tDiToF9XK97R7hbe4USVerkF7sdNnEcEP3EIfwU4XP72\r\n9cZA8bHKYncwx5UfbquGj4FZadPGVNYtJ2xjI3jotr9BOLpsJjQp8jafty2v\r\nnvg3vtWdzOXMFl2mb57lUWNzgq6ukd7uwJb3X/VkMRfToaLzG2cfzjjJXu8e\r\nUQACh/EPAo8n0vQ5c0TlON1cCR51Njrtb2RjArBWmedKCo8DIqUrDi5kozFQ\r\n32WbPI7VwvnxrqP7YaT3IZvhYha1jFIkxvuJzu+XKRQuCM931PXPOpiiaB5y\r\n4Lam6jDjPYJ1PVbBlHaDtLfblEGZZ7YUN1zFm+5A1XmDH2g7+hXojOU1hYHk\r\nWeqV0mFy3Oo1UncrCg6A7wRwkYiAEmM8h1dwOwX99XFBwMk2eYPntdmFzivA\r\nFYmqpeGXLqJlZKbE1qAmBoewRKmRXWKkKOI=\r\n=pve+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f012497ba1285ac3de691b5e25afe7a21ff62bdf","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.49041a6c3.0","@material/rtl":"15.0.0-canary.49041a6c3.0","@material/base":"15.0.0-canary.49041a6c3.0","@material/theme":"15.0.0-canary.49041a6c3.0","@material/animation":"15.0.0-canary.49041a6c3.0","@material/typography":"15.0.0-canary.49041a6c3.0","@material/feature-targeting":"15.0.0-canary.49041a6c3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.49041a6c3.0_1672845451334_0.014093345170540061","host":"s3://npm-registry-packages"}},"15.0.0-canary.c492898c2.0":{"name":"@material/floating-label","version":"15.0.0-canary.c492898c2.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.c492898c2.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2c81da2da5c6fc4d6db4d0de89d6eeee79402c35","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.c492898c2.0.tgz","fileCount":33,"integrity":"sha512-bjOkLE73Lhk0O15zxxiGFZs9x75A/FYD7nOCgPCAA2zcTb0lncHXqicO4uXtVd+dO2Y7skBiW4V/NMW7EiEE8A==","signatures":[{"sig":"MEUCICZmpunVAkT1smvS93o+0/1LqAggKX9kOI2/mT7uZ9AnAiEAtkGCqH0p66utZGr8etJqfjRApk9REM+TbXhFmmfkxig=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":573042,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjtbk7ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqSlw/+O0GXkj1waGkybteVlmfgC9es/2BERSaR0I1kDk+9FBZxEDk5\r\n5e9tz9y15oG9EO0bw5sjMrTud/aQosa9auvGLgWrqsgTHJutaMpxAPSOKqEv\r\n5F4BdydmzwKFb/JWulQlHcxLHMMzWfCmyZC1PJHy9LeSeesSY2nY6bPseWQj\r\nhuUGnN8lB93FbSXMX0pUO4VnExyYHvWRVVQcgTg1T2tWL9SDQcqW2vPh3NnT\r\naDVVMqNaJd1DE4JsP88QE3JhgYOu/2AUWFnpwsisWsrE7orGepxbrg4mIBYr\r\n7b1j4YZXySWTZJgiSX/SBsK+WnhY1dIzrxnq0tyPXZ2COfv5scQkxYAvUQhO\r\nmMxogmhKbGMoUrG+zq0g4L0PExtRjHERQZPNyDBTtLrN3pv+EJo09X8tOrbV\r\nw6hcbb5fR6v/V3V54Bq4vcnGmhEZBcQQFkUsuBtzGjVhZs9xhk6fCvlmDD7l\r\nPCuwwRdqbvPKw1A9UPQylHIInYiADTIgvymMl8DCDRRkL4KLauIlxbauABnY\r\nw8aHddv8gImLPIvlfOTJtpzrsdtgjZ7PXshekv8uRUv/z90ap8dw/zuUTU02\r\nY/OPux/tyddfR100VQ+l5piilUDpGxLlH47iyb35W157dIYzbgK5O9tDJ2lV\r\n7f331Lbt4SPHFqSSlY7Vyk7lGDfwJPhzn40=\r\n=epad\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8f57d41cc546a15258de2fac7e4ddca48b2987ee","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.c492898c2.0","@material/rtl":"15.0.0-canary.c492898c2.0","@material/base":"15.0.0-canary.c492898c2.0","@material/theme":"15.0.0-canary.c492898c2.0","@material/animation":"15.0.0-canary.c492898c2.0","@material/typography":"15.0.0-canary.c492898c2.0","@material/feature-targeting":"15.0.0-canary.c492898c2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.c492898c2.0_1672853818798_0.6732962579340094","host":"s3://npm-registry-packages"}},"15.0.0-canary.d7a2277de.0":{"name":"@material/floating-label","version":"15.0.0-canary.d7a2277de.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.d7a2277de.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2c3f73ea8d83c6b7bd056a4defecd5c30ce94157","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.d7a2277de.0.tgz","fileCount":33,"integrity":"sha512-+QgF3A1duptuua7kgf3IC01LlTGGNOgT8+KqWSaqKdFLjVOdjLWrgUedWJfT6/SFk98z1UpWkmeXpC54vSCmNw==","signatures":[{"sig":"MEUCIFFcFkzqsNxtAxdSfvDlNoSrT0+vilfWtQvXqVaZEk4dAiEA5hc2HwIMXov+mx0GIEq1Hmkgem/I0/vWXbZuLxYuDA0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":573042,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjtfEhACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr+sA//ReelrbA40ZA35vkNingkyLNPADc5Ei07qK5gBCaji0L4/Rq8\r\nyzEQOw6HbBfUEcqeje1xvdCrRP+C6hCBE4xPn3RhCtZ8CLqhUUbr5P3T38SC\r\ntV/cqdBViyFOiTMXhjNsWBO6+v/tGBITfkoJ4XsvPr1bltzxA/irWj500/ec\r\nEgvltkcNdjiU6fciSfgorWhIq/DrPAcREn3U7E5sUKwzmvB1zMgvlYfG0z3+\r\nQEEHj75I6k9B6sEJtY2BhKu2H/IMXKaK40a4sPNMfDButGoca/ffaZNxDnX3\r\nnDIFghLt8y4sl0DfRZi0VsuZgpjTZSoY+g4Nif2eEfF25gpGdFsSkgv3QgS6\r\n3JkYovq9JlYrrO5lWixM5G1c9Qr+hivXWGT9HZGWkb8ztr/55QX5i1g30VX9\r\npHl3c/ADsRmTpLh4r6LN/uYiTX8NIqpUi41qpcdavDYvUnUHftqmVZB1oqUH\r\n7583VG4aqpmbWNcv9VxLoGCKDPm6pdaO/OihLkzNG6Lcy/ePTwLA8IsnJZmv\r\nF/GFhde2GzpWSB++95/s+FOAsbitCFE0FUXqwDs7YNl2LlBeYxjFa5YkDS9a\r\ns8Sz085L0BIP/z9yo82aVjj7Tos2LLq59NLLL6BdbfLl6QWv1zrGI6pM267P\r\nl3cPYX4yJER7qTni2uPIpZFcTw6fEez5d58=\r\n=F9wa\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f9c71e947019fdd0ca8837669de0401f3752d1f3","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.d7a2277de.0","@material/rtl":"15.0.0-canary.d7a2277de.0","@material/base":"15.0.0-canary.d7a2277de.0","@material/theme":"15.0.0-canary.d7a2277de.0","@material/animation":"15.0.0-canary.d7a2277de.0","@material/typography":"15.0.0-canary.d7a2277de.0","@material/feature-targeting":"15.0.0-canary.d7a2277de.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.d7a2277de.0_1672868129470_0.19698996235116928","host":"s3://npm-registry-packages"}},"15.0.0-canary.fd95ca7ef.0":{"name":"@material/floating-label","version":"15.0.0-canary.fd95ca7ef.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.fd95ca7ef.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d1232a30d8a2d934f9d7e7a3a1b0a531df0d703a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.fd95ca7ef.0.tgz","fileCount":33,"integrity":"sha512-/kJMw+HJHza7BDzfqOMTmKK1MLeN3rD5tv0O+sM9zPlgsVNWIXDjQp/nWP+muqoxY4VZary9WPkz9gq0HMkKbg==","signatures":[{"sig":"MEUCIQC+TXwxTxX2cwxqw5SWioud9n4g5iSVAH5LouwmXxWVRwIgQbAqck/NyPPC7QuJQFZnqVzcwHGzzEWduyYfVjJULAw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":573090,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjtiGuACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqvNA//T2KdHghiD5WtjUslOLwqXH7qXMljlk8lmXoGOzbID9GVBjOJ\r\n69zqA4inxNidhuwP4ObptH1UH5MfPw3Of4S//17InaE2wtOqoVFaCwPS31H2\r\njfDVueaWCIAVAWGQdTMKKTKryhwZPLG+PLt9cy+s6lsAb+uvfsyOhYFGUKAV\r\nZN6mZuBgZuvIWo6FVznMeeMQhY/GnI1u10yAdBiqiWA/h4v6lKdPeGA2Qy9p\r\nS9PPyNOcT7NcfufA3ZPRMCXm+ghL3B07HZKwR2bJK2aaoufi8TApGH6Py9pD\r\nLum5AcX8JS4Nmk39b/0pNtl2ztPtmMYv9MN+W58gyHJFeQDDZkrGBgtMT1ZD\r\nIabolO5SiL6dEphXzieegd7oHm0B4hhpYIaJV7DE8IiGlyni2ruDPTElF44d\r\npAnZLmtaAGDCZu4sZEKTfqolzGA8/WztMCcG588uObw78mIfMTEBWsQAhVoE\r\nqQxIDO7rg7nBsCU7DIh+UqI6HkE2lHPe1fqcTMcRLuZxh780KdH6PbG2pJ6X\r\n0Vc+1w/S4dtXm/4guA/3rHgks+PsCdJMyeufkgRKKz19cwFAv317z124Qemo\r\nLo+HiHLFg+rtrRa5skvyOTFwWyjYz7DtW1X0O2UocTaczyGono4CAjTYNQP0\r\nyEVqbZvvES4SFWUexr+lNh0O3czCC6oUxNI=\r\n=dU4k\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b0d2fa371ec4a3d0a8a11e19d9753b1af5d2d62c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.fd95ca7ef.0","@material/rtl":"15.0.0-canary.fd95ca7ef.0","@material/base":"15.0.0-canary.fd95ca7ef.0","@material/theme":"15.0.0-canary.fd95ca7ef.0","@material/animation":"15.0.0-canary.fd95ca7ef.0","@material/typography":"15.0.0-canary.fd95ca7ef.0","@material/feature-targeting":"15.0.0-canary.fd95ca7ef.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.fd95ca7ef.0_1672880558206_0.7068205031696462","host":"s3://npm-registry-packages"}},"15.0.0-canary.1eb44faf9.0":{"name":"@material/floating-label","version":"15.0.0-canary.1eb44faf9.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.1eb44faf9.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9cced062159f374e96ec68a7659b77824cc0a1e0","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.1eb44faf9.0.tgz","fileCount":33,"integrity":"sha512-20gG8US3CNuS//Dbg3+nJRcvOmQQpSb9xopDNGlAcyBft25ErpJkazHYp0UT/BI7VXGgdjOGcCOuGK1i5+iTEg==","signatures":[{"sig":"MEYCIQCq7C0yG86Jt/+rDAxITj2YI40RQUtPodBJ4pxPenO+TwIhAIHgPytJEJFpBE5Pfg/mrCd/H5yiDHBb78n3cG1jkSRC","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":573090,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjtpO1ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmrj7RAAmkkrVaGnX43nsj3jzRqOynyKqE5GxLa/J0AoCtnXtDHeE0d5\r\nlduHcxHFKiZ2DC1b/npuFiyE1984qlD5QMgRNGIAg2pHPAbQbpJvhN/pM8iX\r\nF+Kl356YgwBcQ2tf2Nm60nLwi5WUfmk2wgtwZNuCivgSUtH5mz+ROelzkkVE\r\nS3qS7g85TyDrV4K2bZvKj1aOusbGeuDEyty8YSgog092ZnR+69hVcyk6wa6n\r\n5T9IpSxaaNIQtcg5bi1zMwWu8zYLzwwFtenLzWovBhUhMHkOXt4MVvJjJs9l\r\nkCRqZkLpusOxobIZuWamNelabqhPoYVYF2Yg26GV2zcpV58FCgDtMlIW9Haq\r\nbrXak4wbXUg92wSQNlf/xZG+Pb6kIxSs2SrE4Ylrktf00lNvBd2Htqe3cSuI\r\nLzZmxeMDehPaBlQgubshtXKWVUw7Cs4dsZF2QcCDtNThqtYS8mQ3/KucQZyC\r\nMLvo0sxn5jdd+Lbh0pvA1G5yoCL98VuyzcYBwwO7uVI0agbQqH0ov6kumbij\r\nZC8XJufOWNJXT8Zyn0nYoe/adp8cMTGImgZ3pHch9O4UtjGiKV9jxejkTS5G\r\n+ZcacRGs0KhLnoWLhcNofPqbBwMxzocZddwo89YW46R07FGVtqmA6+dDFe16\r\nRm0dSLEK6uS6r7ruzyPpsxP1i4gITaq+5Tg=\r\n=4mAP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e0eeb94598a14217ebc97ec3e249d126a29a13a5","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.1eb44faf9.0","@material/rtl":"15.0.0-canary.1eb44faf9.0","@material/base":"15.0.0-canary.1eb44faf9.0","@material/theme":"15.0.0-canary.1eb44faf9.0","@material/animation":"15.0.0-canary.1eb44faf9.0","@material/typography":"15.0.0-canary.1eb44faf9.0","@material/feature-targeting":"15.0.0-canary.1eb44faf9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.1eb44faf9.0_1672909749554_0.764354414024812","host":"s3://npm-registry-packages"}},"15.0.0-canary.adcdb7db9.0":{"name":"@material/floating-label","version":"15.0.0-canary.adcdb7db9.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.adcdb7db9.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"478b6cd38e1c11bac76c74a93218f5893742e071","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.adcdb7db9.0.tgz","fileCount":33,"integrity":"sha512-gRqF0J8hNpOfsr2wQt/zk+C2LHJfbOsmRbzbsHR5FYTwHbpY9u+yzie+l18V1SlV3A+Ye1pYPuWXiXWNtflViA==","signatures":[{"sig":"MEYCIQDtrUa2gQvDqbkaLAuKbD1eyM1ZsXIOq1tzu1WIWJErXwIhALG0Qv+uaTs0w1gBXAUj8I6y54SFbObMuLVOvAVm51Z1","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":573090,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjtvkEACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrGig//T4IOfEGTXjEeFruxba6pX35jksJ+KwgoRwbJlMhx007LwK4/\r\n+vKe+RLr7mXJ+PSyKFD3S5ZJWg8LBoLAESKBFqWntwyYcyBZiuuG5yCr4SpK\r\ncHiU9NnmiTFm5Qof5U8cz9ksi/fZT/vNe60AJ6ghcbBesT7RF33B5NEr+iLv\r\nh5Hu2e7WIyiyuW7VG6TKlYqtelF36UG6jVt+CpN1rANABPqsxTN29sqAsU1G\r\nHevm2U8M00XOIRb4ujQ3nO3lFrEEp/fMrizglHty8kXKTHTbSyWrticjqniE\r\nNQUXo2blnjDhVesldnum7vUYgSvXH5d8E141SdLdJuslZC7Cvhu4kGzogXf8\r\ndpz+09RGj5cYLRRkxSBzWyQfs/V17htroGALEBGFQLJOyT231+IOflARw4r3\r\nq5QgClWpeUrJg8c+SlajnK9TcuQVJFVxwxv5NdUxoJd79XsgrJp0HErVTXbg\r\nBrUtajPNf5OVlcpxam8e/Yy9QSf5QTmxJHPRs6m/Fu5pCFXNl6/D2TlYYsCw\r\n1+U2Y7uBLO5YgwAwF0JaRPUAdBHF2HTFPSWEyIChTUjB2H+RjmCSsXLFYKVz\r\n/BleSLfQvjyy4T4TxjKIfeWEKdEQz+eS+NGFsIlg8cD6il1Dc8bzlk56k8JD\r\nyTG7Gf0wDeRBjPSNhn1vuv76KhPZpc9Uz68=\r\n=oFjL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2bb419da8b7b393c085616b6c5f28a3eebf832f6","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.adcdb7db9.0","@material/rtl":"15.0.0-canary.adcdb7db9.0","@material/base":"15.0.0-canary.adcdb7db9.0","@material/theme":"15.0.0-canary.adcdb7db9.0","@material/animation":"15.0.0-canary.adcdb7db9.0","@material/typography":"15.0.0-canary.adcdb7db9.0","@material/feature-targeting":"15.0.0-canary.adcdb7db9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.adcdb7db9.0_1672935684096_0.0008119484383513065","host":"s3://npm-registry-packages"}},"15.0.0-canary.067af7eff.0":{"name":"@material/floating-label","version":"15.0.0-canary.067af7eff.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.067af7eff.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"218bbc3c439ce9919e06de7d7ddba919c0ab77a0","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.067af7eff.0.tgz","fileCount":33,"integrity":"sha512-K+FM7LZeXX0HfPpACdvzOOkZNLsnSnwZnxPvRheb1d4oBzdV/Ef8azSvJ/VAeWSADwFL4sY44QCKVLTGsOie7g==","signatures":[{"sig":"MEQCIEPQefgN/+RH2UFZWR/wHU6m8NNuuG1jcgTP7bm22r2fAiB0cvmK+zxnsJMSCuCiBsxvwZhsI73u0k4lZpgfAzJ0lQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":573090,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjuKuuACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmryNA/+IYCLy/jYhJ2mWTElROr8Me6sYWm8mtDA+LO+jO+vugUo/xkb\r\nmUO8IM0ChM5zO2zkEKwJ2qKra3MSuaiMwECz/Zb7jlqdLsOefXaW+t190ilX\r\npYHWYV+aMsblUzQU6d24iFqD+bcPaDRsVq+CWiBD0sTxCZ7HXHat9a8QuaiO\r\nfXs98a8F/UNd8E6uHi2IRUbbeC5ZZwoBUuMNtcxWmHHkc008C1909qrLMCTz\r\nVPhsshLo1itMJ1amUgQ5nNhdkj1MV3VKTfrGZdkNO9TGv6XuTOWpUo+CSIbQ\r\n0TecNCvzPlH4lb2ThBVgGSIb7uzGHBjyWXK66vmDNwMmzSghw1WHjIpXw503\r\nfVhUthnu1W8/ENnZNOT5Gm8lHJFEaRm1qdIxHRlAIjVdY+KRiVDgYK/ax35M\r\nHfRkeZm4EzZTXH9TIpyMzdw3etLESeLcVJ5OVVh57qbYFweW8wjQlFwkMxz0\r\nPbmSn7vondFcnGVZgrfiLk4W6Jzx4XdLk9ql1caPNDmQiOViXUaXhT2l+ahA\r\nyel88ifmRTl13RPKiEdVgt57HGUOCUhArcLEvYzy+QCkeUeEDgR/+ohfC6NE\r\nV3gtkGRbgOcW8QCv6uWT0TBruJtwsICagpYMCGcGAeb963uoD/HxgDMpZvLz\r\n6G6CLU+yhdY2Y0pJlz0fyGOu+eQO8I2NRjI=\r\n=KvPi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1fae2c792ff8ce557995a8d5d858676b4355c7ae","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.067af7eff.0","@material/rtl":"15.0.0-canary.067af7eff.0","@material/base":"15.0.0-canary.067af7eff.0","@material/theme":"15.0.0-canary.067af7eff.0","@material/animation":"15.0.0-canary.067af7eff.0","@material/typography":"15.0.0-canary.067af7eff.0","@material/feature-targeting":"15.0.0-canary.067af7eff.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.067af7eff.0_1673046958107_0.08561667239679416","host":"s3://npm-registry-packages"}},"15.0.0-canary.21d1196a7.0":{"name":"@material/floating-label","version":"15.0.0-canary.21d1196a7.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.21d1196a7.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"aeb67340f352073817bc6d5d9a5a7b99555758af","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.21d1196a7.0.tgz","fileCount":33,"integrity":"sha512-0Bhb3zY2TeHL+5SM335uBEjH6CQktGYRDYowO5a2RekRJxlWRB08s3h69AodJzc7Owht6M2ulS2jHtp1lhHQzg==","signatures":[{"sig":"MEQCIH6cFmsBGGdHHUIgpZb5EUZs24R+WnnY9c4KcIwczL9zAiA363d2sTk8JDcVIoRJB6fpLKQgRgLRmvYTuf0Iwax6Ww==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":573090,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJju++yACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpuBg/+LwB/VqTm/9wF+LnxbTGquBps2LTZC+K6EJC26KiWfRKcY6X+\r\ng0LLST4J5RbdruaY5Q9Cq53ypean3axJnjtGwOS+SsJA9k2Q6Wr45Iy+G2PI\r\nyFz/u3fsPSEjKwW26omO0UrnQWHsBkwEJ6tOcqqZaJI4TB5vRmUQzGs+hnZY\r\nCpS3Za7839GJewZTTjQkz+tTcOlan4RwuWZtpqcwirwQ0P9qR5E5U5i3vh0b\r\nbO/xoWjmz28eY1jl02cycr6d7oa+GpPIICT+fi8ikG4PLgd4ajOKKpqd1VWy\r\nA9vsGbp5p2LPEHuZq4bKaxYUrXW3Ye/ZnsU1PhH3OITEIqDl/JlK8DJT89ar\r\nXnY8JJEvqAHqAVwNFcc6UOjrEtY2UOt7Tg1yZZAe6gG1k90Jyc/eCoTkgf0L\r\noTusMfjOYyw3xIjjQZeiq6REwkDCDU8boHQdqYcLBIgJSLX5LGBVMWrjnG2R\r\nMVVIXI2S4XZoBGCnO0pBItkUxi+rkCQfvAqWrhsYkYqJ5r6c88S2OuEOSyis\r\n3AF0QA97IetQ9THA4hA7bdTR4z1ZzUQ2xlcJ/Zcw/phfqL87UL6V6ybvgiVq\r\nbUVi77TCYa2VuUZTL20fQEX/P7MUv7++ex7wUDqdC5XPPTSuadVYNymy/BUr\r\nW1Y2V+Q7P9eNyZZ7iYwWV0YXcCazpSl/ARY=\r\n=wr99\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"361e536c54e276112f021b419f666618a20599f6","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.21d1196a7.0","@material/rtl":"15.0.0-canary.21d1196a7.0","@material/base":"15.0.0-canary.21d1196a7.0","@material/theme":"15.0.0-canary.21d1196a7.0","@material/animation":"15.0.0-canary.21d1196a7.0","@material/typography":"15.0.0-canary.21d1196a7.0","@material/feature-targeting":"15.0.0-canary.21d1196a7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.21d1196a7.0_1673260978481_0.08094873742257302","host":"s3://npm-registry-packages"}},"15.0.0-canary.8d2d8d3c4.0":{"name":"@material/floating-label","version":"15.0.0-canary.8d2d8d3c4.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.8d2d8d3c4.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4b9c00321bbbcd1dd8e0c64b65b0c55978177e0c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.8d2d8d3c4.0.tgz","fileCount":33,"integrity":"sha512-RdlpCX8N4m03JG/qgJHV609u0JkQRAlJqL3sqqto4cg3pEf9fYem8EhynriDHnvA5W2sHAP+V3tXEtt2JPMt7g==","signatures":[{"sig":"MEUCIHd31My+7gp6La76YWPDsJpi168t/BT2h6OC/7SouQIOAiEA6fmon+4Jxviw062Fsiqb4LgL/rmrrC1FeAVkCRwYMj0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":573090,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjvJPwACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmptKQ//T4Oz2wDA1KquzIQ6DzGA9QPRVEs1ATKh8mAnYC/hbFGbYZAK\r\nL9oIVQ+7Zdw5wSFBACRuTbXP3OQTv91aRaQyD8/+akjICdco2eQE2vFs6/NQ\r\neMLGatkqMnIm+UUDI8pFtX13bnC9zcoBSGGKypesksbRhCqGk7nRNCF0S7fV\r\nNMrvQqef1RznEoGp/qdtyzM7ZjRMfagsM6SY0gMLxfzeA98x5P2WnTXxixo/\r\nnuDVDwl8FGVII5QPwdhQWZ94gGYIeZ9kohzC1IsmGULApzcDHazyE/J2dLXf\r\nbi3sBPHAUQASJlT2rEaL5tg2WO756REMhK7SsHOx+v292z9mc953lYLieLqv\r\nseRRJf/hUDOuxJNomEd/1n+I4XNij6YbO4n74itO028q4Qzo7gM7F0RbiEjQ\r\nDXk4JZui4PkFW32DY2A1NckHJtgejb3MkDa6oP0wrlasTN4Zin6+CGQIzQQH\r\nfOJ6OVSEuNNB7HagSTBZdEgwIYFsNZqffpRc73B+DKW2Ct5n0ZJIO3KOnbvR\r\nerA77vrILcj3f/lnRPohClCJvR2NYeU6LKdEZMxuxLXaVSDna0oqDxs3FZOP\r\nBzyKvXlZ/b+/keYrKIfJlZkDqW7k4aK7iNhcffPmjc5vK98MSOLm7D/ge7mF\r\nnStzUBCeEUOWkIJb3IXCvnIFgnoK8oup/xA=\r\n=QbG6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c2df4624468d99280d9dcb0894d04d839fc8673f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.8d2d8d3c4.0","@material/rtl":"15.0.0-canary.8d2d8d3c4.0","@material/base":"15.0.0-canary.8d2d8d3c4.0","@material/theme":"15.0.0-canary.8d2d8d3c4.0","@material/animation":"15.0.0-canary.8d2d8d3c4.0","@material/typography":"15.0.0-canary.8d2d8d3c4.0","@material/feature-targeting":"15.0.0-canary.8d2d8d3c4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.8d2d8d3c4.0_1673303023861_0.1497226236044158","host":"s3://npm-registry-packages"}},"15.0.0-canary.fc6ee6c32.0":{"name":"@material/floating-label","version":"15.0.0-canary.fc6ee6c32.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.fc6ee6c32.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"0a336893cdebf5e3cff69e81fac7f00aa872f1da","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.fc6ee6c32.0.tgz","fileCount":33,"integrity":"sha512-D96A4A5r4l35xCsdbVofSLfwcTSqsyAXqL8CRV282RMCe+Y04+MJ9+M2kz2AYfSbd6Xenx+5fLXvAAiuEAfPcw==","signatures":[{"sig":"MEUCIQC/Vj8FW+n+Woil8C5zdXIJimnnzuSx33diG9k7eiKM3gIgXNd3rxT/Jidq4LnLQrR2CLvLZuVg1Aa6U1Zl3T7hbW4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578318,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjvZIGACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmod/BAAh6hpP3IbTtQuOwMu0b8EHTbQc6YaQWg54O1tAZf0Whu9mYZ8\r\nlneqsxoZTVu+u0cIbcWxYamLPDgxPRWyK05rgqz/lTxBPymC6cna4N6qnnSl\r\n2VGznzKsvsYGZEz2Q8Zb1HYTskr8sxL62L/RMzanGIqx9mVXslQcXug9PRVf\r\nWr5z1dCG8QT1xoyt/X9FQ+Apxe5UDjxmSfo6qWSj/BsG+5tv4BC3FS5410lq\r\ndzAm8iHZZZS7U97oilrLbGVPwokJq/4CT/u1/ZUpfjQtkaIfHKtvXf2fKmPV\r\n21VVfIwsVtxTMZVhC1aVC76SGKlO2Zv5mHtLB7qiokVO2CWE7BA11B2zeY/d\r\n9GXDt4PRPNgfmUypQ58V2GCfZApd8jbFBzH88ABo0iaorxs833ZZmOVamhn8\r\ncBRxV20qfkqElYOFI8hadf/p4p2QIT+eg0vA/qxZXLiKPktgquDMZihI7mmM\r\n2AVnsQ0P+UaFMxwWVrRYbh9EIWtX7GT0BUfdwyzqFD/lA7YL5Mqqk3i1NwIs\r\nKEnuwfGSibe8uDVY8r0Li8oH2hwwQwO9w7nQHULQ2ZnTn2RNb6nmotJkCs0c\r\nr/F7keUD9SxF6ff4/qTKoXrBl+JDhlAoi6XguWsknEHKMGTwvRcJOjhbgfSh\r\nc2h4S7KPw87rZu86nRkeBcKsHOliBDmeUNE=\r\n=WwTc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"225aabdf74bdefc3d2f70f268ddd04c501a821ba","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.fc6ee6c32.0","@material/rtl":"15.0.0-canary.fc6ee6c32.0","@material/base":"15.0.0-canary.fc6ee6c32.0","@material/theme":"15.0.0-canary.fc6ee6c32.0","@material/animation":"15.0.0-canary.fc6ee6c32.0","@material/typography":"15.0.0-canary.fc6ee6c32.0","@material/feature-targeting":"15.0.0-canary.fc6ee6c32.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.fc6ee6c32.0_1673368070081_0.6939515357068515","host":"s3://npm-registry-packages"}},"15.0.0-canary.73537ab0f.0":{"name":"@material/floating-label","version":"15.0.0-canary.73537ab0f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.73537ab0f.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c034a7c09ada40d24b8935f3786682d472f4af27","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.73537ab0f.0.tgz","fileCount":33,"integrity":"sha512-T5XXG5hTVzmSQpV0k1yyn3o5zampn2z5T0y0MUXt6vJwKBMQubCrlnkEDeVqvKe8izuR1z6Ys/OBHsfDPXYdUg==","signatures":[{"sig":"MEYCIQDiA2+QBNJCm6312Qv37Us0rId9Wszce3abp/eW8sXyhwIhALuQM/vcazfq+0AgZaZRLZgh22XcnbifrUMlumsBPPLf","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578318,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjvapIACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqzjhAAgDqmxujVXG5hZ0+aFpX8t5evTaOLtaXnfBuIJsbRSRkuxHkJ\r\nP6Cmb7AotasLTzNhnR4N3gkmpTswnQheb3rCVWJlmATB1dmICcwZGzjATemh\r\nNDNnwuDkVeMpiU6M1CxoWAZEP3kL/UTy2sWl1+Vi1Dr9Rnq/Pm2DglFkT7H+\r\nMRhSbgJHoJTNkVV+wZfiGZ1wezbGCRPQht0NMn4jl3GkA2inDTBNIzzHy0N5\r\nhXzVpEkMEOZaBr4Lpz4V300OPEeu7B0kQfbE7K9HuT9KSC85NhRjFAGlrI/w\r\n83+o+Jqm0ITb+6lPOBrzMKs5aWu3OQv1ZFCVXimERDyovSObhA0fyRo6Dqhl\r\nzgfIjKtNLTQc45/TkuW489UvE6Jb55txg81QkY+m+NDLIPgZ7ptjfauBajGh\r\nxIhOzVa50zQiHUmDlBvGja0cPtuJZftXOwMwg2qvz68v/J1ECa3yrJJ/j18T\r\ntpIoJZOFBq/5Wtwh3IFfEKyzQz29XY9FLvPXufdgKPOq+mYxGO4yPnHjl920\r\n0EnSRg0U6993kO1IXl6csFHbE+5vZQ7KrlbNPjAI/F6IBJ8SrhOA8BGZ0mgC\r\nZfn8ZKtmZX2jaazA8AhN+DfnJK1QMZroIYr1AZ7p5o4ToehC1dfSPgON2P0/\r\n++LApWsuXHTIs2Zz1AqSzJfp8N/lvnFaocA=\r\n=7Sjg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"cb3a480e7be3c8c7bc8f8ee0acf1ee8145f266b3","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.73537ab0f.0","@material/rtl":"15.0.0-canary.73537ab0f.0","@material/base":"15.0.0-canary.73537ab0f.0","@material/theme":"15.0.0-canary.73537ab0f.0","@material/animation":"15.0.0-canary.73537ab0f.0","@material/typography":"15.0.0-canary.73537ab0f.0","@material/feature-targeting":"15.0.0-canary.73537ab0f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.73537ab0f.0_1673374280502_0.882999725716944","host":"s3://npm-registry-packages"}},"15.0.0-canary.684e33d25.0":{"name":"@material/floating-label","version":"15.0.0-canary.684e33d25.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.684e33d25.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"69565b508f4e9d19a9be589ccf495596c8102a07","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.684e33d25.0.tgz","fileCount":33,"integrity":"sha512-f7TPp6bKpGvV3sYYiZHSGlrixXKkXXITW3Esp7KB9jRq42c0H82novmdwvY0eTef4ootmA2JEysr78KQfHBUPg==","signatures":[{"sig":"MEYCIQC84k0wfMTjT1VTiRVstYMkht9ZJZqxok72jBSgfSUXVgIhAMAYEqAESVQVMGbkgcF0PtrKpsmxE8A965p/Z+ULVjmA","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578318,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjvbn+ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrSmw//X4cBW3szHGh8t3r1PkRHdxdrO/HmLTRWbWGb/FnepPwNymqH\r\nAHrFr+10lwbVCLGWWX2teYwhH0aBSWR06J80X9I02UFeNf2VbDBsauE9HwoL\r\nfQDYLPl67K71EbvkbgEGRJHG/Zcp241l30YE+EQlI5myeKpgj3yxeEQrw2xx\r\ntrMuryAV98J1GRxAotBY9szmZ1csimBuXjV9vausudAFd27S1D2Hs9E3DhFS\r\nk6Yqub9F8GpQvSLE6uZ9ghyXvoW4ZvNdRkV68qlV3GWSE5pj2Ct8Bkb7wBKy\r\n2CYrzvPLeq2/YR5PaftHIBNh/pf8zaP0YDJHuASMKi6aO6PmsCvUwg5hotqF\r\nwFS4iHuiF+NZRWAraF7QbsHMOqpSIaOUFiLY95wIGkQXl60BfM7ReRmZUx3e\r\nss+qC3hCvMCpkCrUmPNc+nsM4d5Rj+ZK4VTN22lSp28xmbni9HO921nxS3j0\r\n9i5XflzPk6RLhuoZUnamtlXOL3NAQRyDFZzflcBHZwF2Xu+U1hdN26yP36gq\r\n64d00ZFTrHLEeuhcndnw7+N1WLw1QeL4+/I1xa2/1FxVE5u5sQybUaL69i0a\r\nqY5bkJJA3YQORVv48nx6RCQ4WgsBa1+213pPDTlR4UTtz8aZwJ0nuxh48ONo\r\nmVZTCuiXJr+1BPYTBUoqsrlG1OM2aOCm0Ks=\r\n=c3TF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"518d26a1e091925c1b3a87f4d4f4dc828580a863","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.684e33d25.0","@material/rtl":"15.0.0-canary.684e33d25.0","@material/base":"15.0.0-canary.684e33d25.0","@material/theme":"15.0.0-canary.684e33d25.0","@material/animation":"15.0.0-canary.684e33d25.0","@material/typography":"15.0.0-canary.684e33d25.0","@material/feature-targeting":"15.0.0-canary.684e33d25.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.684e33d25.0_1673378302105_0.878107521316775","host":"s3://npm-registry-packages"}},"15.0.0-canary.0e89aab6b.0":{"name":"@material/floating-label","version":"15.0.0-canary.0e89aab6b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.0e89aab6b.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"558b54932ad1066afc7efb7f46979265043caa63","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.0e89aab6b.0.tgz","fileCount":33,"integrity":"sha512-lcHG6oyOQ/zLkQOX2z7AIODXAX9DjeK/c62agiGBcG39wTl3jZIQT2kf0mmjCQjDizN2eHwh/HltTM5JlAb1Dg==","signatures":[{"sig":"MEUCIQD2mbg+2/Xv7pM7i8+7hdjw7np2M+v2z44kwSDulnoqlQIgGUyhT5X0a275+qwjSOU+VhjpbEzqWvcnHr0D5jWk2Gs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578318,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjvuETACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr+pw//UtmBGziCLjatxQS+L4ZJYtx9v8hSoUOwziUL50pPeFCc9BqV\r\n0gOHBCyrEk+3hTZXSoKCCepLiag22XlHLWssmH5nZWcxObgdVQ+D7n2YxChN\r\nGis7ERilYJnNIzoum+wouluU1NWKYBO8SoKaBfklvCn640BBfSOFr4fKEInr\r\nagK/4EMOQsZ0nx9PtQac6tUfVIxUvH3+P4sWcI+tM0UioqSKkgs5TQNmCpRK\r\nAQyVBGzfwy8j4hEJpWonEegt1tdc8/EIl5NKQRfx010Bmc0swVZ4fzoDAC7k\r\nQV85Cv1Q139SaubuJopxgtf4TMTzAEU1xnDD8TBzcfGbaacnFe20ruFdour4\r\nFio+F3rI5E+WQK6s1PZgxLqWessqarT41E6Sunnfn5aEU53IeGmWjnZnCd4a\r\nWZLIReEny00MGnXh6BS+/aIdfsGFbmC7FQgwOjG9lGI/To85fTDKjELWxSDi\r\nLsY64ZeYy1r0phYJz/J/pbIBDOiK3rUH7uT9rMX7vz//14jZ/fPtyKCR1Tai\r\nzWySusHZpMyZLk0VGg3PNneUSh7o8PHYp4PWzfVnn1gIzIq12FhM5s3jl/dy\r\nVyTTGnYDDopWOtF4y6s54UEGQKkmdgsFsOZeLbfCNcACfitYw7tZuOiLzQDA\r\na67iFUSHSiTjQmn+zmWSbTAyxJDxaM7F2yE=\r\n=uBio\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e4a9f0d636d7f4d6c0fbbf49a7016627715eb3b6","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.0e89aab6b.0","@material/rtl":"15.0.0-canary.0e89aab6b.0","@material/base":"15.0.0-canary.0e89aab6b.0","@material/theme":"15.0.0-canary.0e89aab6b.0","@material/animation":"15.0.0-canary.0e89aab6b.0","@material/typography":"15.0.0-canary.0e89aab6b.0","@material/feature-targeting":"15.0.0-canary.0e89aab6b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.0e89aab6b.0_1673453842826_0.6044117777908828","host":"s3://npm-registry-packages"}},"15.0.0-canary.b0103d10a.0":{"name":"@material/floating-label","version":"15.0.0-canary.b0103d10a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.b0103d10a.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6879c94ff32541b94a109f823967ae93ab21a2e7","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.b0103d10a.0.tgz","fileCount":33,"integrity":"sha512-xrwLlWzcj+o3+RJeYvBz7VGG3c7q3Z95RnNoUjwMuzfIF2m2TYzCdyzDyWbb4deuxNvaZXynAaAbdFsoz3CjYA==","signatures":[{"sig":"MEUCIQDdneNUEytuxTJFc+F+dZs2Wn3TRxD2+jz4JM8XZZaC7wIgJ6E8yjncuvBGs6tT36EBT/ryjyetdf3866H+zihW+6k=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578318,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjvwoPACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrxcRAAnsRmSKRx3Hpo5P+BCpbeDzBb1GUKmT46clfm2sp8FlHkEXo4\r\nbCpzh8S0qqmcIUU2CS3ojifytVTg/iy2upk/EO1QMnM/2L35zqjV3gfksXxk\r\nUVdMqkjicM32VjLDoLuuPHIBQOIR0T5HZnP4kgTHYZhc2T4ULBTQynZXiPnB\r\nRhoWyiLZwAVM3flLrttr5o/gQaxAuW8rBwgmJx61XYPnYIO0VUnPVmMZHkxf\r\nC4dQaDVDAAjZvMp/BXjj6n2IgkXvev6aSluXjQk3wY+16g/t7N4GYGauyl1c\r\nE5ltfhetH+TDu+utx0bnS8CcNggtwt+qPY7PFpD6Sxi6/ednbG1nSQl5Lyju\r\nxxfaaB570pjFte0r4FJDHjpyWHX2SrHZLFGmwzNFbKaHE3/kZAS86Qjt933M\r\nC04lT+vRVsF5QXnqXTXk2PiuDfoZtaYkrpphb1j9cI2GAsxR18xJVDPFvXHa\r\n1Z0e+gTpVtJ2MEINxbOTamPL7HfYmM4Fop+fU/J9yXfdByqI1urD7GtX7brR\r\nM1u2OkIPdQomAcx1HWrtgpSNDcWVz2WtdQHqgRs8rGcwNmOv3QDDEMoGcxBg\r\nUizUwdnhm9FElXeCsRd1o0hhyyXb9DJKiQot3R/Qwdmy9n0IWwSB/Y+gL3X6\r\nnQ7NudirlAdc8TX8ZEUwBHeYSNiCwRx74TY=\r\n=WUaL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"0e133b89a4afcc8020dbafdd4d22c734080d2d17","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.b0103d10a.0","@material/rtl":"15.0.0-canary.b0103d10a.0","@material/base":"15.0.0-canary.b0103d10a.0","@material/theme":"15.0.0-canary.b0103d10a.0","@material/animation":"15.0.0-canary.b0103d10a.0","@material/typography":"15.0.0-canary.b0103d10a.0","@material/feature-targeting":"15.0.0-canary.b0103d10a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.b0103d10a.0_1673464335667_0.6462099275326565","host":"s3://npm-registry-packages"}},"15.0.0-canary.50e7a5312.0":{"name":"@material/floating-label","version":"15.0.0-canary.50e7a5312.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.50e7a5312.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c264cc5e7bbfe28affccaef11f02291206d28c90","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.50e7a5312.0.tgz","fileCount":33,"integrity":"sha512-WgFAt9bOE+N6ozIasMUZIj92DEVOzonCgnhBh4tb/SZpHPoxwNEYYd1hW1SSJBFT1D7L/3wiVR4ZICU+9TroAA==","signatures":[{"sig":"MEQCIB5yaj3nnj1SWPKddZu44HvcXy/OINhdHpQMcL/IzomUAiAsH4GXA3+0tbkTddG6iS7nm3SBXuUNVZEYlZ/PxrcG2g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578318,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjvyHkACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrsdA//dTBm9/EhXF7TnT5hwwczn+rAIARry/OxNO180Tm61gVqe8Lj\r\nJKYiS9fn1lbgwRKlPeP/RBrE6hZDzfimnWYd+nzPdS1je1eaOFMqphMUrvXf\r\nRQlxgiCHrKflDX/5dpjf4jzlPE6q0D5XKoY8Mj3RknFjQbW1mdX56PqbqlHP\r\nhQ+HCu/VI6JfOYh7fi/JuEoSrPBSuUXqjzvR8chLsKD7qV6Pt6FP0JdMD88J\r\nIFuzPw8rxxb6xcDLGiKG7rurfmK+4XuF0Xcu0cjWv+R0DCRtURik55ZgpbyN\r\nb36MNI3XaG6fLhUYtWF1oh+0cNjNhzzzALgNNrx7zt5qFKUjNaSmS3GQTZWR\r\nHnEX2//YHBRKaLH4N2U7bj0c17V6Hdkd9Fty1bf6ctk2pHqePcfCp2Xjropq\r\nY18Sei+k7g6J1WjrPchtqQ8gsiWc6KUuf3rOgnYxLaMwrnO3JHfn4TK4zMVh\r\nIWWeBqnMN8xFCSv1CXwIeQteGzgsXtg8voWYz/EiyLwdn9wh49A3BI+cgbfJ\r\nSUoXgCtzhY9FrlOLTaPews8pf+8zvuBBGMu/Ae/v2uEFTqLYHZoWFn8LLLbt\r\nyLz+NFxLl2f9a0kDW+UgONSgqZj0seWEbO8I5BKQHQxNt+qKlw4VZnkCjd96\r\ntTT/fWWrhPbF61R3OFzPatWmKa73l8HB1ZI=\r\n=89Ha\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2d4b8df3edcb9b5e9fd8d8b6645dc9519d92f376","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.50e7a5312.0","@material/rtl":"15.0.0-canary.50e7a5312.0","@material/base":"15.0.0-canary.50e7a5312.0","@material/theme":"15.0.0-canary.50e7a5312.0","@material/animation":"15.0.0-canary.50e7a5312.0","@material/typography":"15.0.0-canary.50e7a5312.0","@material/feature-targeting":"15.0.0-canary.50e7a5312.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.50e7a5312.0_1673470436405_0.04454039282047706","host":"s3://npm-registry-packages"}},"15.0.0-canary.202823f54.0":{"name":"@material/floating-label","version":"15.0.0-canary.202823f54.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.202823f54.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"dadf7c0d285ab0381361bae4985f39095db8fad6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.202823f54.0.tgz","fileCount":33,"integrity":"sha512-msm6GD5Xx7QDRjl1zgy3D5DeolGV7T5EA4U4J8wTIyGzi3wFJ8EIG1Sr3EnwRs7i7ahUHlDhKTSdcxc8aSQYyg==","signatures":[{"sig":"MEYCIQDab2t6R1U6WIX5dxIQE0iFrP2NOcIDdpJqD2go4HoWGwIhAK3o+vqy3aujmeZE/iTBn8T0R0cbiv5ANFLDblPEun/R","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578318,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjvyuiACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpqIQ/9EsqhX56YDiahyzcFG5sHz23X1mzpg2igjJw319FwI+Twl0xs\r\nD9kcMvMxMglJeH497I7NAfpLjfLq047r+1aptVXe+1LMIM0ADqaPJkP4vZ3W\r\nnd3BWva2tmkgYCeVWGGXltv6NbE/GThgZsO272S3tQzFZ9KFHUPXxD8Xu/VJ\r\nM/FJJ/m4Mwxf8cq66/q/SE9YJAkCJOivxDDa6KhqvX9d/bwZTEM1ZgocQQG9\r\ndu4pgb24A08NUKx8Rm4KSjSAExB0vok6Ocnjj/kIFcWUexf8Ey5f95zed5xq\r\njbhb3jemn965hIEIFeQ55eoEj2UZLEu6S92p9qSuviugvph1cBDPcM4Z9LM/\r\nAtRz1eVCL9VbEMG85xMhtRQPj2ncl3KRSpcIQVea7v75/byirvsy9vh8EF7P\r\nxuaARkyeazm+Z2fRIxpg7IP4Ais+B8KVPIElXaYLEuV8Ap14QntBQAydQ7tE\r\n8GEhOGVtoBadcFOee9CJ4NdZcMughG8YNdRSJhVl8DWrsbGt3fUAwQtQ5ld/\r\nfi4YPoW5PnTfRqONzKsb04vLfiGZ7sg1FhqA+2LN6bzhkV58jnfsaEEfU6NT\r\nthlgb4wTw4d/E8rEusJlXMmKD3928C2qrbjpyUCkov2KdeQdkGzkPgB9AhYs\r\n1QyQtB7kGoHzJZCf28YpcVtRGE2fEaD253g=\r\n=gEI/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"6a4dbcb0b4c7d96a85ebe59a5ff66d2469e177a0","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.202823f54.0","@material/rtl":"15.0.0-canary.202823f54.0","@material/base":"15.0.0-canary.202823f54.0","@material/theme":"15.0.0-canary.202823f54.0","@material/animation":"15.0.0-canary.202823f54.0","@material/typography":"15.0.0-canary.202823f54.0","@material/feature-targeting":"15.0.0-canary.202823f54.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.202823f54.0_1673472930670_0.764111765137973","host":"s3://npm-registry-packages"}},"15.0.0-canary.199fe2a2a.0":{"name":"@material/floating-label","version":"15.0.0-canary.199fe2a2a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.199fe2a2a.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3ae8d0e13456b67766f0dd9b28be7aeb382d0b1d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.199fe2a2a.0.tgz","fileCount":33,"integrity":"sha512-fpaJ7HXvqvVQkghkeDeBkhEVXrM0dFPkk1GY+qLC4fcjnOpxRIdg3AK7lRfGJVckuHPuz75+qVUmT3XCgzOrgQ==","signatures":[{"sig":"MEUCIQCzBefnLbCNk/lTqTwMS1OogH8RpmLz6ttjMgsWJ5VffQIgI5bHH11outCoMbqMCC7Nr7qefrDjM/1T56wrUO0bUcQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578318,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjvzBRACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr1pQ//TdhfnP62jcFarBdNB8J82NfoMN34IQLFotQIucQhs0YTTM5L\r\n2LYVLSkZid1odoQCHNgEyMq2i5ykOcNGV2MnouUfc7g7JwtMs+ICl29HC9kl\r\nr/aJhbUQRSRzobITmjR2ZRvpr9j5Nfsjt7Y46f5fWF/4fPz1XCrhIONQ9dNk\r\nmwnK/CdcmFXvSLoho4NZNRBXr9VJvTq6dZfYBwcm9T6qG8pPYf0lf28GIZXr\r\nudT0nZ0ZaT8RCq47moeK/EQE34W5OhGtiftNKNHI1GwC+1SVH/8bq/7BLjBu\r\n9ORDneczUhFOd5vSbcDkagGzgQjOBvI3Dc07Gb4SVuuEgtXzdqfisJta20NZ\r\npRF9GKi93iKu+eP9uhktPpB78mt5v88aFFJMB9PySZOxo9/HZhnFOoHK6EFw\r\norq6AiYoucXVAwc/uZJO96CD/Pb1lQZAzF1PgCwkCpHC+L1FfdwFSL8XJB7+\r\n9GoPOct567HzUdmpB3/qBw7GJWc4tDOQAil5wCK80K7ID2Nddy/g73+b6pT1\r\nrs9323JeiO1lj5SObmpOVmx+lhKFFyi7dPCwMUuPWKFu/+e4RZddmRTy604t\r\nenlH92c3AXCc/Zs4da//ErdeIQfnWATYYjptAq7ttUs31s2oc6ViX+EySiqx\r\nsRxIRnWNut1TlOGV12rvE6id3K0TtZwVYDU=\r\n=1dop\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"eb39fefbc3ca102a52db83ad19b42f1a2b52ecd1","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.1+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.1","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.199fe2a2a.0","@material/rtl":"15.0.0-canary.199fe2a2a.0","@material/base":"15.0.0-canary.199fe2a2a.0","@material/theme":"15.0.0-canary.199fe2a2a.0","@material/animation":"15.0.0-canary.199fe2a2a.0","@material/typography":"15.0.0-canary.199fe2a2a.0","@material/feature-targeting":"15.0.0-canary.199fe2a2a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.199fe2a2a.0_1673474129337_0.7152923724698881","host":"s3://npm-registry-packages"}},"15.0.0-canary.8c0786d6f.0":{"name":"@material/floating-label","version":"15.0.0-canary.8c0786d6f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.8c0786d6f.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d4017a2feb81a041099ca91deaccb9bb892dd9ea","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.8c0786d6f.0.tgz","fileCount":33,"integrity":"sha512-IOR/eNIVh5+cMOWDm1NfD4t1szQNUMAp6Nq7x8LuoXlA6f3aLf93t9qFMMNBZDzqDYtwMt3WUOvfWB3EZKw6pg==","signatures":[{"sig":"MEQCIAwTJJBpdAjPQ1q4y0aQBybSXm/md8vm6G5LSPq0JDCbAiBoXTurGPpeeQRmuTxLrPwk94nvzKqWUGYXKKRnDqifLg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578318,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjwBrTACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp6KA/+IUUzfNDwROjJN9s2/IBGbow2VXh42m4M0jK227H3jrwnBOBg\r\nCsAIg2nrtdteTI/CJ7Yq0f/XQlrPJYJPM8K9jQz84JgzooQMyb64K0Y8UHWK\r\npsyXsTU8D+tpqsdITMuSu87G+4hPhVhDExJZ8KGO8WVhigqQVLDLzcLUVdIO\r\nexUDbBNOwSPSIzfHXtLprWHmfAFhM9v6GwarCPthrj03OX4MJcCU6EZGsKzw\r\nmV31OgD1/MUAqWB1AmWdy6N/7rE9c2gA4+O6+DPbTMdMb2qxNv6t7KRvvs1s\r\nmhhreZrw6TdPBf0T9vTM8P9rGuaqMRNDkzYBmFrXKtwrjhWLlQry4mxd5/tJ\r\nOAuRGdyLGnp9q1ZLp10bufpNYV5RR4FROtIlBrFB+FIUB2ZNz+H1ILxdDRY1\r\n+Vs1kLNl9dixJeIx2SmiMBNL79xWkHU7gIBwF61MJovwLq5HOguOFw+mpavY\r\nGkxZgdFZHkL0cJUF/nCyYfZGhW2ApNw2xOVCHgjh3Mvl/PavdyA8AetX9RXJ\r\nwCdTJTa1guwb01JUlsQ+tyc+nGCYDaxhdfRDrrG4Q7MV60AyyD3+X+2L0/xK\r\n40cEK3L+agd9NQekV5c3w6TH7usczNZ0Mpq6oFVHlpF887EcMciRBLU9WMzG\r\nV/SWMHSFT9mGjcafAY4naixfHQ4nDR2ALAc=\r\n=73dP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"9016794346c3c3cab2cf31154ef6a35eb5598994","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.2","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.8c0786d6f.0","@material/rtl":"15.0.0-canary.8c0786d6f.0","@material/base":"15.0.0-canary.8c0786d6f.0","@material/theme":"15.0.0-canary.8c0786d6f.0","@material/animation":"15.0.0-canary.8c0786d6f.0","@material/typography":"15.0.0-canary.8c0786d6f.0","@material/feature-targeting":"15.0.0-canary.8c0786d6f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.8c0786d6f.0_1673534163031_0.610364232863889","host":"s3://npm-registry-packages"}},"15.0.0-canary.8a74f7c6d.0":{"name":"@material/floating-label","version":"15.0.0-canary.8a74f7c6d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.8a74f7c6d.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"efe93c3d423e49636b7b0cd5a968219c214b2edb","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.8a74f7c6d.0.tgz","fileCount":33,"integrity":"sha512-+D6SNlBuIt5KDm+RWKZtjWOzzkN4I/OJUrsJwNk5S0JuIDs9Ch7nAf6wqiTwAIsPJe5gG9Mmafm+pvxCOKD/IQ==","signatures":[{"sig":"MEUCIQCFDe5GIsHqw6o2C8GVPD+Thxn9YIAqDXs/PJfTi/GTVwIgQsBKrmNV4KurFvS0yZ+dRSDWaSc6yqULIjwxUfcvKuw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578318,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjxvXiACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrG8A//XKbHWsy49N7Nr33JQ7pm2pNrk2MUdshDnadNk780tqRPVlqn\r\nVHWF5xQ2NOsNkFm1e8Fo4izeWYHnt4zmrqNiEr+cp8YZ3E36j1zLy9hpJ8rG\r\n6fMaJ4UK49DFFeMOM0GXB2lYrPgA9sbrFMEptjbhS9kjacUQVr57ySNBNkUS\r\nvICJwZArMFMqMfKnfZFkP2AfpI2qWxk4TbgJZJC3qKi69BfSp9C3Zdy8f1mm\r\n1DLskQWQwaCOmhDIBqF7l7nL8rN2WztAtm7R5X+GHMbSqOFC4hFa9dnRPIH1\r\neHNaYQZGPGcUU19Y0XJIPliZ3Rj8goVnBLt9rFA7DlTCjcFQls1ZkEyUMYIL\r\nw1TIotYwKe61dq7rXU3Jj7YLb3d9i+7474i155IXVP35FtW8Tn3a2JNPh400\r\nZskxH0z37u4otdyIQXPNILT5SatNyLE6l1wce9VUoVKDbDPh+1hpz9sh0s/P\r\ntTvgxr/KCXtq+RqGfraeg2gqPYkEkQ5cdscT76m4Akf4nMj7mrenPKJEbVsZ\r\ndocvquNy1JPsCIZ/Md8wTDYdY9iE7Dt/PTXiIHspeYdUtRAwNKC4e8/xL8++\r\nPkwykkdr4AKj42bYcs7h5v8oVAOfjbpPEIg4rxwGu0YtorDO6kr6GfA1phw0\r\n9OeYHOB9fkQhtZZpLSM3eezIdHoQ0mL/oL4=\r\n=bmti\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"9c676a1e4329c32508a9e7110198a336dc704f58","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.2","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.8a74f7c6d.0","@material/rtl":"15.0.0-canary.8a74f7c6d.0","@material/base":"15.0.0-canary.8a74f7c6d.0","@material/theme":"15.0.0-canary.8a74f7c6d.0","@material/animation":"15.0.0-canary.8a74f7c6d.0","@material/typography":"15.0.0-canary.8a74f7c6d.0","@material/feature-targeting":"15.0.0-canary.8a74f7c6d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.8a74f7c6d.0_1673983457862_0.5655724488511944","host":"s3://npm-registry-packages"}},"15.0.0-canary.b4687fdc1.0":{"name":"@material/floating-label","version":"15.0.0-canary.b4687fdc1.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.b4687fdc1.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"37fc2f5685d32cad9afcb46035d9797dd775fe5f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.b4687fdc1.0.tgz","fileCount":33,"integrity":"sha512-lblVHX/DLRlMNopRUakVP1quiyzGmfxAGLHfHPRCH0sfuD1pNYDgAORc3YdITgxIlPsZ8o2QD5gvPDQcx5XJ5Q==","signatures":[{"sig":"MEUCIQDf+t7QYd8k9BxqUC/sq+mDeL24S6YdgD78scXo6FA7VwIgK/cT/Hs9qpLsd33Wk9qkH2Fq97Ls30aB4nsTtQTG1is=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578318,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjyZ6xACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoElA//SFoneTlLcXaymDW0x73L/ujISkoY4h1w1cfH8deeiKcHQZO4\r\nIwrVi4dfPuKWxkM2U8ceUAF4oet8WttstqrMI8JLeoAo0rjgzjBOwoVW9ony\r\nxyWJVb42ckyzAkSdl/LSYGdGbZO3SqV5OkrhIsRL5PPsuLzunw7Y1hH7NB8z\r\nhfEool7F4BEy6VAM4y+tUJi6zmqyQFmrvzJUbVVNm+d21ZwbSYtuh0/2lX1g\r\nkqc1QzQxuCP4/vUT62wbpwIALVWDgapfunSYGfkQD6cBzhQKC188rVQCVv43\r\n/EIIv+Z5rdxZQM5yxa1PHT/S6SYP98Fe0BLYQ4HJEtFb5uzTs6jDGudDz27G\r\n61kHEbt6J0GJVIN8Px3qMcljObkOcnyaFjjyUF2z+v1B0iUCylN3V6wiZXqJ\r\njWw2unoLEZP/TbQTy4EJ+kRp60444OIhBixnKQfvP3THy3T9l1xGEamox8e+\r\nENrs2YIJG8F0pprP9KjUmdwKx2Nad+Ym3eGsVUeov+nddiM1HK3aX820z8C7\r\n9iUrBXUqCtzTY28aL6e2yf6X7TZElsWU0vPBCUnZ0XGnxKN2qXAHDxj8n7TY\r\nAu/XhXb0330j36bzQiyQv0ZjBvgfQzIS4IeRyP6kNxfgxpYg451OTJJ900ij\r\n1ak2s59Kl6FcZyjMfhC+bgrmeLRmL4+pmuY=\r\n=Ab6x\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c9ec43c7d66a73ecf591f982a42a582e639a50b3","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.2","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.b4687fdc1.0","@material/rtl":"15.0.0-canary.b4687fdc1.0","@material/base":"15.0.0-canary.b4687fdc1.0","@material/theme":"15.0.0-canary.b4687fdc1.0","@material/animation":"15.0.0-canary.b4687fdc1.0","@material/typography":"15.0.0-canary.b4687fdc1.0","@material/feature-targeting":"15.0.0-canary.b4687fdc1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.b4687fdc1.0_1674157745645_0.3791698057110253","host":"s3://npm-registry-packages"}},"15.0.0-canary.b836b9892.0":{"name":"@material/floating-label","version":"15.0.0-canary.b836b9892.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.b836b9892.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9185e0d06e2b351b3ef26dbb8628145fbb7ac2aa","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.b836b9892.0.tgz","fileCount":33,"integrity":"sha512-qIDZc/aHPLNzonVPkvTTHlTEjh8dGSK6vBuPFEdoEv8hmcloxggFy1ue1cp6tMfAh7K+tlqvfYc5bJ2S2odsGA==","signatures":[{"sig":"MEYCIQDR2ksOE/OQGbm6zfBwuPoept5hS65IgT5crcn2pB40hAIhAOT4RMlJDLsssy+kKSDkZ4LzcDI9YeAzpAOFf97NtBbd","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578318,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj0F4CACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmpftw//WNFMStNlhyau+0VauJfvaCDAN8Zv59JuUEIdyS3hdvL8wd7m\r\ncJ0Y0vOsoa+xQJajI0Bxhcz0tcwKkctMu+F0y6jMSqdUjVYHgeiz3mhZek+v\r\nJ3elE+ZEbtnkHzNuxfzGVE6zF0k3vKO7Q2sprLie3/WKjKR59V5qwf+YumtB\r\nfgPjPWGzjfgjNadJyErpiLKWFSdETLgUAFOnMVr6nMhHT93PwN9fSStQwuG6\r\ndLThOLHLus+VFKSb+6W3m8OSYaNP39ZpEpn70eStOi3pZLtsAt2cbPyGo5XS\r\nvsX938vqUGVSNprRMkV4ZLs5+KJZPeEa9PEIld+nG1KhUP82UZOBgArK2ndo\r\nfSah0v5XgwgaHPOzgWToiL8K32jWrDuPKJeGEqO7P5omBuPAyHMTQN9noS4O\r\nCxShOyAx9dU/V6GA3nwIiHw8oyuMfjb7S7bVJMs78+QcJMQqKXdWouJScJrE\r\niY5JrdDdi0FDjOt8xPIB7Ww2+lP41mT61wZcdcvcYXMX96vTRpUXhGx5qB+m\r\n+q7YFE2HP/21y8qSMiHU2JozTimJNvLbpwVtWNx8VTrD5gMEfZ3aPGDoYDzd\r\ny5isDQwQTY1yj94Ra/hLsSDeF1UvAggHj6KEYHNXfooN2MmG4qHYljcrbAzX\r\nqmry7ZORnzPX1EX6XhpiKczXizos/fqwDNE=\r\n=DeXq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3a9a0b2e64227ef1f8979cd5b82be3767b100551","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.2","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.b836b9892.0","@material/rtl":"15.0.0-canary.b836b9892.0","@material/base":"15.0.0-canary.b836b9892.0","@material/theme":"15.0.0-canary.b836b9892.0","@material/animation":"15.0.0-canary.b836b9892.0","@material/typography":"15.0.0-canary.b836b9892.0","@material/feature-targeting":"15.0.0-canary.b836b9892.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.b836b9892.0_1674599938164_0.989813622454057","host":"s3://npm-registry-packages"}},"15.0.0-canary.e8912fd37.0":{"name":"@material/floating-label","version":"15.0.0-canary.e8912fd37.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.e8912fd37.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b61d25fd9f3af91db8e8edfdaa62e98c34e05af6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.e8912fd37.0.tgz","fileCount":33,"integrity":"sha512-i7k9z4dfYiQ++zpjuL6bEwXdJPdR0mzxr/A5TI9IC26M2Okp4J4lQR220sPj8oCftFOX5AjLB5apGyPM3XIOWA==","signatures":[{"sig":"MEQCICsLCDx4Z+FVvd0cHHNxrfBmwxaGouGOEQoAted0G/LCAiBwbKOF7ZgI10ycEmsIIrKb3f0ohWPknzRmJeNdg6DX3g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578318,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj0saLACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqNsA//cJfLYv2oK/v+2uP0ZCubzmZ5iaawUYCApvzt1EDMkpfkKIr+\r\nG0ncE+eLwO7Hj1YSl/ToIJwbsMb5+sSZPNiA2b9H+8XUAsWPJ859u3rHpZtx\r\n02q1VUWEGEaOx49VUAuJVIFZziQDhD6Hqq9ifPJQf3wNAzgjH+mLfEQMVqEg\r\nP96Z0JWJaqt4pkSiB7VVlzcw9uSMl8C6mKobcCiO2p5qLzzyL+ORRDfTtxq5\r\nu5kNx9Coz9nHTjFW8QXqoBNCY3TL2NytPbY+Hel/Z7cBtXeEFWUCIMm0olPu\r\nNZJll1B/52rBwv1O6lNpLd8trad/9C5gWyUwDZCGXFptn1ywqD56XarpZKZb\r\nNYulCLO+WV7BJR4+y2OHs+SBUE4np/59vG747bjW/i5IkTT9quu4op3l9mBg\r\n+PH0EUvvyTdzV/SuI8EE1pUPkG+UgjiuEfFwXcOkwYDts9OfRsXZM5nHUZFM\r\n2b9GR6otvrD9Gwf73xG1R0yvFcarjvlMHO58YwEG5qXR/Hngp1cHf9fDrfg6\r\nt8aa2Eljsvplg+ncveCJ31blOiprxhUCzZrwV8CEcyM+x1ITgEwpCwmtC2mz\r\nuUFtBZV9WqyOI2+CMeHYC0QXuNX79n4V0A0ueam/eWHkx7wu3psw4Xyaq6t3\r\nWbY5x49gMCQSiwnO3e3oSW2WbJKiFRAXsLQ=\r\n=GKty\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"72b44fe55689bb591aeaddf242920ba73a6e5bb6","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.2","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.e8912fd37.0","@material/rtl":"15.0.0-canary.e8912fd37.0","@material/base":"15.0.0-canary.e8912fd37.0","@material/theme":"15.0.0-canary.e8912fd37.0","@material/animation":"15.0.0-canary.e8912fd37.0","@material/typography":"15.0.0-canary.e8912fd37.0","@material/feature-targeting":"15.0.0-canary.e8912fd37.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.e8912fd37.0_1674757771028_0.5022134711376136","host":"s3://npm-registry-packages"}},"15.0.0-canary.16fbd30ff.0":{"name":"@material/floating-label","version":"15.0.0-canary.16fbd30ff.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.16fbd30ff.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5ddc5506603dee7dccfbc15cd252c557b8b82128","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.16fbd30ff.0.tgz","fileCount":33,"integrity":"sha512-m1hMxrpbW5GT2oYd4m3r20VCPni7QBdSFHgMaRpnJmk4m/ILseOdPJ2MZVSFzeEZfjGK/smCRPk78wXlFWLGww==","signatures":[{"sig":"MEQCIA7X9wA5DeHYkGoZViaIU66JXaUvkBSnd7mav0F6QoZWAiB8LMses0nQ6uPRuCTRZQg3b2n9lZ7Sj9I1DQY4JjsWgg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578318,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj0sfGACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqQ1hAAoO+n5YO0rim7kQvyi171Qc5AlaihynHW/aXEmsAiMaxNYJ7j\r\nFzZPUnanbYJo18CO1DeS+/59nlAdHMnHzKLwizqzYRX8aoHJdXQxRMaQOPgL\r\nWtU88c/XmJRhdRt0DA2XvVQmxtHUa+1A7CVS5zt11oTGN9CXP7+mj/IrRdXw\r\n2WiPsTx9hBuJhemnbd8aY76dkAdY+sflV7apZyo+jduRE/I+1AiKvk+RLjB0\r\nkexPN0/TWyRl64a72RrepYfteBj5l691/gHQ8cm75nKXI0UOhlPjStDsN9iF\r\nV5OUM5bg8mmG0HbcRWXkA0RPWt/UAF1QM1CXmWlyAkcTfyJ05Vqq01iCEYq5\r\nGe1dgnN13sfh9wYaAswZK4Dida5S0pGN+QGtkHUew7NHMDhdTPY2juJ014on\r\nxsmAVoD9GM9Z8bZnzcBlVjSn78a4ug9sb+nzMWT7nc2v1JCzcRhV2WqeFUzp\r\nis7Pd9+AH2Zswxg/1qC/Dpl3gf+UqNgh/p1BZd4/R0ElpuOXevRqhtlJseOd\r\nuiJsCTZIO4i74LTHKaT991c4/2W1OBu68zRmrK5fd48ftTeK+QJG7sJhYBOF\r\n2N2Dr659sdoDaic7K8sYf6Crawml8228SiBFeDtMRpaUmXHNTWv/lTZsPul0\r\nd/DNrYBmae30gRTknDBtcEvAZV8Pte3qfRE=\r\n=8SOX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f4c39ff05bbd1045563670b4ea50b0be51a91d01","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.2","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.16fbd30ff.0","@material/rtl":"15.0.0-canary.16fbd30ff.0","@material/base":"15.0.0-canary.16fbd30ff.0","@material/theme":"15.0.0-canary.16fbd30ff.0","@material/animation":"15.0.0-canary.16fbd30ff.0","@material/typography":"15.0.0-canary.16fbd30ff.0","@material/feature-targeting":"15.0.0-canary.16fbd30ff.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.16fbd30ff.0_1674758085934_0.2637936476293321","host":"s3://npm-registry-packages"}},"15.0.0-canary.033ae083a.0":{"name":"@material/floating-label","version":"15.0.0-canary.033ae083a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.033ae083a.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f986af9c58bce9fe7ff881b823281038f97cc985","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.033ae083a.0.tgz","fileCount":33,"integrity":"sha512-faIx0DkowwIlleqBOXDefBtaVhmf+9luCUFD5C11JFeEr7YdbzqUZQFuJgc0ahoLtzNTSUFJEYeRBDs11TZV/w==","signatures":[{"sig":"MEYCIQDAni5bH2LlfPfYPK0zR+QGF0Mh8kG+sZWjEI6x3PpL6AIhAMBHpT1kdgIRpkaQjgAFv8NWaQaKB8PfQP/z12Sx2S/D","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578318,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj0tPsACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpvgRAAht/nZzZx8cXM7p00CdQSBE7PqbNllOUR/Urhg6AEOFDADyYq\r\n+igZ5P47kkJ6RzT9k8MhjLFpifraeWRqXdLsrZBcED3ydp4VO0/sklitrVmh\r\nMl16klwHvP5tKXewW4uRY9UAWFvL/iqSoHXPg2iE/BMPVLIVf5AMFeclUKMf\r\nTFUUb+10XHjmwhovGq6fy6BnkGe5qd9WgGAEL517NonUQ/OkWS5iMf/tV0PE\r\ndRGo5j1gGjoMBM90hiVJMVqRxn2MZKiFAQ0XPve2QN7u9z/C7t7RMGEjEqK7\r\nJOK5GC4FOnjOZUn/GZBOIKx7pMNVXQODV/YFRGY9z9R54yCcnNQidnV0mCiT\r\nHY02JJgSO8q8WhTQEdo+YUZwGctHjjHKqZdn+/+K8PuZ7ldbBVLXf1nAhz/o\r\nMuyZlUfP4qpsNPg8yPpyc99mLjpXyTDiD+9h0iW0M7GIPdhLmP9PDTpDMz5E\r\nTcYhDrwsuTBXH70veTnmjoVxKdXZpOeFNeOpscrlqbiMFOu/ervx4bOANFS9\r\nVry3iEirVdLOaYrgwahPVJDotRoKcKcNeupQKzfonwQ9yNW78NB9/2x7p4QH\r\nlMmLdrzUgQb6mwvApcW2hX+eLor6IuBc8foRg37DfYrRItkII0gy8BSHV2QL\r\nMr4AM1eyIE9oy0Mjh/uC9/ym5X1hSt8E/eA=\r\n=DHTS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"89ca938c110806d9150a3889a7d25689661c2fdc","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.2","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.033ae083a.0","@material/rtl":"15.0.0-canary.033ae083a.0","@material/base":"15.0.0-canary.033ae083a.0","@material/theme":"15.0.0-canary.033ae083a.0","@material/animation":"15.0.0-canary.033ae083a.0","@material/typography":"15.0.0-canary.033ae083a.0","@material/feature-targeting":"15.0.0-canary.033ae083a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.033ae083a.0_1674761195923_0.49629964135141713","host":"s3://npm-registry-packages"}},"15.0.0-canary.3a705fa1d.0":{"name":"@material/floating-label","version":"15.0.0-canary.3a705fa1d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.3a705fa1d.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6b44bee880f3df7acd2420f30c95cd78117729de","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.3a705fa1d.0.tgz","fileCount":33,"integrity":"sha512-Fdb5Kya4Jh5DnB0rDu/E+2WYQveRxDWJYTiIT+7QUBLKq1cXQY+ymZ1L7fMmYxR7GlbPP05WxxGfwh2PLzGDAw==","signatures":[{"sig":"MEYCIQDBi6si0Spp2jdcBUO3IfXtWuURdBAYJLIy/64eJWyF6gIhAJnULM/cjvpS086CvdYdHSAI0eptv1z7Kw+rJlY8N7jg","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578318,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj1FOKACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqONw//TCLqoKbgSiNQfEQFHLdPwwGrh3pQAD2qMMtErsJojmMUmBgQ\r\nFo3mrdDy42Z0C94GCyy/klfyk+aAuguE+F1d3c7ua7XSqzFRMa0M4gjyYTQe\r\n1pEFNaeElFlsiwcAEadrI+G2k5ZhCSpVuRUlePOd+deYq3ASHtY7OGBgWYLN\r\nhfk6X9fNqRehjv73OI9LikqESRak66QUXRkcfY4GSaU0v43bwRHXsQgTrKKk\r\nvpoJd0g/3xd0pvY0rALq6NSReA8RfMNvgXopWl+IH+z4jt7++ZPBEeSenOeq\r\n8w+Fnd0o9sOAqnlZwHSgJH/AEFiyHcbbXnBqOlAVHG0Q1CKV6i1EyX1w5vvC\r\nyNl1MaB7lZas04nwLViGYHymBiRNnBQ1SMdrhpY+E6LhNyYyzxnopmgvrQxk\r\n/iUYCl4Txr9bWgsUxrDE4L+mkIK/UB4ZGNpn7awUZvFe+JruJDMbV3tdYhHd\r\ntm3YKlLKe1FJD/YvgylHzsKXDptjeg5QmAk6ew6mdZwlLpUKdSJ1MmilPDOa\r\n5Gwzm5dZYjiNZg19umHzjIO8aty39axSSEcbeYx9LsX95g1IV2YnxVChFYHg\r\np//ghSmuBrgkWhk24FkRj6FYp91EK8cBk8uPwiXUSg+lOR2wynjzzNHeqlav\r\nn4G8e/+KKLQRWtBy3vCA/bP/SB7dTtnnFZo=\r\n=2cx+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7e0f3737f51c1319f66762d8021d6aea33391733","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.2","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.3a705fa1d.0","@material/rtl":"15.0.0-canary.3a705fa1d.0","@material/base":"15.0.0-canary.3a705fa1d.0","@material/theme":"15.0.0-canary.3a705fa1d.0","@material/animation":"15.0.0-canary.3a705fa1d.0","@material/typography":"15.0.0-canary.3a705fa1d.0","@material/feature-targeting":"15.0.0-canary.3a705fa1d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.3a705fa1d.0_1674859402241_0.2271267430469852","host":"s3://npm-registry-packages"}},"15.0.0-canary.d6bea2ff2.0":{"name":"@material/floating-label","version":"15.0.0-canary.d6bea2ff2.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.d6bea2ff2.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"79091d7be0f9d05afaf7482a040fd800e80ece1e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.d6bea2ff2.0.tgz","fileCount":33,"integrity":"sha512-gQehYD5ZoWiOAUiSiWgbuRdPWQszK+B80r7aGw6XtuVsyI1bKHs2UDWM3jkxdEhYuwPNWNMpw7ocwh+Qrmn3Cw==","signatures":[{"sig":"MEQCIHJbh5JkoHzShfkPjM+uZ2qRPrhnrk6NURmMJKUCBP2JAiBGHFUUT1NbPLBC1XCTnZC0x0+mPCtSZ3L38UdBRi0n4w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578318,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj2TPtACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmocIw//Sk/K+MDPzRrTrBAR5mcQY+gv9Ens5mcrf97g6414UsW0oDkR\r\nVJeEj1KzCo8mKEsGNn/dsBgWey73yAeyGXOPMrh6AxgtE0MSpxpOC/0Jduzi\r\nH24USg0DALeW+ZYpU65YJpEMKHmzmaE5l7+O8w9JbHOkH3d0JXawLnKnJjQo\r\nzNNfglBHB0aGAGJ5MeeRnGCrvY8R97E7DHgJjN0OcCK4PyAWqwDh+l9sHHKt\r\njLynRzkII0Zdz3rUsMvJNzFdRGuSsWNmiiOSe06GsZLjraY1CXll7JbstwNL\r\npARgnXvvRnUZy0PlgmMHmjJNjULv+5oIqVewY+x/XFhucwcGe9kmqUu4D1+D\r\nLqEnAzDQyyuYQpYaJjCl3NoRSWBGV26q2ZBtyk1deYsJZ6oDbez6SEHfdNSw\r\nqOH8B++cLFHs44zwGu/wD1G4XlFTeJS8vJ7WOff7Kh69MmBNyqRSVL0O+izK\r\n2860OGzEgNGV5TJ47eoojMgXGYDH/dLiKOsfpyAw8/IA4ZBl3Fn8eE3GR2D2\r\nY6wqgNysm6/9qc+LlZI47XJLZDHh1xwwDCEXp2TJGw7ehG3TCx/OYuPtDEr9\r\ntzT5B7rQHVezWe+I/PTyi/D35me3uvg+zY1hOHofz03VuZxKrm9nNPQ4QCFy\r\nmUWbkzZnYl6CaVSO01LiESyldTFmIvXNGy0=\r\n=7fuy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e4210a9f21a7e6ee007d475d5bd7e229dd7bbc00","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.2","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.d6bea2ff2.0","@material/rtl":"15.0.0-canary.d6bea2ff2.0","@material/base":"15.0.0-canary.d6bea2ff2.0","@material/theme":"15.0.0-canary.d6bea2ff2.0","@material/animation":"15.0.0-canary.d6bea2ff2.0","@material/typography":"15.0.0-canary.d6bea2ff2.0","@material/feature-targeting":"15.0.0-canary.d6bea2ff2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.d6bea2ff2.0_1675178989569_0.8600719460059298","host":"s3://npm-registry-packages"}},"15.0.0-canary.0c94182c8.0":{"name":"@material/floating-label","version":"15.0.0-canary.0c94182c8.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.0c94182c8.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ffb8fc6b4fd237740a05c631e1fcd17b7c0b81c3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.0c94182c8.0.tgz","fileCount":33,"integrity":"sha512-chJK5r5b02QWsxC1CCG2xxdC8IHz/Z58QQMk9U1Wg+worXF1wQel/oKK1Po+OVjqfY3LfTtZhhx2TyPsoSbdsg==","signatures":[{"sig":"MEQCIHWmZeDuT9U7ecNHv2GRn5vveRYhXMufg1gD89JOIDgVAiBfsmjpWlQHaxhuoLNript6re7Al8owZjnOWDYe25FrBw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578318,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj2qTZACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrGFA/+LLEb33q9ZRxk889/Jctx/yOEk8uZLAAyiq+LsjxQqAqQAovZ\r\n+ESC9o9zW80qGblBI+tmljcf9BTbXWaJWocVgHDK23aXltpw2INCfkXTM/ib\r\n7qXFVLgfJJ23BfeD64wvhRQyXyCcca47bPaMT1OOHXKVrTaSfS/F8HZ3WxRn\r\nEmIXSu1eDu+meOsvAIhOhAgkhTjrHRQQwYwHlzUeZI/1CevlgXUeYYYgvqTJ\r\nClFd+LLHZQzJ4DLQVF2EEE4Hclgz8NE/JV28jmQ19j4XxKSbnugnIfUbpUyY\r\n5f+C+PqelbjX454NXKzletXA/kLzhBhzTN7qlKsBeEQueW8iq1H7kmNlxXW2\r\nWagstTsQHuouwuW0upGqwVhq3jCJ9fjnCH9rDlC9eP1gi6AA7Q6VcGojbiyi\r\nCoNJoy9n9azkDnoh5gTMkYW8C/OwkLLGXgP6Khif2Yk2rKDbsexZgLnkhI6B\r\nHozxQmwLhZeMycJX1OZcowLjtPs8yp6YEDiWC3QDv1Afnov/aq+3PmSRy78/\r\nkDuo5p5lkGAjt15FkutoZtRCjC7xcbki27H3dMapoOqdMxW1MXqF2AAiODIm\r\nQ1S7QqcYCj+pFHWeOQmnKi7t/cp7odf3vaHKbrVvh8YN3UmEExxlFypDQ9JC\r\nNHrefWu/1WDHNGhfgpWhQ6WOV0mD3RnyJVE=\r\n=C2SA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"9e58d1edf6370fb6c26f762d83ca31f928149e41","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.2","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.0c94182c8.0","@material/rtl":"15.0.0-canary.0c94182c8.0","@material/base":"15.0.0-canary.0c94182c8.0","@material/theme":"15.0.0-canary.0c94182c8.0","@material/animation":"15.0.0-canary.0c94182c8.0","@material/typography":"15.0.0-canary.0c94182c8.0","@material/feature-targeting":"15.0.0-canary.0c94182c8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.0c94182c8.0_1675273433526_0.1543458633206629","host":"s3://npm-registry-packages"}},"15.0.0-canary.15b221540.0":{"name":"@material/floating-label","version":"15.0.0-canary.15b221540.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.15b221540.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"df20a22adc8206660b7790c8830907f0d2224550","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.15b221540.0.tgz","fileCount":33,"integrity":"sha512-o9vPbgjmTdvOWMkEX8K4hLwPwYuVNl6BZtx2A6ChJ5YC76EPqnWDTkRStxom2VBBTzAsjDWtCrYHl3sOCbxcSg==","signatures":[{"sig":"MEUCIAsdXg+Z07Q/BZRR2JvISJb06PEg/bmNbE3zh5pAK2RuAiEA+DonfW63r5iFGUNeH7M9EwnFMuEUFvWTBrUoNByOn3Q=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578318,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj2qbOACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpRbg/+ICfwy1o1A5AN8IcHfAuZxL6SSE4IeHzUEuKBs7M2KO9CVlJR\r\nJ4agsvUxbVoLMQPM7vAI7tUu0KnHdh4V5B3PSx1SV/xr/0qLyl2Opkock4Qe\r\nfYbIg9mRIGACwunxvdiDOQGLKDqD2fm0kZM3bEBNUCCX4yHguPzfIQwx4lfR\r\nheV5zPvKipDVsExF01K821F88J7XnpV3KiqhZc7Xse3jQYRnJP2Xpp2Hr0rD\r\n6bgQ1C2x3ePpRXtvEVC9q4gy0ckj9fdEsFVgqZTGgVzU93S7hCtNwNeJJSBI\r\nmqQYSbTPXyN7a8scyba0Vl6cOIytsVoAPHtsobzK2FbIgpW5Bqp7Q6Qt1RYR\r\nXqcNRdV5irolQm6c/U4xFE3/aZcQL6yoW950E4psW8x8JB7yuEYV/f1Bdb5o\r\nTyVy8b39a4JKbbigCorIAkEYd0AjWOHmLQvrFdWh+j94th2VmaJtkArPk/d7\r\nDTaeda3QmGU1XBTL4EJhf9lc3Prd8AtFZuj1YULt+K4cZAP0v37AuWOFrDHt\r\nda3Ou04olWrrJpuEXIwP1rZbMUOFJ0/f2o+jBpd/Dv8NuAK37sdbcHOau27z\r\n9Ss5TCBRinovRWsJSyaTzzme/9D3c1WqMJ4DvbyhSPugcHXThgUBOhn5m++S\r\nwAsEHrhpjHbXlTD3kUwUeGgDNR+t8cT/cN0=\r\n=ufJZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a4bc6d32435d33a7b99197f32b85eb0b730acd30","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.2","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.15b221540.0","@material/rtl":"15.0.0-canary.15b221540.0","@material/base":"15.0.0-canary.15b221540.0","@material/theme":"15.0.0-canary.15b221540.0","@material/animation":"15.0.0-canary.15b221540.0","@material/typography":"15.0.0-canary.15b221540.0","@material/feature-targeting":"15.0.0-canary.15b221540.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.15b221540.0_1675273934729_0.27936374426213284","host":"s3://npm-registry-packages"}},"15.0.0-canary.eeebb8bba.0":{"name":"@material/floating-label","version":"15.0.0-canary.eeebb8bba.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.eeebb8bba.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2d33ffe88b4aa91c352636239ecab66080cf3653","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.eeebb8bba.0.tgz","fileCount":33,"integrity":"sha512-sVQabuce6S6WnughIe5nUT9cd0EveVePRGF1jDN3t4haRq1CT5RYRgMY9BjsN534xxWLGGDJlCkK6Z98uh7Sqg==","signatures":[{"sig":"MEYCIQCVc1kEifM4RtU9LwmQmR1ZxJUhfRbTjZMXpuSC+vlTMAIhAJsCuxCLeA5MYPIj7W42QwHQdHiDRM/fm9+XwHhZ1Fd8","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578318,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj2q3FACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpTFg//T7wAzFeGyGNF5HAex0q4dOowHGt8OywM5tXcXF1SOpX/S4nK\r\n/RMW+mdD9GBkxpnD9tQbjvBqmhAZhoDp3GdQTGkH8LJ+ohfFE7+rlFWK1aQH\r\nbz6dyND56l2NUDtqtQBeYYh3ahp0ERfvW/4nCex3DAbH6WFllRtDKq2I+LmG\r\nVVUltCM4dROKLQDE7xDy3tmiKzadTlYeZzUSHSuWAQhi6lheHGy6SHZm2hDc\r\nCmPvcG+1gokDL+lCGPSrFmIYJnLkHdg3Bpw1xvtZUbhx1Yv+emqRYph8Bbhe\r\njTBHP5ymwT4pHMn8nAb1GOHbtzHWIZtTxsCBDWnOLAOIyjU3knfnFcBQKQWH\r\nWYel3002dSQaiK57Haa1clvhxeBbTLPbR7yqHnLV9MJSdks66GceIZ6ImLEv\r\nkgprSTshXIXopiCaJrCQGqKaD5Z5DboSOeli+tbNECglbJSnQCpotFqr9TMU\r\nhocsMFcg0NYiU6laLt6YoUdsyVmqNAmiSYlU5hBFYsiQEQUBFKcCHSYcqTeg\r\nIk+BVpZK76jh/yXafucfMhiX/tFXzkMpfSN2I61wQtkYfRg00/GvwEcGHE4K\r\nO4q/N+/hsKdDWr3NWi5rL57zvMI8esFxVQAGOxQjD0dJPFhijXPkkDhlGZyB\r\nbrphQOoMGdCagPKPXF3sE/weGITswdVAe5U=\r\n=etEm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5c8d0d2ef793b8bd564888fdde6b97e8a2502cdd","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.2","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.eeebb8bba.0","@material/rtl":"15.0.0-canary.eeebb8bba.0","@material/base":"15.0.0-canary.eeebb8bba.0","@material/theme":"15.0.0-canary.eeebb8bba.0","@material/animation":"15.0.0-canary.eeebb8bba.0","@material/typography":"15.0.0-canary.eeebb8bba.0","@material/feature-targeting":"15.0.0-canary.eeebb8bba.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.eeebb8bba.0_1675275717428_0.5665365683793897","host":"s3://npm-registry-packages"}},"15.0.0-canary.6a4b3f834.0":{"name":"@material/floating-label","version":"15.0.0-canary.6a4b3f834.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.6a4b3f834.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"bac8cfb8a02b4704c522bfcd077e8ae1e317b0ac","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.6a4b3f834.0.tgz","fileCount":33,"integrity":"sha512-qsTHOeAx9n2gLqIzqXAJYcGqpWkRazqUb4gODHOHp338pqT0/pFkjrUjAyH5ymuG1XT7RFoHSNUVQ6uKXRc0YQ==","signatures":[{"sig":"MEQCIBYvYJxxqpW5MqYWUy3AWwXcynQ52aHLZCJ6oMN89YnrAiAMiHywLrRgYDN+vdf+rm2q2u+Exe1qLNx6yIgS8f8Wgw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578318,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj2rY9ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoROg/+Jdc6OUcwgIhbEtG/ViU5MwiMrH2dmvPn5EfqmWrYPYZGYbCR\r\nxb9CVPVaxa/EO8iInXdH28bT4p9hTphyLEMrLeAnTsBcuxXwB0UFhMBQJp92\r\nKGFLTpyF62R7QFtDUlYY1xvVIMMA+L0BplUTOWQwPOUa6DTEPUDVztRhvS9U\r\nz50U7CvpYoKycIp1J9YnIuXOkFLQw2m2KghxinXXeXXRw8898ijPbAXgETNu\r\njg1h/PXY2yZWfl2gGbAdLGkpfcJtvKrCaXrC2H6I2SzXFjhda9E/MhoHLR+8\r\nSB/czK9G8naCrpwzT9uaBKaT87USqaQJoHGXDOspPmaRpXsbeBNw34VBqzH5\r\n/3/ZOeCbdm7PXCIpaK251E4V5oZxjp2YqXeZqHTYQSw4P3bY15R3TtPTYMYr\r\n/xKJdN3/2TWF3qEqtIihpx80ud5RMlteTLspI1ophIFSzJTJhDk7CACJptuT\r\nnuUIXZuswc9edbITNogvM27SN8ahunPQATQMoyXfqqAZ9O2f0dpyD4tyJvyM\r\nIDwwZN+1Gqhevcsqlh6aVwwwsdtxiAiLYyDieOz6t+0LDfip0W0De/0BQU/t\r\nnn3eJJJIkFkiW7TUR5Y6wPG2eITPvSauhSlN/Ht6n1s84fqpM6/LW+/z4QPA\r\nnNfb2YGgBA2GtuUIKAWX8V5OU870gW6q28c=\r\n=HA0I\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b1f2d06637869496d98898f4cdf709ebbd279ed4","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.2","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.6a4b3f834.0","@material/rtl":"15.0.0-canary.6a4b3f834.0","@material/base":"15.0.0-canary.6a4b3f834.0","@material/theme":"15.0.0-canary.6a4b3f834.0","@material/animation":"15.0.0-canary.6a4b3f834.0","@material/typography":"15.0.0-canary.6a4b3f834.0","@material/feature-targeting":"15.0.0-canary.6a4b3f834.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.6a4b3f834.0_1675277885118_0.20506322086444717","host":"s3://npm-registry-packages"}},"15.0.0-canary.b177b40e2.0":{"name":"@material/floating-label","version":"15.0.0-canary.b177b40e2.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.b177b40e2.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7a2bb998c25d65b93601a3a49582d936b382909d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.b177b40e2.0.tgz","fileCount":33,"integrity":"sha512-/gzFYnmEoGUHpYdMZDSj/tY3thOJCbP00OhzoyfXhZN6Qzf8rE4FXoTzivwJ+Sj0IgW0kPpEiwWcKdOUeUlmgA==","signatures":[{"sig":"MEYCIQDF4o78Mh1Qe+ac6F9mC1KXaL8FWjpYvC39+7faPOQgXwIhAP5htcmdT6NH7Dv1E93VYeno+lypz5zSNKsuYQ3cm26M","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578318,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj2y8YACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmrccw//VE70SM1uKpORIcarM5zy3KhR6yHWdeiutdidPt3xUS7wk7GA\r\nM4sfbyolok8+2L84S4qlLtwcJJwa+A6MocGFxaNSFN7ABLnUcFUZ4iB5oNtK\r\nSIYI+VAGyaCo9o0SCQYRy4DNRLw3QICl+ZCYHx8SCpZgYFSjqa8pqoK/Wz7W\r\nC3elxIlN0dMhpv+VDzC6BYUusBhCLO4fu+pKVALGui/HpD2zYR0l2nXSSBDr\r\nOYvjMZieILPdvpARB2wkhRvobutieG5w+zlDiqL4Hj0bkbG0mU3bQQTCgHzx\r\nAHHnMQXxQ6XbWxv70/xMGD4MdMMM9xjX8SnJhoMj9/QiFaHLgtkl/qNqP/iq\r\n77kZQykcPvPyWGqdfY3Uqg0r4NhkVjvx7y0mNUEfKl0VEvWBjDzxdUh6t03Y\r\nBegq7n3Bc3SC8vC2BRpW67a0wYb+zW9l03+3s+0zZnCFrrq0SiUg0x5ci1Ov\r\nI/wcxxq6K6NPrvO43LJNj77kbGlwLdHsl0jMCuTHXEZJrTeq9BabvGr5EZcd\r\nnU2cUD0XHksw2KpZQ2zDChaTSdMQGzh0TjFYNbEwBIkDGkz1pnQTdQbHIxeM\r\nNuwdyg49NgnAlGg2IabBvF7D78h1nXd1A7uo3xwZa4ae9qbnMOWSkJCe9shv\r\nogJ/hZMEAua35Wv/FA8yRTNXV2dWxhb1WxA=\r\n=wvV3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e3b49a7dc72f9c88710ba68c63d4ddce56a58fe7","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.2","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.b177b40e2.0","@material/rtl":"15.0.0-canary.b177b40e2.0","@material/base":"15.0.0-canary.b177b40e2.0","@material/theme":"15.0.0-canary.b177b40e2.0","@material/animation":"15.0.0-canary.b177b40e2.0","@material/typography":"15.0.0-canary.b177b40e2.0","@material/feature-targeting":"15.0.0-canary.b177b40e2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.b177b40e2.0_1675308824640_0.6233052863389232","host":"s3://npm-registry-packages"}},"15.0.0-canary.d9f821042.0":{"name":"@material/floating-label","version":"15.0.0-canary.d9f821042.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.d9f821042.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b1947821398572352d5edac56bc2697bfb783438","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.d9f821042.0.tgz","fileCount":33,"integrity":"sha512-4V4Ehm4ImnyYORIDrllizSLax1RO+B1UuXTCVLgq0f7DsW34nJy0P0o9aagvECEs/8KMMv9vnCvtUSNB8rU0nQ==","signatures":[{"sig":"MEUCIFhl2I9wSRTV1/nwX750JBRuDL4P37pxQMKIGbuAVfAEAiEAmXAvuPFVBbaDd4KvhXi+fJOMcWYtF1Jo4bqCmRy181A=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578318,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj2/TxACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqO2RAAjqYLS0S0UXeKkDzaK8KdVm/2gxyIiQiPH740OJ/bL868AVO0\r\nHHZ4svsdd+sw4KoAsOA/f7MPPV+flyPdYaMMqj5+q5Z+0mo8I4xeOhdfLg7B\r\nXDUIuebsJXK05fF25/raFEbdHQagwuydb+4uiK0sv8hSZuuoo+oYDfgLD7GN\r\nuAW6Nsb4gL5hoOV/yTsrf0Z3HaOyfJB2qot8hByKLDHUzy2BDUAWMutqXZXK\r\nIbdXPt4v/6/ILTJzglIxnBhGeBVtICNdmY9fbc3RVKKujNdOuZpuoK6HdW/V\r\no5zVzUGO+SB9WwNi1Ve/aSksE1m3s55Bb5LiWAiFaVZ1y4EfB8d030FwCAyo\r\n668SYvHAX0g95eSgUcjmxjtarJtnoFi1gnTj2ocPUNidzJA19fQYiXg8RkvJ\r\n1md3WNMx0pW85cg8rvSeC4faAcFSmXBxYrM2TmJSoayXO8RZi1px02uqa28g\r\n55lVeOEYVaKozC+Yt8ciOzA15zISGgdqR2o1s/rGGVA7EYEMm6v+n3OByyLo\r\nf6dghXlNssa68yS8Pkj2qDjp/e+zDPJMKvfHc4bKr+q31O5uW9PTfUXvHsyq\r\n6tarNVhKQFvRudd9QpVsF/MRcD3xjkI2f5gWNMNHHP+hx15m+yKTfAdTydXS\r\nGRmw93OwFOfNEap7g91PWt5VNLX0Vl6oQ7M=\r\n=BKT6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"9748fa2e1dd5886715f422f644830717544192ec","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.2","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.d9f821042.0","@material/rtl":"15.0.0-canary.d9f821042.0","@material/base":"15.0.0-canary.d9f821042.0","@material/theme":"15.0.0-canary.d9f821042.0","@material/animation":"15.0.0-canary.d9f821042.0","@material/typography":"15.0.0-canary.d9f821042.0","@material/feature-targeting":"15.0.0-canary.d9f821042.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.d9f821042.0_1675359472846_0.3238309862516615","host":"s3://npm-registry-packages"}},"15.0.0-canary.47c7deb19.0":{"name":"@material/floating-label","version":"15.0.0-canary.47c7deb19.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.47c7deb19.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"dce8ced2602715dba6e60806fb256fbcfdcda93e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.47c7deb19.0.tgz","fileCount":33,"integrity":"sha512-zP24xIjF6eafkxj9zE/9bArVhcZ0R03jNQErnwlCOnnTcmMqbE+uzunqDDMxiEc/DPS405Gfm64jP2rsM4I7+w==","signatures":[{"sig":"MEUCIQCuyhy/Hd8o0CGivUlLFyDF5O+eCG/OqUVt1BE6L2gAwgIgIJd03O9QZp0c7XIX2DdTq34EnN+AJppif6dKgnPlteg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578318,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj3M8ZACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmojUxAAnJSe4PUldiFu3iWqtFlGDSKSEbINo8mQ6TwOlfjrkqBg4RLG\r\nqBOANEUUPuDeDd5U6vCz1javfyZjGmidrHqg5w6cpQ9d+pskZbNRvMrkgZTa\r\n+oHRD+b3bCgqHVrj1dzOBUm9EUvdrFcvItP5xsRgCC5sL7dJ4RI5UhVX2f1O\r\nRCQzSl7x0R/mIM1XYvlIzI02zUtTAKrcR6GDBut/J+EcDiMPbE4w8YhQPdym\r\n8gGJcY8SAI7KlI1QaXvSCWMq8nrsJaqYAM3sehTCvbIWeZQboKWYIFcXBDwg\r\n2kjHO6NWisI3glbrAZkZ9eylKS0OlJyYmf1R6De4TS+bgFRFrUT7wnu68Zi/\r\nubCAn+lf2MHpYw10q11Rup9xROWOhzwfvAxyJYEhYqH9Cn8DpZZBT+JQ7Pgn\r\nrvKl8NgYBR8kxvF7LzJtoFyGVHsxrOX7pwZkhxhTqVkFi8CWMHapdZ6vXl8Y\r\nKuTDjL4vUg1H1jtENHjBM5Ljl7At80TbiEa/vE+yM16/kdG4xu/rRLmdLkJK\r\nLIB6okt3gKKkn8HxlabQWu5jf0iN7LzIScnRjLqtHM4ccWbpIHC3usKJPHdL\r\n++rKSrIOwEVEdDI140UImq3HjqoI1aD9MCX65uVoWLp+HXng+t9bPv17opWn\r\nv8t/AzpfPWiX77r5bL4h5CPGKg51gkYlQp4=\r\n=OWTK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d5a6886a0dce343fed87311107975111f62309bb","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.2","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.47c7deb19.0","@material/rtl":"15.0.0-canary.47c7deb19.0","@material/base":"15.0.0-canary.47c7deb19.0","@material/theme":"15.0.0-canary.47c7deb19.0","@material/animation":"15.0.0-canary.47c7deb19.0","@material/typography":"15.0.0-canary.47c7deb19.0","@material/feature-targeting":"15.0.0-canary.47c7deb19.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.47c7deb19.0_1675415320865_0.12901320173549746","host":"s3://npm-registry-packages"}},"15.0.0-canary.a16dbd1a6.0":{"name":"@material/floating-label","version":"15.0.0-canary.a16dbd1a6.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.a16dbd1a6.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"29a97fb9b4e285b11a94deda314514a35c00c5ce","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.a16dbd1a6.0.tgz","fileCount":33,"integrity":"sha512-P9P1QMWW1ga/96KhLGy/Bx0CYDIx+19nDSCmDqBbsivp1CjVIX7ry6Y8IFfUAo+bvNAcoJSqIELjAwFkLwN9zQ==","signatures":[{"sig":"MEUCIQDYqzJQ72pEzM91bYkkKvUsF23xOKVjThGFql4SAfGNhgIgbm39KdqfxmGMT36G27PfHgBKB9pGYJxPNiHQDoRj2iU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578318,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj3fe3ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpHww/+LtPGs49WgerZNk4spTpvm7/nolFOCrpasnYZHda964N+3dgV\r\nDN8c8aec9KxCcfQISfwpsaE+3FVjdTxGfd0QCgmyXXTUq2sHiXNmq8oWWepS\r\nxKOJ9MOjFNXrVBC/vVhx35gN1eB+c8c5OMAN658W2XnRRHSOBHnfUfV+g8y8\r\njxsabwJBI9hGVZBqGZdLFh5bnX835hg8W0GZC7LOutMmaIM5BvJo1dIEv+Uz\r\nPIYONr2R2+P1pACS2IBlNcLfNKDDK57EnhxJa5LWxPkJaFvc141ZI6TyGRAG\r\nC7Ex0MXjFUoVyfPvjgdhXzRG4er+g/1ElayTg76/wshQ31WzhibLNd0zlf+L\r\nmd51USV8zVVZtwO5nTP6a9BP9K/2t2/6ZaBdOIy6fHlhxa8gDBbNT0YYSqw8\r\n0QxxfhxDWRF2z+tI7WrJe4LAr6c/nbldL3QvubEs3/4oI9NfmrBTC5DUqJiP\r\n3sAJhPEGcc9UMnKNgGkCwqNOcPH3ttRWnZkjeu29pZHK908Hd2MwAn/3660I\r\nXsdg3cQ7gXh2nOCpWSK2hNBScYTI31WRs1jdApwFSxv4et+ngvb0i3OkKZ+/\r\nuYHTKMLygNhahOo0y4xd+zS/9JAI6goxtfGITQozLaqKbBhrZxqql7lWNInp\r\nYzCmCsGKjHWP2jwlC2ArvAonx8ARDKORsHQ=\r\n=onWk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"6b1923aa24f460ae50c61296787e46f524bcf15c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.2","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.a16dbd1a6.0","@material/rtl":"15.0.0-canary.a16dbd1a6.0","@material/base":"15.0.0-canary.a16dbd1a6.0","@material/theme":"15.0.0-canary.a16dbd1a6.0","@material/animation":"15.0.0-canary.a16dbd1a6.0","@material/typography":"15.0.0-canary.a16dbd1a6.0","@material/feature-targeting":"15.0.0-canary.a16dbd1a6.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.a16dbd1a6.0_1675491255736_0.40288973623958446","host":"s3://npm-registry-packages"}},"15.0.0-canary.93416f87a.0":{"name":"@material/floating-label","version":"15.0.0-canary.93416f87a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.93416f87a.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7d8b2a55719ed5f03cb7c7182d4cce70007dbf0d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.93416f87a.0.tgz","fileCount":33,"integrity":"sha512-sZ5AxGmNa7onXo0aaKt3euW5llhE/VRFrxUOW4/y7sEkD1fWPm+2W71vQrZCekYLHcINxPr0xzZ/O64dUhfBOQ==","signatures":[{"sig":"MEUCIQDKZsq7EK3SL+Zeis0s+e1xKQ9Y8kcefb4bHKwQo8lVFgIgSQdpH4frKzdvZz0gKj1dC3fW+wkQ0HRDisXe1PIjdN4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578318,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj4lDtACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpAuQ//d3R4LhHNEthM/VYdsy8SHAybvuOI9Fac3whT9Zqdm232CV5V\r\nlZcMpf1Sb7uTU/WARH4O37Z/7afteQ0EzdPb9FNNrFGWQ9tNXhfUjMIbB9gX\r\nqOiizMwFERPicg7QLOcfI+hF7YqUTEI0a14bY5NLIPvakmxZSoLSsu1/gHDA\r\ndcM8/5p0EzPjF+gWTeIViifoZ3f/q1XpN9kJk2zQYj83oRU/DmC2IpjsK480\r\nrWWv3ZBkyLbwwRU/C+Pdqrdn5/yUZwSwf3lqjoS0meMyj9dfjDowIFzkfjXt\r\n6cc2EChDIOwQVPpYrdaqDC0KGD8qwwmJBf5lldVNBbZqWoVHDRO/kH5iOu0z\r\nez/xHbtqxvU7kpKQng4qoFshsUFD5upRbPS3Rwz5UQ9vws3wg1GceaMz35Vz\r\nPAWjDeaGhJNdeLprGGZ5iVwjGcUBzoeWyr44ZRyZzVu2dsp+4CY0gxamXoPG\r\nfr7D6Xy8Sj6oOrxTD/l9su9SlhPAWhY5c5EVFMvGUKyR9CnHEyFKmf8I4RhV\r\nJ+fv1KHAcRKKiYVpqXve//tFBogLXDBF07LdUy9b07QJzw8bP4XV7t8Jmm5e\r\nG0m9zBnRJ+Unl84q53Ti/LVSYqTSFC7egXnQOMfxXztn6R0ukXaGIkBH+sbm\r\nK05Tf0pO/SADDrrW511OvX5zVo4hdwbfJzw=\r\n=7B6b\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b9f82375a462288f01ce4e4efe6047a3fdd9f9a9","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.2","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.93416f87a.0","@material/rtl":"15.0.0-canary.93416f87a.0","@material/base":"15.0.0-canary.93416f87a.0","@material/theme":"15.0.0-canary.93416f87a.0","@material/animation":"15.0.0-canary.93416f87a.0","@material/typography":"15.0.0-canary.93416f87a.0","@material/feature-targeting":"15.0.0-canary.93416f87a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.93416f87a.0_1675776237126_0.15583939012363524","host":"s3://npm-registry-packages"}},"15.0.0-canary.49b8e7442.0":{"name":"@material/floating-label","version":"15.0.0-canary.49b8e7442.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.49b8e7442.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"142488f50105659b8fc53374ce32b507f1b7cde9","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.49b8e7442.0.tgz","fileCount":33,"integrity":"sha512-fqUTRYa0mZR9Bbz65w7I/lrtd/AKxMF386L+bzuFN15J1CVYb859qr5CaH8dH7u5nP0haoWvtJ5RQ+T3OR0elQ==","signatures":[{"sig":"MEYCIQCZnu0Qjw2VdxVh2P+fHIBXKu3Bn+4Tu2xGNCid+ve+FAIhAKueD7btbEr8gSQoYvaptQWMLKc22VjEX65OjFVSyL/R","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578318,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj4toWACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrRnA//Usj2LahnQHruCAsUsJ5c+Cil4aBi5BrE/j6+s1TL2g82xvDe\r\nBoiv6ewrJXkzIjirHRq6bkISG5oMRWI+VjwV5LesTWn4leUwLfFlrcpk8ZxF\r\ncT1xNxNOcfLMjy/l1sHcaIUFP/AShKvWzHADL4/k+BMyKC8BgcwDvKwpverY\r\nKJFTVDx4vRmRhHlqKUNT5C5ARBDEZHCap1tI653V2nwVDWoZ5yAcXwesxJjV\r\nl7KGrzN7shU1ez2HbXtB1UYI2xb3eOcNy1/TGIb/uk++4qD6GrjQfYcro2IN\r\nFdpAAuR6Gnx2CCjii9d1s96ra7b2o/lLGSHB/8cXgLrmsblDvuzMa+++ud4B\r\nq4f47fj9sVAEWck/4wr2QQlN4aNp/lpYrt9VYUMPJUsP9aontyqNu5eWGk7C\r\ndsgeLPDcMlcH4AAt++Af+g8Pr0WVdLvf9aoZbjGgPY3qztlSeYdjqWNbn3XK\r\nU8+eXp2oXxQLMrkSszBzq6MisCiVshIVyz2YhqAZGoXah50sU86j7//nRzEH\r\nrwgKPKPY3QZcE7S8igWndjjNlZe5RJNm7VQOoT2TIOH7LcsHDgPU9CIp3SzD\r\naShFqf9DJSoQPtz7Ooe3XG5L8gBb0VFFykh+Q7/i2uaE8fBT05EV+4F2G6ay\r\nB32d7DEnQ6gvkG15UFxqseWazLy/2IM9NI8=\r\n=P9rZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"0ab5eaa3ea130a4b79ba5511e4e46e1f99b9e662","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.2","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.49b8e7442.0","@material/rtl":"15.0.0-canary.49b8e7442.0","@material/base":"15.0.0-canary.49b8e7442.0","@material/theme":"15.0.0-canary.49b8e7442.0","@material/animation":"15.0.0-canary.49b8e7442.0","@material/typography":"15.0.0-canary.49b8e7442.0","@material/feature-targeting":"15.0.0-canary.49b8e7442.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.49b8e7442.0_1675811350391_0.20370917106706377","host":"s3://npm-registry-packages"}},"15.0.0-canary.de38de758.0":{"name":"@material/floating-label","version":"15.0.0-canary.de38de758.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.de38de758.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d9838321a1c15909d3491542a43138ceb716ff42","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.de38de758.0.tgz","fileCount":33,"integrity":"sha512-HdfjZKD+6VBYjitWAyUW3/QdnUqL8sHGaGj/RnMHBmdPT1J9EtAZ7I/8pfbOZNLuDFgupsmoSob1b3MNGyghWw==","signatures":[{"sig":"MEYCIQDkFzrb3OPle3sywGlpQBx5baYNOdc5jkDmllGbfRvS/gIhALsDL2//xQPD42riojNOt7uOIc/womiYsjkZiUgYmZJ9","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578318,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj5RRKACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqf6Q/9GQEwfNJFn2xSXWM2iCptFcBpQr3ar2iruU2SMGZzuXHTltl0\r\ndQd2/62vjvPoIiIbw85oglgKT2VQVMqw0OTZTj3uFU98jFLGTZxxlw2m3YFV\r\n/7hpfTGgGqEZYSF4igmMEhGaD92DBTvhIEO0xnoQhXYEhGXz+FKkr3Ih0zK1\r\nUtYCD6ADCZPAQgQdX3fVvKySE70Ah98R51iRftvZqcRQK+pZntGyJZ1aSyv7\r\na+OS96cA4WxLNQDcD+k3FUB8R5vV5MdW+YIy39/+zrHzhAiBkuH4BC8z4rIx\r\nQsVdXBF3vaGm+PmWucuX5iAbDkk3NUhtM6jnJLBzz0qyKso8sbIoSqvIv5Ix\r\nd7JRgFT8GXV9Ahgu8lvz01KTWP8AiQ6HVM4SkKF+XjSJvTmMypks8yTKaGK0\r\n6Y8USI9Hw1PlRANsonjtjaX6nkuyNUJo0pcx8kRybzIFsm3fr0MH3KGhDiLU\r\n1RqRuY3s2BlXilKN8HjVcr1zkWfIRRvrfZ6ea3IBALK8+Omm5dsvszuKLvuF\r\nfDxPpqiWtKpn02sjzV6yDQOybRIHSksMfhrCsSMVcYciRptRm/XlNTpHIhmH\r\n4YSueYL2gO3daQ1YTdlsBigPmr0fCwaDtudftxfq5OnMUIA47G9EsHhMnZqO\r\nWzOA6+lJ68je0Yadr+tpEzkUKRATvdU3Q4Q=\r\n=KJic\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"72df173af8eee38e00bf9af0ca5a77d5b780763e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.2","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.de38de758.0","@material/rtl":"15.0.0-canary.de38de758.0","@material/base":"15.0.0-canary.de38de758.0","@material/theme":"15.0.0-canary.de38de758.0","@material/animation":"15.0.0-canary.de38de758.0","@material/typography":"15.0.0-canary.de38de758.0","@material/feature-targeting":"15.0.0-canary.de38de758.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.de38de758.0_1675957322228_0.5382240008303092","host":"s3://npm-registry-packages"}},"15.0.0-canary.4d62de70c.0":{"name":"@material/floating-label","version":"15.0.0-canary.4d62de70c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.4d62de70c.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"0e64d315ee8366e8294b39ecd8f0cc3c4101f763","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.4d62de70c.0.tgz","fileCount":33,"integrity":"sha512-0m/AXeVg5jlli5j2WvB56NLPVYI4Waw8JLRZR7NCTxjpZaFYDeoXgozvlT6qwP4bJU5+7KY9Oawni1/8BkILGw==","signatures":[{"sig":"MEUCIQDZv0UGmWhvZTtZrQ9SmoZcRzkZ23wmR+yw3v3HYq4S0gIgH1bgL5aU/w988Ajn1dPdUpN7FsxB2QJyiZl2v11Bg7E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578318,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj5W2DACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr6hQ//bsUSbubMF7B4+BSkq0p/bKkfzqeHkX7871YKurWj4Gv08FzV\r\n4L/UWcpqsUrDhxwEbZQZyjwbGxaGzcULgD5n/Molz5L3/CWANdkNia+UBV78\r\n7+wXT6iCir/aEwKW+B3htqLbL3QUxWs5uqRhmYLSh4yILechChemv7no79aU\r\nxTdr7w5AyeqsjsXaUaiL2OTPui2KNQfuJ9BlwjrZ58yTu2YKowVQfnyL0Gm2\r\nJlWF2I2gu7zWAMl/N87mE776HaZxbdTEmATJmd6fxqMNxQJjEfCOrFPckdlB\r\nhbWhuxSHIFjQesd1o1d08RHkHZncqS9CiiEZDORdf54UbYWSPL/Pj0RiGuBQ\r\nC0gNnmm23J1eUTS0t/PU5RPLCEw+Rp9ybdWkriYNwp+upO9s2BWyFQmkE/Cs\r\n7FecLNG3B1kMWmFxk75ZQjcZwbFOzQP/4kCo6RHfqF0snZoKVNsOZAkQA3I6\r\nGZ1ZtLwyYfO5a9Kw2z4C/ZT6FPAy8A+Tna90H/4zeZhYvdwXMpAWZx3Avibb\r\nNBaTCr7tVyeGhBn97OH4iBj2Z0SBC8/imq2NYP0Ig17MeoUbuSrNS7BpWwYb\r\n347eu/FqMdqAZZcqfJEuLESTD2fmURzs1AOdzXVnTq/pYlXELd28mY3QHXor\r\nS4b0bdCGqIkRnGfp78zJD732seMLSZHGqLo=\r\n=s2LC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d2081b5045fc9871ff56b0d31ddacd235e2316d5","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.2","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.4d62de70c.0","@material/rtl":"15.0.0-canary.4d62de70c.0","@material/base":"15.0.0-canary.4d62de70c.0","@material/theme":"15.0.0-canary.4d62de70c.0","@material/animation":"15.0.0-canary.4d62de70c.0","@material/typography":"15.0.0-canary.4d62de70c.0","@material/feature-targeting":"15.0.0-canary.4d62de70c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.4d62de70c.0_1675980163583_0.3975846979785589","host":"s3://npm-registry-packages"}},"15.0.0-canary.6fcd8d418.0":{"name":"@material/floating-label","version":"15.0.0-canary.6fcd8d418.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.6fcd8d418.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"83bf7dc2a57d8fbda6d4c46bddbb333d33aa764b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.6fcd8d418.0.tgz","fileCount":33,"integrity":"sha512-0AKhRS6KpA8IhdP3/Ef3kv+E1iPIiyKg9vihJpbpfo4QL97nMl/fGOFYJLYGjYYIcI8O5j/jeUXtS0lW/TA2Nw==","signatures":[{"sig":"MEUCIQCYGgBSFqZJ2Jwp7OkAV7DCi0HGP2TS0E2B9otOWOctsAIgP3LlreG6+AWMHwJ3MqOLAaPL5r+MEXVea/0m6iWMDlM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578318,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj6iPPACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmovqQ//ekYTTdFgDIP9Yj4ZSAksyyLYm7UfbB7D8+yMWTm2SU+ZYyOj\r\niwO+0P7T+XyzbEKaKS/9kbHiq8hOv0PsvtljvzrOIAjujmiBrbWlq3MLX1nD\r\nxLqoaLE7pl52nQIFtZdyJ5Yi14LjA2eDRCyLUt7MkLwJyjsb6TFmsfbGJrhn\r\nDA+jkDwH8ZhX0fRhtwuG9pmq62th9jVdu2YK+arp7Tmmt1ad0Y2RHObfBOYt\r\nLR47KbwRj2HKr0e/yk7GJbY9zU3+3vji/QrrTZtxei/WVoFmDUnNejKzbQ9a\r\n1yz14ofm9+H09d5FuU0bgMiwhpv4PUieTWx3hn2mlYysTM0OsrIHUYskSp4F\r\npv3CLMuT273Uz9CVWkwI+b0VnW8OUUsWSpNatKzl1z86/ShFOzeVnnwYDVss\r\ncWgmQUdtl9EWZF9Pja3zQVl/EwY4qFb4//g9+KXgFlO6RO+fD151Rsx4xwKp\r\nVIoAs4eKJkDZGI6j2WyvBkJxfrKMZ5G7+RDj8XSZjLxyyP4VlMYjVyruGjbt\r\nRo2384ToKwsIhMQy4WmUCuxcEibtrKWfKdqHoPycTEyvXl3+KPrB5HLa7I2a\r\naDTLwkky3/RWyMLoZmSrDRgZy8uByb0krOUcYqzux+I9J1QFcB0z2ba8U4QW\r\np8VacxB7x59BENcb/VK9Vl+bZn+10thsB/4=\r\n=nvjx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"39b4fd2a38e7ab9611f614a59dd1694de0b94cb9","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.2","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.6fcd8d418.0","@material/rtl":"15.0.0-canary.6fcd8d418.0","@material/base":"15.0.0-canary.6fcd8d418.0","@material/theme":"15.0.0-canary.6fcd8d418.0","@material/animation":"15.0.0-canary.6fcd8d418.0","@material/typography":"15.0.0-canary.6fcd8d418.0","@material/feature-targeting":"15.0.0-canary.6fcd8d418.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.6fcd8d418.0_1676288975435_0.4462138001971998","host":"s3://npm-registry-packages"}},"15.0.0-canary.066d9439b.0":{"name":"@material/floating-label","version":"15.0.0-canary.066d9439b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.066d9439b.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6d24a97cba81753102de4a263e746df51f0a2b42","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.066d9439b.0.tgz","fileCount":33,"integrity":"sha512-vBBlcIiYAeA5A7RFdE1FO86ZW+p44l1nbZrWAqx6wB2zOG8o8IpzhJNq04ak5/tSLs7mJDkRo5mK5zPM2rbD0g==","signatures":[{"sig":"MEQCIFN0EEoiuCUV86kttcZhRmX7yFFSpQIXlLP76Ud4axLhAiA/n0VVg+/ExoF4HlhcCOh1+o/I6vQ6kQL9DqNnC2zkLQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578318,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj7TkjACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrdZg//dSjYltpNq5mFhgxZ/N/BVIxD4e9HNVJ+ozVt8RbSTkmdpt7E\r\nQEc38Hiu0d3jyiFLhI4StGh7VtboELWOGJZoy48ooIShunLMKCiaV+Spz8b4\r\n/CPkCCsmxwuR1PflraC1aF9ryMv3TR4Fd/hypleqZ1EF9YQ0ExT1Cc1jbNI6\r\nDNb/eZqU30BFyCnx866y5rnatLBDNFRGOgiyr18b7Ao/lnh9eOYCE2jXE1f5\r\nntc9ow3ea12C1headjvdLElF8bE7l/mEisqxpB5ADp9xIYdp6VlnbCuRoa/n\r\nCQJSJ/Z3wJj806H1kbBlXNVDmhWkYG8AoqE/hQApTzgdzSNUMD+ef82yr09t\r\nRfupTAM2115v07Umwg4l4y1CUa1AMerVz0ZB6KZAsA+kq3LgR6644hw7l3OL\r\n7lOyLIO5VtVBHPRspi3dl5G5Vl9EDrsWiI49R6D2Wwfy+HqWLu8v0Fo2OtAB\r\nrFUkHTsfERpqp4eicWbLzGBVqNrrcg7UuuypPG+0SA2K+NPSATzEelrSokpv\r\nWwqnUiMKtcs8Cpv3x7Fn21EYY+n/QYTU6f7qMV6P8IiU45fuyqTC5+JdNhfv\r\np2O4OpuanGmWWxGsaJTWM69Y/QYy9Y2jkFj5G8+JfuP40ek+DortUhIb6145\r\nw/lDTGFnN3tWtTPyoIUFizjMQhYhR9GtiLU=\r\n=UbO0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"cfeee3e63b3e6330deff033d8054adb710498810","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.2","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.066d9439b.0","@material/rtl":"15.0.0-canary.066d9439b.0","@material/base":"15.0.0-canary.066d9439b.0","@material/theme":"15.0.0-canary.066d9439b.0","@material/animation":"15.0.0-canary.066d9439b.0","@material/typography":"15.0.0-canary.066d9439b.0","@material/feature-targeting":"15.0.0-canary.066d9439b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.066d9439b.0_1676491042807_0.05236431976562961","host":"s3://npm-registry-packages"}},"15.0.0-canary.7ab32468c.0":{"name":"@material/floating-label","version":"15.0.0-canary.7ab32468c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.7ab32468c.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"8d1b7c29e74317d1d7deee1ff9eb5cdd163d5ee1","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.7ab32468c.0.tgz","fileCount":33,"integrity":"sha512-qVG1Vp047PT81N1EQ7ZnsExEZAT66sw2FlbQTnO8TQ1m5i2kxGPmzEnc4FZ5H6CxlSa1GX0K/37XHLuThj0Uzw==","signatures":[{"sig":"MEUCIQDBAAdPWdPZhZadMJMZvs0H9U/x1m1uWqpEwJB4dVbZeAIgWi8RV6PshGb2jPmSfCRSLL5GDabHBPEouX9Hxhw0Dl8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578318,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj9Q6EACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqsexAAodLEN98i9DFLCmUJ+SjunOc3yMJ13uNTs4BdnIACw0fQTP4f\r\n/GaHgfeeNF4IVcfeSOCrPRR0fbztz5/cdbM/9brAM6Ng/qRtY5YN1B47G6ui\r\nYc9vGAQHJd925FTEDY7WrDLfOx59+OxGrdpFvnXq4bzdXdV7DajRH5NEqvM6\r\nAy/fiPUjRXQ0hCCxNEBfc/9TBYhtqOhe7cL8kayJkQkSZ+nQHhwrvy4/tKDq\r\niE6A/M+mhrT5aUrsAzCo0olfpGlB7P86noYaMACSb6QvoIauCdGbfxLhU26i\r\ncA2F+ANMedd02ayaJ3nz+68nSVldFjymxD4ia+SalQeAGkHv8/pV0G1Nc7H9\r\nlHXgmqYXihnwvAi9it/SlLzHyPCnXBMQWLUk3PzRgnbnHnlZcNa7sR1a9Xn9\r\nmpmh4G121/mJHszzMStnh5GU8HDE+zz7ucONa+vKpJXZvS6YLGQeejiVUvEs\r\n3PKWGGA3tilnNEbi1pq6V1cbKJEqqLyq1xpr5OTjqyAe1X7bcrqWQRjSUPbr\r\nU+CIiAXCvTLsWR6TNngIpySIFq5/MqGbWGf7TxjyK/xxWa39HNbn3cbpuvcn\r\n8C/ZLY5ThN/zdE9n08cpRPEofhuY20as37O8Of6v7oVAh/8EnjPg4A8zJ4A+\r\nhIvlwJIeYqG/v9Fq2arpnYlsHQbvN9OCK6k=\r\n=LY6K\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"08b12f363223d69b2eae5d2719e9ff0da773381a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.2+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.2","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.7ab32468c.0","@material/rtl":"15.0.0-canary.7ab32468c.0","@material/base":"15.0.0-canary.7ab32468c.0","@material/theme":"15.0.0-canary.7ab32468c.0","@material/animation":"15.0.0-canary.7ab32468c.0","@material/typography":"15.0.0-canary.7ab32468c.0","@material/feature-targeting":"15.0.0-canary.7ab32468c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.7ab32468c.0_1677004420424_0.5553746441946943","host":"s3://npm-registry-packages"}},"15.0.0-canary.fa27ba61d.0":{"name":"@material/floating-label","version":"15.0.0-canary.fa27ba61d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.fa27ba61d.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"306a6f2e744f410843b76daf2f11a24e09d04df1","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.fa27ba61d.0.tgz","fileCount":33,"integrity":"sha512-b6QtChgaDh8/UwMZVdi7PGVTftQlRtLtTMSPclNtIXNOsWK2wzn3SVpvgKKZ6fq/D/la7Qqw8K0HVqlWgei7ng==","signatures":[{"sig":"MEUCIQCS8gjknRO9XIbquGw/TVMv9WY4JWfAGgAe8yTJ28tH8wIgRcwvYHlKta9xVDgANpKfWlvN6rqVTC25GsLmFzFW+g0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578318,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj/NgFACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmopYRAAnp53VDshbyhSGnCOuCK/sAmSk4bmECeAvwXnSbqfkfjdt7r1\r\nhqXBZmjemrOohDgFpgWMLAWGqnsi0OukIwdZhgyX4qowRzJZKPmEvAurtBMs\r\nIdqMYzL9uNl0xCUeoR2kTV2Nnh/RNIdwh3aM0561pwGuV/LgUkB50xojkOwY\r\n7iIN+kqO7HAG3IkTMUGQbgSboRZw9H6vilI7BYEqVxRBhV1zaSV2iXIN1RRm\r\n9R88SgPflQULbLKxktm0ms+/arDW7jvBy20scTDeRrynZ8MYQX5u6/gd2Pt7\r\nfm5xKZzMj9Nzkfc6JzMIzZZ38ZfKBVVZulGdHPZ+y1Q0RRxRuQ2oEE7bjbaz\r\nclXz9VZu6XbWvqVmiRoM7sD9hjFjLXIwiaiaEKDQh7IO4TIvn51bINGLxYMa\r\nKV4GK83GGDUPhvlcD9Q7YCwjy4oJxLXeEnNAb34cIkVq/59Zn9NllzcpCahZ\r\nOy3U0rNH4LDIqXhPDFCbPhDZAgBXwbweID1OczWiWOUbIjtGZ13CRyPQ7GZ/\r\nC+bhqIi9NE7GWRwlQk6A41lUgI3Sh1sCGFFpinvOoSdN7P7hGSkfk8872tCV\r\nC/Y46f1AeIdsGgDthj205nYGaIaxl+vhV+L12qz87yIbLpQ1/2qWToyyv5qJ\r\nVDCGOnE1ld59/gcULqihnvbWOxLFpEsexd8=\r\n=1Wex\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ed40c112543fe3ecfc009ace11a6f0c3f82fa26a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.fa27ba61d.0","@material/rtl":"15.0.0-canary.fa27ba61d.0","@material/base":"15.0.0-canary.fa27ba61d.0","@material/theme":"15.0.0-canary.fa27ba61d.0","@material/animation":"15.0.0-canary.fa27ba61d.0","@material/typography":"15.0.0-canary.fa27ba61d.0","@material/feature-targeting":"15.0.0-canary.fa27ba61d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.fa27ba61d.0_1677514756809_0.7213975508678301","host":"s3://npm-registry-packages"}},"15.0.0-canary.311ab4d4a.0":{"name":"@material/floating-label","version":"15.0.0-canary.311ab4d4a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.311ab4d4a.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"53f12c7053c2f6050671db0b7425e40ab2b74cc7","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.311ab4d4a.0.tgz","fileCount":33,"integrity":"sha512-7sxKd3KZYdDa/rDsAoEAq3RtYIArOdT6B94kDP3QzxBmSai6KYNL7Wqlm3uIYR37XI/1Vcsed6SDJBSEthRO+g==","signatures":[{"sig":"MEYCIQCVOuZQhQlt9GXPu/n0wgzzbrVhiL1GggMOablz+GbSDQIhAMeUJxpRI67dAE9YNS9f4+xKwcaFws7qECYC4y14HZ+B","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578318,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj/N0cACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpgpQ/+L0MKm5XvjK5JHXSuMg8ojR6AjufefyFhEElCnx2c5RM5DNQA\r\n+p+B/t22IVgH5q6OXdmU/BrB6SjgBm6m7LzAFtmxM560L+CDLGB/HG+cF6jD\r\nddjYgj0yWefsHF3j/dG54zhDIGmQRE/wJtUSFwWz3r1KLKLvkecVuphXIl1G\r\nujCJDMc+XNxu9VdgmX9N2iCIvVRI/MQHYGuKgw3/ZtulBNjYby/+AEFsmkV8\r\nuxKkKbaG+uhb+64aR+/xxzaUmw8Hhtn6TzLR/DgbNgK1ifSXNl1wI3UHA49c\r\nW4O4MvqahWdYSjO3LPpwGBdha2F/yYdKiWIpwpWVymr9146HiTuMFe1WCm2h\r\nxaHnijI1OiyclpUyI+DpCSLI74LpJ3yOYydw6Lwc0twTgnsD4LHMPSULcGIq\r\nU7XKsCFw1VqDDyswktBX0nwo/fD7FsCyp51NbgIw30+KGCGb5oueA9oYMPAM\r\nm2TlPDSJUnjyWkiMxTLRIGs+4uP66mmCunAE+0uNvmYOY2/2kdUwQjLAvD2I\r\n33ck2aiMUUqjfgASy1tcOoKo0VKGRxC7FxcdDxzoL8wB3PP/o8w8F8p0KJvd\r\ndnfLa0XEUWwBiFwAEXlbOWCngvf63LicMmcCUfRD/FER0j2Uj58szCTghGVn\r\nSrs6crU0aUIZnJFA9UWHqHYNk9PpvnBWUVg=\r\n=rgvb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"07f8d2f7bb4b2f30e60a6bd8739befd9d17bfbfc","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.311ab4d4a.0","@material/rtl":"15.0.0-canary.311ab4d4a.0","@material/base":"15.0.0-canary.311ab4d4a.0","@material/theme":"15.0.0-canary.311ab4d4a.0","@material/animation":"15.0.0-canary.311ab4d4a.0","@material/typography":"15.0.0-canary.311ab4d4a.0","@material/feature-targeting":"15.0.0-canary.311ab4d4a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.311ab4d4a.0_1677516060703_0.5789290233755156","host":"s3://npm-registry-packages"}},"15.0.0-canary.901c83e77.0":{"name":"@material/floating-label","version":"15.0.0-canary.901c83e77.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.901c83e77.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"8c01e0092096fd7889a0512cf85b7f37a7063392","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.901c83e77.0.tgz","fileCount":33,"integrity":"sha512-Kn9muNuJ44m1vbTMkwgx9oXKxtdbEiXLKMW6s8cNkjm/o45q3iKDKgP6XprBQj0PsxVCYMOvtsei0mqjKmQjMw==","signatures":[{"sig":"MEUCIG3kcqK2PWkuR92mKyn0jdlKNLipuoneAl9bhcKgYWJ5AiEA2xPkE+SmgoTYn2kGPbNpryOloTd0iaay5qk/imd8JcY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578318,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj/PD6ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmooZg/+LsuLQppRU8AUY3XD5JG1LhMgi22746tWiyGvw5QQnjKOY4GR\r\nEU7woulbwtahj1ac0uUEXnwXBgV6HDtWzBEJ+nToXm+DURt/tCWEECxkoUjW\r\nVGUFCMyjh6OhOLqDz1k1iedJhzHQnrDEWDXoDIs+Ove9/dCrBZov5jWdqKMF\r\nAD0mcKItk0zWwX3yK5BKTH32NPW/l8Lbvlfu5fPHnh7Ve+yO0ceFMJ/HCO+b\r\nPCtbiOO6AoCbUNof4w6mDU+ndK0RvFCaCo8WRoYMjRiKKlwKxZ2xuG7RXc0p\r\nktdCl5QsX9wL2vq4wrWGHpiqE8jGSJEd4o/aI8r/8Y6GaYgaDpFJqfxHeik2\r\nCarXSpReiLo1JZYNs/maPOKiLOsbaPuMyBru0gGZ2ljFYbwhfTqOhX51Lk+L\r\ndeSMU7RNTT6YrBXs0XV9mbmzV874wduJ9lCQE2OYhH8DEZvX8ORNBdShqnLO\r\n4JfOGm76ECGuyQPd2ri5qjNlUqRRdB9nvYcU2/d/4uXZQYv3lDnThK85GlJ3\r\ne0UGZmcLvPnz++flwG+XJTlHlNgtYHi2ApnIT1f/pvmElE1ih0EahAsqSfCn\r\ns2WNPTlFCOWPuyxEWC0U6igsnf5O16Go1fizkwpYQHvAjt4SzYVFMSQRuaLd\r\nv9gZwhh9mD0liMQaI8m72qr9grxia38iEo0=\r\n=IpFf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"86c988d321eecbf29bbb6cc63f7dfa18cda02d4f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.901c83e77.0","@material/rtl":"15.0.0-canary.901c83e77.0","@material/base":"15.0.0-canary.901c83e77.0","@material/theme":"15.0.0-canary.901c83e77.0","@material/animation":"15.0.0-canary.901c83e77.0","@material/typography":"15.0.0-canary.901c83e77.0","@material/feature-targeting":"15.0.0-canary.901c83e77.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.901c83e77.0_1677521145650_0.1720619117890516","host":"s3://npm-registry-packages"}},"15.0.0-canary.5cb8e2174.0":{"name":"@material/floating-label","version":"15.0.0-canary.5cb8e2174.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.5cb8e2174.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e203e25a8abaddbf5be5474ffd2f2a9978f9d9b1","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.5cb8e2174.0.tgz","fileCount":33,"integrity":"sha512-RNOCj+i4iioILC6f25IwxahLIRx2VWENfwoFDs4QRJLeMVOVz5coOBo7RCnbEPGw6gsDqXPDYR7JtNWpvxyDGA==","signatures":[{"sig":"MEUCIC6aWZOedwudG+bswdb6SXyGaLn6twZmFgcQhB6QrPCuAiEA0Rt1xByhXIY+pKFGn0mPp9uXbZt4lW5BcCrBPohvScc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578318,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj/37MACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqxDA//UFC9Lacgobn1st8K8ePDNcDWCfzW0kWHH9T6P6+B77zJmL8X\r\nG4PJQ7o+6V4PQszTjj2n4xcU3OjKDGrZkWrgdW6knvrCXMPwCDTusTjZl0Bu\r\nyHPffGpCdYahnBjCGnrVhHvo5VSpND/DWIgWCng2z3yIKecZl2pq3s6u7ept\r\nJ5UvBzHPLEvcUMc2vE5w5tq0k0MU2TTA0BKr2PyYmmX4Mkn5dDlxkIeo7gxP\r\nTH0ntotIwk7XTRkKJN3y2dwEdnUXAx2tqcS2sD4MIGFPLaGoNEZeOMS7x/is\r\nB8ZBURPfonbdLWTsWfSkYaCToaAl7rFl3Cfuw5w1GwSd41EcYtpx1Ht3L39p\r\nj4QwOSbIWA/+HGVQ35HWKOUIRUJ83AGfuk4/Kd19qrNgSi0HnRxY/O30HUiu\r\nrscm3SlVKKSktpTx7VIDrHdm54p1bKXG7x/HRNi5OCKqqMzI8UZkECR5GqgK\r\ntGKVupw83nsRJqUMR6WZrRY+Jb4nUcFN9sR/o7pktNhvAWuuPVHjuc3xML0m\r\n648VvherRBopFTiOdbLwUsTxRxfqEoPajDC2IX5rmW9W2sGd+8Uy9WgM2dLb\r\nt9suAYw2EK7gpYKhYc+tnMppPNVzNJTPmWiQFtvHloIpMp4BF93UDRK9dRhZ\r\nSOSB951W5dFe2Og1u2sOSxCq0HlGa5DGF3s=\r\n=9oeu\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d57edaa5a3a3079c48ef7c804f0a642bbb682478","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.5cb8e2174.0","@material/rtl":"15.0.0-canary.5cb8e2174.0","@material/base":"15.0.0-canary.5cb8e2174.0","@material/theme":"15.0.0-canary.5cb8e2174.0","@material/animation":"15.0.0-canary.5cb8e2174.0","@material/typography":"15.0.0-canary.5cb8e2174.0","@material/feature-targeting":"15.0.0-canary.5cb8e2174.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.5cb8e2174.0_1677688524150_0.4296522896795625","host":"s3://npm-registry-packages"}},"15.0.0-canary.f32339937.0":{"name":"@material/floating-label","version":"15.0.0-canary.f32339937.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.f32339937.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c79171bb518cab3d4e602cba1c7f3be84105ca2d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.f32339937.0.tgz","fileCount":33,"integrity":"sha512-g0wNRGGFwoeViQGIFBk2IJioBIzMFFcHj+4qJxkRZ05Lhj/psexCRssz8AR+vro2zdPuRKPnsP6Ede4bvMYrfQ==","signatures":[{"sig":"MEQCIEFOhXSi2CjDsvO0xT0Av4vyWZLo6ElaixfVHiTLkubBAiBn/Ea35RlTuLfHjCzrLCSdRVOrM6dnAKVsJhNuvvdgiA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578318,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkBgOEACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmouBw/+Iuh4WbFo6RemVgdBiN7QVy0ZnwnxyPPBSGSs+eZIxU8AWjZj\r\nwpqxgjGcXj7p+0f0+BhGjPb4OzD+GsZ5UTFkccLtAcgtmN+C3WA58GkjY9xf\r\nVIwtmQ09d7lcEhNX3uJ0bC1QHojquoK+SDsfY2ti6A5BJzFw2RqM9A5rxV26\r\nlNG7V5jZajmH+aLisvqJhYPfov5Haisek+YteDdmpGiXJDQ2QFipHZ9rx7Xi\r\nlO1BXB1VC7slKQKeE2mzHRGEJ705Z0tvVgokfYMtytS0upNLwohE8VvpdTnW\r\noapO4aDqSyScH23vCBOZ09VdFixK8CuSUuzBm3P8LebxzZGAGUzjHGVU+7w7\r\nEStGbr3qRnchdsfkY0gI+FW8aKa9B9twcUBVsngnKOBwEjQbnnrNOOHbiJfZ\r\nj7r4Ny8Xyx49CsQFDgEVoDdwHpTHRMVccQOE9fc4Db9LSwlHMKV2FOH2faBz\r\nLdqE9DkUEP5Pris2yO/YyDQm6kUUayFY94uKXJmhoGw9zudFcOmfZaNb6JdS\r\ndgvw5Ki6sd2rp5YmSuY5wGw+b5cBRQ4Xs7zkY6l56fuTtbs1lxYPRXDtKBAu\r\nV5p90GYrBQF7fkzhSzVYQpYjTjl2C4D59GguTCIsVYVujANQSPySFjzDx2YO\r\n8AgWaaMAQi8OHw9mQdwstKjvewRKttDLvbY=\r\n=E93i\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b6c5103b89138f008c28f70d93e0d3faed285061","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.f32339937.0","@material/rtl":"15.0.0-canary.f32339937.0","@material/base":"15.0.0-canary.f32339937.0","@material/theme":"15.0.0-canary.f32339937.0","@material/animation":"15.0.0-canary.f32339937.0","@material/typography":"15.0.0-canary.f32339937.0","@material/feature-targeting":"15.0.0-canary.f32339937.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.f32339937.0_1678115716379_0.43592539785629425","host":"s3://npm-registry-packages"}},"15.0.0-canary.7644d63d5.0":{"name":"@material/floating-label","version":"15.0.0-canary.7644d63d5.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.7644d63d5.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d601c95557eada99df2750b15b5516e809baee07","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.7644d63d5.0.tgz","fileCount":33,"integrity":"sha512-S/CWJKWbUG+XyZ3kU9T2Et3Jh67uljGnoXWaRCWH1tgeXiuXj/p3owJIuDNEUQeW+EM9NRwMQI7U8eoTvjfeoQ==","signatures":[{"sig":"MEYCIQCG6IRhL2NwIV3mXJljF7nslTZTFr2lN55VMVSeCjuxYQIhAJ71XXyvFBzKWR+UjtSJjC16kxy/d07pQG/3cJzIS4mE","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578318,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkBmi9ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqiuA//XpVXnD5OZSQydrXgYN6dgQmfaLnrMtiHZf4rl2a/PWF/scUd\r\n/248uwoAf2njz1B0z+n5C5ZwyVa1xFSAVgFawv+XCjYmmdaYU7cBq2BbrF3n\r\nH8GoGruJLISVK30QM1i7jGY6vQRI43HyiwWvN4nABk76yquasiFijvgXXG6D\r\nw3JBC4jJGIoK/9PEY+XsBYJtMvU1uP7AFHRVEOUV+40rMLKCY5XPSSXal3p/\r\n4axVQKipwpvPXIgCkg0FVE83buYgU0v59yGyIIinPsw5ayFCzloFpv40NKkR\r\nQpjrBtl+cuc8EFVBOolaO+35zgMmW9bAWPBbOL8l74qbafQPLYhkcZh2KlaP\r\nb8Z2RRzsXYLo5uusGfHUb+wzDa7usY9wjZCKlHWzudHuy57/p785Qx/4DFNk\r\nVgAX24dPCCsEBGnOUHy9etVMijGKbetCI2cmTfWJQW+Q6IXsUL4dp5Ngfd47\r\npFa60VOIusQbqIilXOzK4jULToqVE53KdGBkPgs/KgRmWhCRTbn+zarXlL4U\r\n82g07dvQVXjKbJ/Rc5hGZ0GA3LI4XyrJ3qXzAc54I9jEca1g2KPBOFmpORD1\r\nvVyHx5CHF676ZwDoKF+50urIa85F6daA/nDW89kF8VPpdofK9Hns66K8zg92\r\nUuBv3EuL5f+vvLr5ks/2TTl1gzZooxwkXlI=\r\n=5EGa\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a0332d9af18b36becfa025c452efffd11be59943","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.7644d63d5.0","@material/rtl":"15.0.0-canary.7644d63d5.0","@material/base":"15.0.0-canary.7644d63d5.0","@material/theme":"15.0.0-canary.7644d63d5.0","@material/animation":"15.0.0-canary.7644d63d5.0","@material/typography":"15.0.0-canary.7644d63d5.0","@material/feature-targeting":"15.0.0-canary.7644d63d5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.7644d63d5.0_1678141629609_0.2515892426023305","host":"s3://npm-registry-packages"}},"15.0.0-canary.d96330c08.0":{"name":"@material/floating-label","version":"15.0.0-canary.d96330c08.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.d96330c08.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f4a2e6249391d701e6aa1388b6112a4f46945cdd","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.d96330c08.0.tgz","fileCount":33,"integrity":"sha512-WwZEaS2DkWqxZM9s3zkgJbzJ897HE1aNfSMjsEshvacVh7Du2BGuexZVPf/zMXFj7Ykp8ohLDJBatci+esIf1A==","signatures":[{"sig":"MEYCIQCmSS/ucgAZqQdu8mOgvuaq0uTE7MT13NTn9jXJihmTdQIhAJLlM5jquWWCc/m/cy7eBRZBrOjGauV6pvvh9H1tjZWA","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578318,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkCHRnACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrmCA//a1W0xrDfGU8xS43BDrgtBRmPVgBvzyQL7rH58IWk3h5dnL3V\r\nUWWzag7NXyFaXPKFj2RT8FiWC5fcYDdGbknazoMt01Gl3k//EC3BImXhUKI4\r\nyXvByjh+OVHtIpVqq5wU8CmqPA3uG2oWRyuxnaU2EQZwCN13MWwrcQY9DBGD\r\nslyJixHyqn34HjDAlRL+H45LP0WyXGZzkz4o2T/c637fqhcaHQjh1oXVPEU1\r\njR0H/wwU1DmTnjYCIdXJT1e8fuu5Xmc+Ze6vB3nTlbs9QiCXjZnQGK0kXh4/\r\nRDig99miFpCAexAo7j1Vw3l+3ZYS2X4HKhhT65CctQ4VdQ2qihgHZ+BuJbtY\r\n/3ggMDu/RlUg7hCvyTqGFwSZxCiwUn6dvZtQucnHh56Ij2LzyUvrMxZo3vQz\r\nDQ+CGt2kCd/RnD6hDZ+jJxGBL0jiqaw77rfhnwy+qcSihIJ6nUhZheWONylA\r\nV1NELJtjjulkKj15twhRC9q3OhurN0nwMSV112IfclimdXPpGy4o7cKpWAoY\r\nwhfqFYVyV6JQqPjcX6uz1CduILrR1B+REa2gDebaRXeFGf6Uy8yjWQR/3W6H\r\nAqDc8R6NAHhDMOXlDNKn6B8QvnZp7etlEFaEcdWY9dUGCX4eD+e0Qy8CAU93\r\nHBQsthMNQb9sg5xNNlUHLXXPuVeLFgA9MPg=\r\n=Nzrf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"6a6d53aa84a0c0a10bb15c3cfb596881140bddb2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.d96330c08.0","@material/rtl":"15.0.0-canary.d96330c08.0","@material/base":"15.0.0-canary.d96330c08.0","@material/theme":"15.0.0-canary.d96330c08.0","@material/animation":"15.0.0-canary.d96330c08.0","@material/typography":"15.0.0-canary.d96330c08.0","@material/feature-targeting":"15.0.0-canary.d96330c08.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.d96330c08.0_1678275687651_0.09859896696080539","host":"s3://npm-registry-packages"}},"15.0.0-canary.c99cae77c.0":{"name":"@material/floating-label","version":"15.0.0-canary.c99cae77c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.c99cae77c.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"de5da4f730b4103b715f26345ec626228d57360f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.c99cae77c.0.tgz","fileCount":33,"integrity":"sha512-uaO1oUivi9AnPfPQhP2TH19pWdK0tWM6BahNdXta2amBKJdF5cDH9TUCFnEltqJ/T7UbNCBdeKy2tIYWZ2GZXg==","signatures":[{"sig":"MEYCIQDRe5Nie3xPwEbXN8LpVdc48ROQNl8tCsi0X/+lNYXIHwIhAP8Ect+pdzoNHRO4H9w7sygGVXKBStkzx0J7zIg8kQl6","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578318,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkCR1pACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoQaA/8CWsZ30YYPoT0HLjfqaIheT42lYFeDdNWdomOQ5vGgRRdV+Z6\r\njeln3AkwrJNT2Z6f96EVNzHfj5Ov8U2w0O5+rfskCRNGk8ps5iPBS5Hh0XZv\r\nrv8QCoPf4sN5khwl2iYDBGkW2xzXh+5hUNgTVjhl3jPAARWae8u77/gcGsU9\r\nf1hUiVYEkjZF3d1RSFNvvkCDB2IhukwSK038+4NOUGHgfEKCQfM1xlS7rRMc\r\nu8GzecMMncFbgolKmOcNyD4ILsmTAlC//t7DWz7HNkFJQF8GF/o7z3ym1fey\r\nKFK4xuwPoGCgg0lzzir5Y8SrKUZN30e0XGL/iO3SuepkrOcFX8chagFfe3Us\r\nFf5fNaB+IJ1qlV7I4oljFmV8lWnb0jDUVr6cjJq7zgeOy1ynICr257gP/8Ym\r\nuKWt2EGHJgyodIh+BRed0w/b+xljSJ/V7voga9xfT+8JjYeoA1qR1iG/dPOQ\r\nRkQhxRwKIOmV08AGPD1OPAsSuq5/S/CDa6USoSS0uhUje9ksWAA7Ux/oEmOL\r\n1Ykd0UmiUKiSV+3VkE/X6RNW0IlAInBEQtyty/Y1LmDvt7Udarjj+0PIh77L\r\n5QEdZ04WEQYV58gVpwDPzvGuCGhnjscdVFEAFMjd0f5Tlq4peioQIQZcpk9U\r\nCcqymGLmdrgsMJIjTF5mZjqfSH+KzQD74VE=\r\n=6MuF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5b6a7c1a1c133381bad395ae040de00c64b62e42","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.c99cae77c.0","@material/rtl":"15.0.0-canary.c99cae77c.0","@material/base":"15.0.0-canary.c99cae77c.0","@material/theme":"15.0.0-canary.c99cae77c.0","@material/animation":"15.0.0-canary.c99cae77c.0","@material/typography":"15.0.0-canary.c99cae77c.0","@material/feature-targeting":"15.0.0-canary.c99cae77c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.c99cae77c.0_1678318953475_0.22148543504459228","host":"s3://npm-registry-packages"}},"15.0.0-canary.6023b1cd3.0":{"name":"@material/floating-label","version":"15.0.0-canary.6023b1cd3.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.6023b1cd3.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3a699691ff2a9853242359b4f61df7bf8e2f98ce","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.6023b1cd3.0.tgz","fileCount":33,"integrity":"sha512-VdhWyCoOV3owIw7YMqWFaa4KeN3kg7HNRs/tTHoWsBcCDS6kIeNEHwreTEcy8ywc3fxRV71wFa4+8IKHOwCzMg==","signatures":[{"sig":"MEYCIQC0YAJPdrCYPwSOXGbO7UqQX7fmr3hsXLQ/8lzR/5tCMQIhAM6kqX5I+NIs+MWtsSMF/Bkip/YM+SN3aRlSyCQEqNNJ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578318,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkCex9ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrspQ//RmP63LNfO/CoFBRbHhG48S9Iu6lAsURNNeBS8HQQEg8YVXWo\r\nrI3XUJufHiNbp06UQrvwPT0cV3snK4IAJ0A45NHsJh6h6qwvSYHhza9hGE3I\r\n7dsSMcB2VOY4ybWZCJ+FLlSv6cQDWw6sFx+ckcAalhZPjXOSzzh4hSoAexGP\r\nPOLGGn9xG3gYDuuhf28r1yUFXVtVH0uKZW1bvz+6YKTuzjDoL5Eus9vwBcBl\r\nJ0z06/v8h8HanjmbSL5ZvMpesLxMRG6y459V3hPx/tkd5SrMP5bO+fxj91K5\r\nHWje00DUZ9mY2ytGEdqRXgC0gS0ciRaxOeP6LhIw/M91M0o7YDeAjy3/vrCf\r\nzo7qGenPhgtBWqwntkWEIjL8Mv/iaQNdaXrNBxRV+R5XugB1CgpqDeHt13yE\r\nKE6UOzVZNuBi/SQ5WV73x3VjZQyoTL79F8WlzVeISQOkg2bzkoZCrTjpUPWN\r\nGiw0/Ji1Ndejni9fHa12F95YAe8e3qCRCBbH+r9sE9ovfN9QFVxU4AIz/xu+\r\ny9jKnfPZpaOHHNech2tpTM0kZKE17R98BMoGx9cH6li4XRSrwt6wMiC5bNTY\r\nOi2Ti1+FhVOZL/XWiwzgGLjYp+chWCJBrKCOz55oLRXgMsHQceSyP/zeb5lL\r\nuFXlH6XGz9xUV/OAOp6SH5MzpkAPyB7SIwQ=\r\n=uLp3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"4d11f175faeacd8e5fe534611afbad84efceae77","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.6023b1cd3.0","@material/rtl":"15.0.0-canary.6023b1cd3.0","@material/base":"15.0.0-canary.6023b1cd3.0","@material/theme":"15.0.0-canary.6023b1cd3.0","@material/animation":"15.0.0-canary.6023b1cd3.0","@material/typography":"15.0.0-canary.6023b1cd3.0","@material/feature-targeting":"15.0.0-canary.6023b1cd3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.6023b1cd3.0_1678371965290_0.49687287765906385","host":"s3://npm-registry-packages"}},"15.0.0-canary.274610c77.0":{"name":"@material/floating-label","version":"15.0.0-canary.274610c77.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.274610c77.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"68aed347bcc069212e0b79bf1308e08477263e65","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.274610c77.0.tgz","fileCount":33,"integrity":"sha512-0WwzFcREPxg60FLprTaksSO/Pgm3v1LYTolpjh6LkeD9U9ruc/Ln5v/bgJ5iBHe67ny1AgtzjRyyxZRIf4APSw==","signatures":[{"sig":"MEUCIQCLXLzSr+djhZ2fbJgtP1ubGFpDUqRynTzwCF2Y+6S/4AIgCgHIwqP/MY8pGebppZJ5BHFGfWkLEkSwpKX6/cVa+t0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578948,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkCfQIACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqKlg//ZuWhoLTP6WNx1kTaRa8ZELZAaPmLNP7GgKIbvWQSfIXuz6A9\r\nQJPh4sOp3d9rxtcLdHifbKZtgII7TUSWpcZoyjNC6whEZrVV4QrXUBKqTp2Z\r\ny2SQUKkk2wZfrWM8hSl0N8gaSGw6qMzRdMPnsYzj4vVj72tiKIrTNG10cTMS\r\nUrP5Xmv/zx/PXlnHoCUjwHVG3VW64c6XZoHWRIbo7vcsGDLu8tks+8SGLEjc\r\n9/HPSzwmYfsV7nmbgO9HsDOF6V4N9e9sDcU4AbdcEVbBYzgm/2il4WP453s2\r\nwGuMsmDNVyjMYcuHtzzyOJid79VqHJ89Jkr+xVbI1+WwGmo9cY1WZp7HLSdw\r\n4chc/9Vub3Y0U9+AboJIJ+RRGnPcM0Cp4AYnn/PCnsBIo2F4/OhB8kxsha3b\r\nyw2da9rwFZMakbREXWJuthdOLvzv6PVgLHEn4qHrEdGwrqhBpKTbJuPhvSQC\r\nr0+mTeP5AI4euLbxjB+r1Myg29qG6FakqHVxQxaEqH5xzuRZc9OM7UJKPLJq\r\nlmy7Dt1hgJhfilmpiZRyYi5aloxqAi01suYi/WsjQ4BWLkSH4idJUqFWtrND\r\nN/UV4UhSD7DpZTa/txAFytftSPmp/T3c6HiDq/fbGqcEwKADy89tdkdTnkYw\r\nPli/Uglwq2xWEDo2QnQeicjuqaV84N5N298=\r\n=38FN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7a2b02c682ee73deba431503de1a6f1fef211c10","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.274610c77.0","@material/rtl":"15.0.0-canary.274610c77.0","@material/base":"15.0.0-canary.274610c77.0","@material/theme":"15.0.0-canary.274610c77.0","@material/animation":"15.0.0-canary.274610c77.0","@material/typography":"15.0.0-canary.274610c77.0","@material/feature-targeting":"15.0.0-canary.274610c77.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.274610c77.0_1678373896215_0.6221520633121895","host":"s3://npm-registry-packages"}},"15.0.0-canary.a274583b9.0":{"name":"@material/floating-label","version":"15.0.0-canary.a274583b9.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.a274583b9.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ea9bce1fa279a313b24bba0075d74493536023de","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.a274583b9.0.tgz","fileCount":33,"integrity":"sha512-fSIoQdMUFuRJ2vYBLFJ1L2i0zdYD+kMSuOSeizwEFo+k5MsjkQaISIFbwACjW95vYlRsVfRCa8LprFwEKMU1YQ==","signatures":[{"sig":"MEYCIQCiS1Xu9L6XFqGLOSaN89VGfeUmNsgDExH4QsHmgxeqDwIhANeo+XWI9mNKVJeP/k0GQ+jC8rEgawpLazOTzFFtorCn","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578948,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkCjj0ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoWog/6A1PLHi24iZsBKulytNlMEgniyYYM+OIo8u7QRR/keUjkmVTJ\r\naAutamTldSlQUKECyJWG8zZjpOm1Pyh/CW8X26HHAIZPvDcI3yyVdTYjirtD\r\nU6W9DBVkc4hhfW2fccpUj2TpHD17C2o4WmoMw1EXT1v3vUEAAaS4+07QoMIQ\r\nRYE3tFDtvMzrDKEwpp2qgiEqtIymtmdqEyz24gNqH50utXALf/as1SzGIGNP\r\nn/aHAPO+y4M9Tn56H6TA5KyVqGtX5R0s/KkKjl4ZC09yVDF4jbAuFShtPk2X\r\nobx6dXr5qChSHls6xgeTtwAgsmzRQRHTuImKWeZfyjzXMhBYfx10yvbWUxbI\r\nmXF2UC/aMkMLXdvxvGq7xKez79m1+SJ6kbx3APICMbxtof16JLGfo63dqRK9\r\nDS8N/GkbYTc9lydgb8+h2GGo5GhdShcAvRBH6wbLZDxRLNEBq0tqGhcrA2eR\r\naoSjNWO7ndLiqhTGwhmCTva96JZpw08O1Qx7mqwRGJG99lBISurC5oiX/0LH\r\nuChu/933+zZoE4J6kM5EcT2sZEArrBSbTJflrOvs6drzyyvgTQXrCGdCI7Nv\r\nAnBbFcv1O08/ixjNbToeHq2lezcORd1oGze2XEW6V+5svONUEt1BY5221uEZ\r\n00/2RzFdlIrjCpp5Eb0FpeKMCwnEXbZPkug=\r\n=t7kO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7a7c8184214014c45d0ba8b4723714d1fe91f266","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.a274583b9.0","@material/rtl":"15.0.0-canary.a274583b9.0","@material/base":"15.0.0-canary.a274583b9.0","@material/theme":"15.0.0-canary.a274583b9.0","@material/animation":"15.0.0-canary.a274583b9.0","@material/typography":"15.0.0-canary.a274583b9.0","@material/feature-targeting":"15.0.0-canary.a274583b9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.a274583b9.0_1678391540644_0.7163195131208417","host":"s3://npm-registry-packages"}},"15.0.0-canary.da22ca960.0":{"name":"@material/floating-label","version":"15.0.0-canary.da22ca960.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.da22ca960.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"20e5c67786e62b1715dc001a3c5a2661b9ed710d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.da22ca960.0.tgz","fileCount":33,"integrity":"sha512-bergJkXvq5+16cBAyjJOOOFvRPsiM58HufImkHFM4Fq7wZijESK425YqoRYk0f77ISyU+1t0e4VLi5tuqbi4Og==","signatures":[{"sig":"MEUCIQCWHdWd6VQo6HpLKUMDm+1MlH7KEkmYjeCpaVjPfDvCNQIgV2miqzAVvSV3JLMUUgrrf/5oRBYHGuFmn6m60j6qQH8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578948,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkCj78ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrmihAAmada757gzTv9YLkWtvUyogHF2VZ3uh9+RiwRUPBqwTsTNW7R\r\nk+7Xn5+1G/nan7o5ZY9peN6iJ+r5pZofdb9ok5/pX2BhQ5pg/kweIvyp0EUf\r\nx4mZRx+N3tDmOlDgfq1PJYdheTpOBHkpMAmzlZPcva9WoD9TZLkRzAO7RZcV\r\nBM8fkW4vRh1BUaR0HqPDhHGZhBiYDpZm+q3DRgSYAk/FIfYTecO/uCj6jDJB\r\nCvHp6qeRsOrI/LwATfrh+oDaruaF8fc42NK1UavTIgxwFAatlOq3ldkQwssx\r\nPNqW+QZvEAHUWopQzgH67qFvI/Kf0Z94qpzDseyZ3i40pJrIgvKK1PdxHEjm\r\ni7HIxf0E/iVvNixovzvYT4NRkJj1MShgR8unZG88FgMnPALuDINXI1OyIZ/S\r\n04r7KDbIShhZOJdxmSX3mZfjOZrMSwXLaz6ZNc4uzm8ja07o6rkMEBNihTx/\r\ncXqCZ9yLT7mxiz7Z+SCTKnU6dt+EFVxG+7IpbMJdWpemTAykgpPGhvFNRgX0\r\nL4OQ1+AA8lhNdzF1ANV/jq3ZZVG288SsQpFhLPMxcK6Z5D1O0Hx8RlcyuGJ9\r\nROuIV6EJOb25izPC8zJYHVY2Z/VK3b/BF05QqOn3hiWyfgONKg55WUnWapuU\r\nMB3OIe1Mb7nBFLkA7lMkCy1SKuztih7sx9g=\r\n=ehOW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1b58f37865efc4ba8ba06e1190cef502dee9f902","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.da22ca960.0","@material/rtl":"15.0.0-canary.da22ca960.0","@material/base":"15.0.0-canary.da22ca960.0","@material/theme":"15.0.0-canary.da22ca960.0","@material/animation":"15.0.0-canary.da22ca960.0","@material/typography":"15.0.0-canary.da22ca960.0","@material/feature-targeting":"15.0.0-canary.da22ca960.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.da22ca960.0_1678393083643_0.005992180479172271","host":"s3://npm-registry-packages"}},"15.0.0-canary.304a94e8b.0":{"name":"@material/floating-label","version":"15.0.0-canary.304a94e8b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.304a94e8b.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ae3b21d6888462702363212d6c05327b124e1257","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.304a94e8b.0.tgz","fileCount":33,"integrity":"sha512-TAq+vhxeL0XzYdHocUL9NJRPd03JQ5D2uGH4ZI9g1sMxr6f6kyR2bz6Ej5y4qysLlREH1cLPFvDsBMl34HQ8CA==","signatures":[{"sig":"MEQCIGXl8t7B/lYK0R9FeOBXmycFecTTpaYRhnqKfu2y/zhXAiAZBNorX/fQqD5mYHoJ7FqnYNyZkZm/3IKwJZzgpwcE6Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":579142,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkCkU4ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrrXA/8Df4BCpphhZc6ogPAHlOrGd05udtuqXoge64ybO7mjFqahHbe\r\ngnK9vjButCy7nerLt2S9ZjGoOF89GM0tn7OP+SGLObbW5UFRkeQfnTnhSr3G\r\nrVKy9uh8r0z8UEUkzGwP/sCkj5D0y2s2GQ4HISUXoRHOIUrGEFpPe+qcw7j/\r\nu56Go7MZtuU0b3LjHLlTaLu3JWqKVJJ/PsdHsxvSRjvNCQJgZySaStqLFWZP\r\nDeZCR5GY8rt2Ktl5cQAHjlIs7cxgBMVcIeuIsqc5nXB/oWuqu3dsiY/2KGtm\r\nqYs96grrsAtIcKzEOnr+dtYliGkKSuGUuqKPJqADrRSVhhlOU8Jzb6Ji/Wtn\r\nzJr8KlbajkjqagjFU70AafOKXNe4pWXkXGGZKnv5WhMqWlFmyL51oBDT+ILH\r\nWd1xWoEtldmcqLuoNlecnS4bwvQc9iayPXDx9JiQe990PRK+51bRf5x6ejtT\r\n9+PB1ixUH4VkbBn+/RZ8tfBwVKLqwG8C8TraZn2kkWSRd+74/3jxlw1R9Iml\r\n+FcQRWyMDERG3wZ0rJtDiHsn3RLPIiDFqJzCyBSqALKFq6MwnrGtAeIzYeqH\r\nZEX5qpCZlhWYaal3VS16Kq3+7fPm6k5qtRnE3CzdsSrFJrDTzMcynr7xk0kg\r\nnrVrOVQzvXjQz3CfvBglAnpc9IxOO4QC8hc=\r\n=JZp8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e7550e10d6a01c606a6dd78c58c4ee6e44c3f062","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.304a94e8b.0","@material/rtl":"15.0.0-canary.304a94e8b.0","@material/base":"15.0.0-canary.304a94e8b.0","@material/theme":"15.0.0-canary.304a94e8b.0","@material/animation":"15.0.0-canary.304a94e8b.0","@material/typography":"15.0.0-canary.304a94e8b.0","@material/feature-targeting":"15.0.0-canary.304a94e8b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.304a94e8b.0_1678394679801_0.8817037330204462","host":"s3://npm-registry-packages"}},"15.0.0-canary.6c265915c.0":{"name":"@material/floating-label","version":"15.0.0-canary.6c265915c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.6c265915c.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4ce7f4dcd0037f4b662b6ff8a64a1288cb6a8049","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.6c265915c.0.tgz","fileCount":33,"integrity":"sha512-H78C7P81R59t1EZdO3N24kGMqzYrvZQseev69t1dwa7jgf6aJXY5EZmgYmR99wb8kmx3ZEV4vzbA5d0jrJ0vRA==","signatures":[{"sig":"MEYCIQCaccs/OVkMO6cukOlqLwtH2mml7yI+rhP51nKmdN6CVwIhALnJuMnIUxDfrYBg20TkXWZ+1b9/f0JaAl9EVkSKpQB3","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":579142,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkClPTACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq9DA//b5UPa1kiRhleIGWvZ0skStOfxjG/fzkmNCsf2Tlw4VHfTCgf\r\nKnF9oVrJ11wtifvXLMHxreGz4Tzyt+B/1NPAnyMQGni4enaU+i7lxGPRx8AG\r\nNbzGqRi6Qy3XI2y7qLcPbc7qSCsrp01sUseVfoXMrRY6lHkwqjTTPAUQ2BrH\r\nNKPZ4iSg8DCnbW3glAeVnK6dsgc4c3fNkCJXHv3lkvyHX7x9wnbXTDlt88vQ\r\nGHlNwqh2tp9uUkNQ3BXSuKRZaTp/OTnw3w5FNW2/cURQHlTrF51Y7QaFiBOc\r\nQwMDj3Mn4m5d44UkBXv1+U8B/vzBlG9fc5QB2gWUxuY46MV/Qr2+s++iqu9W\r\n4KmQAP64nmEy+Sj4V/dNv2GG7grgZ9hsatx5CkHYSlIDunVAtHU/hpMc/ys4\r\nEiQcFgzzH1p8rzWYZdDC0VMOKVIBUgmdx723iqsuhTqfsRnhbchsIG/i2zMc\r\nxGEWW7ue9lf+eKwKnibUNfupIuQ/tcM5p6/5mN4HUYpVJn9Tmjx3ao/7CM+j\r\njgQTEucY3zw0LZ54ASCM5P5Q6LC2we3lURe4RgJ9fhrgI4WJPnmJ1C1uedLf\r\nowHuPHkEO9p1MwWLpItpgBVT+MIFW/PI8OOMwUi9Ex+id7TzNLS3LmpZ2Ni+\r\nundrttq+W63FXHddVLumAM81qmPUV6bhk1c=\r\n=NMi2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2226d2e658d88eace91ac63729977eb6bd7a9af9","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.6c265915c.0","@material/rtl":"15.0.0-canary.6c265915c.0","@material/base":"15.0.0-canary.6c265915c.0","@material/theme":"15.0.0-canary.6c265915c.0","@material/animation":"15.0.0-canary.6c265915c.0","@material/typography":"15.0.0-canary.6c265915c.0","@material/feature-targeting":"15.0.0-canary.6c265915c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.6c265915c.0_1678398418840_0.8520139124261097","host":"s3://npm-registry-packages"}},"15.0.0-canary.de5224633.0":{"name":"@material/floating-label","version":"15.0.0-canary.de5224633.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.de5224633.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"199718dda96f2095bc7228a20616ac62768deac9","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.de5224633.0.tgz","fileCount":33,"integrity":"sha512-trfjkL56P+75m4lcP9JIhPZnXV0Q7i5JebW6zgKNuveiQR+QkHtjfXZ97hYklvTG5Hz7ZxECDExi40aFHBTxYg==","signatures":[{"sig":"MEQCIECAY3V5nxgMalaC2Ny3xXWfB5CJ7dN27xjo98mvXcYZAiBzaZBLPtlEZhjO6ZkvQ0NjQSYKXdldsbRQO8ZfX2XaAg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":579142,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkCnHtACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq2lQ/8DgjJjnddVMjzd0vohcPlYkvG87n+rPfQDT4ZTYXRAjeA+Bj/\r\ngxqvd6QHpVDQRNdWfxbvHwACbdjMzWN791C5V7LW2SHKFX8mhXd49xLZtY2m\r\n9ZUTD/cmfV2MMSe+1v3iFk924U6+IYZgVqZolBa97Oo106ArniW2sBgmJtDr\r\nzokXgz3q+6EAtbrvU0dxzXy22eoodikE0ufiHmWGTXZsN5HQH8LmGWfGCOYr\r\nwauaSEy5gEhtZwG8zq/VSSIr0CgC1DNjQYIe6ZRz7NfkKT4dnDC6ff5Bd1pu\r\nHOn6aXLPix665zftlYufsKVr94Nc6AiVEW26/lxDxGb6jplE+ebTYUVZokS1\r\nRpDsPDPbyKpyREmWYbgHqFJsGZJoRooN/IF1ANHegFxj1HIREV5Km9PnOBnn\r\ni1O56BZFiTLnjOFZxHJyby8kX6Evxg3i/+sIlk2U76k9PJsr2k4xe1x/YM9k\r\nqXHpg5F19exfyJ55MTTbMWqaqJjTcogkZN8jVAxxSGhDiWGmkiETHy/1xywx\r\nrJwl9783O6jAMmxA//euhHnvv72Wi6xwMC2OA3Fyiu5BhS7c12V2nGBASHfG\r\nZJDaWCJwyt7IM+BOvbJNV51IsvCyDW3IgJO5REnuwEBmqBA0UIWGzC/qF/0G\r\nD9A4yokhwEF17JMmhq8nEzuw3nmuTSr9nZY=\r\n=smlJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"994c620135276cf7948cc54b286c6c306c3ac01b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.de5224633.0","@material/rtl":"15.0.0-canary.de5224633.0","@material/base":"15.0.0-canary.de5224633.0","@material/theme":"15.0.0-canary.de5224633.0","@material/animation":"15.0.0-canary.de5224633.0","@material/typography":"15.0.0-canary.de5224633.0","@material/feature-targeting":"15.0.0-canary.de5224633.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.de5224633.0_1678406125431_0.8750760587822306","host":"s3://npm-registry-packages"}},"15.0.0-canary.8879557e6.0":{"name":"@material/floating-label","version":"15.0.0-canary.8879557e6.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.8879557e6.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a9cb1638ec8ae1f5cd9da807ae86cbf0dc93e843","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.8879557e6.0.tgz","fileCount":33,"integrity":"sha512-aAOOcVpqB91hA5sF2ogaXnDBqnBYtqqAAPndneyDlrIm6b7bjcdecjroiPSCOlvB+T7nk0hWkjVBMMG08wR4wA==","signatures":[{"sig":"MEUCIEt30wcHmG1F0hEC/rbYHqzMxprJcCbcOtNsggTNZY36AiEAnR+kIr5BhdqoGritRt0E9AMxQmbNEt0XNcztvT7vnWg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":579142,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkCzmnACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrecQ//fLDTkouEPblIXH/Eqs/DuPKsYF1LuJg5AtSQldh30n+DV/6z\r\ngMR0QfL24s4YpAg0rR8c6+mMfxzaYctTFQ8FnkBV8eWDsxc7zQW5oLfmPkVN\r\nSNYAGKLfXKIV9sY6/iB8Fl0xK9zriUkUxjtDhYERW88QROo6xmf8Sn6kW51l\r\nY1h8B45d++vff2sSZXq/z747NYJETlWzQ9pFdKFckPA5/53+edfhHR1usowb\r\nFvWZTn8mBkRaFdnjStswO9btcYkwzbhLwIgydMPd/JKMqiXFa+g4Keb8xCJh\r\nYXO54GFfmF5pGfNx4CB5ZwCbW8tWpIrIfUatnHa49keQ1x1f72dSy6peoDoN\r\nohmUhkpOPUI0aIOkUvVDLHtqAxNM5WnVUAxUJKdeQ9ZE1+Vq7AIVAWTBFluJ\r\nU02L2szZ/4EHqfOXLzpP+7nBKPEoXpvqljWa3NdGNYPM/z8vmqHTKdjHgkw/\r\n8RInkMf4aZs94hiYOHta+RBERIqU0covG07PvIpzScttnKa+zhuSYS/xGDNy\r\nDZ+WftnEp3d/64tAGhiIkO6LN7ByxZtBnaUgxGBJMm6tJSnvwYWUbLLNg17c\r\n4g48FrPlalLY3rGtwh0bKOwdXuVj1ircZJqzVGY28hQTB+BLgPq3xdOd0Kmv\r\nUk8wV9lFWBjiaBxbJ72CiXweV9UU9EF2vuU=\r\n=PRsL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"28f7c223e2bb4a686b970a425d14b1d1edd70546","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.8879557e6.0","@material/rtl":"15.0.0-canary.8879557e6.0","@material/base":"15.0.0-canary.8879557e6.0","@material/theme":"15.0.0-canary.8879557e6.0","@material/animation":"15.0.0-canary.8879557e6.0","@material/typography":"15.0.0-canary.8879557e6.0","@material/feature-targeting":"15.0.0-canary.8879557e6.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.8879557e6.0_1678457255035_0.8845066998762847","host":"s3://npm-registry-packages"}},"15.0.0-canary.23073a303.0":{"name":"@material/floating-label","version":"15.0.0-canary.23073a303.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.23073a303.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"8e6cc52ff19ca24fe94c7fe1d841f7119637a541","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.23073a303.0.tgz","fileCount":33,"integrity":"sha512-hfRF0ktGo1IGTWNGuNt+/refojIOanSEGH2jw00DSGt9bJZsz6ty3IIpLMGP7P6pxxsrIj0kZ7K0X42pjwjUYA==","signatures":[{"sig":"MEQCICaR9twzFFzIDbAaV40EusKZ5bGYuR+RYzUT4bH0A9/2AiBmgU7klPVtkEQdR7JdiQjIKV8AxncvWrnHlbBlDfe3Jw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":579407,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkCztEACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrQ9w//YMCVkwIna3kvS+cWdk88cRwLTstVfBdX+89GUo6DC9ahSr5z\r\ngVr+LAiHU28XNHBQA4D1p7ogZU+qTOMwsFY5TunRrylh+Vybu7+FuX8JA8oq\r\n4eaiG0laRkV94nkE+VXFRWGSZ5coKSXe54Vf8lXV9bRL0eGNJBGy6BhiWd1p\r\njzCA4VwAJPgJjdnvrVDW6KBcR2roBMB8o+3z3Kt4kvq14me0pDQoICMKKWbO\r\nsIc4ugxbjkJqawsJcw25JwKmx5edFcZp80Jdn73gNwtbeI2a+VxMz1H9OQQT\r\nuII/iuNN4iif7I/N/YH9IlWT1/HB3ApEr6B9IwWsteuSgPSPP01Hj8V9d2ly\r\nfTsrEDPkDvGl0p+vK4tzmsTG9oXy3b24LGnJaPopJNy6eJdtFwrxf/OVAKOz\r\nUsCnobhsTs5C8trDNUt7EISs9AlJakCMaufzdx5/9ffCnwuZSboH4mC5wJdT\r\nmjkfli5foBnFwaaphOH5lA+QecLSWqRdgWEWQ/oyJllqW0KDjXNiE/lvByUS\r\noYMh93W2DG0S19v2ABFUNVBMpF4NdrJ9ZZL0El0b3knpJgMHFxROs6R0Ncfu\r\n0JvN3+y9jqlT0Yae6t4TW9RvS+0RDt6a70Fxm36deFNReZYOzlcSVvqqSsev\r\n3sBFnHrxh3weRvi4/8KCrgNKJjPDp2Aop4g=\r\n=fJIy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2d7826e2ebf1c1fde12f47b603e66ec0df229a8f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.23073a303.0","@material/rtl":"15.0.0-canary.23073a303.0","@material/base":"15.0.0-canary.23073a303.0","@material/theme":"15.0.0-canary.23073a303.0","@material/animation":"15.0.0-canary.23073a303.0","@material/typography":"15.0.0-canary.23073a303.0","@material/feature-targeting":"15.0.0-canary.23073a303.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.23073a303.0_1678457667923_0.7415033873495962","host":"s3://npm-registry-packages"}},"15.0.0-canary.51c7d4014.0":{"name":"@material/floating-label","version":"15.0.0-canary.51c7d4014.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.51c7d4014.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a383e8fe99d116bd69af0a728f2fe7a13e0df6de","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.51c7d4014.0.tgz","fileCount":33,"integrity":"sha512-0aNQOwky+tljtmMK1sPBgFa7trptyP0xlFWS51loTdWSGHBV7YVN8tlXk8vl5jK2La0OZ5bm04NCMT5nFnVFJw==","signatures":[{"sig":"MEUCIEjygw/nFZuwy4k0eu/MKeHm9kqeGrFOJ3xD501bAyBjAiEA2O6I5C61jwQPMPk3OhPG/Zw9Fka5DQ4B6wasEHNpraE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":579407,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkC18HACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrXfBAAh9cRn85n12eeTgukagHNC4vteLRtikTpyPFuYNkRDM4GRhCu\r\nZphxVsGdt+A0G3PDMO5w3wXxDz6E18V4iaSMaXawMDLqRCvpoWAoyAJnoi0/\r\nmkS+0KlPXIa3nZhgw0wKupGVECYzA4MuFOvq9CkSG9YbXkcyzng4FSOMHYGY\r\n2h7dPzPhhzloHsr5E8WGTlwTE1268JuAEzrBDxycLFromleb4IAubsARyFmt\r\noHiAq9RX8VJBXM1siRrIp4yj1fwl8CIybc1A8Hw7PEsroQBCCmxHszZ/1UF4\r\nR8FlUFwDm0Uv1CG0a7j1AsX1Za6UfshZkHvvKN/aHc8klEDx43RBljx8jitp\r\nqETOSzNkpjw36k2pneuyfwKYUd03vHdLa8L9mJXjR98wsULWO+452Oc3eJwb\r\nZnjREXRz4lDwceThAYcG6zcXd5c12KEBrB8GQLlBQS43MUS6LGQA9trokRCi\r\n/xFyn2IcZKXCYVDyZWcMzdEgXULmSNZ8E4zi9Q9ksG3CRwKrNDHXE/d8gDf9\r\nv9OrdIYJEI23Xh+I43SoH4UjVTVrgIdplL7tqc40Jc6IV8Cttz9KPYTCzJaY\r\n7pkC/qRrdJLbjOzPytIkJI3f3yFUn4W/fk0G5siDI9EQkwaMeK49GFSyb+8f\r\nZ1fE2huKJ1IScLWP7DL1erP6YPWDY5qmm3k=\r\n=6u5I\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"0485e6059d69163f12d83408c09b1d41f6cb8dba","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.51c7d4014.0","@material/rtl":"15.0.0-canary.51c7d4014.0","@material/base":"15.0.0-canary.51c7d4014.0","@material/theme":"15.0.0-canary.51c7d4014.0","@material/animation":"15.0.0-canary.51c7d4014.0","@material/typography":"15.0.0-canary.51c7d4014.0","@material/feature-targeting":"15.0.0-canary.51c7d4014.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.51c7d4014.0_1678466823172_0.329067430889592","host":"s3://npm-registry-packages"}},"15.0.0-canary.1175a5be0.0":{"name":"@material/floating-label","version":"15.0.0-canary.1175a5be0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.1175a5be0.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6025f5616e8bb1cf304595dddad85c43a67214ec","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.1175a5be0.0.tgz","fileCount":33,"integrity":"sha512-WIKbTjZP7oWmeiTau+arT9BM6Ba51wLTn9HYOfufq98XIapu8ZTTJtlNpxBZsFFnCJQMfmNZLdK5ZsTRtn9RwQ==","signatures":[{"sig":"MEUCIQDC2lFGhhlUy3PNqGi5ZLT5Cq2myGud7onm4eehxYwmzwIgbmnGtqE9G8o0EPIJYP4iYQdssd+Z58Z1Iiq0U2rpZvI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":579407,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkC5dvACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpHcQ//SFREtyIzKas8bOlGqD6r/uIRA5M31VceJ+jz1Nmmvw3lK2MA\r\n5DF05ME+BLWnM3SjbzaraxvDp4fA5+uH4FY0EI8TYc4b0fP1gQHX1os32Arh\r\nZqDPHeWT1yA6+1KTgcaGA8r2Pf4ve23zPOQKwyiVH/mU/WfEpZNfO8s1rgoA\r\nFq6PkblKefB7/lf4OoNU06KFqF9x7hc3Q2k0B6ZmAqwQeJIQ4rGiPbDxZTbX\r\nlm4z15eGGyIQcW5GRZYXvL28OIyiWhKicg8OkG1C71sgf2YuBfoAOfoUwHsI\r\nejjFuOC1+sQLtl04cAPf+RAyPYFQObwz4Gik24W8wKRtP+NlVbCQGF1GvdMC\r\nbKl4YT3j2/LmTtwoNAD2QzLN8rpsX5/C1V7cQ6md/H+0B84TUSqAn6gMtBH5\r\nSUrya2sv3DQhEKdd3b5d19a8IfW4W8gZQqpvayMyn9hiUZhfZPFQodU003Rw\r\nUyU9XfjqbMaXDaQXKRRsbNXqeltWlO3VGtmuU4hcbcETiqCnfZiE/7JJb+lT\r\n3nzN/627S2VsQsK2WLGKoWA15X1hoWLmijceu8BksmW8RTTDU7LzvkBY9TMA\r\n1d64xzgldTUXPENxASghTIutTKCiEsVOE5cUI3sD4noYeFYhfgpqntkvb+tw\r\nHpbKP5zTaFZiqiEc3y3DMpAYRx4cR8C+zQk=\r\n=CenT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1fcae3e4ba7c60c6a51ee8e61b01e26a324b1ab2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.1175a5be0.0","@material/rtl":"15.0.0-canary.1175a5be0.0","@material/base":"15.0.0-canary.1175a5be0.0","@material/theme":"15.0.0-canary.1175a5be0.0","@material/animation":"15.0.0-canary.1175a5be0.0","@material/typography":"15.0.0-canary.1175a5be0.0","@material/feature-targeting":"15.0.0-canary.1175a5be0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.1175a5be0.0_1678481262803_0.4531393776873056","host":"s3://npm-registry-packages"}},"15.0.0-canary.7adf3af80.0":{"name":"@material/floating-label","version":"15.0.0-canary.7adf3af80.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.7adf3af80.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a30c3c8c85d749399171495160a442419ed71d04","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.7adf3af80.0.tgz","fileCount":33,"integrity":"sha512-haiVLgZo90kDX2KGOqgdD8327sRw4y7Ga9YMiTVll4jnE0jD8y9hCypwNuC4ewM69rKg4Bkmf9O1I9OaBV6Jkg==","signatures":[{"sig":"MEQCIBGWr3pJL/U34ZoBuCw19fepcAp0p7HPPAHeVau7ybxSAiBSgdO/Vys9/exuams/JUHWiHSfybFgGrLkf7kQ1YrYew==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":579407,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkC9hUACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqhMw//U/AsoN0AhNV9JFOd+TAIDC6Gs/IH+f07H8ThoahwmFBUsvGb\r\n4zV/hfPSwdnfTmTDdG0kWyFqYzaDwfn8ocx+qcNKhndg12/zDkfnJKIOOJuX\r\n9d+R7JhIGNYd6non/Ob1O0IblPIrQCTGYTkXa/Jyiztn5zHTzgrZaUNf2O/+\r\n2FqzKVr1pLO8YQC6qDfrjSay7KDrKjihLev+3UBhyWxHW+BbKfpFWkSiWzlG\r\nRjH5X4E+kWsW6FkKPgEREdgcIDyux8onRCPyTvcB/paXe/t00MU/wcUxtj7F\r\nf2glbDQQUEuAn84E+3dh2Cpnt+3h8EM0byi/j5Vp3YzrdJkBh/Pwi0YLRRQT\r\nsiVpzqPVHYZOXAUaj0VjXw7NN5JUbN/miOtccwMl6/QZ+gByQpqwQ+3plAkE\r\ndHDoRgZTU3fc8mZRZ4oXM0QeRKpGaVl2XdQugJ2BK7vI5S+F0YlMOm1QRAbI\r\nnGiGHB9jLXCNpbuCJ/i4B+EyGmOfdy4trZlZn56luYfFS1a0cGvmUfYZXjq6\r\necoZuRgO8rI8zDVE8TwkCrA4uk/mx0Nis8AfLAs+Oc8W3JAk7QRl4T27d5Oy\r\nMvJOCVKG5JHOIsm9eBvDvOyFgXTp33l5AIHMTYmUwyICOvJN9HQFBUkX2onk\r\nphGyT1lwX8OkoupD6xXpcNdpFtR4B8t4DB8=\r\n=oGv4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"57b0835838a903c8ac3ba6c8edf79add958481d7","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.7adf3af80.0","@material/rtl":"15.0.0-canary.7adf3af80.0","@material/base":"15.0.0-canary.7adf3af80.0","@material/theme":"15.0.0-canary.7adf3af80.0","@material/animation":"15.0.0-canary.7adf3af80.0","@material/typography":"15.0.0-canary.7adf3af80.0","@material/feature-targeting":"15.0.0-canary.7adf3af80.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.7adf3af80.0_1678497876696_0.4595203786027522","host":"s3://npm-registry-packages"}},"15.0.0-canary.82554d770.0":{"name":"@material/floating-label","version":"15.0.0-canary.82554d770.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.82554d770.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4cd54ddee54c5ed65a508c4909b9f4a015c2c28d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.82554d770.0.tgz","fileCount":33,"integrity":"sha512-dkSZZoxFmoEvjxn07/NBwHhlkjCkI+glLn9zyulO7b38zmnL7XadOzdmuCxfHJxe7ezJGYwVA3gXbU9oQzqYyg==","signatures":[{"sig":"MEQCIA3mg7mDcnxW0+lxaspLKZmxMiZ3JwEQfD+fn7XQkmq5AiAEl8RlVN4sRWaVW1FdnDs17PEBfU7a+gRfm2tyTYAqLQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":579407,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkC9s5ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr1SxAAlCTsED/PVqdBXlLWIk1ysg716GP2NVFGtWASlNypoMvKnsu4\r\nxrofD9govuO0xF/VC3Y0l2cpUQbu03c4s51hXJrOE4gs+ELCBMiwPuzgN+N+\r\neak1PTMWI09+tMtKpNlp2nssLxeDwgJA/P4ELO9s5DOe+UioX3FnEPKcXOaU\r\n8pKyZa9XeaB3cjhnylIGdbVGYd43Ndc9D/IJEmZjq46NvVv4KcYS5bIc4I4g\r\nnErA8ynr2BbalNxCdDm04QOnq1i0MB5rhDgP474V4NgXkxCUQuSZafIZPHk7\r\nSnJS4byHfGwIwBrxLw6vEY6OmvqBBuBfrBlO/6XqqNCgbMhoxDleUj8Xjob5\r\ntZaNZ9j4fNEAtwMLRt3SMBphzT5dwDdzMPigdrktpY6rGQQCh/tx39t5oc+O\r\nSHfYlE8Sg+uZDskEqrcNW3s+M/0TwWMrnKzakOLJnGUx4evw16XZ/BnbT7qB\r\nhxiVEabCSULnPAkeHecw118DtCdWoQUYbG83dJWN2R5DuyP1ZgJ/YfiS6cTx\r\nIW7oMM8ZCZQiLq5sZCfRXt+SfJDanh+4aWI9dkum5eZezSP3kdbj1XaDd9Zq\r\nMQdaTkTQkrHQV+RcNuJSrte4VdAZ6Dpte709TD62uKo5JX20dFdhi7EF5SBu\r\n8A9jAt/8W97JHN39508kIUBrsS4R8T5S87Y=\r\n=NmVN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"500cec655918e97ee1edc3c86ebccdac24a28f56","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.82554d770.0","@material/rtl":"15.0.0-canary.82554d770.0","@material/base":"15.0.0-canary.82554d770.0","@material/theme":"15.0.0-canary.82554d770.0","@material/animation":"15.0.0-canary.82554d770.0","@material/typography":"15.0.0-canary.82554d770.0","@material/feature-targeting":"15.0.0-canary.82554d770.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.82554d770.0_1678498617623_0.9538898431882752","host":"s3://npm-registry-packages"}},"15.0.0-canary.93fc524b7.0":{"name":"@material/floating-label","version":"15.0.0-canary.93fc524b7.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.93fc524b7.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"46e8d9d7010f2ed0771cefa4a671d40183e42e05","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.93fc524b7.0.tgz","fileCount":33,"integrity":"sha512-j/WdA7ivdybuGe9VuAM54p2s1PedodwfojiblGUagpO2Pwyc6OWtJtEyBkcXxvupHhYvp6RwmFiCfzDWJNz3cQ==","signatures":[{"sig":"MEUCIQDFGgFGKY8rE7xr8mO9IVPUtl1+odGIWgPrLjZH41ZLYgIgSa/NFEAFt24TFqlHYbcp5aDkOVEf8UaUu3UW/r/TAJg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":579407,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkDuEAACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmoi5Q//RD/P+zw7WllWawXYbpB6Qo8H8MOMvp+8XWW+S6/DyjIlHX1Q\r\ngQ/gXdeBnnBkzFLeRlCkkw8rb5z2PFFGT5b6hnehfEo3AW11PeMglZ25Ip4e\r\n6c6d9am+tOp2JwdcdOSrd1f/mtNYgw97nfCRQc1f1BSEmwm/FbSUWQV8oovw\r\nm6QpzeAti8IDCVcSJtJyXp4DroTyqutWrwwnjm8226Qq4nyAOvhCOoovRzYE\r\nPqTp4TpSZtmKIf45dQFrqRpQcDgxjiZCC1evlLw+g52meU6EXZv6lGMICzrQ\r\n3N9kjYoYUXZ+jErA/6HNj0OGPeXCgk0306urRag3e+wG6nS5BQGRCArdUbrI\r\nbr+xMpSocI3KhdiGd2Tb1WIfUkB3eXaRd14OrmP2J+Gmo6yYfvQWHD/Q6M95\r\nD/Sdyy2W80el0vnNBdCb1e5mp7sDGJsiMFWARB6Pe353v5fsZIznwJDLaxqN\r\nS2Al8s9Ydsh7w/mrS89jWtuIyS/PF8mZvRwMbM3MeVz2leACkARwy8v2/Eh3\r\nSewpcvPPaVAqmxdM1QqF1EPB0aBXoSBOm0EUVuqxcAYCj1Bb9c3BhN1dpEXJ\r\n2IJdxDG4z39BtRmQ/FMLgu7zX8zUIbFCjtKMKpOK9y7yU1FLsGDjlUT//6Z9\r\n1nJPJwqa0NI24Mhx6h99HjcJnpgEZkmy63Y=\r\n=YdUE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"338daa93529c874da1af6eeb4fafb935e014e096","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.93fc524b7.0","@material/rtl":"15.0.0-canary.93fc524b7.0","@material/base":"15.0.0-canary.93fc524b7.0","@material/theme":"15.0.0-canary.93fc524b7.0","@material/animation":"15.0.0-canary.93fc524b7.0","@material/typography":"15.0.0-canary.93fc524b7.0","@material/feature-targeting":"15.0.0-canary.93fc524b7.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.93fc524b7.0_1678696704106_0.936887443075388","host":"s3://npm-registry-packages"}},"15.0.0-canary.50be0fbae.0":{"name":"@material/floating-label","version":"15.0.0-canary.50be0fbae.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.50be0fbae.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6b01964af46c71cac048f1efbe6b1c1380ea6a18","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.50be0fbae.0.tgz","fileCount":33,"integrity":"sha512-VCruSoVouEbZxCKVMlE0IurxePWxUughpq0ZHBXQLF+QwYtvFNCUmdwzDwrxPRCPrhlAZOop8OBJ3TcTWJmtQg==","signatures":[{"sig":"MEQCIB3a/jViAul55D3sIMPkC7nYexAlWuXRctWtWxURaMKPAiA4nLQ07NcMA4Eiouza51CDlsLZ8y84Gvny0k37yYsaMw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":579407,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkD2DWACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqfUw//Zj+VM799I+thPYuys0vT2r2rx17rtD5ufVSYNLz74kMLoiRU\r\nUgHQURYXHr1Ranl8kEMVGCfzpRsuf2o2k6wFM81rI/h7d8/WdD23W+lhAWA8\r\n5Zqxqqme8ppku67urcSyA4JZIp1eJg8dPaw1BWRW7rZJF4KArUC0qRo1MC3P\r\nFLq1BAxLTohVh0LG0jnX9MRvECs0EAMvXOqbKu0Cgx9l1lNNhjVWnaq+/9xN\r\nRwV+kgtqO6zrZu/KJGP/wUWwphsnpVJ1joWNzzlAy1IgwXQRfFD1J1lver7i\r\nWetw5r13GXFkM6RXcdn7X69nkU/SUrqXovvPAl/cY+Xbb2fTSrKf/K4lKUfo\r\nINPdE+kMjTXBmVRUAHmwv04d7FvQhaN3L5KEHRn+ngLKmMrAOzC6uwimyBvF\r\ntCMQ8ykDPwaQnec/bp/lqPAerrVJRtuSFfCnECIJQTlSAa+1XLwGq6KEhDEa\r\nZg/JKOLQZfGFE8mERtMRB9+A1toO3paGct70gLVW7apwquEZ5hvAt4iIAeNA\r\nGBLTQf7G3+LTCAa2hp4u2hAeR3zynxw7Yw9ACaLppyUNxldFvWIMWx4SZwWZ\r\n5GJh0pJsKVPcRETSF5LPLMFBm1a8kD4CrtMoNOJ2FOvnIECAwSo6KpEqmKIn\r\n6V1qeTF5Rd0YZfyviKXgTJpD0v0b8SKL+cE=\r\n=ATh8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"405d98c2882461cee8d47ab1b16a4666ccf7129c","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.50be0fbae.0","@material/rtl":"15.0.0-canary.50be0fbae.0","@material/base":"15.0.0-canary.50be0fbae.0","@material/theme":"15.0.0-canary.50be0fbae.0","@material/animation":"15.0.0-canary.50be0fbae.0","@material/typography":"15.0.0-canary.50be0fbae.0","@material/feature-targeting":"15.0.0-canary.50be0fbae.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.50be0fbae.0_1678729430575_0.5565269602777394","host":"s3://npm-registry-packages"}},"15.0.0-canary.6b5ffccd9.0":{"name":"@material/floating-label","version":"15.0.0-canary.6b5ffccd9.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.6b5ffccd9.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f843622e81f365a22580165dbc8664459d634ff8","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.6b5ffccd9.0.tgz","fileCount":33,"integrity":"sha512-MLmoiMluchJDFDHRVdTNGlTrYz3mFtuk66cU4pu9o25BZmEPVsJKSWawS/A6FO4mt8EKYYI4c9VBS12hJ0hRHw==","signatures":[{"sig":"MEUCIF0iKqxHrY+OlxJsqrX2UPb/emNu3mNHz0xaKsOGmFU7AiEApYUt+mrnRD1Q7acItBPqBDccyEgdPDUsdNjJ/1WAPQA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":579407,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkD2GcACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmryOg/9Gy3NOtWt7R7ltOiCu7QCo6gVqSWsImmxOvhvv3GqvYfp8uBI\r\nsg0Y1bCnAjPABzB7ANMqXw0HA51pTLAM0bLioD8T+YK2qdP784hUXwcBh/YO\r\nVflRZL7XRpIZYzD6XMVzCUvnDxQz7v9kf19SRddtsxPQ2NFyc5ve1jDoht29\r\nRj1mhGhD7SiKfCh93/+x+GFqdopGmRE5QzQqdcA21yJubydd/mzZ7d/fIFi7\r\nU3PLGVxkXExMnnNfHbtTywIYZDIk3qfladVLCAS2G0XldglZxMCjornZv1CE\r\nZ81jB+auDVAAflTomPjdpeEwQ6/SgKzUfIlFtE38uws4bc5iS3G8jZvIVoHn\r\n8e/C+6ZvVM7lYExzOXzr3hl3XO6m7iZQvaN3TgoKTw6Dq3JuiFWzUS1JmoWT\r\nhzN/z2mVddb/hZmg77yQIZhuZxjH8dhK962kD8Q5eoXJMr1ufjuXcW9X2GjP\r\njlxZIH8Cs08bCfZxvbMHgOAqt8F/i3/2ie2s8Mt9CJBxM+24JrnpXv5bG9N8\r\nX/EKlJhT2bj9k0KHCccXxbvWw/nfpoEk3j1R1MjEwH3Oj/n6S6b6U1R8dmgn\r\nsdlF8APqzpvz+zkAk5fJ3XTsx8Cwj3kOcgG+DfJzWAtL2VPVN1H286Q1kN0x\r\nO74pr8GGw7pcUnQqAF820+4wEFt1GJtvVDo=\r\n=RB91\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"d30761453fd80caeae042d8999af672f9c3eaa28","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.6b5ffccd9.0","@material/rtl":"15.0.0-canary.6b5ffccd9.0","@material/base":"15.0.0-canary.6b5ffccd9.0","@material/theme":"15.0.0-canary.6b5ffccd9.0","@material/animation":"15.0.0-canary.6b5ffccd9.0","@material/typography":"15.0.0-canary.6b5ffccd9.0","@material/feature-targeting":"15.0.0-canary.6b5ffccd9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.6b5ffccd9.0_1678729627873_0.19904509975697482","host":"s3://npm-registry-packages"}},"15.0.0-canary.1c8013f4e.0":{"name":"@material/floating-label","version":"15.0.0-canary.1c8013f4e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.1c8013f4e.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"66e22d7e6a45001583bb23cf99b24b2ff058493b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.1c8013f4e.0.tgz","fileCount":33,"integrity":"sha512-b/Irk3Yf1GDbPk5cbG72F9hIrlOAmCtDiIxIFwL+dNbRwbJRt9U3HC/e7M3/D8xXu83lnqV85tUnIQUjymIDpg==","signatures":[{"sig":"MEQCIBTo9opDVC9Is94a+Qaisz0O8dMAptBZ0gZ0gu6UoT3FAiBNxr0oVzig3xvs6H9yKYvtw7+gJRrEwcjCsOO4gp6F1Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":579407,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkD2UnACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpGYw/9F/Ww6EcHB4DSNX2L0qFa72w9dmwmosQ/mp9ltlKkKdFh8O+m\r\nDqheUQUE7VWAyOgGbAo6SlK2tUM14IkmZ79YpUpygy71BYK8gsEjMlvpMiA1\r\n05RSKzj/8NJkvzjSLLWfaMZFPALaD29QUVA0jdYHVsMtmkHHTjk8jUwmjgUm\r\nnz5c/57Zu2uAS89hC4bLe2VFd8lDU9fmgEq0Cl9eWieKErl0i5DcIkYwzMqo\r\nTCUj/IUI9CGXw4ncvs2ktU8M0hAbXs1MvhFBaf+MTRkt6dVnroQ2IOTtTRAC\r\nDIipCw+71yLFx+qC/xDaKO91cXVCRHrR7zXfiQBVYlKuh5OxK6bOtlVjIsjo\r\nD9VUiOgH72hMc8/CgYj1aWIyAwa7C1L9Jp4w3lcIO6BkmvD/+NyplzH19DYj\r\nda85CWM2bxZhzxG0pkFsFdCAbUFfdSYH6v8t643bWVtQ9dB3Z/PXYrXWi2Ey\r\ncovpRqxpOdwF/d4DIbzG1veZSFOOWb9GaV/rF1qKFC5y9rbtZfTcZIXiiLHD\r\nj+PmHJeqhy+/mDZVXC8//X0ZQTkmllxkk0tkZ/l0iFJKHAPyE6hjg0uw9Zzc\r\ndM69RC5cO4Zmku7ILgY0PCl+YsKArtCCeEiDRJZoqGJdVgs8fNWu1xacFu0/\r\nmIARzieo0nrKtS4RdXgGWuQH0lwWAC/OtA0=\r\n=w3h+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ce86f06ff0c2637e8cfa4965aa614efa6bb86046","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.1c8013f4e.0","@material/rtl":"15.0.0-canary.1c8013f4e.0","@material/base":"15.0.0-canary.1c8013f4e.0","@material/theme":"15.0.0-canary.1c8013f4e.0","@material/animation":"15.0.0-canary.1c8013f4e.0","@material/typography":"15.0.0-canary.1c8013f4e.0","@material/feature-targeting":"15.0.0-canary.1c8013f4e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.1c8013f4e.0_1678730535435_0.8139281036752575","host":"s3://npm-registry-packages"}},"15.0.0-canary.112715df5.0":{"name":"@material/floating-label","version":"15.0.0-canary.112715df5.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.112715df5.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"392c8990e833401a5eab21f188ad3b9ebc149c38","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.112715df5.0.tgz","fileCount":33,"integrity":"sha512-pF7t8j7wEoYKfX55mP92z62s5zlzR0cmp2cdFRVowkCvG/rTDuD8pOjxnAsbXEcdngFnY5s/dHlg+0tdCCzeCw==","signatures":[{"sig":"MEQCIGm9h7wPT2komNQLuDeGdkMiY1C0NQXG7SS1DV7DGK9vAiBi8d7++UszvvsE4yzGybP5OQPR+5HZNK0fl7odrX3tyA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":579407,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkD225ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqF5g/+NP1m9zXXnom5HW9HoDjhDw04/VPJPRvqt3LWdlZTrj/FmWST\r\nkoeT7GnV0Y43Tvl9Nyx26QScdTOV1QOLB1bpUC62cJZXjPkdMhcv59ss2ypI\r\n/h03iQQG4AiOxAxcAf8sOzX8PzU0CykdNTCddTLlGOv1R+aT/vOKbyUVwPmh\r\nPszwQFdEAD7BswIBASsG65ZXGbrhLzhwoNcTzoY6u02218Lro8y0/gZ0brkM\r\n9rfey6PPbNlMPhqeIlVXVB4utu9aGhP0vMax6SvznhtH8LqLuht2QMA3PefL\r\nxMGHxWNTTwegtVjw6XrvdjSkQublQAWtm37P9roXZ+OhkzdjuoQ7Dgd/RwD0\r\nQgKqM2i8oxvlsR+SMbsSY+mC5VPQFqizLUMMag6v57e6i43Dt3GS7mFKp56q\r\nTYVeb2dBrYfqafVPXXUO7lj0327a8TGIIxMwBgJU1/5v+/o5kzeRl3pwGjoG\r\nH3DQ33r1j15HtCi2dyPYsryBM2d0Fs7LZU4C9zgE2xuaaowpcZStvV+Cx/X3\r\ntUi2br7BXO9bM/bFMtgyHlKeNVKtGglweib3EqjlvBAlFMK3HdbrfQwmBlDi\r\nSf/YPTECoB+76dAuSqI7PBga/DXb0LHzp4QzCXav3+Z8fqUAG+CABBYx+LaW\r\niyqm5+GkLJNGlNzSGl0GYuaeWwXE8XX4KHE=\r\n=xzYz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3894873450b9dff1b92031fcd1d00ed1ec3ba9ce","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.112715df5.0","@material/rtl":"15.0.0-canary.112715df5.0","@material/base":"15.0.0-canary.112715df5.0","@material/theme":"15.0.0-canary.112715df5.0","@material/animation":"15.0.0-canary.112715df5.0","@material/typography":"15.0.0-canary.112715df5.0","@material/feature-targeting":"15.0.0-canary.112715df5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.112715df5.0_1678732729577_0.8226887483550602","host":"s3://npm-registry-packages"}},"15.0.0-canary.d250911f2.0":{"name":"@material/floating-label","version":"15.0.0-canary.d250911f2.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.d250911f2.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e6a0bac01b9e8adc09a0ce165a401f7dee731737","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.d250911f2.0.tgz","fileCount":33,"integrity":"sha512-5hpfOG/7tZvaI+kwtL4ULaowTP7VCF/+V7AOT9g5TWSZLDQw/Vu6GK3td1PnJ/lv2XCjlIyUcMUA87Cc9vlmrg==","signatures":[{"sig":"MEUCIFpvgtPyi+1csh3lzQD0abJGmeHEyHhCuWDM1Jy+WDSsAiEA19oEe44cD9GEfYmPZZ9IgsfeBvshrAgohAGj4mWXpsA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":579407,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkD3n8ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqHPw/5Ab6EaPUF1v7ia4085//hUx3sllGdOKiMINDm+DL8STggAoFo\r\nefjgT30aYWu4+CotPLLFMx2N0+BWS3q4s9GFYf/hMsyNmRvUlk3+jaOzVlTE\r\nFamiz3Tyd+ZpVd+z20SHOW+fWeyASsc55YBdDfb1787wV9Rj7+r79v+/3efH\r\nxBlEzqlbJ4/ys2Dx8CnH0cAW+qupaOnhOImP/A7s0CTmODCeScH8UV4/47xH\r\n6qszP2GXpF16cx1r6nPQQckV2vHyNoja5einzVTWL3HycshnMOFtdV0MAXdf\r\npV9mN4hGLDB0DUOWk+lVgj9A+uIH2Xrvn8V4yIEZXxTNGa/HygOAcq+GKvEu\r\ntJJ4AayPFcvt3unPisP+ZST7lqb9phUAxxnpYkI7Fqwc7PT2JsLnCASMqPgH\r\nSeSnwjiVNFot5Z6XMPbIReRP3T/vpdpMBA4nxc9EWBwr9kHDTdiw7R35muUe\r\nvUcPASYsAk6Js3HFbRuTl3OTz8qjHmvU78TsciJyj4ov+VZH27/OmPtf5PTZ\r\nQUvFyHJfkiXJZOOLJ62fc+qC4INeDZwxbylV8SXF+mnmGpZR/6KGkqTN5iz6\r\nlWKpZo0+IdOWZmajLGh6ktIijyZYzxG1iXMAWicERTfM0EhliT+ONzzpCIAG\r\nk1AIUjI2uzmSshI3kCjHaQyc5aPk376R6xc=\r\n=qqjW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7b4ac246b31922fb4beb9ed168dba262e499c271","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.d250911f2.0","@material/rtl":"15.0.0-canary.d250911f2.0","@material/base":"15.0.0-canary.d250911f2.0","@material/theme":"15.0.0-canary.d250911f2.0","@material/animation":"15.0.0-canary.d250911f2.0","@material/typography":"15.0.0-canary.d250911f2.0","@material/feature-targeting":"15.0.0-canary.d250911f2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.d250911f2.0_1678735867871_0.65455807638043","host":"s3://npm-registry-packages"}},"15.0.0-canary.7cd925c12.0":{"name":"@material/floating-label","version":"15.0.0-canary.7cd925c12.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.7cd925c12.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4432e97f6fe56f3574932976d40bd479ec9b29b8","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.7cd925c12.0.tgz","fileCount":33,"integrity":"sha512-fxledUIC/GZpPr7MzyU2QqUZ4HhGTVLIROmuWhr3D20nZ7UClsPKMbzBDKBRuFA+HXtlAAkv05hGG8o5omuokw==","signatures":[{"sig":"MEQCIGF9J5fQeBrZWWOWHPVqmGmdj+rVTkcaHYZA6cXhG3S/AiB5FyYQS4UXK7XuChQfIz9NpOimTJZFWaYrT1xGq2rSpQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":579407,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkD3u9ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr0CA/9FpwYDW5NKdWWQm/qiBfobSEy2PXSaMI6EHrELfrMRZGV7Fgg\r\nar8YgafvsXIbgVzH7cuuEOJl2fjN6Asnf4/ne5anuReoMGKuwsZo2uB+loFB\r\nPwEP2BmVpU3Y45iVO5xdiaCk9V/Zff+KRjaLN5VMWeN9IJltEqQGvHdHaN0s\r\nHust6CdrRgaYvO7mj0LDj7/Gso+7PtSr7Mma+DPNc5mBqe8bjsIpnUWVmUl5\r\nKyjOy4uHZ38jgznW5PzX1QmDAOkTPQ3cTGp9B4M7VU3YyFu4o3PYbDRVotgE\r\nDCTcX4GXH3esY1u3+E9QNvwxpZJOU/WjlhKck8PcThSycIHqzs0/8yNLOvDd\r\n9/9LGnRXb9h1m8EDLgLv80GIUuVUjrZagbZzzSTW/BCSJ6hJ2YXIyT5xQ1ZZ\r\n3boSO8fLehX1/znPMuF/pwF47vOLr41ceA0eciaDTMu2/lkFWSm9alXTfc8C\r\njZiSkCnhyFgbS6xavvEQ/SddMnZVoLj+f+xgtLemy+X0B3fhAWpjyNJaLtKZ\r\nna9N8eGRvJAet6ZgA7/C56aUFBHlmEMKLjo4QSgvaqep/eMowGCCOY/jCcId\r\nm6G/NjdJi/amA9e0cZjAx/3TgnpJ9/6AaoWhYgwhntQ60n4iU2kAX109mO3e\r\nGUSwrK7uFK7Jo+5MXoyhXBKPeu5SyJxSGDY=\r\n=y1Z5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"96310a5c80e3e92695b6d6e2933e9b0c82e58a20","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.7cd925c12.0","@material/rtl":"15.0.0-canary.7cd925c12.0","@material/base":"15.0.0-canary.7cd925c12.0","@material/theme":"15.0.0-canary.7cd925c12.0","@material/animation":"15.0.0-canary.7cd925c12.0","@material/typography":"15.0.0-canary.7cd925c12.0","@material/feature-targeting":"15.0.0-canary.7cd925c12.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.7cd925c12.0_1678736317322_0.4828628610779271","host":"s3://npm-registry-packages"}},"15.0.0-canary.b2ddacf73.0":{"name":"@material/floating-label","version":"15.0.0-canary.b2ddacf73.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.b2ddacf73.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"d19fb404b129833ec4e5a2709c8cdbe8095f5f04","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.b2ddacf73.0.tgz","fileCount":33,"integrity":"sha512-0Nse2N3kDPud2tsM+FDJAYphdPrAyjbOSm89O3zBVJCiFbOnQeegViap5T7GzgdSmtb0FkaDe0zQFjGrgHpnXg==","signatures":[{"sig":"MEYCIQDfSW6Wq+KwKEPYNnId41MNZ83dZf2gKslnEyWhN1X8JgIhAPJoDeP32J97wztc2GEdBUXLNlNyPPD3zDah33ES0qDb","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":579407,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkD3zIACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqUaA//Rx1/oEiONBzwUKfg8S1Ei4xoE8N/pfJOzdLga/av0U6sibYL\r\n8wspGLaU+xLOx8ASbw475nC2LzEynUTqNWVnAKQPpX8zNYcUxcPzJRCI/pa5\r\nfZtf4/xyxvSsGATLdq4QR9f5wB1TdH+6ZdjwZFE54liDv9iIYLqXgRy3W0mb\r\naSnGyVUS/OXHBLshhpcgL+Swgm9ftm9nyjR3uGUYhOF2fpNc/1jcdv5HbXre\r\n+5j6VmgBzrTiwHHCHA9KCdxJiD4Eb7wf4dJ/8PRD/6fX7Tsx5LJfOZ178OE5\r\nW3otQnjORMhZ8W5jimYc9kQH4tPWAZXX9u/m2nX26l1k6cPk0MhCZXdMtDUN\r\n4Wno0UfNLCD9zE4wVztPRQpww/oAcJv8YGTXJhCvkP5BVBM+Xnw2/oIyo0ID\r\nX03YViNWEG2EZ8YfUyXNQii2EszPQDe6Do9qc1+Rn5JKsvfs1xqfmjgG/TW4\r\n31osI1oOMkI5P4CdNPXpzzti2XDA08yAGkFWSP7OIF5pdsmxjXXXKVWE1aJ3\r\ncfjzXwegOuW3fHVcL9NR1KkQhLxKNf9j7zFsotHs7whoQGfLFBj5sKIz5B7w\r\nYcFSlWzP1VvsXeEd7djmu/Z5TpBYi+Ol/S9BrKwzCF6jdjKyohu32J5v0Ike\r\naFhA1JS2iQ6sMYR0+NPg6VS57hMtH6gG09U=\r\n=3iQX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"860a6f0b439760b894931fa6cb354412764bd21f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.b2ddacf73.0","@material/rtl":"15.0.0-canary.b2ddacf73.0","@material/base":"15.0.0-canary.b2ddacf73.0","@material/theme":"15.0.0-canary.b2ddacf73.0","@material/animation":"15.0.0-canary.b2ddacf73.0","@material/typography":"15.0.0-canary.b2ddacf73.0","@material/feature-targeting":"15.0.0-canary.b2ddacf73.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.b2ddacf73.0_1678736584582_0.8090681443289216","host":"s3://npm-registry-packages"}},"15.0.0-canary.989ae2ecc.0":{"name":"@material/floating-label","version":"15.0.0-canary.989ae2ecc.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.989ae2ecc.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"54db27fb3faf0ec4b922e87702764ad707d83924","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.989ae2ecc.0.tgz","fileCount":33,"integrity":"sha512-YNn9pcKh2pfoLs60ZztQYHUOcsR9ruOq9BHalOA/Nfa2swLgHrnUM8wxx4xHmOD4FwuRph8tBsSBUimvyMQmlg==","signatures":[{"sig":"MEUCIQDmuJOniWGnSz6L2FWFEX02pPCsQnXBpQQMf84+PjaVtQIgLeN1a8UCdurOaKpNBqjioPr6gWveWgTpMfFA0q+R1sA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":579407,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkD37xACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoPQg//UjpaQYV0/kbHQcCTFtm/WLtv6f0VlgjEORj6RqqrqDNZr7pH\r\n3PlVSGJA1vq23/XTyEhtBe62kl4+vHgOSlx8dhpEs2lWz9vfvVUBI/qlBDje\r\n9dVhpDdCyjYsqGz4qONMRpioJzL09BgZGuFAyQeEtQXs0+hyPEx6zD4pcOHJ\r\n1dHv4FCy2uoDwqRVuSsqGbpdRwvkmhLOPVsF+A5tHgJi2JNCslDs7UU8odGF\r\njcpyB7Bfgxz6EQwmMrmJ0CDdGSjmKg4AdiZdOOg5ecAQw6m3DNI3f3/Xm/ea\r\nd7EPvw+y6pBrDUYri8G12Tlp/Y8mwEFppsecwLMDtPG3ohp8Y3ckzVFn9BHZ\r\naeZa0X3OU+YPY2U9kAWLcfgSN3nu+TlkyyZTs+BtIIClar7k+6/cTQHkFzo2\r\nYGkp1Ko61COBW5yhbZRV6F4AreFrtsbUWuRx/VgbUFQC18UWChutzJIQAPym\r\nOlAa6t1iYXuV1mXgbzqz5/jL8KxQbPUifY79K2CVkw7/5WfWrfkvgIcc2Rfo\r\nLQezCo9vrhkPeV5zz6/yNa+rJJT+BopTtUeZDuShMUjxMwUDPZkAF2jMvmE+\r\nSVMk9ZwOhkvfyGEj04uBSzQP4VVJnAaWIObNE9rH/5XAawJRq/K8lfoscxDG\r\n8aRYen3qIfWjimCn5v8WujnEetgCvgXBxyk=\r\n=MbbY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"52e0f05ff74ddff1d986b27e08df13644c056b63","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.989ae2ecc.0","@material/rtl":"15.0.0-canary.989ae2ecc.0","@material/base":"15.0.0-canary.989ae2ecc.0","@material/theme":"15.0.0-canary.989ae2ecc.0","@material/animation":"15.0.0-canary.989ae2ecc.0","@material/typography":"15.0.0-canary.989ae2ecc.0","@material/feature-targeting":"15.0.0-canary.989ae2ecc.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.989ae2ecc.0_1678737136830_0.9597131119819107","host":"s3://npm-registry-packages"}},"15.0.0-canary.89c66483a.0":{"name":"@material/floating-label","version":"15.0.0-canary.89c66483a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.89c66483a.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5eb23f233782fb0749af18efb600355f3e763bca","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.89c66483a.0.tgz","fileCount":33,"integrity":"sha512-tbO+TdY1EaTiRkf3ep7m3yYrD5EJJQA/BklxKfIX9OecDgdmiyT/xqEF4zOGIfSMrMmIJJChkQ9zvG/Ogl7ngw==","signatures":[{"sig":"MEYCIQDLc4vi3A/z/4JLCdvUxXjCydlduUHkrH8btZySIXJUTQIhAI8xZYJvunlIO7SVuwF0mF3CYX3lb73ZaANLodO6W3X0","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578528,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkD4SFACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoLUg//bJmMQbxkMxaHM05rO3CQDJkfnSarO5MOR8NSnK8WzKf225Gw\r\nWLMXxKnSH8ENoxNnQHAL80owbENQmF9YxycOOub+tUjb9gKdVEKX65fMdaW1\r\nJ8EkfJk2c36OM3INKomjivRNltSpuiSllID4CENMGyYXs77PdjYH4VF8KTw4\r\nYYIsVp1MwGcUOaAU9zPVEQkZo4Oe8AEpDzvExsqorMtWGxNuecBBTdiSl2u/\r\nic5sSd/zhDf1I+PzOKtpx9xyKqgI3Yx+FnPj0DPmMf+zzm58UuvmenZ7lHkh\r\nP5lNc4+rYsvYmxj/txlnNPT1LY4e2+8pIeB6OKwUxdsZbSl6GV8uo9wYv6x0\r\nFUgfn3AC5/yImvdmDjuyKhI9X/bUx1hqY/7zxj13RT2qksNNvfUhYBUsDTCj\r\ntoafF2x+HDzNZ3KuY+2owkBAVw17q0y0/Qy1yNGo0sFyd9jHWWNPRADpX8QL\r\nsrfTOy9utoMMuHriqNvEzUhXRQTnvpnbr1GNR+RXVJHYFqCORbHSD9rny3rd\r\nOEgc33EEUbqaDZxEqv6wjJSizNJDffwLhmy/UwW+5NrvmrFRmwP1LM9l26hN\r\nuSA7INCTNK36YUGBWlqoNDHZadvdDg3BXwC6JGdGDoGAiAvLStW83ct65oSk\r\nfu1MT0lGHPoC+VaXKLBereqdNKlkoATUo70=\r\n=SqtH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1e255ddead4716271020e03e9b0b302eacbc4153","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.89c66483a.0","@material/rtl":"15.0.0-canary.89c66483a.0","@material/base":"15.0.0-canary.89c66483a.0","@material/theme":"15.0.0-canary.89c66483a.0","@material/animation":"15.0.0-canary.89c66483a.0","@material/typography":"15.0.0-canary.89c66483a.0","@material/feature-targeting":"15.0.0-canary.89c66483a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.89c66483a.0_1678738564824_0.7696940815225695","host":"s3://npm-registry-packages"}},"15.0.0-canary.6a85742c2.0":{"name":"@material/floating-label","version":"15.0.0-canary.6a85742c2.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.6a85742c2.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"44768f54a726eeaa8260ad439d54564e0e3b71e5","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.6a85742c2.0.tgz","fileCount":33,"integrity":"sha512-7nNsV1CjL1ue0TzKM8bxGzrgXP9C59zKWck55+gGUpdYQ9d10cnBuOmiOVsC2eYPwC7oW2zLeytjBlMUTCDJYg==","signatures":[{"sig":"MEUCIQDMjSycqJt8uG+YG3Nvd/2LB0uqyUnMWLEkllQSzOsICQIgMwk6bIN5Amm3ge7y+TirHQsAfnZwWN+2Pv6zXxvpzHI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578404,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkD+AlACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp2cw//Wsv2q3w4SeYkVg0aNG6ILfytrMtGb03B2HPamm6p1JRoOWsd\r\n5ZrqaMGKdhhOaF2Ccyu4Ot0r9xnFQgkMpLBRP/YexviqrkPwy+Onjme2TAeA\r\n/POWjmcSOZn0lsUlKI63/SGrbsnAG9Ue2+G5PfkvfdpPmlC2YC9v2NImEkue\r\nnaGCD+GXGxYpSBOLgAe1xxD7ydDZL0pAIgwqG1c3IeBrquZDeJ2aZLQbHPAi\r\nytl5DbtzYV5+6qBcApjJNpGjFNJZSfxfIBjziNVt4qMsrdRr/3Gt36CfnZqJ\r\nczvKJ4ZTeCIqBSqRLzf3PiHjcabgZTZ+Cvgkfo6NR8tXAwrdIy6F6nNOiOkm\r\nFwC/Rqilq5KE9PuhMI0Pq682vETBtXXiARP/lCaJnQJOTktjqWuVpTT/gd1+\r\n1W584SKxu4RSCnNvblJe/LwUn7kS6r59qJyYhyXEjFD8Td9qRb+PCCTJEkLa\r\nJEfRWBk3vEDIZdfdAw8Mr5vs2CXp5OnTahZSo04TLVrf0/ZTufRavCZVRmlP\r\nEzcGCkUIKNOgkBIZbOeb6cpGaWsw9lJTOKpZw8Id/XGqi2HyWXArbaCQW5nj\r\nmZ8TzQqhzOeTk5BdDDFK60fbYMIRExNseMwJRu5+QmsQY5X4dpHh6DlyGA0V\r\nSrQH3t0V6n1TTTWrWk9DDcdj5H5vvBWh0SU=\r\n=c94w\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a2a15aaa59054337e585758eb160d9cab97224a2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.6a85742c2.0","@material/rtl":"15.0.0-canary.6a85742c2.0","@material/base":"15.0.0-canary.6a85742c2.0","@material/theme":"15.0.0-canary.6a85742c2.0","@material/animation":"15.0.0-canary.6a85742c2.0","@material/typography":"15.0.0-canary.6a85742c2.0","@material/feature-targeting":"15.0.0-canary.6a85742c2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.6a85742c2.0_1678762021001_0.7742262072136712","host":"s3://npm-registry-packages"}},"15.0.0-canary.bb6cd78d5.0":{"name":"@material/floating-label","version":"15.0.0-canary.bb6cd78d5.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.bb6cd78d5.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"cbef3874dea4f6a6325b82c8679cab862c93fa85","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.bb6cd78d5.0.tgz","fileCount":33,"integrity":"sha512-5HmbtJSHeohC0ocNDZJ1VEpGAdaCM8H2bsTrMSPq0xSGFsjcfEdRwCg5YWzdrZ+0nDgdl9hCQGr+cspr1Rw8xw==","signatures":[{"sig":"MEQCIDfeNGsuBixVV78DdD2MneggPR3jyVAau/MAuRe4KlsIAiBhlqsQOATyhgLptukhYlSxsncyQetd2pKGl0+LWTrmfw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578404,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkELn4ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrPwQ//RhD4T0+YkOvMCLU7jVFzaL5XIFQYGFgpRSI6p0oJZ250LBYT\r\nfwnVVxyJwi+K/3SwM5BRNViqmEUjdj+jY2/K0srqY+Qm9gZx/5lTYP0BMxFR\r\nuUcS/fjAahOFJTjDPaWB3/oNVXDmyQKvmipUOfRUohk1ciOkGJvw3tZ3UkwK\r\nQ6WFOV87jKvKooyfQOZ8+hOFdRZg1oA62UB9R+gfj9vfau3w2s/KCJJmdCCb\r\nLyU8LstJR4Jg+wny0hMjQT6WHmzviN8umboPFpnR3DxeeDg+A4fSd88SFHOF\r\nCdwjzvru+P1ugTMjDo6MAl7C+4pDTf8wS54vAx+swHGFwAs2XtDvVoj+1mtW\r\nHtWVR4UAoz4n50PjUaAJWnD2T/AmoEtaS0oZpGG4/tQwDIk1JquzsOQMd6vt\r\nEAWPA5/1CCw7MauHw84T7NT6Iyk0YQCGrg/ejHaD9Jr9bW7KlICFfmQu/sbD\r\nJKD46EJeRQErQXVfOcO5uKbrSsBRGVzD20ig6xjwxIKkgswrFAyEycNS+Qru\r\nOB6GqGDyUGqEFOaMP/R2QDRbhaCjl2li4SVkCjBMSDceWh5/JskLpBSdFOo3\r\nb0AmH08EptQvqXB6hsiSPCs+jGrBAnR6uC3o9jqMVRCUidnFyI5XvC5eEsdS\r\npoAv9Iazqy4MjwRDPun7NhwjJB5IZgHvSFM=\r\n=3iLc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"fe016d599b297e4e276ef5b37b829b25f0607b93","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.bb6cd78d5.0","@material/rtl":"15.0.0-canary.bb6cd78d5.0","@material/base":"15.0.0-canary.bb6cd78d5.0","@material/theme":"15.0.0-canary.bb6cd78d5.0","@material/animation":"15.0.0-canary.bb6cd78d5.0","@material/typography":"15.0.0-canary.bb6cd78d5.0","@material/feature-targeting":"15.0.0-canary.bb6cd78d5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.bb6cd78d5.0_1678817783841_0.38088167249029325","host":"s3://npm-registry-packages"}},"15.0.0-canary.5f94aa37d.0":{"name":"@material/floating-label","version":"15.0.0-canary.5f94aa37d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.5f94aa37d.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"555059735b01373d11077b5597dd5a79330aecfc","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.5f94aa37d.0.tgz","fileCount":33,"integrity":"sha512-4JcrsKeILcR/AnokGGn7494wiJtrghQlArY379kUmvA4k9/ATR1Gam4NVi9lwEsO99MnMmCVAlI7+QUQu50lwA==","signatures":[{"sig":"MEUCIQDSve0YrF+bOGqDUdD8HND0vkuwUMRSwz5HFzRnWQIS1QIgb5ymesoJ+emirVmO2vFAwwdaDxmMiRD0fKXC6f/n0Lw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":578404,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkELrEACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpB2w/9EuISO+iBXKP7karNBrNVTPnDaXOnDZfUVpuGbWY8JCLQRqO8\r\nahAbJQ30R2c9+zxLJahc8Xkf1/LQ1agrpd1jaD8HwDaTOIZaRPZOlFPLVvir\r\nYfXLagMxaHdR9l2L5ULUWsc69Dp9mW5hp7jHRk8cPd4TFKh6Ne7ZU6i4ae9L\r\nSNBKZznDUSPbWfSMf8APYv0NTW2IAd/hdt9nSzRR8TVdVfeGv3Nqc+SgUC6H\r\nSxWfU+yWHVoMvbF+8f7QyJPakLQ3jV8FlKDXLWD7UNg3Fvli3WTfWt6UCZC/\r\nNMzyNHvN3Zbsw52d3uYLcq8ihemauape6Fj7bZPl25CKazriIZ0bT8dwmlFS\r\n+o852RqBCPCsyBZgK4EmeTSlY+XpwTMAFpzdLOzw1ednjnFPyWP+JYhzWpJs\r\nfUUwDI4kMQQX/N3Eyo8EQwus/JAXLKTYfFcM/SZlPvrXYHefIB3iI3kAx47f\r\n4z7fu1ATyrdyk0+9kdAVaUAmcHkr25V5BsNXMcNUMUvkFlHKq6UnvyM5CQmA\r\nYF1d7vLl7W32+FAVwIGz6IGKVXQTQN3sWTzDgKW7C/hA+JUh3iH9Ctxv6joM\r\nYHCTRjdszyZOvYOwKM2Py9hURAlmlAP9EV7kh4ImaON9VWm4Zojo1OclK9lN\r\nzPDwaOpuqVzUZq1Y7HGV3zg/8/dhrKdZOjM=\r\n=8DVw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"95db647ce856eab6b1eba2fb1794f3b0dbc3dd08","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.5f94aa37d.0","@material/rtl":"15.0.0-canary.5f94aa37d.0","@material/base":"15.0.0-canary.5f94aa37d.0","@material/theme":"15.0.0-canary.5f94aa37d.0","@material/animation":"15.0.0-canary.5f94aa37d.0","@material/typography":"15.0.0-canary.5f94aa37d.0","@material/feature-targeting":"15.0.0-canary.5f94aa37d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.5f94aa37d.0_1678817987872_0.8788667139320183","host":"s3://npm-registry-packages"}},"15.0.0-canary.1bd317240.0":{"name":"@material/floating-label","version":"15.0.0-canary.1bd317240.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.1bd317240.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"cfc33b41880d6f1da0056d84a4b16ab48e58f0c9","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.1bd317240.0.tgz","fileCount":34,"integrity":"sha512-Q8W2uH5In2jNsyiiFV4NGOBa7YiGnrwzontGDnsox64tMOwF9JP/x9TQ33gajREFSrmOyi3YXj7s6zV1I9Urbw==","signatures":[{"sig":"MEUCIAs3zQZ45qFw7yoaX1jjwpY+JsmW997Xg1I70MguYVGWAiEA5AbIAN/mJWtfriqWvTCT6e0byqlnFaQTMKVk6HAexmU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":579721,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkELunACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqzOg//f1yWPiy8OeL6MYoZka7s3iw8Qh1F2+gF3gLDYRjsjUbNCtTP\r\nwYFXaDnmTzZhrl7CsQpregvK5/vcM0ZXow3vnIs144LyT38qllrqF+3GfxCl\r\naBlF6/YahZw1bdq3Yv/kG+rg9zj0ARfNAaiya2w89Bj+GbNBS9QX+cDdz/2L\r\nqUIlgB06yXH6m9GXVT/E8VpNZylCJDoYOVojoJt7/2CSK4524BA04q0k52s5\r\nwU47wk8QHgpunR+feNcX/o083QiCfsOOF3cs3ftaVgpQC0OaGjhf2egWPBmC\r\nO34VQ5o19j9vTpfFuFN/D5FxPckVX/qgSAEyoxCi3uWKJxw74kUWxMDSZDuv\r\nLNdnOX/SFSaB9Jj599dO4ROI1AKJYy5RSRVH34uONnB8gq4InUfWnzmGuAfq\r\nSCuvxlkz/4lgZ/TUfuDCwgngqlsoT92ye6bCaMUY6ihAju0FGLR2pKagzjiT\r\nMppvX/G4mOrQnRiRyQFKR16+ywVxX6+tgMguyPY80ZAIVpVGdeEMDiaF/6S1\r\nXViJicRcw/mI3byo6s4gmPFguM9/nNWXp70F/o2TYHFdF8w1lPNi+ZuWJxll\r\nF3NpyMgbp8TZ6xqiQLbRGv8lozaN6TZQfLttHKYsJY/A8DVXaCaomkgsqT8K\r\nY5JsV6ctpOQQHHGs4N/BnSZyjqJyDYKRXoQ=\r\n=sDUK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"eef3d63106c71dffbe823b04d07e86a84dfd4d42","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.1bd317240.0","@material/rtl":"15.0.0-canary.1bd317240.0","@material/base":"15.0.0-canary.1bd317240.0","@material/theme":"15.0.0-canary.1bd317240.0","@material/animation":"15.0.0-canary.1bd317240.0","@material/typography":"15.0.0-canary.1bd317240.0","@material/feature-targeting":"15.0.0-canary.1bd317240.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.1bd317240.0_1678818215202_0.2014559871196333","host":"s3://npm-registry-packages"}},"15.0.0-canary.d441d2a2a.0":{"name":"@material/floating-label","version":"15.0.0-canary.d441d2a2a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.d441d2a2a.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f8f8cf979336b687fc39618ab1ab3a4c7c23fa92","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.d441d2a2a.0.tgz","fileCount":34,"integrity":"sha512-pL7orxQ0YoonEILC7VUdP/AdrlvEW+k+opgF/rsZCOBcV5lfVKJsh4kKwKOt9aChShnfSIObptpL2ag+qN7Feg==","signatures":[{"sig":"MEUCIGOocQfSdmwuaaLXHpFDWzCSopfDwvR/o0S69s5dpnMqAiEA21HYgSxvQJAuTPFDbzDYlWJlIt4UBn1RbpXnEWIuLlE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":579721,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkELxEACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpnFBAAngU+5w6t9qoKzfEjGNmW0JADsU6Kvl2vs79/ZNsesTSmB7HH\r\nZrax2y5YOgKGLs40keCPlCZJcWQww2L103LBfoXMVi4VCDdfIDcTD8FrOCmh\r\n7em5H5bwff8XIKEsftPYQzUZJb2LoRz7Rr9846yuJtmnLBBQV1kJHKAhggwD\r\ne2ibUKLT8Nt6SJmvG7vKTwZgGq/PPpo2ibvVaydznQO3/qOEscttCJJLYh+N\r\ndepjCRxXAzG2p21pTM57yajeYC9gmRaR3Oy9cvkrRKyr8k56r4e+vHF3iLmn\r\nMGlSPqqmoOEgU+iGUrAUTjttn930PfjheSjxIrjhMseZrmxS23GznRp23OdU\r\n0Ni5pyFhf2+kIXFthPcU1Axgw7L9jkMbcBCiYMnC+e52jphjDh7qFnq3T8E7\r\nKv+euSY123qPR6qWcdYulRqh6Xaxj7ybSj2iaU3jmwHagJ1kjTi0l9RV7/3r\r\nA14gFIGaA+BO48dkmtppfbZCffFoMkpc8K8fCMpdbNIz0AJjwQfO2QyzH9Ih\r\nrChlIkGq3Fiwa6CxX6rDSH60JPADTaHQP3IiQLq8nKgXSjz2SodyadPmmCnI\r\nEnUtpXEgE5isYf4pnLAmI9HEoxq8Ifhhr2BK63nxEA/vAm7CRZgqzB/YZux1\r\nR1/8fPdndREjCRAa/lKUM8HiVN3Agzk2tSo=\r\n=CjkT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3a1d95c90b2fe34c5c04e44571f94badd66748b2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.d441d2a2a.0","@material/rtl":"15.0.0-canary.d441d2a2a.0","@material/base":"15.0.0-canary.d441d2a2a.0","@material/theme":"15.0.0-canary.d441d2a2a.0","@material/animation":"15.0.0-canary.d441d2a2a.0","@material/typography":"15.0.0-canary.d441d2a2a.0","@material/feature-targeting":"15.0.0-canary.d441d2a2a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.d441d2a2a.0_1678818372645_0.7118382009310029","host":"s3://npm-registry-packages"}},"15.0.0-canary.fff4066c6.0":{"name":"@material/floating-label","version":"15.0.0-canary.fff4066c6.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.fff4066c6.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"03d2bb029bc34443184678032126a710da249960","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.fff4066c6.0.tgz","fileCount":35,"integrity":"sha512-vlI+6krP4zW60xsqaIv39G0fLgTA42h6jIXGGvhBgVGRA71bgzkSVE/tOT1DBgIDZaM9dIq0JnhkBcmA1kJL/Q==","signatures":[{"sig":"MEYCIQCzdKzO5Gr2pQJux/jZh3fNnfDGiC2+hdPNz9b4yMME1gIhAO/81mM1PJ9qLw+NIedHqoluN1e+r+KAUVK2scDjDZbG","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":580921,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkELxoACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmpb4Q/+OqczQUSJSuDukRKv8KVbvyYsy31UXU7LdXV8hcchIyBV53ge\r\naIn/Wy2rff2hgHD8KefOpjqKdAPg98uYEOyLxlQKB7c8kYYagC57YmdxFn6/\r\nXzOHr5I+aIrkM4R4msO7rIEgi1N9WdkNU0fGNFY9sOqvpyfg7fSrObf1Zp8I\r\nquYjGwazifEzv2+xg3a3ER2ItVXu7y6tSgWeYwmP5BtOaKsuuaQBfWhV6ZjG\r\nBDNrX1AdPIhyWJBSagfW8KkRFsZjppp0BXYNV+BWjpFU0KoLbtefMHbp0Bw4\r\n1/K944XpH+uxrE+di0GGD+ynHudp2vFTeMYgirWJ23ZtwX43uJ3IIPT1w24M\r\n2vfFbtuGA7C8j3zyxuw3AVHJL7R351zayuLoz9oD2AtbitCm60rFUec8Dtsy\r\n1R4G02FEr2nqYhLLjmSUEXNH6FycthfwTWikaBFdkwwwV8kshWWLUVHVevfL\r\n304MQgiQc8fQzAp7JZZLgo/1d1iqllR6dIo3/7adrsNd0qJeZEq8jBk5T/hW\r\n2IKmGZ+hTBCo53NdBM3iWy6RR3f+NXdDimKutRkVdXfYSELE8782Kw6xU4sJ\r\nPkHW2DlCAiJQ/IGocVQGuv6Ozjf6esHqNlhh25vbrBx8rKr6aZJejh+roJWX\r\n2MaQGXWw44sJfzjbg1/req9Kei8jAl8SojU=\r\n=m7R3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"9d24b185ab8c87061ad27f4e7791690a12e10135","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.fff4066c6.0","@material/rtl":"15.0.0-canary.fff4066c6.0","@material/base":"15.0.0-canary.fff4066c6.0","@material/theme":"15.0.0-canary.fff4066c6.0","@material/animation":"15.0.0-canary.fff4066c6.0","@material/typography":"15.0.0-canary.fff4066c6.0","@material/feature-targeting":"15.0.0-canary.fff4066c6.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.fff4066c6.0_1678818408467_0.29179896046310794","host":"s3://npm-registry-packages"}},"15.0.0-canary.87809c710.0":{"name":"@material/floating-label","version":"15.0.0-canary.87809c710.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.87809c710.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b75e05ec987fd4ec200c30ff1d57663823a7c856","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.87809c710.0.tgz","fileCount":35,"integrity":"sha512-fmVroLFeQwIiVFnWypUbZxr8bt7Ywcy+TYfuoOt3DOXetT7VAChAED9Vtbkp0NmTA2zKuo7vz8G/eE3Z0SsSOQ==","signatures":[{"sig":"MEYCIQDjZv24qHeThlicDI+OXW8jwi4VYv9PDe5JOqAY9W0pnAIhALZHWOhgThuAmwdQG6NVi1xMM0LVD11f8m9Uv2gAy0FW","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585336,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkEMA3ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqlsQ//bA07uqbVEVWyBmd/UN3lmgpC7B1PHMoNYgPY0eTeax+wZER9\r\nADGcdxOsV+9f5xBHXaBmdjUyAos61R/pIw0AzQ4iQBj60fh6JY/DCTpLIde+\r\nuwcmNttWNf+mDE2jAkM+ag0JEnFh8cNVBUXYi3rKrtqBirwcJbCIm5P4q9NG\r\nNi0HGN7An8RZikCMqvDRa7vEXS/wozFvGxpJg+sSVGkahOwh2DjQR9olPh5Q\r\nAO3Imw+DHzDhN1KlJb6m26h1nUqMEumq3ZTlDSpxocEx2mb4jYopKecHAOBf\r\nWxEhZMlYFiVReataWMqC1T3FYJWSAWZehdG+afBUjgYQPposvDQUGWrUuUXx\r\nBWI/pbX7Wme13Q9iE9QZtSYor+d/CTKH7ap+DNRq7hTJ+QAkNzIq/zVEiJvd\r\nrDtVel9nI8SU46RHSKhhzIw1SxqLsixRh0HVnES/qXv5HgnAANtq7UJVtV//\r\nSb9ZzM2BPPbDeFvzD4txBmitZhrjtIjkPh6iGhqz1idofJyA+3XJcASrATdO\r\nXJ0PYUkmbvVUu8iXECdYJfz7Uxhy+PoFqTM1gZfSUmqXye057fLRYTF9KGyT\r\npRrCHtNp9pvcy6ZGv0JF8rY70eL7X7zsAcuUpMMZsV+lpaL69J9J04JCi0jM\r\noLhRAtaDY8tHfXg19Sctx6xSrCy6VRQEfsQ=\r\n=h8hO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ac65d4def7491c4e414883c6cab7e075c7374b4e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.87809c710.0","@material/rtl":"15.0.0-canary.87809c710.0","@material/base":"15.0.0-canary.87809c710.0","@material/theme":"15.0.0-canary.87809c710.0","@material/animation":"15.0.0-canary.87809c710.0","@material/typography":"15.0.0-canary.87809c710.0","@material/feature-targeting":"15.0.0-canary.87809c710.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.87809c710.0_1678819383234_0.6148525193908339","host":"s3://npm-registry-packages"}},"15.0.0-canary.48d30012d.0":{"name":"@material/floating-label","version":"15.0.0-canary.48d30012d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.48d30012d.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ba2b546a05950880193fd1a2a063558ada6c60a0","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.48d30012d.0.tgz","fileCount":35,"integrity":"sha512-54Sz3Y0rOdbws6Pz7DyWVoywz1INIApjSW2zpBaUAGnAz7qK6XUIw9U3+q1nCc0/rM2yytTo/X00dhTFp7ebbA==","signatures":[{"sig":"MEUCIQC0bP43g9LoNg6x4buUxGzDkES1lDr3TNTAeFU72GPMOAIgIPKHsG7ePHinaLyXCkkjSYvJq/hoy6I8qZHBlXV8cwU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585336,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkEME8ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmquMBAAifVIGUPK7AcKxPgFNkI/eGCcF4QkPFDTCuffy1/bebF9gtwY\r\nBjRw+lTgidfUtSkMkf91MfmA3RaN/1RzT1UejsgvNu4Ged+W9UBpjFoee219\r\nGJ8FS/4pWxSyF+0cw4nWM1xUAWQ2MIMWnHgNaUTf+C/7E+S+juhKAJ/iCNoM\r\nMJcg+HuMma4qvs9jzuPNgOD9bZjMvlXeEXON99OOHtySvzQ6pKfWTsWOQ1sv\r\nchPYydc/uwaNHK5Y4ITa0EX9QGci/Ga42yx0LknlZcF2KI2kygbqRb55x6pK\r\nzvo5qcKSw2ojZrdRCrnNtevKDAR/wQtjbLnBLVfcIQicuuNnct7Vp35C9QSn\r\nTio6RBEy25UKxWJGcFtmbavF8UH72oPLHwBYOKHQxH/Zo8x0EzaxmVNm3AYT\r\n0OHgLEh8W+sKPLY37fDX81I5WS6rHZy4qmqfnrJwn66CsyFPs7uN7BixAU55\r\nDL4kolZDTJcVzzGrNvReq9rfgswjH6UZP+7Ec2eGoCufpN8N4z8rxnUD+jCq\r\nLmPGKJrRJ2WGtCC737EOK+RjVpN/nE0zrX5/Pl+pZyZlyNM2ah57w+A/+nb5\r\n6DuEhUa7S1KjRWKcuelm1DGn6wKFFY9mWmmnh31c6ncr322WM3BWHrXyi8GI\r\niuyrrK7T3oASDtDnknkae2wFkracl/AO0P0=\r\n=b/6b\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"f2e4b43d20ea58b52a223d31b8dcd3f813d1babf","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.48d30012d.0","@material/rtl":"15.0.0-canary.48d30012d.0","@material/base":"15.0.0-canary.48d30012d.0","@material/theme":"15.0.0-canary.48d30012d.0","@material/animation":"15.0.0-canary.48d30012d.0","@material/typography":"15.0.0-canary.48d30012d.0","@material/feature-targeting":"15.0.0-canary.48d30012d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.48d30012d.0_1678819644473_0.8158200085189418","host":"s3://npm-registry-packages"}},"15.0.0-canary.419b23cc6.0":{"name":"@material/floating-label","version":"15.0.0-canary.419b23cc6.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.419b23cc6.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5d0b5daf78170d2ffd6789933b04d1b9db53c864","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.419b23cc6.0.tgz","fileCount":35,"integrity":"sha512-GOB38GvPNVuOIgmZrn310urvqHUYkSPZ/ho0rHfmfYz479MjfQTea0P3UkpKStako1bfmwd1RYGS32f+sIg4jg==","signatures":[{"sig":"MEQCICZix/YW+ch+aMic1Rryn6LRPdPt9gLQhKmC1J00eFH1AiAmQZI/S/iJW/4Nfu/bnfJz/XHUBGnsYp1pw5WhiJJIIA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkEMPQACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo67Q/+Lu9Y+FOWEfilac1JWFTW0f8n+gXz/Ydb9Pe3VW8QrFhIEy1+\r\nSdLTgD/sTIiWoE1bD5XuVsQLi4qa7ibJYt43uOTxf0PYEu+/e9ibz6E5IAHW\r\ncB9Jnx3W4/kBzgtOO/PuNGjhcaJ7m68HAB5x8ss8/uDoMJ6q0NEeOTS8h01r\r\nNgv8WxfBoL6xBUAHODcTUREzrJuBcZqN31sxjiH6G7ZAzhRyoQcwPJTsNJqa\r\n3bIQfvjckx4HBBgw22AYIhIyCvmBdJsoO06H7BHw00iI7HJawEh+S9dqI+7w\r\nPhvQ+2NeLZswPYJcRLA2/irTGuug/f2c26vpn3Qy5ao2cCF6+Ec3ZRQCac33\r\nkykq40ua4rPTFw/O2L7t3M/o7HTOgYLWLKuHYpor1tZtzVRoSDWI1vUV154G\r\nJeD6V7SfNttDRZ0TknIpIdXDrCpOQcAOS/lhGJjzIxqkVEMYcnyKafMDaccJ\r\nOYtZIwWpHuU/CpY6WzvAz9PCZHoT6jadO7Jut3Vm2s4TZD4V0jvTZ+nQP6LL\r\nwMc2WtBtNZ7+LmUzFCOPGx9BL+35uL8lLbzSweu/MX1BxMbaIB3AfZmMqAWI\r\nr5xl/QZXwI+NKZFzM0bWrAi9vXhpjlvfTxYz2nQypJqKhT36RKQbsrUESnBn\r\ncw3TsN/Kt0tH6GxvLbzIqGwq6/b0Kdq6zRo=\r\n=1wdU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3b1188210d22a02ba5ae948779bf92655e47aac3","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.419b23cc6.0","@material/rtl":"15.0.0-canary.419b23cc6.0","@material/base":"15.0.0-canary.419b23cc6.0","@material/theme":"15.0.0-canary.419b23cc6.0","@material/animation":"15.0.0-canary.419b23cc6.0","@material/typography":"15.0.0-canary.419b23cc6.0","@material/feature-targeting":"15.0.0-canary.419b23cc6.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.419b23cc6.0_1678820304334_0.8589530835904873","host":"s3://npm-registry-packages"}},"15.0.0-canary.bf86521f4.0":{"name":"@material/floating-label","version":"15.0.0-canary.bf86521f4.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.bf86521f4.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"8fb8d1bf82b8afaa8e87defe2281d8d3d57e5de9","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.bf86521f4.0.tgz","fileCount":35,"integrity":"sha512-2jExgZZym/M/MB2iV1aIT31lbUMTFAT7unL3cFABvOra6U4vqFP9LUWZLvOnJDV6r34dIQtYIVXFjG5M3UxRsg==","signatures":[{"sig":"MEUCIAoRtdZk/yHEK4fa2QKjPrXgFet2XGoDMbpLxvsZ3ok/AiEAzozPVfaLqtWXLKIbSkay34mLhrMchfdGRGcWziwTI0k=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkEP+AACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrN5RAAiQsXoqrIYn5g3jJYP7j3wVAmxXsRrniLl5s2/2sRGITwHWrk\r\n4dQzBoOt1NUyng2Das/uCtIeYRWVZa3HumgbJe/bGtYnxqEknsfiXLxPrv0S\r\nZasL7lwLbWe3T4QLlAEd0bS1947oa6zlWdXZo848yy5YTy2g4bjwMAQHD2op\r\n5Kkm2zc/gbm23SLrmIlxol0xrjAtBWOakP8el2sKsLcNkljUtTGIVvDrh1Lt\r\nKmwEtFfIdt5M3hrI2Yzl6avqHTIWxRlvvQfdhbLZXxnt22VNi6BKi7FPVBTf\r\nhvcOIJM/sgFLOJBcLvVq6jWl76svDYSqv7t54H2iQUGyDpRgOJVI5rZ8eLow\r\nfaD2BSY5ORlvAcqadIZv4ra8Y82rvs1WbG5A5V3w9D4cJbu/ofpeFoJXu/TD\r\nkeqBxote9DV1W7gILBl5fFEmfUzr2vuMsgS+qtnNa9JSB3lDxLy6gfDknrfe\r\nqq8nA65QWQ+08MpEpa4Ttfr6MoBIZ2B8P5EkGMQ+IUqosL4L1S8UKBQtdOWm\r\n+PWxDoJN4UYo8CcYXm2WtO/5d3JKTO9YBQoOIqt4Ba6l6tbdrx2dzYXY3PMd\r\n869GTejL0cxV+57yhiqVVZpa0n/nvl6m5+KJymbkm7BM/1POXiZhF4zUUI7o\r\nlXQMdRF4cBJoM5WIpLxzdUR64ODjZ0w8v54=\r\n=9lQY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8f5c1bf1449cde9c918f51bd033762d247655b49","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.bf86521f4.0","@material/rtl":"15.0.0-canary.bf86521f4.0","@material/base":"15.0.0-canary.bf86521f4.0","@material/theme":"15.0.0-canary.bf86521f4.0","@material/animation":"15.0.0-canary.bf86521f4.0","@material/typography":"15.0.0-canary.bf86521f4.0","@material/feature-targeting":"15.0.0-canary.bf86521f4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.bf86521f4.0_1678835583823_0.15425121924978935","host":"s3://npm-registry-packages"}},"15.0.0-canary.11f3d280e.0":{"name":"@material/floating-label","version":"15.0.0-canary.11f3d280e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.11f3d280e.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"93cd9906fdfca1aab4d957d3e085ea674612ef2b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.11f3d280e.0.tgz","fileCount":35,"integrity":"sha512-rmLhRxZnffLzEoMB9tnMjItm7xSN1JwugpCmeeJ3UhtZQTM784hWX2dvhRGYNihNfguQbRD5qkHdPsg+DerJnQ==","signatures":[{"sig":"MEQCIH60e/C8mTvJ5kxmvoEW9ApfzDTnROfar4qWSdX6kPFHAiAd4p2ASgGM1on/5OIi+8YhfBNF7ZTOt+xiCk+HGo25FA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkEQ0OACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqkdQ//aq/lXBHx0xuT3kU2V+XCH8HNmM45HMXOughG6IgrFWM4RRgn\r\nsX7tdIINb4QaBtE3S0bZdmmGvl2UHlBe/ms7pCbEUounuoUlaH2qdLd6gNxz\r\nRuTRO1BGZounD/TRKW5IZ5fkT0tqyxEAOqsK3pBpey1QncjLZdfuWvfMzz+t\r\njHr9Qnw7oGlupOkwCntkYVXFoXs6cx0aldUcnxh+Ct13+p1Mu2cZtZ0VE753\r\n1ZdZuLeqDTX7pnZH2V776iW4A++bOaXhg3SHqTx7oOQKNOmAUjnsC4iwLuJ9\r\naJQGt034g64Dy3UVbw7EOT9yhOwlW6EtiVWzMjx7F1lhSekTLAnHofspGIli\r\n7kr5A+tJRguO6iHWzKO09qFL/1kNprfM5jknu4WxCwk7w649nGeDN7YZJA1v\r\n8BoemJ79e+2avBbsqkJen9XcOgryMkB5SF+tVgglg3YI3vvmUS545U3ArhCk\r\nCS2Lgu8dSBI5n4DyihZ05lQLhHFsboIu9E0a5ukAthR5c1b/eGfxyWvEqulC\r\nBpjIRfKqTf1Yp19m9+RduQrPbioMIOLHTiAZeUqsM3NbfPfpSVWTORgPpYr9\r\nfAfRVKd+28wanC5UGslcR8yg+xuI0vZIYlIkPF2hle5hHcHA4SLZegTcMI1e\r\nioyDi2HCxF9CDnmX+tPyg2T7G2krkMvMqdk=\r\n=PQSU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8e5a0971e8b535be016fdfe963b22dbcf1353e53","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.11f3d280e.0","@material/rtl":"15.0.0-canary.11f3d280e.0","@material/base":"15.0.0-canary.11f3d280e.0","@material/theme":"15.0.0-canary.11f3d280e.0","@material/animation":"15.0.0-canary.11f3d280e.0","@material/typography":"15.0.0-canary.11f3d280e.0","@material/feature-targeting":"15.0.0-canary.11f3d280e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.11f3d280e.0_1678839054401_0.4638257263050525","host":"s3://npm-registry-packages"}},"15.0.0-canary.b281a409a.0":{"name":"@material/floating-label","version":"15.0.0-canary.b281a409a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.b281a409a.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3a87f433f5b10c6769ca78cf2ebb518ff593b711","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.b281a409a.0.tgz","fileCount":35,"integrity":"sha512-8UOTkuY5TpsHOzirnz9dIbSp6jZ8yfUFWJZ0VhEM5UsizyLrFZdLr3Fyo7nHU0XxpUhlOxqlGVeq0mBZWq6dCA==","signatures":[{"sig":"MEQCIESgyTTUjJFz7dj9TwDb9JEuhIXMDlctaK50I9OiVSUuAiBGCkDWVQkuPOY91FXI+4UOwHZrFMRDEHYlN5Zk2K0OPw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkGc/uACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpDhA//VSBui1L/t5YQOAvVWoGoo3YLgOeRACk5iinlfEfm7al0bM1R\r\n3hkL5FFAflp1SYYTT5E358hnKj3wLvozjKHDH7wHj8nLFijVCqz8twxZHjKy\r\nRQqfzhE8HiQbNdy0JqlLrgakoGY05r8gZsCQ5gGcRzc32PVD7+6gR3PaSMMp\r\ndY/e34aP20z1rzK8XhLTGoKStHiPywFQYYV+u+Nx/HOXDqJdMWUe7ujRhLhV\r\n2l8GVoCR3DLGpi0ASogJ+K83qnQiNj/ZIausyjx4InDHfDc3O+Lt+usPLW3m\r\nZMPRu7OEDqljutMnpni9FIhblT6jw0rE95QEmiFK9f83J5BFfAjlZWX8TtYy\r\naFfjwF8HU7OiqdcZY2Lsvph2OB0QVOSeYe0QDVTr8QH/ynIcGtBdPhsPLbZn\r\nNJAL/9G3M7upjjIhSrZd9Dtu75IGJVM8HNH3Hw5Gjx0xab8+Nt2uw2CzpnGj\r\nBn49N+QR2uI7CmPI+VFMiVoRWcEVawS7hhxigpLuj54VqAAnk2o9mYngJrZd\r\nxFmqU2jMEV5ytnuz05YAC4+mHV6bAwxh4WttJVE41elN4GaOD4URHzrQVUZy\r\noZNwoLz3EDoYeSunUmocbDzoSun9EnTTeBxEtZ7voaoBqQ2NXJI/mxf1D5d1\r\nSCV85tQM1pdrj5B8f/R0P08rQFQ/N9GL2f0=\r\n=xm+H\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b924c47aadd36bf60d7c29e466ab3899ae4085d6","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.b281a409a.0","@material/rtl":"15.0.0-canary.b281a409a.0","@material/base":"15.0.0-canary.b281a409a.0","@material/theme":"15.0.0-canary.b281a409a.0","@material/animation":"15.0.0-canary.b281a409a.0","@material/typography":"15.0.0-canary.b281a409a.0","@material/feature-targeting":"15.0.0-canary.b281a409a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.b281a409a.0_1679413230470_0.6321965367123301","host":"s3://npm-registry-packages"}},"15.0.0-canary.39e473690.0":{"name":"@material/floating-label","version":"15.0.0-canary.39e473690.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.39e473690.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b13f90a619bcbc29a50f127f666b3cfab0f0c6d7","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.39e473690.0.tgz","fileCount":35,"integrity":"sha512-xdwCHzvy1W5ebw9VTETcRSJBs3IFwAY/6qEPjvUYeOUCtsxbwjUYnBB/AugYc1rfzYMwSeQ3nexffkYl20oQRw==","signatures":[{"sig":"MEUCIQDYh/VOkWkQjzoTbWgB4Q2qgFZ3DP0M7F82L3rgU3FZLQIgNj1K2xyxU7t9aRgCFEDPfjfwEno/knmLNzSWUvAxTjo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkGe5+ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoHhQ//XpCD4KHHzQ8Ueqe94XX9VV12OuN/cPa8mM8wdYrl+x+4nC3K\r\nBXsKPlK6N0lci2RJ+Rq7UX89qb7BvPAGmXRtIC80XoP0px1xIv3byW8ZJK6I\r\n0PMECVUT1pKwPa1T6nfmBu9jEMYy+mh5w9F7Tf4NcaHC8ItMvzMlURdcJQKP\r\nVj/OyVwN2HcEtMs2yr23/lAZniuTov3SLRp12OIOepePVPBIVk6HfEw+7+qp\r\n5XILiV9pii4QOhmzfeQcNNlZBzUwojQxKxWtRo/9pbkkVvgD9olq7QyoD46y\r\n8qQD0T4Gjull4CYkKBbcDcB7z+DIE+pgoXNpgK+my6uuXnfTAFR3YyfF8QeJ\r\noPu9tEV/9jSTm1eVvMByqBSSdR5uOcs49pEeoW5PvECzPMaGYoI7lAuBtF5j\r\np9Y/rFPoejnOckGSlr2doYVFCzZUyPvteIbTZq/qzMjEy0PySFaeHrHUPnpX\r\nONphvDcH+u/qgXns6uQQr0lCR7ONWkhq7s8lRM547DeKLQnuqxh9HSvPKEiW\r\nq/QiaenjSXiuqDbcR91BWDFodM4zCmS2MhB4THWvajUBC7ziXqb07AfCVAwK\r\nGUk8TWZll+E9Y3uzAwGyC6fiez+6NaQWpzijp86wCbb+yCTm1wFJAs70Usur\r\nif9vx21NdKZP54fWu1GwgqFiEzJgmpS5SfI=\r\n=DJ1O\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"2d372eedef7c583c60aff8d4cd51f8de971cb93d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.39e473690.0","@material/rtl":"15.0.0-canary.39e473690.0","@material/base":"15.0.0-canary.39e473690.0","@material/theme":"15.0.0-canary.39e473690.0","@material/animation":"15.0.0-canary.39e473690.0","@material/typography":"15.0.0-canary.39e473690.0","@material/feature-targeting":"15.0.0-canary.39e473690.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.39e473690.0_1679421054471_0.7220744199963351","host":"s3://npm-registry-packages"}},"15.0.0-canary.cedffb44c.0":{"name":"@material/floating-label","version":"15.0.0-canary.cedffb44c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.cedffb44c.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"866759ae0567bfa8bc3d41182fca4180305f0e1c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.cedffb44c.0.tgz","fileCount":35,"integrity":"sha512-3P2+lhitcxewaKXleJ8uQ7lya/iMWvrefSWgsZoT0i2p9YO2XmBOJ3b7SvxZ7D+oJN/9XYlfQ9FG0fpAX6bXBw==","signatures":[{"sig":"MEUCIQDkeypnjvgHQnBAop/5n39D9MeDahb/2zrMxnjrt7kSFQIgWNap8iiMQsYYmW+vxBJZ5fEs1SwExFoCDcAyti1/YTU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkGfAhACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpY5Q//SgH9Y3R9lIG8rHnjDvWndqR+75bi7fWkCfR2bxbn5snKDGDi\r\nI592Sg1i5LYig8gWAj3JOr6595JcO/u8ctJ82Arw/Sujed7YaePkiWz2xlib\r\nmTZlxkuWWUgIu1bmcldWqiu9GIUGYclyVn/esLGdaaU08sov6+tpmXMxz8Hd\r\nXZs75eHLtrH84mfH6nK1v5KGEsyrMsnD5JOrFm+nUkMv/0LUdRafBhGlp687\r\nsdLp4z7mIc9aSdrh8hrWdGzV6lB3bQOMeOVP9XIKz0bnKYePYP4mwegg9fde\r\nYsztAti99FXi2aP0y937IQQzm/DaqZAiKQdyO1TGnY6TFaQ25spn9CMo1YpQ\r\nAyAn6FEs4BZyqDAxyh+NGLm2ZnrxMCGu+bukTdsyYd16qK856TAFpNebym2p\r\nUeR/lfxzW5jx115DXQ5vlBhzd/2FxEzk4qqm3nm0ZuHV30BGw2DN08R9HH5J\r\nsZ1SCfiovMS6UqjXAdtrBLVsEwpKfvszW/c8Tp/BG/I5Ns7lZPF2nG+3foBe\r\nRqhwltLrCFIvNwJ756h6AHKUpC8z/7nKhE3ly2N3sdDgXJXSPieH/Ttb+9QZ\r\n+24MocHNldCECbNrKS6edbD92jZsihaPzxqzjPHMwAP8kxHpgbFB5L/acPjh\r\n01QAd4J7U642eBIQnLsPHoD0NBX1oFt7EIk=\r\n=aoSO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"37783644942291b0c5d41f7499a79b5f61bfcbfa","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.cedffb44c.0","@material/rtl":"15.0.0-canary.cedffb44c.0","@material/base":"15.0.0-canary.cedffb44c.0","@material/theme":"15.0.0-canary.cedffb44c.0","@material/animation":"15.0.0-canary.cedffb44c.0","@material/typography":"15.0.0-canary.cedffb44c.0","@material/feature-targeting":"15.0.0-canary.cedffb44c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.cedffb44c.0_1679421473073_0.9842899237468619","host":"s3://npm-registry-packages"}},"15.0.0-canary.36a4cba99.0":{"name":"@material/floating-label","version":"15.0.0-canary.36a4cba99.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.36a4cba99.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4479a3f0acd215ef501f19ffd48109424dc52fe6","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.36a4cba99.0.tgz","fileCount":35,"integrity":"sha512-qfYzgd6vTtkOZwFjClo+7kO8+yHHLyHJORKbnBg60BUwVqAkk0JUBhZKwX0IzsWfnINf50qyIJkLMkE6etGCjw==","signatures":[{"sig":"MEQCIDQta3aFkeV/sXNuNeTXWJ5lJkyS6V4cHq/vk3eSCG6sAiBJ/mTpi3vGLw6hHVvxgzgL3Qp3YG8FQtZOZ2RTZifQxg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkIyi0ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpLug//VgF7tYGDIN/HwaZ5twjTydHeKwMQgqthvktYecw6ysVUQ5uW\r\n5V/4OZ9wfpYC5Z6js1bu6ka1wOzEq4YUQETI4uPwklnKzBQVntLJxkQVS7U7\r\nCEZU0ddh+Xgnv/XyKUelkjYY/4C97fxA+lRyIFGfmGg/+x0904W/J/0lFFbx\r\n+meIj/hFdy7LW/GafDxBsO3PklWDmHMZBW1UosyD7hDRTCtWFKIeeMAUXDlt\r\nIz6e/R2euBz8T+R54yFSHsF6Lp6xxX6977VEaDi5jiIIYkyoBvyBhFwEE0RN\r\nKdPjCyb3FiKqtD+SnPwsi7pLH7tDpPAN9yaksSmfnDnOpyZ2hLThchRYQmOT\r\nTCL4+Jky0Xj6Yl59Z4fCBRThO0uuYAjY0hmzLsHcgVA3Oc8uCM4R3iv1fWYU\r\n7dfnbV3U3mN3wd0QkOj3+YmoW6Q/+Kcy+RIuy3vxLvzmm3WggQNVYWIYr4Br\r\n0ppy3TJ2oRh98R0JevHIV6U144EAbOO9Woc4ugs5LqOhWom7QDDFEJzsfvjp\r\nWNPkDbRlL8GzwYL3UDfP82hqBDmijR4zBiSdpxuJHECcscz2blaSkwXJMAN9\r\n/borXEOKK3ZDNGCMD6b8IMNQAqpX8VUjTm+jbwXN/aKnpNezl9QLmWRtIpqf\r\nTa5AMtQ+iou2H+VKS+mLFlaSE/SU0+RcqF8=\r\n=TAy0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"9895102e50a9e7eda73e0b0039246bc56c79a7bf","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.36a4cba99.0","@material/rtl":"15.0.0-canary.36a4cba99.0","@material/base":"15.0.0-canary.36a4cba99.0","@material/theme":"15.0.0-canary.36a4cba99.0","@material/animation":"15.0.0-canary.36a4cba99.0","@material/typography":"15.0.0-canary.36a4cba99.0","@material/feature-targeting":"15.0.0-canary.36a4cba99.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.36a4cba99.0_1680025780263_0.8258114920952571","host":"s3://npm-registry-packages"}},"15.0.0-canary.ed7e82ded.0":{"name":"@material/floating-label","version":"15.0.0-canary.ed7e82ded.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.ed7e82ded.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9305fbc2370711faee626b8737fd4ec5225ef9ea","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.ed7e82ded.0.tgz","fileCount":35,"integrity":"sha512-TyGrtw0j22ChCOfJ8rpYc0lETRFgXDhlvYTDelocnVacrbUih6i+IFgYmUgy35z6YIeqBaX0TMuOR1O1QnlYmg==","signatures":[{"sig":"MEQCIFZQaKA/pBAQxAAkNgPhUuPp3mwC+tuvHbtYnT+KwYakAiAg5V6Tia/zLzdY6xXf/0Viql+UovTlsfNyPBT1p6iwtg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkI09FACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmpaaw/+NyxAFtlFBTmjisThQcOhzR8A5NugrPs4UvMMAnl6Wz58EV6J\r\n+5vYGX+ffR75mp9I8xvBQgtGHoh0P3SoahLBujpmBARhj/oG3KJGT58uaqqd\r\nZiwkEhsimv4ZD+KgYV+QRmSij7zQ/Rd9iym42UNaKUKbvRWTFQ/eiEcXs3xF\r\nRnYMpP33csMFZlQ19+bU5Yrg3CRoBqXLv1Y9QJ5qrVYXpofnMoFyAh4+z5ay\r\nQNCAsUwpKMINWMC3jgn0mFaCI7DKg2wi5H9U8U8ZyES89ae9JETia7BTXQBb\r\nmhYVUi/yWF+BZgEgCrHgi05cpGVPZmgTWgRZjG4uE6P6tTDPMW9BAeztessC\r\n5qYAni9a7OFHK1rgcdu0WUlfwNPLT89r52XA9FBDhUytW1glhRmxjrRP2AUk\r\nc77N762+b+e+cXkRQkA1SjxIKmxp5HvG2j6J8Td1ycyZoSDuLLFpahtaBemJ\r\noDuIe46Luh5tCXyYqvPfcWtDGMQwTLOfM+vskVWG0BmfkN6lQ3zyjrsjJKMS\r\nSSrgFDCgL/5oFbZZbbEnwAykGVn0DIHZWkiUe2dHE+lsyGyK0FMzk6fj3k7L\r\nbn1WV9Ik+t8Ndj+gmEJC0pZIhXnZjA6INM3wlcGCxVJNKQ9HHVSd2q9zN+mg\r\n8sv/hZWhRlo7UGkdoAz8cSmHhUTyUeNVQ84=\r\n=JA/o\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"037c17ed14cf732acefb4bf7cb0a6c61f643b991","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.ed7e82ded.0","@material/rtl":"15.0.0-canary.ed7e82ded.0","@material/base":"15.0.0-canary.ed7e82ded.0","@material/theme":"15.0.0-canary.ed7e82ded.0","@material/animation":"15.0.0-canary.ed7e82ded.0","@material/typography":"15.0.0-canary.ed7e82ded.0","@material/feature-targeting":"15.0.0-canary.ed7e82ded.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.ed7e82ded.0_1680035653228_0.13408563410352747","host":"s3://npm-registry-packages"}},"15.0.0-canary.55093ee1e.0":{"name":"@material/floating-label","version":"15.0.0-canary.55093ee1e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.55093ee1e.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"270a91d94d28ce39b3f21da7120e4745ec8eb68b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.55093ee1e.0.tgz","fileCount":35,"integrity":"sha512-bziP94fiHcsUSnP5tnmXYLYb4l8L571tUdysH7Vrjp/f3IHVWGztT88wRhZV6V5LvR84GJ+ymUTIBhrGdVYc4w==","signatures":[{"sig":"MEUCIQDqO3G3sjYN0Ll09q1EHdVOsB3C0xH4HJlkNHADgHi9NgIgRWwBGPpmcHA9IMzn53hyJGHBqO7WAXmbW9nUBjn4F7I=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkJIfkACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpC4A/+KjWC1h66aJmLG/9nZ0EHaRn+uZOTHGOGMXp2t3f6wlEvxc8V\r\nZtvc6MuUK5eFbZ/dTYBaIkgW6xrOfzBeMAFjQ4Yy+YeZh40/Tl9wvx/iFvl2\r\nwgtFuuNbhVTnrEMmWbE0/8Vok6VWPo+UvOeSP2+n/l820L2h4EoPzZ3o5k17\r\n4NLEoL56QeBPlp7Lc9MmKU2q65VuoWyEAhBtTAQCHBVOx/JGNpZt/mgXJEzl\r\n8sjYL4he/U+54H0MP8t/yOi3G0kDhCRKp3ZoZsYGIe6x9HEdYJs8BrvbklEy\r\nCDWwKvjHDO8r+6zqnE8C7lV5IdHfHMYqC8Nn5GDVbUOibXqYIicYe2RnMaPV\r\ndzbwCUccJwkjva8WzQn9k5XPikkxH5qrUBZL3BJYsJOsqAQaUN9p87LTT1j7\r\nXCzTkUfsbNSMHKPXzYyaN0stryUWd39pJHVP3RKb0RYoTmFdedpI9w9a6cKE\r\naZihA1dwFHVgudIYrE6W8mFC7M8Tl8JIlQSQ/DrdEu+nswQRpHehgGRhH6Tc\r\nhhPsxhWWCwYxyk6NMDJy2d/+fb2EtYpHzHJhLxu7nEbOLyIs6hAf3ImyQmrq\r\n9qIZUp3dvczQoEEMU+IcUuGYV+MIKNogpmtKeTC78j69JRS8U3gUSFfMzf4+\r\n5f6Fmgyyfn8ODYMmiazKAsb0cHarTYfobs0=\r\n=eGdg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"98de61151738b5091fc2b0e261c18efce05e87b8","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.55093ee1e.0","@material/rtl":"15.0.0-canary.55093ee1e.0","@material/base":"15.0.0-canary.55093ee1e.0","@material/theme":"15.0.0-canary.55093ee1e.0","@material/animation":"15.0.0-canary.55093ee1e.0","@material/typography":"15.0.0-canary.55093ee1e.0","@material/feature-targeting":"15.0.0-canary.55093ee1e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.55093ee1e.0_1680115683943_0.5964145385731963","host":"s3://npm-registry-packages"}},"15.0.0-canary.0c53abc81.0":{"name":"@material/floating-label","version":"15.0.0-canary.0c53abc81.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.0c53abc81.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"aab8405c49c00a9109bf85bbc43cdbfd895aefa3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.0c53abc81.0.tgz","fileCount":35,"integrity":"sha512-XI6uQmdigI5ldJVgF3FYIcwT/tq2DMBkeGVM+phjor5v078Rsc+Nj2niDkfJE7ngrJ9w+bLvfp7IqCaQdvf80A==","signatures":[{"sig":"MEQCICCetMo+x3e+XPbqXC3LURVUFWIUH9ipCB6KHlTUB5LqAiAmPcaVJZhNmdP0IkUj1Luw7uPdbPZtpClJcClwykmZIw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkL3SeACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoF/g//QmmHcr9pHRq4wbAxrx+t4NBCG9UDhdC2KPt93I3E+B1yL69Z\r\nNRZXY0a1FWvppI49w4Y0I5f3LfehGHiPBSuNFJeTkt9QZeOyAZWvzeCB8ulb\r\nhevBd5x6KIl6QNDp8ZwIGla5qkeTDAprDDqKOH7WYHLbGXm8liDkofZ172dM\r\n3vzLu7Lw1+Ei57+YWb6YtWr2d4ZoLphuPCKzq3TZsD1wkeKsbLmlIfF1WRRO\r\nnjuUbKHEQrbQB9KWuWhXLFmUXz0T3YXqTBTLKzTAFNqRTq8eNMxO5bfm5wtN\r\nc5wo7wzQGi5IqceoVkaN1N9qAoH5MAACDulBxTGsxrxvIK9M6MufCtXUfViT\r\ncGl9gwlArR9+lbi2ZMuK2aKeJrGuFCY+4W8o67UO8uylxOJoxE7n5Fzy6xgw\r\nu341TYzQqAcdXNuSR8hq47xxUHBg5G+hABM8chdx5SbubJ+XYoYV1DKD4tWC\r\nTvrNHdF9vA7d3QsjWpGvwrDCyhE8Of5vpnZSHCBZmZFnNqHwyHKVk88tlAiN\r\njmG3t5KEyx6OYiCGaIRJm8PyA8wx6sKqAbqzdINrHs2wlfI+DudDNUwmlXRD\r\nZlb/8UqVFceMRoJGEpCImF67kHn7Ca+L3w0pMAxFUkRu6B/EVt/Uz0qTkfFZ\r\nbOWw8RtLLvDgN28XD4TTqwukxlfY6SE3hRg=\r\n=qb14\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"6f7be5b2317c28dc06c5b0bf4a8cd44df591750d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.0c53abc81.0","@material/rtl":"15.0.0-canary.0c53abc81.0","@material/base":"15.0.0-canary.0c53abc81.0","@material/theme":"15.0.0-canary.0c53abc81.0","@material/animation":"15.0.0-canary.0c53abc81.0","@material/typography":"15.0.0-canary.0c53abc81.0","@material/feature-targeting":"15.0.0-canary.0c53abc81.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.0c53abc81.0_1680831645993_0.14100446119102372","host":"s3://npm-registry-packages"}},"15.0.0-canary.51311e69e.0":{"name":"@material/floating-label","version":"15.0.0-canary.51311e69e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.51311e69e.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b6b5db61eec604c4c1a1a50b3d525e62c58c7abf","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.51311e69e.0.tgz","fileCount":35,"integrity":"sha512-YZIvJblV7GhxjqygHK5WRZokPPRsZwIVbuYPkkV2NYD/8Zn5kHS/nE23yOfarwh/LvPQdD+1+svioERy2fvecA==","signatures":[{"sig":"MEYCIQC33NJx2CXYOuUda6ZDmWUlL0I4nEXmeoUdr5q/kpjmZwIhAPGXQIvTu6xZteKkouEXE7oFuTB6iVSyW+3TxwOEtJPL","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkMFvkACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmryIg/+Oyp2zX7Z/b5uxzpG07ReW2UzNkovxMahGJuhVj1ta9yTOoUf\r\nG50m43ZJxQVh59yfZn8cPVI5Hz0k3jtJAIYHRZ3tccumsXmJX4iS48dt+jpU\r\n8DytC3U8v+bkCWZDEqcTt3KawSkklbbAwHSp4kkN0YSd1uHvX48NacrWBOwE\r\nKWB55xl8sECyOUnzJjdHfdRON0mFK3xN15OHmVYMCSzl+LawytMPI96n4nnC\r\nNXhvfmO4534vfk2PoVr2/H4U0tMf7l9YMWCEEsfJXUPh/IPW6gv41ZjEJj97\r\n82NSX3LgvxtcPNt5+LEHYjaMAZC8GscRrMuQMasn8UULipGXqc4OzTIkWU1G\r\ntpHJYMd59VXoLBNWfHfxTsSqnbtbaqgrvXcONA+DVPH6Tsih3tAqoJpYDGUK\r\nSRWx0wuiK2MGlWQ0jC+Y6ufuQKkFn+ml23EAIy6d/Mo7cF0iePS7KTEAC9ou\r\n1pHPOR1+kNJGvxI04G2Z8yTZWIPwHpcDIk1/NM6EO8noVYfu8AOVV/1cIXFe\r\nx+CveGbKyd2IEGU/Vo+Cm0WsipYUetvCBPu27CWsTuE1HntLUyL85jfO7gpf\r\ntyg/L6/2PLGjPaHEHGDCEc7gcheSna/sc/NdMQQgLMAz5f56t2S/Qq9zYXzT\r\nYFIVQUlSuSaB9udSPl3ty2MISjpz8YwPAto=\r\n=GCN3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"20cdc4f9c3bc9046fb111c8b65ba3e9609585dce","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.51311e69e.0","@material/rtl":"15.0.0-canary.51311e69e.0","@material/base":"15.0.0-canary.51311e69e.0","@material/theme":"15.0.0-canary.51311e69e.0","@material/animation":"15.0.0-canary.51311e69e.0","@material/typography":"15.0.0-canary.51311e69e.0","@material/feature-targeting":"15.0.0-canary.51311e69e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.51311e69e.0_1680890852396_0.17647809092909905","host":"s3://npm-registry-packages"}},"15.0.0-canary.113b1a38e.0":{"name":"@material/floating-label","version":"15.0.0-canary.113b1a38e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.113b1a38e.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"af664c1a3b8c9a790b7af60b4a6fa5448e627ebb","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.113b1a38e.0.tgz","fileCount":35,"integrity":"sha512-9fHpQVtdLqC9F4ZLOdYcZGCH0/SzasoIVtK2EQ6YnnfBbHHgb7V8bd1Y5yliWId40GBxxiQ15s1OcB1j9WctOg==","signatures":[{"sig":"MEQCIEH9gbSTtzGg9iP063zoOfRyjUjy8fszyCie9+Y1QzWYAiBqQvSQbRk0vRDKFsher+l+GOC2L9XjHm1Tta0pa09PHQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkNIVUACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmpzsg//Rby8KGkbYXfOMmgkkFPOt+XwPJiqdMHXV6u/SqTTQQBcQM4R\r\nHt+CiBvI/BwDwOEN47PhobDvJIZgSXIol/aUxuiIz8jwz6WraBum5o6hFvkW\r\nfJx21zxQf3G6IuaMF/FyMqz6owK3lU0Vc+ztOdvfOEqO3DwGyCSvDMAFxQWf\r\n9qVvajetR1wNGexdOh3NXEL48nVxVVxM8XWQHBtu4VqPYW8CzLyy1ZmnBzjX\r\nI3v7FM4Andv85I+NwgU9ZYCexX+Nrl1iwyBsBWaPEw2Dybc2l36uaY8Anhe3\r\nhDnKfbNKVzLaofH11cKOaPjh51Bzip+rzGye09gFYEix01SZzZbGoQtrlvJj\r\nG8QWIaS1AV/RG2EZAeNcuvbGAnmiu+bLVlHMbnNWvv1l5PpusSLMRueUOora\r\nG23yLTCo1Gd/69tysbaDlWuGKa8qP5DiD4qaf7E5+RhznvCRCgLMxqxA2VG7\r\n0ojR49Wjj5TqLK7/+1iGvUN0u02ZbqzZOh3NQiIG4a3/bcRIInX9i9GU3+AU\r\n6MmD8xb/eNIzsJuACgYsPqfdmSH7pVdoHcvhzFmuZ15EXv/57fEPoBbnrElW\r\npg6AEkQX59IeHIj1HcpF5aa1IaUn5F1/1zZiyJxi7by8j7RcRxgvdD/sc0cq\r\npc3hXX4q80BgZx/9xXU8IT/f6UlPKcqsxrU=\r\n=h3j0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3613349b6481f716239e1a73c710c0d5fe44df72","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.113b1a38e.0","@material/rtl":"15.0.0-canary.113b1a38e.0","@material/base":"15.0.0-canary.113b1a38e.0","@material/theme":"15.0.0-canary.113b1a38e.0","@material/animation":"15.0.0-canary.113b1a38e.0","@material/typography":"15.0.0-canary.113b1a38e.0","@material/feature-targeting":"15.0.0-canary.113b1a38e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.113b1a38e.0_1681163604483_0.5207973985184449","host":"s3://npm-registry-packages"}},"15.0.0-canary.ea2191426.0":{"name":"@material/floating-label","version":"15.0.0-canary.ea2191426.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.ea2191426.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f6a8f463934ec7a0564277aa9187efb4b1a4d1b4","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.ea2191426.0.tgz","fileCount":35,"integrity":"sha512-ipGkP+XPjdg46dCp3UiJNv7X6it1cWixFTlleAeGwpuAVQ3AkDJpD8fel1Zm9Dg/pSVlY4dOtdZlbIeYo4hGmA==","signatures":[{"sig":"MEQCIFv09WO152dG9hTU3ek5iGlMVje76SFSRTK57qygIOtqAiAwqj4YzSpKagQPx3GqAi0yb3nC87ZDiRoRtUK+Z1YXPg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkNddDACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqW6w/9El27F/vQDFYUA+zQPCDmpHy1p50bmsT08irPHIQU4m1V5lKb\r\niAX6Pdk7YTYaVNQpNxywTLYbaUl6XnDfONSQwwAFuWfSWzD4phkxUOZ34iz4\r\nyTv6GZEv/nBVtsK+Czu5DSa8iOl9ofDwEmSKTfqB8iSbE0DKHgfw8JQ31kbW\r\nTnCDPBOn1pGHHarsOhTKR6yacfQB0KU86eFjfNwOLQkmGkSswjyG/p0S4o96\r\nTd38ARqhM4niH1MYzdU4m7KBx8jCJIdg2MQnw+72vp9I+z+HTTqsO+3OpkCB\r\n3osMVuUZ+eq+hNiV8UGe+M0V5JRCiq3pdbDVymII3WOuzIjbAD5C20G239T5\r\nxcTsu4ZJps4FcpQd4NADpmislSDK6N+09WP3PFssUUB0eHU9eQKsBRN3tvCZ\r\nskj/yfZs+Lr4oseN5/JfKIC8aKpPjDd3AK3x/ZIGetgEOOAla/3QFJP+cZz2\r\nr3o99xkT79k4Bc6tyjRw+D43EmToG+KuKVVLMiJiQrkamM7/L2y4TTn/MqeM\r\nQ7SeKSidOy2Kz5ub0yC2xRww3MV7eeljmgBFOCeHINP+qUcCrm9KkbXGcMsN\r\n8Ns7mw96koR8VRt34ZpSYW/aiuQfbWcxCfjqttNnL/Xt6Aq2LL2l/TfjJU2+\r\nHuY3WbHZOUHvuJ08mQAFWDz3JVVNNb8MHmQ=\r\n=bGA1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8723a8c5fa13530d57b1651464ec28e9ed1d4bb2","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.ea2191426.0","@material/rtl":"15.0.0-canary.ea2191426.0","@material/base":"15.0.0-canary.ea2191426.0","@material/theme":"15.0.0-canary.ea2191426.0","@material/animation":"15.0.0-canary.ea2191426.0","@material/typography":"15.0.0-canary.ea2191426.0","@material/feature-targeting":"15.0.0-canary.ea2191426.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.ea2191426.0_1681250114998_0.8879362586222577","host":"s3://npm-registry-packages"}},"15.0.0-canary.5a5c38538.0":{"name":"@material/floating-label","version":"15.0.0-canary.5a5c38538.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.5a5c38538.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7b590de1f4d926d4ec482664de27fbac293e16f3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.5a5c38538.0.tgz","fileCount":35,"integrity":"sha512-i3utFjcIyLmkAgKBQn7gx1mQzAJcZZ9DNfabfrna+eA4mPSzUyNEYFUCSrLrmG929YMVhA/NufeV3lbeobcGUw==","signatures":[{"sig":"MEUCIDFsIn+G7EyWqrql4iaA9JWO1vi+8JQagyL7QAfY4qtKAiEAsmiQy0L3MqEMrxdde2oyAVkbl8WdxldiAn9jN/TQzAU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkNd9lACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmocOQ/7BAQrF6YT42O3nMoB8H1SbScXtSlHB0c0clYXPJ0Jher9TBcu\r\ni52/qq7pMMgTimiAOeOVsrKTXH+e0Upq8/+mrqxSaGuetKJPh7PZ20eSpsE9\r\n4ZVzYZIImxnaLUWg5FRSZfgPK+9VvtXMyLKz8yUfOr1sJG7mRV5a7umk6mDz\r\nCJAH0kd/dmM6H+PJIiObNrOBUJ5b8OGfeczTBVkjfeok6CZyeQiFvWuQ+i1+\r\nH+0/OxmEp2DNqGxjMGz5vRLtOQHv0Z7Ae94rTsLP+nSlCrphziOXmO9oksDS\r\n8xfWTVmM234XeREfFY+DDKvHMyqNDjaON/WcHQRT1Ze7RtWkh7GVnTHoej+U\r\nmz1uGmoM3WeJKf+nu1sGXPD7lzjzvmRj2RG1vaQZ1FYrkHbLnuW+XV4I3OdA\r\nZzM8NX4fMKqRdrV3TFTUlU+RXJZWDnEF+4YbQzuE6C0eMZe6Di+lK+Yk6HX1\r\n6fGYZ4XRZiLrrP8tRpvD6toCW94OWIng3nTIipMGaN8WXciS2RD0wmM9S8lL\r\nFZbwJa4zqvs9EB92in9Kl1Sjp0FQwyqUJs6Uaau8xtnMAVNAnFyOttTdaLRP\r\nEIP0gqpZ2yhJnpZ7anxlgQ5wyurgNKPP/+fNZtK12GDEya6fuUPJ4ZBcAvE5\r\nnp1mnAakEZLL639QvzDcBdLR2ivFy4mtoeI=\r\n=cGyq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b05f00c0040fd0d1250297d4fa4236a5b6b00b9a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.5a5c38538.0","@material/rtl":"15.0.0-canary.5a5c38538.0","@material/base":"15.0.0-canary.5a5c38538.0","@material/theme":"15.0.0-canary.5a5c38538.0","@material/animation":"15.0.0-canary.5a5c38538.0","@material/typography":"15.0.0-canary.5a5c38538.0","@material/feature-targeting":"15.0.0-canary.5a5c38538.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.5a5c38538.0_1681252197186_0.8216394710841894","host":"s3://npm-registry-packages"}},"15.0.0-canary.e4b5ea7eb.0":{"name":"@material/floating-label","version":"15.0.0-canary.e4b5ea7eb.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.e4b5ea7eb.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"313e73aa29832c8f18758ce23123668aa4b11621","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.e4b5ea7eb.0.tgz","fileCount":35,"integrity":"sha512-wm5j7N7VEQWw+aMRccXFQ1Uss7JJ2GZ8AIb8cLD+KYvkfjrroljhCvDIwHJRymSMGCgbUvcTI45gM/0Qi3nwtw==","signatures":[{"sig":"MEUCIQCZLKtCcRMQWGAt0BcfG/FRlkAbIsj0aD2VUSdXQNLbxgIgAoXMs+JZpHcVq329rOypXvBYL4iZEsGe9nbnDCkCiho=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkNedZACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpKPw/9FktXPhOu1TTm6Bgus8VKjZS4giaFoYju+Qe3NPRdlR6lpwKg\r\noIt8nsadCS1Bj4BjIrpsLVUxwkCPRmfWIMZVsc1AtYHgZWnZl8EItptdKm18\r\nxWBwF2i12ERwnMc8GIUROCAKtJk6voKgYsUqnwJumhFiJryN3KjWgqhEoXa2\r\n+Iq9WF+91EB98ejHP1H66h2QxhX3h8P2QShRsShIGhr+zHDlHdwPqI2nJc2U\r\n19WjTPn03YeKsNZUtSPjIQ5hOUXO46ODQ6uBbIawtbd8C32LQ76lj3fReCSN\r\n15Uw3cLCAjZZF71HYZhkvtmKwwC7oYB6z+VdzufVQ6knfNFkjWs7poiHD7MP\r\nRWkqURrLR6E6pXxNp5fJkerPkK3U0mevssvUtWafHeobBUHYbQealvE7nuBj\r\n12zfTH+f4gvHnfG5acPjmLjucA+kbTAvNpfKvGvqHZq9dqPV8RiPkhdnvdr6\r\nIDG1sYV7c0xF4MBS2o8fBqjaDFGBA7gRvk7DM/oVjkK64Bs4HXotzu3Z6lu7\r\nyfPqmGZcKvf+I8bt9w6Tj+2jKMZ2ftGRqI+QoUXa/sJowC+mTW1SXrOt/boB\r\nymuSiHcAIbxuXuhS9jMtDjBHiLbpSC7KYqaMZb/DZdYIMp2efB4SWt+J3ttF\r\nEE+bDQuZePWDZ9WQO94azCVTFbqg96vHCAs=\r\n=B1IM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"cfe1a97277f39a7f96340673857504470245556e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.e4b5ea7eb.0","@material/rtl":"15.0.0-canary.e4b5ea7eb.0","@material/base":"15.0.0-canary.e4b5ea7eb.0","@material/theme":"15.0.0-canary.e4b5ea7eb.0","@material/animation":"15.0.0-canary.e4b5ea7eb.0","@material/typography":"15.0.0-canary.e4b5ea7eb.0","@material/feature-targeting":"15.0.0-canary.e4b5ea7eb.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.e4b5ea7eb.0_1681254232975_0.353130504399066","host":"s3://npm-registry-packages"}},"15.0.0-canary.a094dd9c1.0":{"name":"@material/floating-label","version":"15.0.0-canary.a094dd9c1.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.a094dd9c1.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"db66fdde451693477ccafa112b62105a9a8c9697","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.a094dd9c1.0.tgz","fileCount":35,"integrity":"sha512-HnENCORFwy6IMdnhXH1czsVd2OwXcD4gvr7tU9/b1n+wg6RAITI+lPQxpeXd9KbbZXANOoEs/4C9XadS8JnK5Q==","signatures":[{"sig":"MEUCIC0jgtcgrUvAH/IL6v1TgWsIo3Zs9qNZy+2ut3jb7124AiEAga4SdeKumTtdaBd0QlU05YuGl0DCuM56jd0q4gf0m68=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkOda/ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmos3A//W34J+vWmuergMQoFJANWv0rApDErkL3mbVlEYd2c01FvHcff\r\nGF7ACOjupmNnQQHOykFj0hjcTLXYJnZ35WcYfFQDoLR/wLJGa1HE+wJ603Fs\r\nC2L3pqju5+rT1Ft759vZDZiTqkdBOL+Bz1coVFi8v0nMo7SX2hFvxik2HlXu\r\nEqveVFWpxNsEQFDbtswmXoRcP+UGC3iEZH53TaUr4VuYhGJvtGjZ48oTa2NW\r\nGdm0KMQFsdFLYLLnY+OJILJbMOewVYozMD0k4eZSUj1wXQgOzQOCJYr9irK6\r\nBPa0EHPbXet+Hqmh5Py2mqeen1TkrnFTw4LuLp6YTuEOqZyUKW080niboc8y\r\n7f6qvOkNRPf2b9rDb9qCk0Ap+WPVsaIdcrZjBJYC5OWfrN/jHScz1vo0g6Gs\r\nlViW7nzeePbVJUih/M3AvlaCszJZVQyb4ZQ4raZF4PIjnnPYdNRmDa5Nfls4\r\nPU8oJrk+zGO0HK0Zk2dEpPiv9FWQj+q4i1p3U4UBsA4iV8NsJlNIz3cyieuM\r\nbA9zTMLP6WvW8oIuOyIU6BjNMWlGeWlI003bANFiHNhRlwmwWg/gDXnhcUop\r\n+BVqDypJrtXCmktsBwArFYGUzeLrFzkkuoBXDmdgIFT05N3QLQorQ8yoysSG\r\nmDzMaiBcUxarN6psCN5YnfPWHzyqTVRbqnI=\r\n=bJXN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"aa5164e66f4afe6547ceeadc8a793bb4f489ff5f","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.a094dd9c1.0","@material/rtl":"15.0.0-canary.a094dd9c1.0","@material/base":"15.0.0-canary.a094dd9c1.0","@material/theme":"15.0.0-canary.a094dd9c1.0","@material/animation":"15.0.0-canary.a094dd9c1.0","@material/typography":"15.0.0-canary.a094dd9c1.0","@material/feature-targeting":"15.0.0-canary.a094dd9c1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.a094dd9c1.0_1681512127379_0.6516078686275848","host":"s3://npm-registry-packages"}},"15.0.0-canary.f771b091c.0":{"name":"@material/floating-label","version":"15.0.0-canary.f771b091c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.f771b091c.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"00dab559766bf5d0a29f87b083606893bc8fcc68","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.f771b091c.0.tgz","fileCount":35,"integrity":"sha512-iTpDVUyWVSzZWFJEvYbn4f+n8ln0V9zCNF91a65as2ctKZAlVJKc8PItSVqYAEv5qJQg7I1Rls9bLPn5MnOkRg==","signatures":[{"sig":"MEYCIQD0CGrKv6jCgtLjSiU1aYqDkxXgLRoxzxQD56FiPyUI+gIhANmasZh3e+HKfa/cpTl6kvk80TPpPWWtzbf+CpuInvfH","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkPWfEACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqrwQ/7B9lqnPlSSbDyI7RBbJYLhuqBkYsN0o/SmDr0k88ohAS2YJQY\r\nPq9+ORFzhs1+g9ZXZzJM5lyT6IYVte1MvT8f5rAcM03/ngNq3OTHb/8tyJy0\r\n5kP1X4vAoJjrAHqmga2w8jMMS3WGDS0jcRXkmQFgFJfRbvcRmU2OoBIN/JEH\r\nq9O50B8eKkWruJaRrz6j3ApUNRdUVf4BreopDoRGFyz0HSQ8WWKKSFD1UnKw\r\nm2eauv4u5I/vKDRA6OUgM3Xjd217S9zv5v2l+Qb3cqdjKXgiYwhkNq9hLben\r\nkJPT05QOc0KwHdfn2b+XlOG4xmoeCu8ta0hsAU5Unccb2trM5Ps+u2YVksvy\r\n0VttmgqDvHjph9A9O1wMkEDveJrXXLvGab9ZzqIDLmxUKFaCPtlPWW3VnDgn\r\nTjNl8nPkepkAnQPHMka3GA6kZNSM33fn4NDdPZG61m3J4AS7oomzz9qo2HiH\r\noKAYBhTh+YXLS9hiky3UO7PQui5TdBcLW6hCHxDKCJmP9rEklvGu5J5B1RUv\r\nIhWp/LrPayIzlQgDOq45qfOqKf95LVfSHohl1zFd6bJ1gukE7uKwz4uRKb42\r\nryiFWCzfr5K9+dzMh/Z9pZ5jXQYCCqBZ2/iW/S69nFGP9Pf7TanrS6G1CotX\r\n3D8Bc8YFaDWm1QyzBrZxBipKTfoZrOBGU40=\r\n=yJuj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"de0e292c8ebcab887041fc4a59b3c0172f4d4310","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.f771b091c.0","@material/rtl":"15.0.0-canary.f771b091c.0","@material/base":"15.0.0-canary.f771b091c.0","@material/theme":"15.0.0-canary.f771b091c.0","@material/animation":"15.0.0-canary.f771b091c.0","@material/typography":"15.0.0-canary.f771b091c.0","@material/feature-targeting":"15.0.0-canary.f771b091c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.f771b091c.0_1681745860448_0.8918587452673641","host":"s3://npm-registry-packages"}},"15.0.0-canary.79b1b612b.0":{"name":"@material/floating-label","version":"15.0.0-canary.79b1b612b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.79b1b612b.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c77146010fd1725cf59815918f149af3d2b106e3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.79b1b612b.0.tgz","fileCount":35,"integrity":"sha512-gLamF+hFJ/vBiH7WUcU/292x80YN1VXeYJAQmircWhacxJPL+q9HDj6HJgrYhR4l8GthKFEBxh82x4GE6mdVBA==","signatures":[{"sig":"MEUCIAmMbZkUzzqKMjtc/wE3hSLv72nEv34U6vSqXQNAmmqqAiEAx7w66DABrRqv3aR9mhmbxJ2bc+eE8GBqt1s+IiDehZ0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkQHvEACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmokXg//ZLYKExfG9n1tpRdmAOHFpsP2XZnIJLtj+aO6E2slnK1gQpMo\r\nm4msmZdTUE6VCrotQY/sDwUcagFCKUZiCKM4k7X3tVfv7GcawxFHBoxqaAoZ\r\n9TLS1f+nQGWmAMCNS729hDcuaZ1xhVi8dvlU9qMUIhC82bx6IVyCnL+DTxtz\r\nDaFR4nDaIT8isKBqHsUmpS9I2LUwvU80w9WO4z9yQfUEDlO4w8yTP1WzfcgS\r\nR/ZnIGN0bX3X+WrklEeJfTKJRy9pxEmTfx5BrpRoQYXQYut3OLHsFruscqZ1\r\n6i4rzOrwM/fdoSfcXmQHYl8HEdOmxodmPlnugP7/2RAfoRGJ0+wI593U4fyD\r\n54fJ7IsrlJAhVmWwBp7TtyyvjU93UUELzbKDMaQbN+TYWYEv9Og4J1EkSQcu\r\nr/11mFn2IpP06J2hxdaVi80WX8HL92iuhong8jEc47bM+f2MJ//CxhwatwvG\r\n5DVGKSu4R/EfFxM/DaACBjf4QJC7k7znmcW6kaZX7gAZpBFCLMud0DRUXy7J\r\nHl09hm/kHFWaacWl9OHnrc1NU0z0md6h+QoFTSh9NiTM7iKAxNlPk4/BDHi1\r\n7gVRbS2fSjWXUMFTdcqmOj5t1xX/sUd3rqZzTJkaBDCCso65MaqGNoBYRgF0\r\nKtaN1HAEQ21kfDHCwEsbt4oF+CPevxcmD8c=\r\n=wcoX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c8248a1b49ee37b1782b19aaa49b5626c914916a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.79b1b612b.0","@material/rtl":"15.0.0-canary.79b1b612b.0","@material/base":"15.0.0-canary.79b1b612b.0","@material/theme":"15.0.0-canary.79b1b612b.0","@material/animation":"15.0.0-canary.79b1b612b.0","@material/typography":"15.0.0-canary.79b1b612b.0","@material/feature-targeting":"15.0.0-canary.79b1b612b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.79b1b612b.0_1681947588253_0.08360675825421882","host":"s3://npm-registry-packages"}},"15.0.0-canary.6f50071e5.0":{"name":"@material/floating-label","version":"15.0.0-canary.6f50071e5.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.6f50071e5.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9de4d2432a5cc70096349bb22c5e42bbff7b7570","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.6f50071e5.0.tgz","fileCount":35,"integrity":"sha512-9Yav816nj4B4YvIqiF82zmwUCvtyPNjqqbUrDQDGUoYaMACOsYllw8+dQfGpqPRPZqAqNJFo90FmpOwwws2e3w==","signatures":[{"sig":"MEQCIGnRAjanotmpvKMIBLkefJKZ1SpSH+JV6W/wDxpHxlu0AiApxtMnRklNUYTAW9AE3cdCYsagA+lGrEhRoxIMc0fKxA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkQX2/ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqEuQ//XLNhnzvKy8Sy3CbIxkXXWCWvxCLNh1Lxp0CM9SHZn6cdM6Uh\r\nUEYKFUWheKsW6k8M36LWsFHSj7ttHMUCfD5a71OAzl9dTVWqoSMRg6fUBIWI\r\nnnFIwh49BIhfD92x1Tls13w+g/YpkwdZbpVu80hMPRULtsOiYbiNzcK6pcUq\r\nD3TMBCcQe6/1WJB5JyNRIv9eSl7lxuDZPmO/n8LRDG4e5x/NObtZirQpNLdR\r\n4D5XIavglYXGhcSW5aFX72oerhaquB7JhkAp9e6PQ6GhS/kfgm3EUWrSoigp\r\ncdnZf/j4cKsgzQH750ItM3bvi9XlslwK8vJ7Fyw1xfaLgK9KvhecZYvOcLeP\r\nzU5PlgcewrtdArkQLEIXZLS5jpkprO8Z3aa5FLa+jB1s/XpYNj4BY/m1Tvo/\r\n608p8OQhX9uNdNeONGm8aTeW/DP0PVFLOsUrPcV9vtLttXm/U+KnXhWugIB4\r\npuQcyvnhKT2RNRY+fIkRBdmtE3kzZyI4tK3CiLaez0UOZJTHnx86Gdh2MFIt\r\nSUGMHIcgDmGHXgle+lX7iMomuSZsEOCTBXOcXlb8bT28TpCYaLhMAsJAwM8Z\r\naEIOnEQPh7nJ6BwzfKCO+4Mebv8sE5pbmfsAoZxaUSo8xvqr0wGyHm/zMzmR\r\nN0d9gifoyih7vUxRfA3Wz+y8yAd6mnM9vCw=\r\n=XmwV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"0a5eb7e7a96b7f207546983c0f79d6fdf23f5228","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.6f50071e5.0","@material/rtl":"15.0.0-canary.6f50071e5.0","@material/base":"15.0.0-canary.6f50071e5.0","@material/theme":"15.0.0-canary.6f50071e5.0","@material/animation":"15.0.0-canary.6f50071e5.0","@material/typography":"15.0.0-canary.6f50071e5.0","@material/feature-targeting":"15.0.0-canary.6f50071e5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.6f50071e5.0_1682013631334_0.5758685974778042","host":"s3://npm-registry-packages"}},"15.0.0-canary.ef754381c.0":{"name":"@material/floating-label","version":"15.0.0-canary.ef754381c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.ef754381c.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"39f7e3f6d750bf943fbe88cedd063e399fdf17e3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.ef754381c.0.tgz","fileCount":35,"integrity":"sha512-VEOydHclcFi6o7D1c4lcc68E6oQrRPYjvPpo/a4PwD6H4aBEbV3Xjsd9ebpFdBqRBCd6EyUZmG384TENfVX+/Q==","signatures":[{"sig":"MEUCIQDJJdYyhn+kkoheHna/+QqyDmBQNjmRiZL0xSh90nHH8gIgGTfMEdwofFnufr8wuF5++BrlDMlguO1plzS++Ymz62Y=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkRuuZACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrocQ/+JHI9sL/TscvJ11A6Lz7c/QrNHOzr0hNLnul6zvRsldJWS84n\r\n6IXD9jeTfgSw0CYnBgvRXLGO6E9Sc88qCMJb4Q4YG3JKkI77puCRiMSOhF0r\r\nIIDSS8j1/rpqDr8UG8wCLxHi6MGOAWz90Zs0/p97qc6tYP6o0y3l1pHqTlyK\r\nXss7AgTYNBFCxzxdrT3j5UfoUAFWRxglKVAdkrLiXLX9uuZ5yfEm4xTvGPrV\r\nAlQufHUGZecGijN0oIpI+s6mxH+sMt9K8l1r10PMr5GmWjLLMYpvR5F0CLta\r\nV+ImOCZLfbcKsrwLGEMMwa9wNPn2mTNB8Vq/rEh2V4xOo7ZW2SrEcjJgBOrm\r\nYTe/WG8hRT7HFgX/NizZ8TzRh/bgdoVafOgEGuH23yZF5Lsp5FhVRvst5VZp\r\nA5gTPV11hQFxwMQB+7fjwuV/dYfKw/J1qg46XhuR0Y7YT9Dl2zv3DVybozrL\r\nXi5kvs2K532LFpl7XfkoLi9H73dhtrwCI0KTvE3cJywrOewJ1hqULU78GHzk\r\nYpF1YLwE2hUCaLRm9vQv5SCJCxNsED8lJuhmNBg2idBT6HtY3guGRH0UotEC\r\nk7lY8Ww28Yb0M65ODWbKpzNdK46v0dRUoKIQ8I4sIddfwpP6mYtX8NSI5QRG\r\nJpgvhHw+gkAtzFvky3K/mG1MDTowe9EexkM=\r\n=wdzg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"998bb9432e40056ce6ec836100d9a46f72ace249","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.ef754381c.0","@material/rtl":"15.0.0-canary.ef754381c.0","@material/base":"15.0.0-canary.ef754381c.0","@material/theme":"15.0.0-canary.ef754381c.0","@material/animation":"15.0.0-canary.ef754381c.0","@material/typography":"15.0.0-canary.ef754381c.0","@material/feature-targeting":"15.0.0-canary.ef754381c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.ef754381c.0_1682369433089_0.4026930501276975","host":"s3://npm-registry-packages"}},"15.0.0-canary.69ebf61ea.0":{"name":"@material/floating-label","version":"15.0.0-canary.69ebf61ea.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.69ebf61ea.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"2198a141865539366e523fbf173744903c180103","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.69ebf61ea.0.tgz","fileCount":35,"integrity":"sha512-cSVkrJ5kAejC/FxtySOPUM4mOAkbCMSJMXPT2Ws/rBCvoILiVK6MAFMmaoKGDPc39pdEVH6MyGcIMXK6OsEVRg==","signatures":[{"sig":"MEUCIQCdCLrQH2hjXBiuzogVW199kcZ4o5Wr+xgqE31JdZPK+AIgC+ZdjJkdyNPqZ3pwC8keo9nGQHuid6/CMQdosTff2mc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkSq8BACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqLhBAAgb9psHj7BtYUi21uk4cKy+nKUPBobbnCEZwU4coWYG4wBDis\r\nDxeIAw0BfiggotV1HZIU7d444Hc7moUSKoG0JGs67P/0dC+YIdhtcIOcGonY\r\nD2TEx+5yZemBrjiL05lV9sEiY0VoMuUaSHUTjwz7IM9u5d/UvHQoFONgF6XN\r\nvL7eRCMZJDWiACk8paPSV2mCpWWBGf23DJUW8xF8cxsm5LZGksS4VDVs5AF8\r\ndyd2bhQUv+v1SWrN1rlysqFdgimzjDrxjtyILoTjJ3HN6Hnju4VmG/Fb09EI\r\nCa5ZYckhO6VubvkmfxueNaRZdala5snORT7IT8It7/ik3Ir7pY6UmNvLeu1H\r\npZcGM2/6xHYgVyEk7lzJ47Ay+NQjTpn/oe66A5AD20nv8XA/4DDGYEU/Eawl\r\nDn4gOZiQDG65k2xbZBO8i8QEXRLDsaHHLnpe2jgw3SaR6qtBgIjHEeSmzHoT\r\ncJQohnW7j+uc4YATNmOtkJ6kn+gxdTzEfPgd5hZwHZFOzd5aBkkfm15KXWZz\r\nF8Jdv7Z1E2APpOZ9rKQg0qDH098EG2478X05o7U0RNcaj07oAMT4sr/dXd2f\r\nskwsWo9Rm4zRSXZPw748rw3hNFj2kp77X2mFbhn6chwaIi6jpzQWZLnavhAL\r\nFjIZa+R26EaXJHyUnsiB4tPgfKdBmsQR0I4=\r\n=WWPJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e68ad025642429a51f137e9f3fc853364faf0622","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.69ebf61ea.0","@material/rtl":"15.0.0-canary.69ebf61ea.0","@material/base":"15.0.0-canary.69ebf61ea.0","@material/theme":"15.0.0-canary.69ebf61ea.0","@material/animation":"15.0.0-canary.69ebf61ea.0","@material/typography":"15.0.0-canary.69ebf61ea.0","@material/feature-targeting":"15.0.0-canary.69ebf61ea.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.69ebf61ea.0_1682616065687_0.6703129477929475","host":"s3://npm-registry-packages"}},"15.0.0-canary.b90be86de.0":{"name":"@material/floating-label","version":"15.0.0-canary.b90be86de.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.b90be86de.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a0715a7454b3ffd9f377ba8b2fcdaba572f0314f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.b90be86de.0.tgz","fileCount":35,"integrity":"sha512-CZrKvi1F8Kkbc1Ms18Q26H4intPUsUSdveBKib4XKYInT8L736VSGvF8re/B/kZkGvYwLfhxApjRfdh1bPh/dg==","signatures":[{"sig":"MEUCIQC0sS85uG75p2AjcdDu2OWtke0OpIDQl7AjaqvpuuzvKAIgP2Po7QMbzcCRJE3cgYZJXshLtGSJAOUCsayx38cClQQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkTGL5ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpieQ//SxttVyY0GMypjcwy1IV2ozqkFJ9osQ871Sl5gLM4AjjoTU+D\r\nhFZFz0SXPl9rLFve4tnXvQJbDJmyf4+I+Y8F1GXEiyS2Lk2N5t0D/3JUJfaE\r\n2yB51KJHgnXRzAgCxocOubK+iRHt3zAWIxXVn33Q6GatS/3/XFQhwSBYpoBI\r\nd46LohHVpMW7Lz9Tr/UbqRNb+9GZdB1peWIUMK2GD8TdDBYawlUKJgyslarE\r\nce8tXZBbpgY7Q/pu8llEd/hcUpTVsjyp2/wd8rK/Fem5YYlaNbMEZhFbxHjb\r\nBW8gwipOV7KaNidBHmoLfLVmE5K8H08na16RqU7RuFkO8016JTdip7KwaLwx\r\n6TaWV3s0n9m5rgybdgO7m2I/kf2UijdQd3fK1q/Rk2SNUZr3azr0AwIXcgl0\r\n/1jyaz2OcN5pQRnGOTr2hgmiuCZ2LZyCikS9+XF9gnb+vPv6Su0GSqK1EzcU\r\n+W+ctE/UfebiyN33F3WmfuZt+2Z0wdMK/6pQuV/QUtW29bGsr3naooev+VI/\r\nJwTp2oSgDQAAkJuvXG5MxQTYjP41nQ/zurWrfMN5Negt8pw5fdOYfQOCyo9+\r\nLz+QVMg2qNBZ6dMPuX1WiIbeBuw8tH+5ibCpXwL9X7v+XMZn5IDwXjX8FQip\r\nau2aO8ixfMXSwqsQtLth/vwD7lAeOyHGV5w=\r\n=WpYs\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"903a4c00d6c4501b4eae8ac0007164ef4a97ce0e","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.b90be86de.0","@material/rtl":"15.0.0-canary.b90be86de.0","@material/base":"15.0.0-canary.b90be86de.0","@material/theme":"15.0.0-canary.b90be86de.0","@material/animation":"15.0.0-canary.b90be86de.0","@material/typography":"15.0.0-canary.b90be86de.0","@material/feature-targeting":"15.0.0-canary.b90be86de.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.b90be86de.0_1682727673039_0.9110581779071878","host":"s3://npm-registry-packages"}},"15.0.0-canary.51f9c0c28.0":{"name":"@material/floating-label","version":"15.0.0-canary.51f9c0c28.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.51f9c0c28.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"8da67ee890687051fa08ed7604c0e7901d4b17d7","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.51f9c0c28.0.tgz","fileCount":35,"integrity":"sha512-4T1uKFXIUAg6lP2+kY6QcHdIl6exqsgDkOUlkPnAvXUZmGWnL9NlTSv3c6hdTcattM8XfcdPrjHozS1ltiIiFA==","signatures":[{"sig":"MEQCIDWfM1xHiZjnv/TvhfGzAbHZejMMOggUOspeuJ3iHy2uAiBCpyWbC7EnjpEqYWiLPI9x9D9tKrQLJyy8yjVbC3J59w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkTGVEACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpEmhAAiZc5IBwg+EiV6eeXw5DF5rhcuou6q+gdeD7NgKSF/TDL1eP8\r\nY40Ia4jWqnvM8BrUJpKA9WbeDsxsFX+x+3tnMXE20Afkk+2RHPRu5UYbStf7\r\nSXwNkTEl5LwM45a3vCCDOnw7FHIgy/zx4ZHqMIsb6OJ2eCoOOTG0LlnoixQp\r\nzrqBdTRiqZvT8gy8hXS/yy4rUu40Y5kJXRCQkhdH4PU7y/JZTMfu2qtgEqTp\r\nt7arDtiDw9zTXKZiuaAWc5Ng+C9C4reL0jtnRTeWbAHUcbeA0Sc/Q7kt8GLQ\r\nPKDJ/VBofDkAjGoM1uL09IBhuJo0BeHs8JAoUPdQHD0mF66CycTBIad7OSZI\r\nA7gjrrcGwTJeHnIaQn3NacP6YTaMGtWijPm3cfzyZOVynyvVkbkiCT2WuFm0\r\nMs6HBCMJhf91Qe7IP/N0OL1jCXsZNShgE6dIdNjhQpBQszBE8qI0SZosrIVd\r\nIRTR7JO60gkoVuAR7hLMKbIGAJl1KdJSnGwbIH1WlB7OocYLns+eQoUAg7Gn\r\n1e90bKbm/snxznvMPjm3ahRrH675a+UjZ1oPApdTMoINa2C8edp4ziYFviJn\r\nuEzNXDGAZ6XZh9zzvPZuUnU2PD09YOHUuWYtZQ7E95Z841wfBJcRyxQcIo1M\r\nab2nz9L06PuXzSmGrWye5b+0Y6VvjUOvNu8=\r\n=UkOt\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"87662f1719363ac8e600f73ed8a7795c25d8add6","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.51f9c0c28.0","@material/rtl":"15.0.0-canary.51f9c0c28.0","@material/base":"15.0.0-canary.51f9c0c28.0","@material/theme":"15.0.0-canary.51f9c0c28.0","@material/animation":"15.0.0-canary.51f9c0c28.0","@material/typography":"15.0.0-canary.51f9c0c28.0","@material/feature-targeting":"15.0.0-canary.51f9c0c28.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.51f9c0c28.0_1682728260714_0.33787925251395357","host":"s3://npm-registry-packages"}},"15.0.0-canary.4e840d685.0":{"name":"@material/floating-label","version":"15.0.0-canary.4e840d685.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.4e840d685.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ca444e243e81944f35889888948a4bd93da0e9eb","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.4e840d685.0.tgz","fileCount":35,"integrity":"sha512-YU4AJiOp21TqQOjaApXjqbvdZu6cT0MBqRQQDKQoxbXdwLLEPaIY0CFx93CeZcmmJqUO0NFDUhQkBodLAFeyDQ==","signatures":[{"sig":"MEUCIBVzb1nGJ4CHdmLQLcqaiFKbEJDpauZXRkOwrHYk91JzAiEArQ9dEgnbBY27tGZodOO/SA7CenzxzEZrXGtJDz4qxLg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"feb1f9f53257b520aff6dfe5dd1a15e319e73a40","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.4e840d685.0","@material/rtl":"15.0.0-canary.4e840d685.0","@material/base":"15.0.0-canary.4e840d685.0","@material/theme":"15.0.0-canary.4e840d685.0","@material/animation":"15.0.0-canary.4e840d685.0","@material/typography":"15.0.0-canary.4e840d685.0","@material/feature-targeting":"15.0.0-canary.4e840d685.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.4e840d685.0_1683041588319_0.45737661679357844","host":"s3://npm-registry-packages"}},"15.0.0-canary.10b8563e4.0":{"name":"@material/floating-label","version":"15.0.0-canary.10b8563e4.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.10b8563e4.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e5f4a532fa595149d43644f3977255023f337fd5","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.10b8563e4.0.tgz","fileCount":35,"integrity":"sha512-0m3jqGlzIW+k4pOEdNJHN/8tl7+usIvJhgfMkyCj6ZmsxcWP7DyhyncOYTLiPziQdpKkdshac3lY+zWSFbY3tw==","signatures":[{"sig":"MEUCIQCDGSa+m7loHei2AOWYAwGJbvyjxTsjCrjTVxDJ8NZ2lgIgO7kO3Z66x4gX1vKj8bIjRABR8Pjn5/7BzdPrGiQmc/E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkUZ+pACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo9txAApPg16p3ZsbBAwu3+kRcPVdVIuslZL14MVBLJFcvETtIwgPKR\r\no9s2NX9+ho531CI9l8H4OK/K97qD+b5rCiX4jabNyIkqqcA9RtFhs8SMA5Rk\r\nak4w/xixZ48AfyVLwEN8WWiGJN3JCmvnqxyR5G8pZgFTUOxnAdAvbZfvrMXD\r\nSOXtv2VdjF4FMuoNMHIAVgsRv8bDM6+QNwXXVAfK2EP4sCV6tk9FM4Cvippq\r\nDOlf79WESJO5AkDEdv86mbibNtVBHyUxFqRptlsHCHadt2aFsK8CQd8oGq6v\r\nQDf4+xSK2bvdIMSXJQ98cgB0ud/ogEkDAvanAGuv4ttbGD/yds7znJCV/1yv\r\nrvvbrMU4HquO2LdvISQo00V/euIZ7Xk2AWYiaWRvhPP3ck++4vtYutSxxbp9\r\npMR34K6urzSC5IguGcxyRPc2FNyEV5LnEo5Wfr5+2nm2rVm23fFpHHOLcybC\r\nLxa4EsjfyY1iprc4rfu3bctQbYpCE/CiPyHPpqlzxEmr1qPia0I8RsW7RhFI\r\ngpD7DoHHjWn+y8SgPCQhF8GOcP2vT836JlZbDd2dNN1katem5mr4SqsU+hnW\r\nv2OgNUGSJ9twZy81dvNx435tyv+D6HrBJow6TUnN2vfFJWVI9OWK0LB/N0iU\r\n5MDdGW04YR2D8jHsBPP9lYSoWBmKv0SZaXg=\r\n=JDDf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5f71dcbe45f5245c72c0fabae0162af558c5c395","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.10b8563e4.0","@material/rtl":"15.0.0-canary.10b8563e4.0","@material/base":"15.0.0-canary.10b8563e4.0","@material/theme":"15.0.0-canary.10b8563e4.0","@material/animation":"15.0.0-canary.10b8563e4.0","@material/typography":"15.0.0-canary.10b8563e4.0","@material/feature-targeting":"15.0.0-canary.10b8563e4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.10b8563e4.0_1683070889381_0.710128028465765","host":"s3://npm-registry-packages"}},"15.0.0-canary.736b7fda4.0":{"name":"@material/floating-label","version":"15.0.0-canary.736b7fda4.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.736b7fda4.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5f033a15c69a2fd552654f83ddddd0aa8ff7f0ef","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.736b7fda4.0.tgz","fileCount":35,"integrity":"sha512-OygjcXQq32r53uAiS8w76VEiilXaDRHpSRToXItBYvFnnBWZ4A0BJkFIgyhC9LTxDu/uroDXcmm42IddgXzsHQ==","signatures":[{"sig":"MEUCIQCNP/0cCHf5+qwlzrWM+YV1iPsMrteuDsB7mR4izhwOeAIgY4/3hGU8mx0dQpzL+FkyEnBR/ubayYb9RbErzK46ya8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkUnkNACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqoqBAAo4HmzxJ00R3/el1TBYa//nRpX7TlT7Ttmu44uO0iQ1kq9D/s\r\n70SvrwjMHmb3c5AN64lSjI9waXTVJ4lCKK1W0sKDJcMi+cZ9olJmogYaKVS0\r\nw3Ls4QYMJcnDXlfhz8cqFWecDFHvHhG9JY52cVL2iIT2RJbamdRlsr2W0VFM\r\njrEE1MvBg7ld29wo3oWkR7vCO7+CvedmPWO87jlluOHYdGxouqVUNeYFeb01\r\nmHlKXs8IhIqcaI/31bjN81jnqY3CeGaSuyAFees9ss4iyH2yvlY9+vpo0wHp\r\nIMNwtCWhSezZDO3f1/tJ0uAcTXnWeXxgKSPLXyjAmBjbd4FwCISW1kK14vzC\r\nr+wZL4dOyf+vQSmtVvclVxiNSgAZRyOxd16TMIVq5euWdFqTOieKMCX55l6n\r\njwUZ53ag2oPKFZSzKZuRI08hLGjo/Q6Hx9pC5otIMaegeJXMO7X0EkaYVNz0\r\nWDAxjANBC1OlAZS9Fpmbuu/KscPlv5doly/GQLBt3+mXaf6Aoyb++0xSoGZn\r\nFM7OQxtrzIKtJeaUK1smbEp9ZXfcLfb7hAye6mPNvsDFibTfQw5KfsOhWIUz\r\n1h310DduvwEgJhPl6ucnVPdNoIo07gWsKgI/U5GGrRJIMKLHsVe8WJvHJ80U\r\nlHG/hXeqkwhn7w6aXEmdM7yiGYH8Tbs1XCo=\r\n=Fr3Y\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"b9ef54594aa8f93612aed085460f035d0aba61bd","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.736b7fda4.0","@material/rtl":"15.0.0-canary.736b7fda4.0","@material/base":"15.0.0-canary.736b7fda4.0","@material/theme":"15.0.0-canary.736b7fda4.0","@material/animation":"15.0.0-canary.736b7fda4.0","@material/typography":"15.0.0-canary.736b7fda4.0","@material/feature-targeting":"15.0.0-canary.736b7fda4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.736b7fda4.0_1683126541263_0.384801728012488","host":"s3://npm-registry-packages"}},"15.0.0-canary.0e533c5a1.0":{"name":"@material/floating-label","version":"15.0.0-canary.0e533c5a1.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.0e533c5a1.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"1f83a099c5aab2bc841c10cc61306da2ffdfaada","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.0e533c5a1.0.tgz","fileCount":35,"integrity":"sha512-t2nI0g3Mtx1iYC75bec5WWmenhw7/mwPRd/XGxzE4iaw7sIqbUIDozpb3tSp6UR1TOm6z/fhWt2jpJM/bztNnw==","signatures":[{"sig":"MEUCIQDH1RO67s9gsRq6U72SO7h0EiLgj/NEA8PKQn46hC/aAAIgNhisaJVX3uzSjseUUgTR+XFayhhkb6LykMn3WzcEWaQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"6b9b4497cc6457c9e92ab3abdaad626c73e610a4","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.0e533c5a1.0","@material/rtl":"15.0.0-canary.0e533c5a1.0","@material/base":"15.0.0-canary.0e533c5a1.0","@material/theme":"15.0.0-canary.0e533c5a1.0","@material/animation":"15.0.0-canary.0e533c5a1.0","@material/typography":"15.0.0-canary.0e533c5a1.0","@material/feature-targeting":"15.0.0-canary.0e533c5a1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.0e533c5a1.0_1683305746899_0.5548545582810873","host":"s3://npm-registry-packages"}},"15.0.0-canary.5f01c15a2.0":{"name":"@material/floating-label","version":"15.0.0-canary.5f01c15a2.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.5f01c15a2.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"11d22b5998850c0e8de94b68f902aa41e0f09c3b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.5f01c15a2.0.tgz","fileCount":35,"integrity":"sha512-YMrK0s29Wm75Fo94v6NVAWgGArChViXTpy/t8fw1ryd8NaXKunwEOZAgfaGd0rxbwIV5XgD3WQhoAozazZusnQ==","signatures":[{"sig":"MEUCIQDDxhYM5fPEZ3vTzcN/oGLETTkQL53P68jp/Y3inODLSgIgPhCun/6AOyH9WkhmznplfoR4fDwhWgwvGWw0hOp1JxE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7bb1c5dfc575b36654ae046d1f4ab3b27e8c8f9d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.5f01c15a2.0","@material/rtl":"15.0.0-canary.5f01c15a2.0","@material/base":"15.0.0-canary.5f01c15a2.0","@material/theme":"15.0.0-canary.5f01c15a2.0","@material/animation":"15.0.0-canary.5f01c15a2.0","@material/typography":"15.0.0-canary.5f01c15a2.0","@material/feature-targeting":"15.0.0-canary.5f01c15a2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.5f01c15a2.0_1683307554712_0.8600464579142453","host":"s3://npm-registry-packages"}},"15.0.0-canary.3b5b55e31.0":{"name":"@material/floating-label","version":"15.0.0-canary.3b5b55e31.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.3b5b55e31.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f7104ef361d586c3116c02ebf98aabac20f495d3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.3b5b55e31.0.tgz","fileCount":35,"integrity":"sha512-YJhfh19zXDKzj0z7RrbZOOnlF5ZIpqIikNEq81VKn78TiiQOe+5x+D2lGfep+tqYf8lJk/zxhtOv55L9755QWQ==","signatures":[{"sig":"MEUCIEAme9TrSr7aL6pmUXCmiHTPkk/6oMCfv9Jee0k1hDGbAiEAlm/Yk2ppb70gsQRg2/dLcnPJZZQhC6uDhYPq5aKDG20=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"c262d9ee39655e869886d1584551a096ae56dabc","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.3b5b55e31.0","@material/rtl":"15.0.0-canary.3b5b55e31.0","@material/base":"15.0.0-canary.3b5b55e31.0","@material/theme":"15.0.0-canary.3b5b55e31.0","@material/animation":"15.0.0-canary.3b5b55e31.0","@material/typography":"15.0.0-canary.3b5b55e31.0","@material/feature-targeting":"15.0.0-canary.3b5b55e31.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.3b5b55e31.0_1683311915768_0.48681032947181735","host":"s3://npm-registry-packages"}},"15.0.0-canary.d0788120f.0":{"name":"@material/floating-label","version":"15.0.0-canary.d0788120f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.d0788120f.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"050088d32deb8a04e2fb45237fef46e42861e261","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.d0788120f.0.tgz","fileCount":35,"integrity":"sha512-P1n+RS8bG/pqXywUPeS1H7JEnENoIQ9CeVDW6HD9bEtaT36hndnbTyy9YRl773yIeLvEngdDB4tOFkbDknlRUg==","signatures":[{"sig":"MEUCIAeDl04y/h9NMApJVcl7TvyvHg2E6NE5BH6DNXtA2auEAiEAr8BM15hZokmHBbgVgCtXuTgZiESOSVOkRexgTKtRFng=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7eccbee262206623b89c40dadb4e11abe30d5e45","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.d0788120f.0","@material/rtl":"15.0.0-canary.d0788120f.0","@material/base":"15.0.0-canary.d0788120f.0","@material/theme":"15.0.0-canary.d0788120f.0","@material/animation":"15.0.0-canary.d0788120f.0","@material/typography":"15.0.0-canary.d0788120f.0","@material/feature-targeting":"15.0.0-canary.d0788120f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.d0788120f.0_1683620557804_0.046388547360628696","host":"s3://npm-registry-packages"}},"15.0.0-canary.f52358dd0.0":{"name":"@material/floating-label","version":"15.0.0-canary.f52358dd0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.f52358dd0.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"cc00e61fa9972d82bd50d845fe2f0a64560bb27f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.f52358dd0.0.tgz","fileCount":35,"integrity":"sha512-yK9WO9aXBHxuXeVlosiyVVjxvUrFSJNk/77n6qo4Qg1If0JqemrzqlCI21lIlKzGIUpcIdlA2UC04OAfBol1sg==","signatures":[{"sig":"MEUCIQDd+gfyC4we1YB27M2MZwbqBb4lSpFuu9VPl0lU5rDeXAIgPPs8rLRYCaMwb/97ylKfYNtGKH5B8K+OY8fTWefba8k=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a4baf07a9736a6e1fa40001f7198ae1865d67392","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.f52358dd0.0","@material/rtl":"15.0.0-canary.f52358dd0.0","@material/base":"15.0.0-canary.f52358dd0.0","@material/theme":"15.0.0-canary.f52358dd0.0","@material/animation":"15.0.0-canary.f52358dd0.0","@material/typography":"15.0.0-canary.f52358dd0.0","@material/feature-targeting":"15.0.0-canary.f52358dd0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.f52358dd0.0_1683901800378_0.6887766758712353","host":"s3://npm-registry-packages"}},"15.0.0-canary.d3c3fbaa3.0":{"name":"@material/floating-label","version":"15.0.0-canary.d3c3fbaa3.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.d3c3fbaa3.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"fc065c19f322b55c983a726ef8f8303b27c50869","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.d3c3fbaa3.0.tgz","fileCount":35,"integrity":"sha512-PFj50YOtUS3pLBnk+y4imQJXfwBRpku72AmO7ls01N+RhEtk9quBWQ7t7Uop5E9L8fixtMQCaHfAUcBUi+4mFA==","signatures":[{"sig":"MEUCIQDpddNFwCpZezw25noH5wx7LsxMqihqd+Iq3d1ZCxHC0AIgfXi9hYsJLWXd1VAZMfVv1r34buZy+6MyNM0fyeuFFfw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3b7f31c254605439f8fef56301c46f7bcbf3a9fe","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.d3c3fbaa3.0","@material/rtl":"15.0.0-canary.d3c3fbaa3.0","@material/base":"15.0.0-canary.d3c3fbaa3.0","@material/theme":"15.0.0-canary.d3c3fbaa3.0","@material/animation":"15.0.0-canary.d3c3fbaa3.0","@material/typography":"15.0.0-canary.d3c3fbaa3.0","@material/feature-targeting":"15.0.0-canary.d3c3fbaa3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.d3c3fbaa3.0_1683914403242_0.00739255461779087","host":"s3://npm-registry-packages"}},"15.0.0-canary.576d3d2c8.0":{"name":"@material/floating-label","version":"15.0.0-canary.576d3d2c8.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.576d3d2c8.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"34ce561a85a49eab66b84efc809d25c2b2f0e719","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.576d3d2c8.0.tgz","fileCount":35,"integrity":"sha512-5NX6px0ndc51rRg/OcmehTpXrSuwmdsblpkHLxzYeeDKygBzGz+5ixfRSa8QWoHifEZdcTaUNsz5G7vQPngHdA==","signatures":[{"sig":"MEUCIEu7XiXe5oUYaXiH0/YlBUJP52pS+HsctfjjkYMC0t+yAiEA22qTssODlMaych3atAwzukzmxZ9/HtYpPJL0zittbzw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"6ace19a21b6654f14cad48fc007198859874c910","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.576d3d2c8.0","@material/rtl":"15.0.0-canary.576d3d2c8.0","@material/base":"15.0.0-canary.576d3d2c8.0","@material/theme":"15.0.0-canary.576d3d2c8.0","@material/animation":"15.0.0-canary.576d3d2c8.0","@material/typography":"15.0.0-canary.576d3d2c8.0","@material/feature-targeting":"15.0.0-canary.576d3d2c8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.576d3d2c8.0_1684202376918_0.580375387537905","host":"s3://npm-registry-packages"}},"15.0.0-canary.19bb36a46.0":{"name":"@material/floating-label","version":"15.0.0-canary.19bb36a46.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.19bb36a46.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"72330e12e5e8bc8b70dcf2c0b97e575973dfdc4f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.19bb36a46.0.tgz","fileCount":35,"integrity":"sha512-1yIv2npiRUJFB+BWRJQMvT1GoS/bZt6p6Gdyh9iwZM+qhN+NtVNaIg2tG2kv51kYyL0hCl7R2i7YoFj27XK0dw==","signatures":[{"sig":"MEYCIQCainTnOlTon/bv8z8Gbhb5dzqm9I32zXSVrtiJY9gopQIhAIety8OONIiJkPFOfZLkmGLf/VNtbuplTa7YSVlM0ZR9","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"75157be315eeaa02f70ed69f97e44a7d40d53e42","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.19bb36a46.0","@material/rtl":"15.0.0-canary.19bb36a46.0","@material/base":"15.0.0-canary.19bb36a46.0","@material/theme":"15.0.0-canary.19bb36a46.0","@material/animation":"15.0.0-canary.19bb36a46.0","@material/typography":"15.0.0-canary.19bb36a46.0","@material/feature-targeting":"15.0.0-canary.19bb36a46.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.19bb36a46.0_1684266817525_0.14975145222124575","host":"s3://npm-registry-packages"}},"15.0.0-canary.aa5ac7fe5.0":{"name":"@material/floating-label","version":"15.0.0-canary.aa5ac7fe5.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.aa5ac7fe5.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3e23159d022bc84a201960974e465f8a2a88a2d9","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.aa5ac7fe5.0.tgz","fileCount":35,"integrity":"sha512-h2HP15QEHFdu95XF4nSf0FankztFMCE1lr9BeB6pXwWts0KYmUSAKpDtXdaRlWtGD6qUryioN/wiUcRrdq0snQ==","signatures":[{"sig":"MEYCIQCNy5DE9QVQoRPrmDICBF4BgyHT4lJ/2lR4LbZFS75rWgIhAOHgr3OJ2ufDXtmdgD50WeaW8q0/aj/jZguTmLyAQ8cW","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"83e86542dd6facc8ffe487d31111412ee18b5bde","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.aa5ac7fe5.0","@material/rtl":"15.0.0-canary.aa5ac7fe5.0","@material/base":"15.0.0-canary.aa5ac7fe5.0","@material/theme":"15.0.0-canary.aa5ac7fe5.0","@material/animation":"15.0.0-canary.aa5ac7fe5.0","@material/typography":"15.0.0-canary.aa5ac7fe5.0","@material/feature-targeting":"15.0.0-canary.aa5ac7fe5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.aa5ac7fe5.0_1684776303923_0.02989532499544345","host":"s3://npm-registry-packages"}},"15.0.0-canary.90291f2e2.0":{"name":"@material/floating-label","version":"15.0.0-canary.90291f2e2.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.90291f2e2.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a70176a2d99041b5bf0050639c724b9897f07164","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.90291f2e2.0.tgz","fileCount":35,"integrity":"sha512-dYtgNlXkO0H9Vn76oESZZg1KOa2XIOLhVxhV/qPYrhntET534i7TyajmVk54ncuSSoLPZrbrwrhhR2fUJWxZIg==","signatures":[{"sig":"MEYCIQCeSJ/fxbNMDf61UknTAHW8QlO9TjGt5QSkOj1n/zCzhwIhANey5CHeu/6bkXuYP7RGNeORT1/VE56h6xMCoZp3DVku","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a1c306471717b15ae8f0b481703ed1b46162df25","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.90291f2e2.0","@material/rtl":"15.0.0-canary.90291f2e2.0","@material/base":"15.0.0-canary.90291f2e2.0","@material/theme":"15.0.0-canary.90291f2e2.0","@material/animation":"15.0.0-canary.90291f2e2.0","@material/typography":"15.0.0-canary.90291f2e2.0","@material/feature-targeting":"15.0.0-canary.90291f2e2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.90291f2e2.0_1684863734006_0.05760909169066819","host":"s3://npm-registry-packages"}},"15.0.0-canary.446734f27.0":{"name":"@material/floating-label","version":"15.0.0-canary.446734f27.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.446734f27.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"9d758179db55cba5ece9a31a64e78a09dfaeceb7","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.446734f27.0.tgz","fileCount":35,"integrity":"sha512-4vBXRG080WYBTUFjv+Lx1tmFWyFxtGg4BbqmhZlpr86cPJBA/ikdkIc+/GBDuBuMkza3XXcWbyDR22optHWDkg==","signatures":[{"sig":"MEQCICDWv//mlHS6OpHpxwiSmYLsMu6Bz1SvmTYSpSfSw4ECAiAX20ei0OqoykyCleS+wgS6MF46qubwzCQg+mPQz4nA2g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a2536a849aada5f06aa85deaa7be06f44f620023","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.446734f27.0","@material/rtl":"15.0.0-canary.446734f27.0","@material/base":"15.0.0-canary.446734f27.0","@material/theme":"15.0.0-canary.446734f27.0","@material/animation":"15.0.0-canary.446734f27.0","@material/typography":"15.0.0-canary.446734f27.0","@material/feature-targeting":"15.0.0-canary.446734f27.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.446734f27.0_1685483270514_0.40357066390783736","host":"s3://npm-registry-packages"}},"15.0.0-canary.19de312d8.0":{"name":"@material/floating-label","version":"15.0.0-canary.19de312d8.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.19de312d8.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"ff63b8a84c414801ab33a89abaa6d6058f623de4","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.19de312d8.0.tgz","fileCount":35,"integrity":"sha512-3Jy/ShkSPbYg7M29K78ew2pkZscqCvDhaZy8rzCqHsrUo/adoQPS+PRXENymqKbJfl6QUSIzQBElMtpsMMFA1g==","signatures":[{"sig":"MEQCICzK9azIMUdOEX8KW8eNlSMsVEDMddhSQIm2+9T/9KSwAiBVNkz0XaaCtbpEcIS6tF3aD0reVfVqm65SN6UZ39q/fg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"dc3811573a34ccafa5c09bcf14574bfb95373958","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.19de312d8.0","@material/rtl":"15.0.0-canary.19de312d8.0","@material/base":"15.0.0-canary.19de312d8.0","@material/theme":"15.0.0-canary.19de312d8.0","@material/animation":"15.0.0-canary.19de312d8.0","@material/typography":"15.0.0-canary.19de312d8.0","@material/feature-targeting":"15.0.0-canary.19de312d8.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.19de312d8.0_1686071873440_0.844796887204883","host":"s3://npm-registry-packages"}},"15.0.0-canary.6081d829b.0":{"name":"@material/floating-label","version":"15.0.0-canary.6081d829b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.6081d829b.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5b3be46d757508122c508ae53020bce1a3a9d1df","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.6081d829b.0.tgz","fileCount":35,"integrity":"sha512-5LnU0QQVDgbRZ38UTGKEQRBLFLVjJFyVRFHngi3VGK+cZqlFJSFucNCNpmOZtLgBa0BohPXFvE05ocs5uARhEA==","signatures":[{"sig":"MEUCIHXziBZ1jivJSq6/oxp+FZLY6+UPTFzu6jzwae8cq6pLAiEAlK1u4bFUUyUT7CfdSbX363Th3NAL3Rp+a5j9lCOO69U=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"033569cc4deafe32dad2bf8cbd1de8789bc85668","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.6081d829b.0","@material/rtl":"15.0.0-canary.6081d829b.0","@material/base":"15.0.0-canary.6081d829b.0","@material/theme":"15.0.0-canary.6081d829b.0","@material/animation":"15.0.0-canary.6081d829b.0","@material/typography":"15.0.0-canary.6081d829b.0","@material/feature-targeting":"15.0.0-canary.6081d829b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.6081d829b.0_1686100415823_0.38468738002114433","host":"s3://npm-registry-packages"}},"15.0.0-canary.b26c34a68.0":{"name":"@material/floating-label","version":"15.0.0-canary.b26c34a68.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.b26c34a68.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"3079961e17ff442ebc2e0542fb949bdfcb08dff4","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.b26c34a68.0.tgz","fileCount":35,"integrity":"sha512-3FiFtvXTXG/54y11z9iPtsITKa1Irp02Q3wuOL481zTCHzcSFBGnTZKaBOzp8FIG/xdWbZErjxMKmrCXNpeqtw==","signatures":[{"sig":"MEUCIGSZU509hqWbfrTjJySyPM5dY1ZNd+AX97qcrFjzDfZuAiEA4KnsLBkbQqWqoU8KDnuPIy3QR8dOfueVl9iqA1EMan4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"28919516866e588c52e4e6358c3c4d2523993b74","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.b26c34a68.0","@material/rtl":"15.0.0-canary.b26c34a68.0","@material/base":"15.0.0-canary.b26c34a68.0","@material/theme":"15.0.0-canary.b26c34a68.0","@material/animation":"15.0.0-canary.b26c34a68.0","@material/typography":"15.0.0-canary.b26c34a68.0","@material/feature-targeting":"15.0.0-canary.b26c34a68.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.b26c34a68.0_1686169035603_0.8478648047608375","host":"s3://npm-registry-packages"}},"15.0.0-canary.4fe911371.0":{"name":"@material/floating-label","version":"15.0.0-canary.4fe911371.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.4fe911371.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"4e495494d245857238cbc97c79af9f0f61be21c3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.4fe911371.0.tgz","fileCount":35,"integrity":"sha512-Boq9uE5kX+9KD3+gmF4om2LZRbFvfaHtTWmWqntXnD35Ill0DSHF/KrycUDd0lvWa7xP2tyIQD1UxvtDSFnwqA==","signatures":[{"sig":"MEQCIA9lj7XDKDIQkIPqN6ZJmIK4xRZJd5id9lGlvLvVctPoAiBAClm2B0TTsS04UZ4X/9KK5S6UCtIHj6RooY4JkkulHA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"a9de53a24d5e0f79f94310f061cdf2ab718df7f4","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.4fe911371.0","@material/rtl":"15.0.0-canary.4fe911371.0","@material/base":"15.0.0-canary.4fe911371.0","@material/theme":"15.0.0-canary.4fe911371.0","@material/animation":"15.0.0-canary.4fe911371.0","@material/typography":"15.0.0-canary.4fe911371.0","@material/feature-targeting":"15.0.0-canary.4fe911371.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.4fe911371.0_1686179130769_0.8574808155365539","host":"s3://npm-registry-packages"}},"15.0.0-canary.a9ff9866f.0":{"name":"@material/floating-label","version":"15.0.0-canary.a9ff9866f.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.a9ff9866f.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"95978659284349f60f88a572863d5ced8005a75c","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.a9ff9866f.0.tgz","fileCount":35,"integrity":"sha512-6bZlyqnW4In48eMQvFpmfzD/EOdzGhNE4H3XmPn9o+0fWNakOeNeIMmu1xfKE0x7peyxVK8kYRzRIwyfLjrq2Q==","signatures":[{"sig":"MEYCIQChXoTNR3U07UG/ZbI0ynqOhkJVNK7xRPA4hDLhUSDmrwIhAJmHVV5Fh80sDWTuhGO7vbVhVNobZ//QiMqMCnI9WYrf","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5bed0ec6cdad0c38b52e8ac98994b2809d9c8f50","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.a9ff9866f.0","@material/rtl":"15.0.0-canary.a9ff9866f.0","@material/base":"15.0.0-canary.a9ff9866f.0","@material/theme":"15.0.0-canary.a9ff9866f.0","@material/animation":"15.0.0-canary.a9ff9866f.0","@material/typography":"15.0.0-canary.a9ff9866f.0","@material/feature-targeting":"15.0.0-canary.a9ff9866f.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.a9ff9866f.0_1686656268064_0.04371059925364085","host":"s3://npm-registry-packages"}},"15.0.0-canary.b994146f6.0":{"name":"@material/floating-label","version":"15.0.0-canary.b994146f6.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.b994146f6.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a59712131c7c1c93c157b69c27a29b82af51549e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.b994146f6.0.tgz","fileCount":35,"integrity":"sha512-g64talBNWCS0FUfLWal0uB637gUciSIqYxFzSW//LglTtbZLGK2J4+9gAEswQGnKeO4ux08EN2n1ZcMDYQ58ow==","signatures":[{"sig":"MEUCIQCaOLhF+Im7YYRB6pulpoXZm70kRuI8hiRX4RjAmYV/YwIgSIvvMX+KMkS1tz0SRRV/W3JytiU3Y4v2dTeJDwtUisQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e537228a5d88e4fb9c651aa15b1d56bd81bc63bd","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.b994146f6.0","@material/rtl":"15.0.0-canary.b994146f6.0","@material/base":"15.0.0-canary.b994146f6.0","@material/theme":"15.0.0-canary.b994146f6.0","@material/animation":"15.0.0-canary.b994146f6.0","@material/typography":"15.0.0-canary.b994146f6.0","@material/feature-targeting":"15.0.0-canary.b994146f6.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.b994146f6.0_1686776590603_0.30925631431211986","host":"s3://npm-registry-packages"}},"15.0.0-canary.1fb4b1a06.0":{"name":"@material/floating-label","version":"15.0.0-canary.1fb4b1a06.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.1fb4b1a06.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"416703e751e0e38e6a3404332d9f16e0ec0c33c9","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.1fb4b1a06.0.tgz","fileCount":35,"integrity":"sha512-T+tk/zH0bOmk1yF9HQeymUkhd834W0o17bl/9S3rDE/dN2hhMkq4qFFg4FelVCqIJSiYMf/ifbyKVARlBVBUNA==","signatures":[{"sig":"MEQCIGt8Sxt9xNGeCiZ9vMO35ZVqBQt1CtFN3MKzYukH5K5NAiB1K/cqiTmkXX+DCjulXgH35YvEdaZr+OoceBSRRwSOtw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1d1b86822f3fc9f22a5fdfc1c381d5a4ae983829","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.1fb4b1a06.0","@material/rtl":"15.0.0-canary.1fb4b1a06.0","@material/base":"15.0.0-canary.1fb4b1a06.0","@material/theme":"15.0.0-canary.1fb4b1a06.0","@material/animation":"15.0.0-canary.1fb4b1a06.0","@material/typography":"15.0.0-canary.1fb4b1a06.0","@material/feature-targeting":"15.0.0-canary.1fb4b1a06.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.1fb4b1a06.0_1687892205035_0.673678007328546","host":"s3://npm-registry-packages"}},"15.0.0-canary.c64a2776e.0":{"name":"@material/floating-label","version":"15.0.0-canary.c64a2776e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.c64a2776e.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"487e090698e59fa88b315e5d1573e2eb876d00b2","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.c64a2776e.0.tgz","fileCount":35,"integrity":"sha512-xFsKfZgtB0LYnK1ygZxaCJBGbKVSoMhoXOCjtodt42hJkyZHKu/A9mrKAWML1He4CxMAAiQxYsywDmU/lwwyIQ==","signatures":[{"sig":"MEYCIQDGEK8rGGu09aJPONCfvPgnc1ibIFr2fsC03rqgTJsGfAIhAOIA++mZJN6ZCSJ8SoD4fEFSSuw2+W5MS/bvUjztWusu","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"271b0c446646af573f67960820b6b2a86a9bda88","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.c64a2776e.0","@material/rtl":"15.0.0-canary.c64a2776e.0","@material/base":"15.0.0-canary.c64a2776e.0","@material/theme":"15.0.0-canary.c64a2776e.0","@material/animation":"15.0.0-canary.c64a2776e.0","@material/typography":"15.0.0-canary.c64a2776e.0","@material/feature-targeting":"15.0.0-canary.c64a2776e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.c64a2776e.0_1687896960134_0.9248060214064417","host":"s3://npm-registry-packages"}},"15.0.0-canary.b05d9eb7c.0":{"name":"@material/floating-label","version":"15.0.0-canary.b05d9eb7c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.b05d9eb7c.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e3cec495d6a6ff687f0d5fad37a5c549a0ada10d","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.b05d9eb7c.0.tgz","fileCount":35,"integrity":"sha512-wMhnfOT/H0FZ/AcJNFG84UX9LC+ndhhuyvtMpBSLZFdYoOVGUyzQurxCpOfPPO1QXYxEnhvPuKQIL5XRzRkqqg==","signatures":[{"sig":"MEQCIA1WDIp3cU3UC8+g+70LEgB/O9KPpv3V3zP5d94YHtasAiAx0bFXvwBUsD36esFVUp8Tjb7cXVDN35pVLpIbQ0XZtg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"854245f23fe0f7b3dd1163ecefd940b26718c134","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.b05d9eb7c.0","@material/rtl":"15.0.0-canary.b05d9eb7c.0","@material/base":"15.0.0-canary.b05d9eb7c.0","@material/theme":"15.0.0-canary.b05d9eb7c.0","@material/animation":"15.0.0-canary.b05d9eb7c.0","@material/typography":"15.0.0-canary.b05d9eb7c.0","@material/feature-targeting":"15.0.0-canary.b05d9eb7c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.b05d9eb7c.0_1688055797081_0.02137817195883196","host":"s3://npm-registry-packages"}},"15.0.0-canary.2a9697dc5.0":{"name":"@material/floating-label","version":"15.0.0-canary.2a9697dc5.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.2a9697dc5.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"fba9bdbdb7271779dbd20b33581c63b236380617","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.2a9697dc5.0.tgz","fileCount":35,"integrity":"sha512-MqgS2SiQIEOvQ0f4HNhUrVN0Ib+aXRWlYZgsllD7l0af8lM14FA44LNzD1LxViUNepsUOvcS/P0kAq+Y7qFaVQ==","signatures":[{"sig":"MEYCIQC59t3lEn8hZdLQk+yIuHdtlEjNIEgu/D+7LmxLcQoSfgIhAOFG3T5E1bQ9ADdJhJFLi6wTaRd36uAPLQF6pbZeS4vC","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"fad1e5223c83a5b7a83a6ef81f7ebdc83a85672a","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.2a9697dc5.0","@material/rtl":"15.0.0-canary.2a9697dc5.0","@material/base":"15.0.0-canary.2a9697dc5.0","@material/theme":"15.0.0-canary.2a9697dc5.0","@material/animation":"15.0.0-canary.2a9697dc5.0","@material/typography":"15.0.0-canary.2a9697dc5.0","@material/feature-targeting":"15.0.0-canary.2a9697dc5.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.2a9697dc5.0_1688163211645_0.45520688017080513","host":"s3://npm-registry-packages"}},"15.0.0-canary.0c52adeab.0":{"name":"@material/floating-label","version":"15.0.0-canary.0c52adeab.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.0c52adeab.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"08cb8ed16e8ee18730cc44f6eeb9879ccf92cfa8","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.0c52adeab.0.tgz","fileCount":35,"integrity":"sha512-1fFeHuuwnxOlQn0YKIcEVPbfOPCg2wY1HgLghfbnzk9oiL8TafsMCBtMSESwqdGWxaUnwaD9t7UPX1dTdZhycQ==","signatures":[{"sig":"MEUCIEAMYkL7dU67bl5Zn9gDNzdF/KiXdpQlntqrcNTOe2uVAiEAz9MCS55pMFJBGDSx2AjOjLCQfikD5XKSlOcTDPFwd/w=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"972024dd57885ff944ec073de0cd956353bfa7e3","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.0c52adeab.0","@material/rtl":"15.0.0-canary.0c52adeab.0","@material/base":"15.0.0-canary.0c52adeab.0","@material/theme":"15.0.0-canary.0c52adeab.0","@material/animation":"15.0.0-canary.0c52adeab.0","@material/typography":"15.0.0-canary.0c52adeab.0","@material/feature-targeting":"15.0.0-canary.0c52adeab.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.0c52adeab.0_1688574321360_0.05256862270603335","host":"s3://npm-registry-packages"}},"15.0.0-canary.83355c322.0":{"name":"@material/floating-label","version":"15.0.0-canary.83355c322.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.83355c322.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"50b04fd8f864dd4a94053fd8eeb3bb5fecc957cd","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.83355c322.0.tgz","fileCount":35,"integrity":"sha512-NW0ZtOVneRAkXBo3Y8+8KXK19O0UnWjOE2nvBWp7qCvfx269Hmq6SROnER2A7kUigekYas4dBlYvYtx88levJA==","signatures":[{"sig":"MEUCIQCrK7lAokRrz2Fx2bwHPM2PMU8eFUFVfXG7KopFCvI4PgIgRyjwESs/4rceMNOR/6AKRLkiJNeujRpYQegTD/f/5pw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"173401c2dd65fb3babae5b8e998c0a0032ff819d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.83355c322.0","@material/rtl":"15.0.0-canary.83355c322.0","@material/base":"15.0.0-canary.83355c322.0","@material/theme":"15.0.0-canary.83355c322.0","@material/animation":"15.0.0-canary.83355c322.0","@material/typography":"15.0.0-canary.83355c322.0","@material/feature-targeting":"15.0.0-canary.83355c322.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.83355c322.0_1689001500214_0.8676402899329492","host":"s3://npm-registry-packages"}},"15.0.0-canary.bc9ae6c9c.0":{"name":"@material/floating-label","version":"15.0.0-canary.bc9ae6c9c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.bc9ae6c9c.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b1245304edd6dbeedeae0499f292e79f8b2c479a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.bc9ae6c9c.0.tgz","fileCount":35,"integrity":"sha512-bUWPtXzZITOD/2mkvLkEPO1ngDWmb74y0Kgbz6llHLOQBtycyJIpuoQJ1q2Ez0NM/tFLwPphhAgRqmL3YQ/Kzw==","signatures":[{"sig":"MEUCIQC1matuX1joR2omthRZ077yrS1dHCtSc/fL+gM2JE71FQIgWvhrN4XGg7UUOY8IP8pLnTN62Q4sK7LxBMH88YSIFNs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"9f0b9b80c267d99daa258e635481fecc4cbf0acd","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.bc9ae6c9c.0","@material/rtl":"15.0.0-canary.bc9ae6c9c.0","@material/base":"15.0.0-canary.bc9ae6c9c.0","@material/theme":"15.0.0-canary.bc9ae6c9c.0","@material/animation":"15.0.0-canary.bc9ae6c9c.0","@material/typography":"15.0.0-canary.bc9ae6c9c.0","@material/feature-targeting":"15.0.0-canary.bc9ae6c9c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.bc9ae6c9c.0_1691097627621_0.7038357605992982","host":"s3://npm-registry-packages"}},"15.0.0-canary.3c44cd956.0":{"name":"@material/floating-label","version":"15.0.0-canary.3c44cd956.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.3c44cd956.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"650ed09114ecbee889e8b048ff560c349d32b99a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.3c44cd956.0.tgz","fileCount":35,"integrity":"sha512-4RqnLUR3/wwCUrk6IynYrRJzmyUZ0BCKJdVqtPQWi6o30UlF7XgfwSzv1yHioiW96uioPgaUImciMv9Wg1hNsg==","signatures":[{"sig":"MEUCIQDg4T4nlLhEvijrk28l+NKaFJNe5ftKpxPYcRuXp5r5iAIgY8fqahfLK4lH/33odotz233nGnpVlvGvXq8NEC431tw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"6e39da189328fcabc7040a629e312efe5f7cea80","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.3c44cd956.0","@material/rtl":"15.0.0-canary.3c44cd956.0","@material/base":"15.0.0-canary.3c44cd956.0","@material/theme":"15.0.0-canary.3c44cd956.0","@material/animation":"15.0.0-canary.3c44cd956.0","@material/typography":"15.0.0-canary.3c44cd956.0","@material/feature-targeting":"15.0.0-canary.3c44cd956.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.3c44cd956.0_1691430399171_0.12154126558849665","host":"s3://npm-registry-packages"}},"15.0.0-canary.02702296e.0":{"name":"@material/floating-label","version":"15.0.0-canary.02702296e.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.02702296e.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6a8d65e83dc65ce3704572b7cffc3344e0c3e8f5","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.02702296e.0.tgz","fileCount":35,"integrity":"sha512-DigtmOHGyhus+mX59MDmItHJ0TZIEKVz3gbJS/8fhlT5gKAf7/LfI3+lhP9tNffNjk8D9SZEgNtUHvakjFxYSA==","signatures":[{"sig":"MEUCIQDI9rGnbkYJqgT6JB2mYwQuO0IVnebyHwMRiT5kaXKYhwIgXkrqrV02CGCuYyHFjBxjDkFBpIpCy+EsvNMFxpoLZJA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"22335673bc742932498b2538321ed9dcfd692879","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.02702296e.0","@material/rtl":"15.0.0-canary.02702296e.0","@material/base":"15.0.0-canary.02702296e.0","@material/theme":"15.0.0-canary.02702296e.0","@material/animation":"15.0.0-canary.02702296e.0","@material/typography":"15.0.0-canary.02702296e.0","@material/feature-targeting":"15.0.0-canary.02702296e.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.02702296e.0_1692965072098_0.7415727317069927","host":"s3://npm-registry-packages"}},"15.0.0-canary.872b65832.0":{"name":"@material/floating-label","version":"15.0.0-canary.872b65832.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.872b65832.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"33c755251a9843cfce0f8f4082b3e251391074d9","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.872b65832.0.tgz","fileCount":35,"integrity":"sha512-AYuAo7TABMWVD29CbfZlYRmOoiN8D5cFRg3TicRfyvZY1OGzZe8zV9dLMwBwqbMhojroprtNqoNpzvrvLTbi9Q==","signatures":[{"sig":"MEUCIQDuaC8zwa/uy56Rp5AV6ASA4NLdX2CJg+sFMyW3feWbVgIgU2oT4Jpx43oRCFPRtz0zpczjtPu+DnP3+B3mQxGbjn4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"be0901c091f812355b2d192c49bd051d8daf7a98","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.872b65832.0","@material/rtl":"15.0.0-canary.872b65832.0","@material/base":"15.0.0-canary.872b65832.0","@material/theme":"15.0.0-canary.872b65832.0","@material/animation":"15.0.0-canary.872b65832.0","@material/typography":"15.0.0-canary.872b65832.0","@material/feature-targeting":"15.0.0-canary.872b65832.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.872b65832.0_1693397573387_0.6012117682266835","host":"s3://npm-registry-packages"}},"15.0.0-canary.89b2e4122.0":{"name":"@material/floating-label","version":"15.0.0-canary.89b2e4122.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.89b2e4122.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"eb131de0a48d445b48013aa6fd9b4117d2c0128e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.89b2e4122.0.tgz","fileCount":35,"integrity":"sha512-t0cK066JStp4dFXKh4eBhtzhyXHLBRnEmc7e1Awsq49IQjBH3s5XEl9/uhgHps7q6WR353nUC2cAy1mLPWjHdA==","signatures":[{"sig":"MEQCIBt/xnWSAhtIYR+XBxEd8TmoL5si3XPpQPAl3udqvwueAiAHI/RRWapSo8LwUhWWQ7P+7aCrFmKOa1tUQBWx7H+v5w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"68bd55db9489546e515443239f477836e16db19b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.89b2e4122.0","@material/rtl":"15.0.0-canary.89b2e4122.0","@material/base":"15.0.0-canary.89b2e4122.0","@material/theme":"15.0.0-canary.89b2e4122.0","@material/animation":"15.0.0-canary.89b2e4122.0","@material/typography":"15.0.0-canary.89b2e4122.0","@material/feature-targeting":"15.0.0-canary.89b2e4122.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.89b2e4122.0_1693497977073_0.5101468724910088","host":"s3://npm-registry-packages"}},"15.0.0-canary.7a3942e7a.0":{"name":"@material/floating-label","version":"15.0.0-canary.7a3942e7a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.7a3942e7a.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c17f7e46e9144ce08e6d2233220192afffa0bf8b","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.7a3942e7a.0.tgz","fileCount":35,"integrity":"sha512-/TFhCI5oUYTXrQzEAp8GKma/sq5wLTCEhGMdo8vwxwZrabY0B/WcOPDu7D5sTqf5tpaBDjzG/omjqpM2h/FTdg==","signatures":[{"sig":"MEUCIGjh1TSBiAceufNxmPssJ6o+hMxJ8W0ru61XPM2ERfIpAiEAvOKiXqVmQ3LJwvxmtBIl9pwl+DS5u3nmeBJcW+JPf0Q=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e61dc0a16a5b376c778548e5a6cecb56f5c5704d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.7a3942e7a.0","@material/rtl":"15.0.0-canary.7a3942e7a.0","@material/base":"15.0.0-canary.7a3942e7a.0","@material/theme":"15.0.0-canary.7a3942e7a.0","@material/animation":"15.0.0-canary.7a3942e7a.0","@material/typography":"15.0.0-canary.7a3942e7a.0","@material/feature-targeting":"15.0.0-canary.7a3942e7a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.7a3942e7a.0_1693507147840_0.8034365088664517","host":"s3://npm-registry-packages"}},"15.0.0-canary.54feb3020.0":{"name":"@material/floating-label","version":"15.0.0-canary.54feb3020.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.54feb3020.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"a82228cfaca73b422f4a2a4fbe38eb79b3be662a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.54feb3020.0.tgz","fileCount":35,"integrity":"sha512-sd7P1VWIkdMULAd4LJcvlRNHE5/I9PVglwBJYHTnjV2pDDhiprUciyF1T7SNfGiCwnPuAbO3oAhxDmKLMfvWJQ==","signatures":[{"sig":"MEYCIQDelONkZIsFGLNIm3n2OVIygXQ2IsLfYn29lukuZBsvjAIhAMFUGFvsKiTOJIcGAQUlTx0dO7LRzKuxW4thNspTBlvR","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"5dc5cb94463af21f898ddd58cc4d9e4fbf803222","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.54feb3020.0","@material/rtl":"15.0.0-canary.54feb3020.0","@material/base":"15.0.0-canary.54feb3020.0","@material/theme":"15.0.0-canary.54feb3020.0","@material/animation":"15.0.0-canary.54feb3020.0","@material/typography":"15.0.0-canary.54feb3020.0","@material/feature-targeting":"15.0.0-canary.54feb3020.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.54feb3020.0_1694466279647_0.7417519674940396","host":"s3://npm-registry-packages"}},"15.0.0-canary.6cda3ce8d.0":{"name":"@material/floating-label","version":"15.0.0-canary.6cda3ce8d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.6cda3ce8d.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b43042910a252b8fe9e9d1d5a76c4886d3cf37fe","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.6cda3ce8d.0.tgz","fileCount":35,"integrity":"sha512-40dgPg+1T1gWpn3HinSeIIogrtOEeOgu7d8lG9yMBWWpBJiL264YlpsioOpN817Os5xPUPw3O+dTDg9Ejt0NIw==","signatures":[{"sig":"MEUCIQCI5fHDajA6mxM5vxd7OfLN2zj3FloiZVjV0GObRc9qLwIgSgd7xs9DhnJ83EyYOg96hQ+qBTkHSDt+MSb0rCQhYos=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"adb36c6339e7bf37fe1e8ca96526a9673ca602e7","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.6cda3ce8d.0","@material/rtl":"15.0.0-canary.6cda3ce8d.0","@material/base":"15.0.0-canary.6cda3ce8d.0","@material/theme":"15.0.0-canary.6cda3ce8d.0","@material/animation":"15.0.0-canary.6cda3ce8d.0","@material/typography":"15.0.0-canary.6cda3ce8d.0","@material/feature-targeting":"15.0.0-canary.6cda3ce8d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.6cda3ce8d.0_1694483074495_0.8825346896218094","host":"s3://npm-registry-packages"}},"15.0.0-canary.205b20b36.0":{"name":"@material/floating-label","version":"15.0.0-canary.205b20b36.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.205b20b36.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"0b85769c454fe43c6af757439bf3b50c8e90db41","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.205b20b36.0.tgz","fileCount":35,"integrity":"sha512-2ox/dgrTWxTeuHcl8bR5c65ym7kKeNDEQ1qumQBpbg/ZxjtLj2b/RbTK3XwenoDvLCx4rzRiZ3uPZ6DY8ULPmw==","signatures":[{"sig":"MEQCIGxGgTAQAkj5Op5hPAtz+W0KN+q1lwZ5zM7im2QI31FNAiBF2emLEaHYj+ui5BMGQENUMOZanvAoyt6BzyVwJuo1xg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"00fdcf619c34c502844acb0f2485e99595aa138d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.205b20b36.0","@material/rtl":"15.0.0-canary.205b20b36.0","@material/base":"15.0.0-canary.205b20b36.0","@material/theme":"15.0.0-canary.205b20b36.0","@material/animation":"15.0.0-canary.205b20b36.0","@material/typography":"15.0.0-canary.205b20b36.0","@material/feature-targeting":"15.0.0-canary.205b20b36.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.205b20b36.0_1694625369325_0.4105013254362442","host":"s3://npm-registry-packages"}},"15.0.0-canary.22bf82024.0":{"name":"@material/floating-label","version":"15.0.0-canary.22bf82024.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.22bf82024.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7bb650db01b76137fcf8b6bb3c367b8c62932593","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.22bf82024.0.tgz","fileCount":35,"integrity":"sha512-rHOvQXUjX8cxn0RVyE8mbEuo4/XjlzVlZ4J824vRL/DsIJolPhk1PPq613d/B46OoMYe04uPBFJe91mg1i0V9A==","signatures":[{"sig":"MEQCIAfPQNfR7WD1mhcbCOtR+hnykvL0ZYZe3sL+R8NIe8SQAiAEtVkqiNOJVMdDa4sZi7bmUWBxqj/4peLW2zSDlRG42w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585789},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(evtType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(evtType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"eda4fad2a8a727b69db60b828bd92df7a8956143","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.22bf82024.0","@material/rtl":"15.0.0-canary.22bf82024.0","@material/base":"15.0.0-canary.22bf82024.0","@material/theme":"15.0.0-canary.22bf82024.0","@material/animation":"15.0.0-canary.22bf82024.0","@material/typography":"15.0.0-canary.22bf82024.0","@material/feature-targeting":"15.0.0-canary.22bf82024.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.22bf82024.0_1695028287084_0.414044884715131","host":"s3://npm-registry-packages"}},"15.0.0-canary.a246a4439.0":{"name":"@material/floating-label","version":"15.0.0-canary.a246a4439.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.a246a4439.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6156b0192ac95c61dea705c4c1c6305be84acc22","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.a246a4439.0.tgz","fileCount":35,"integrity":"sha512-832qZ/qxKx0KUatoeVY3Q2NmboVgiWBG0/1VsbJyodHrgQWfnBOHgLE+M322o6uM3OhvO+kWm4iYbvwhmLZGsw==","signatures":[{"sig":"MEQCIC+q0pvnS1aJvi4pcFy8M44JSyr0+qSShI97Bx4CS73HAiA5qaQWFv7a9nuiWnyAzOgW1fqGqN6vUBHcWtXZT9+54w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585893},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(eventType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(eventType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"40201df8b7e53b61aead4acdfa34b48fb1d155b8","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.a246a4439.0","@material/rtl":"15.0.0-canary.a246a4439.0","@material/base":"15.0.0-canary.a246a4439.0","@material/theme":"15.0.0-canary.a246a4439.0","@material/animation":"15.0.0-canary.a246a4439.0","@material/typography":"15.0.0-canary.a246a4439.0","@material/feature-targeting":"15.0.0-canary.a246a4439.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.a246a4439.0_1695059128496_0.7203648731813164","host":"s3://npm-registry-packages"}},"15.0.0-canary.d153db62b.0":{"name":"@material/floating-label","version":"15.0.0-canary.d153db62b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.d153db62b.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"db849e796c020d930b0285b365a3f957d42f1b9e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.d153db62b.0.tgz","fileCount":35,"integrity":"sha512-zzeLmzOuZXUiZQAbub/cpyNC5pq7hG4Url+EzIX2wLRS1u3sfrGa2EvvdTn2ddV5rrvwiN2RdxnoaSkTGSyxlw==","signatures":[{"sig":"MEQCIAgVkbvjpoZZsPJV7Oo+6/CLTK6Klh92thOhNXiBjvARAiAuBlXIJB+WEGotOI24e7UGXAFj1w8wHBMMgVFO76QYfw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585893},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(eventType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(eventType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"4ca05c144c691cd06cd5926fe0bc54818e462202","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.d153db62b.0","@material/rtl":"15.0.0-canary.d153db62b.0","@material/base":"15.0.0-canary.d153db62b.0","@material/theme":"15.0.0-canary.d153db62b.0","@material/animation":"15.0.0-canary.d153db62b.0","@material/typography":"15.0.0-canary.d153db62b.0","@material/feature-targeting":"15.0.0-canary.d153db62b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.d153db62b.0_1695150878847_0.5727622488440571","host":"s3://npm-registry-packages"}},"15.0.0-canary.2528c1c3b.0":{"name":"@material/floating-label","version":"15.0.0-canary.2528c1c3b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.2528c1c3b.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"6e6cbaa3c8c1e0d191f7383d8ee72c23ce6bb2f5","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.2528c1c3b.0.tgz","fileCount":35,"integrity":"sha512-tHGsG6dPDPfzAdNl4ot/Y569JXVBeBWl71QSwhMTYWm/1h1ig4UiPdTDMbhwwd0q3u0ymxGcxZV6Agzq14Akaw==","signatures":[{"sig":"MEYCIQDaDamhUdeK9R61Q+4pq3QYYSZSK/iE4yq+aMThqdnHxgIhAI3gIvQX5JC8TS7fVHEjfGTtCKgAY3fPDpkVNF0fu4Vu","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585893},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(eventType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(eventType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"98b5b57bd5356f48610a254e8c4acff388d5fb7b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.2528c1c3b.0","@material/rtl":"15.0.0-canary.2528c1c3b.0","@material/base":"15.0.0-canary.2528c1c3b.0","@material/theme":"15.0.0-canary.2528c1c3b.0","@material/animation":"15.0.0-canary.2528c1c3b.0","@material/typography":"15.0.0-canary.2528c1c3b.0","@material/feature-targeting":"15.0.0-canary.2528c1c3b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.2528c1c3b.0_1695233150618_0.8838414154033807","host":"s3://npm-registry-packages"}},"15.0.0-canary.1728a6dcf.0":{"name":"@material/floating-label","version":"15.0.0-canary.1728a6dcf.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.1728a6dcf.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"be6f30c37a8282171f413cfbfff16738852d92a3","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.1728a6dcf.0.tgz","fileCount":35,"integrity":"sha512-pBe8c5EjQuLO45Kgc3nS3aj2/MUzzAmLxoIdbrzf0q1Uk74W9BjX26iq1nwqnVcUYWYACWqI7u68aXZ49k1Nug==","signatures":[{"sig":"MEUCIH2NnaV/5JdD184kPsj+osJa8LM3ljKmwIBjGZ2QYXkYAiEAjWdf1rNLch4WUEDu2i1rptWZlFEl9ciYYh8yhrODHdM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585893},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(eventType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(eventType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"3828aedf4f344a948780a69956ca4f069cef3daa","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.1728a6dcf.0","@material/rtl":"15.0.0-canary.1728a6dcf.0","@material/base":"15.0.0-canary.1728a6dcf.0","@material/theme":"15.0.0-canary.1728a6dcf.0","@material/animation":"15.0.0-canary.1728a6dcf.0","@material/typography":"15.0.0-canary.1728a6dcf.0","@material/feature-targeting":"15.0.0-canary.1728a6dcf.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.1728a6dcf.0_1695691362093_0.5554644671137487","host":"s3://npm-registry-packages"}},"15.0.0-canary.ebb636f3d.0":{"name":"@material/floating-label","version":"15.0.0-canary.ebb636f3d.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.ebb636f3d.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"b792a2d06f1e245cb1000b0e85fa588ec517dcaf","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.ebb636f3d.0.tgz","fileCount":35,"integrity":"sha512-rHFVisLYgxPfzZqmrm+hZuTYDPisd+UGwCoJDK1ZktEkOxk+NdlMpmg9ClL5QH8DM6nSPCu0MwESgas005HOqQ==","signatures":[{"sig":"MEYCIQDmi+9VrRfnhgZfhl7ts79qFU3BrE9kss2AIZtjJAU6WQIhAMNH9MZCCfI+THfuunEuSR2lYomQHzrhW28b+3tmMAKt","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585893},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(eventType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(eventType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"6f62607a00dd885ebbe422b247dc4acc1ded22cb","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.ebb636f3d.0","@material/rtl":"15.0.0-canary.ebb636f3d.0","@material/base":"15.0.0-canary.ebb636f3d.0","@material/theme":"15.0.0-canary.ebb636f3d.0","@material/animation":"15.0.0-canary.ebb636f3d.0","@material/typography":"15.0.0-canary.ebb636f3d.0","@material/feature-targeting":"15.0.0-canary.ebb636f3d.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.ebb636f3d.0_1696016637636_0.26581271378972815","host":"s3://npm-registry-packages"}},"15.0.0-canary.c0d21ecc9.0":{"name":"@material/floating-label","version":"15.0.0-canary.c0d21ecc9.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.c0d21ecc9.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c9b29caaf1a10ee81ce1223f8e5fa44153ea0fbb","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.c0d21ecc9.0.tgz","fileCount":35,"integrity":"sha512-DpRSrxLriWm8umOKvLcTWlb0ZQZ8yfE/TPveE/XVURWd/ZWG9mUFrLffpdN0n9z4ZuHH8aoK7S3NPUX6eIwn+A==","signatures":[{"sig":"MEYCIQCuXM+6QTNIvyIjUIKIocfd5gk9fpV7llg1znbtzZ2EXAIhALbSaECFAUCc1I5sk9/+fUeYAEAW7kuxl8PklBbXQsCl","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585893},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(eventType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(eventType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"0a932ea790a12d359ce4ec7c5c4c7aec7edf565d","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.c0d21ecc9.0","@material/rtl":"15.0.0-canary.c0d21ecc9.0","@material/base":"15.0.0-canary.c0d21ecc9.0","@material/theme":"15.0.0-canary.c0d21ecc9.0","@material/animation":"15.0.0-canary.c0d21ecc9.0","@material/typography":"15.0.0-canary.c0d21ecc9.0","@material/feature-targeting":"15.0.0-canary.c0d21ecc9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.c0d21ecc9.0_1696880177726_0.8632142550319795","host":"s3://npm-registry-packages"}},"15.0.0-canary.127a44b28.0":{"name":"@material/floating-label","version":"15.0.0-canary.127a44b28.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.127a44b28.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"364071c27cb448d231cc679715f1f3ac1a92a279","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.127a44b28.0.tgz","fileCount":35,"integrity":"sha512-+EdOwUYt6bSRm+5KKZm24NDjXHtgV8qZTmyX9bKsuXXiGdrcttSWOtS69MPwKmpfnKUleNxLyIlFxxHeQQzeOA==","signatures":[{"sig":"MEUCIA6gCTluT1Rgj2B2dhXUt3kM9b06CjsLALdO7BQf0rEhAiEAptOw1yiqsFu8X+x9s6LNfreJbu8dZAEdoSJX5uuwMEo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585893},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(eventType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(eventType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"88d1fc2c5354e751ea3ab567d26bb1886ee152d3","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.127a44b28.0","@material/rtl":"15.0.0-canary.127a44b28.0","@material/base":"15.0.0-canary.127a44b28.0","@material/theme":"15.0.0-canary.127a44b28.0","@material/animation":"15.0.0-canary.127a44b28.0","@material/typography":"15.0.0-canary.127a44b28.0","@material/feature-targeting":"15.0.0-canary.127a44b28.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.127a44b28.0_1697140777175_0.6123636391256941","host":"s3://npm-registry-packages"}},"15.0.0-canary.0ad128337.0":{"name":"@material/floating-label","version":"15.0.0-canary.0ad128337.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.0ad128337.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c7f086a0345847226a17e5dd515c8b1ae7d7c532","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.0ad128337.0.tgz","fileCount":35,"integrity":"sha512-kVmyJanaRVVw47uqxD7NMt4JoZ0AuFC7nBMEV9wQ/AvcBa0c2Zv9BDDdDipAcJXk1heBHuNE6BrZK0ZLa3a8pA==","signatures":[{"sig":"MEQCIGJQ6c/4DLdORuaWmI7Vco5C10ZiNXu6sNMzokHVrJxvAiAMd06J21OI4QwOmpA+i1eQYefKvJZhV6my0lKI2GXvXQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585893},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(eventType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(eventType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"bb76f531b61a52aae34c7a1efa45824fd32e49f4","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.0ad128337.0","@material/rtl":"15.0.0-canary.0ad128337.0","@material/base":"15.0.0-canary.0ad128337.0","@material/theme":"15.0.0-canary.0ad128337.0","@material/animation":"15.0.0-canary.0ad128337.0","@material/typography":"15.0.0-canary.0ad128337.0","@material/feature-targeting":"15.0.0-canary.0ad128337.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.0ad128337.0_1697741479719_0.21017916732913844","host":"s3://npm-registry-packages"}},"15.0.0-canary.9cec94097.0":{"name":"@material/floating-label","version":"15.0.0-canary.9cec94097.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.9cec94097.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"04b184e0fbe220dfed9f5351b729c0402a48664a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.9cec94097.0.tgz","fileCount":35,"integrity":"sha512-pAE7jzMQh3pqtcKdN/qI0k1z6wY8p/pM2jPV2oalSrrnhaaHWhz+n9cdBUB1B5D1UDH+xT6BldRRYj2iVxIOtQ==","signatures":[{"sig":"MEUCIQCDumKBDFI7flGwiWgHiy/aeqdlEvizjS67emwpRzXNEQIgIqWoUD3kJNp7ZFOYG5b5npif6aHQAZkAEpat8/ycwr8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585893},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(eventType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(eventType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1a8019402daf97efb72456551503dfb3fa31466b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.9cec94097.0","@material/rtl":"15.0.0-canary.9cec94097.0","@material/base":"15.0.0-canary.9cec94097.0","@material/theme":"15.0.0-canary.9cec94097.0","@material/animation":"15.0.0-canary.9cec94097.0","@material/typography":"15.0.0-canary.9cec94097.0","@material/feature-targeting":"15.0.0-canary.9cec94097.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.9cec94097.0_1697756932273_0.09205242871659935","host":"s3://npm-registry-packages"}},"15.0.0-canary.c51a0bbcc.0":{"name":"@material/floating-label","version":"15.0.0-canary.c51a0bbcc.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.c51a0bbcc.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"f1dfdfd9027ad5646155f0fb1d9277bf86688021","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.c51a0bbcc.0.tgz","fileCount":35,"integrity":"sha512-GYREKQOX6AYRnbeRsWkpOuZIXTZoTzwHRIcrbg+zZEvpQ9TZRZAvmy/xz8ho9C1T5Kl9q6oiAKUxrrptl4KH2g==","signatures":[{"sig":"MEQCIA2iZW1WJXt9PRe0DwHu57ENkhRTluWJgrUKQA677jZBAiABRtBq2PweNOXmeZ19dENmvS8o/f0WZGnYvPqK2KEZaQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585893},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(eventType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(eventType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e65c7fe6dcc6d6069f00d4d2f8c55e61710d046b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.c51a0bbcc.0","@material/rtl":"15.0.0-canary.c51a0bbcc.0","@material/base":"15.0.0-canary.c51a0bbcc.0","@material/theme":"15.0.0-canary.c51a0bbcc.0","@material/animation":"15.0.0-canary.c51a0bbcc.0","@material/typography":"15.0.0-canary.c51a0bbcc.0","@material/feature-targeting":"15.0.0-canary.c51a0bbcc.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.c51a0bbcc.0_1700081902123_0.7366275841340748","host":"s3://npm-registry-packages"}},"15.0.0-canary.d76666ad4.0":{"name":"@material/floating-label","version":"15.0.0-canary.d76666ad4.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.d76666ad4.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"97150dca68a6fd9cea26d699ff0704130aee71de","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.d76666ad4.0.tgz","fileCount":35,"integrity":"sha512-l1fstvAYVCSW+p4Hkt0fp4fUPoZebyH8tylvZC97WXn9RrS9zmLG0RwnnujzVBVhPkHQJTqmWW8TW0XhKTUolQ==","signatures":[{"sig":"MEUCIEOgnPHAyqrmRdiODG7u3kuhpFPHfq1znRUZd9HNrwiwAiEApF+5mfBKXlGsp5GO2HN2y70Uw3B7zwohHt0jOQboUsY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585893},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(eventType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(eventType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"8fc3640e389fda0098b42091a9a1ab8653fc6470","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.d76666ad4.0","@material/rtl":"15.0.0-canary.d76666ad4.0","@material/base":"15.0.0-canary.d76666ad4.0","@material/theme":"15.0.0-canary.d76666ad4.0","@material/animation":"15.0.0-canary.d76666ad4.0","@material/typography":"15.0.0-canary.d76666ad4.0","@material/feature-targeting":"15.0.0-canary.d76666ad4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.d76666ad4.0_1701123166595_0.8206856802986553","host":"s3://npm-registry-packages"}},"15.0.0-canary.8656bf0e0.0":{"name":"@material/floating-label","version":"15.0.0-canary.8656bf0e0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.8656bf0e0.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"03a81f56392e7ef15ff67a12287cd2c08e686a22","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.8656bf0e0.0.tgz","fileCount":35,"integrity":"sha512-i8/04/0JJVgmsOXOuYl/kNtWwtsWR1Gmp7BD9Wi0m3qS/oKbntEgieryBqwHQmlM972wWRR6BJMgfozXb4zVpg==","signatures":[{"sig":"MEUCIQCwLJYLj+xraLyWoO+GC9M0b5PY2EwbCeNCmmAtoW6cOwIgWJRb+gaSCjhpn0q01/U1R0qLfAwKKK9nbvf+SI/uHFA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585893},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(eventType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(eventType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"36cab37e468233da3044a10c1df388f634163cc1","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.8656bf0e0.0","@material/rtl":"15.0.0-canary.8656bf0e0.0","@material/base":"15.0.0-canary.8656bf0e0.0","@material/theme":"15.0.0-canary.8656bf0e0.0","@material/animation":"15.0.0-canary.8656bf0e0.0","@material/typography":"15.0.0-canary.8656bf0e0.0","@material/feature-targeting":"15.0.0-canary.8656bf0e0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.8656bf0e0.0_1702415897802_0.994412341034288","host":"s3://npm-registry-packages"}},"15.0.0-canary.7f224ddd4.0":{"name":"@material/floating-label","version":"15.0.0-canary.7f224ddd4.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.7f224ddd4.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"c47c9df4424bfdcb824ba91096b130bc574c7127","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.7f224ddd4.0.tgz","fileCount":35,"integrity":"sha512-0KMo5ijjYaEHPiZ2pCVIcbaTS2LycvH9zEhEMKwPPGssBCX7iz5ffYQFk7e5yrQand1r3jnQQgYfHAwtykArnQ==","signatures":[{"sig":"MEYCIQDH+PT5NSLoFag3hb4tSy4PvL8l8Epe32jD1PfsHMuWogIhAIYD6FrTt4xPx01bbJE+wcHpd1xylAsZKM6KW5EOHecw","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585893},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(eventType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(eventType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ff8ff3ce455054f1532d1ae0983f40634a524886","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.7f224ddd4.0","@material/rtl":"15.0.0-canary.7f224ddd4.0","@material/base":"15.0.0-canary.7f224ddd4.0","@material/theme":"15.0.0-canary.7f224ddd4.0","@material/animation":"15.0.0-canary.7f224ddd4.0","@material/typography":"15.0.0-canary.7f224ddd4.0","@material/feature-targeting":"15.0.0-canary.7f224ddd4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.7f224ddd4.0_1703743728250_0.8228876929918474","host":"s3://npm-registry-packages"}},"15.0.0-canary.a0b8a90c0.0":{"name":"@material/floating-label","version":"15.0.0-canary.a0b8a90c0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.a0b8a90c0.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"bb2eb8c840beeade73017a7de0f7ecc1112ef127","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.a0b8a90c0.0.tgz","fileCount":35,"integrity":"sha512-582PV52HHga322A808RSYLGQ3yI/0m1bFxPCYd/NyvEVXUHRXXXU2yurcTXF1cW1cYGqSOR3uqiRz2naQFeDNQ==","signatures":[{"sig":"MEUCID+D1sFTo1tZotXg5F3a6p7jKg1mBp/5eEjNpwbCmc+TAiEAkwP+3/X2COWrqD/BCwTHHqPNTD4eexIY/MQ3P0bSgyo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585893},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(eventType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(eventType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"85d5965379b080c9f852ecbbd95031e363636dfd","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.a0b8a90c0.0","@material/rtl":"15.0.0-canary.a0b8a90c0.0","@material/base":"15.0.0-canary.a0b8a90c0.0","@material/theme":"15.0.0-canary.a0b8a90c0.0","@material/animation":"15.0.0-canary.a0b8a90c0.0","@material/typography":"15.0.0-canary.a0b8a90c0.0","@material/feature-targeting":"15.0.0-canary.a0b8a90c0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.a0b8a90c0.0_1707333548274_0.47278522186892014","host":"s3://npm-registry-packages"}},"15.0.0-canary.e50b478eb.0":{"name":"@material/floating-label","version":"15.0.0-canary.e50b478eb.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.e50b478eb.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"e914589b65eaceeba4431425182d801afdadfe46","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.e50b478eb.0.tgz","fileCount":35,"integrity":"sha512-d3eHkxncW+/i2z4T6lwtV8Iz1y0M7eQSYQSrXm/mrp9JpMZS8ghNxYXl2eTq3wOvxTXb9pYkeXPiwiNAbI3C5w==","signatures":[{"sig":"MEUCIHce34Dh9UVO3YNu73VbdNRv87DYfdfn0hviYp6oguORAiEAz1d580k6eBT+Hx5Mt0ewlTFndy2MUvrX5oJjtoJfxRQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585893},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(eventType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(eventType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"4691455eaee76f99b18be70913c9fefb7cf3c2ae","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.e50b478eb.0","@material/rtl":"15.0.0-canary.e50b478eb.0","@material/base":"15.0.0-canary.e50b478eb.0","@material/theme":"15.0.0-canary.e50b478eb.0","@material/animation":"15.0.0-canary.e50b478eb.0","@material/typography":"15.0.0-canary.e50b478eb.0","@material/feature-targeting":"15.0.0-canary.e50b478eb.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.e50b478eb.0_1707415658233_0.1806599832475777","host":"s3://npm-registry-packages"}},"15.0.0-canary.c43b3438b.0":{"name":"@material/floating-label","version":"15.0.0-canary.c43b3438b.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.c43b3438b.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7e0494acdd9919d82d4fecb5102905a45b788299","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.c43b3438b.0.tgz","fileCount":35,"integrity":"sha512-zNzNcAW/6VbN5Eepxhne/ODSIk8Y9/VUROARYjVGqhwf/0ZcqwjJ/3zf5N0cES5IETICIhLYinXICPj1drtwuA==","signatures":[{"sig":"MEYCIQCe+t8w3pJ798RCZuDp+benOpB9mP3yaw4/vKPw2DsdMwIhAKM4kgyo1N43BiXpfuQj8xPh6p9kg0Zt0PNuIPcwjDcy","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585893},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(eventType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(eventType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"e69adcf897de97b302f026f07bbc2571b1a488ca","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.c43b3438b.0","@material/rtl":"15.0.0-canary.c43b3438b.0","@material/base":"15.0.0-canary.c43b3438b.0","@material/theme":"15.0.0-canary.c43b3438b.0","@material/animation":"15.0.0-canary.c43b3438b.0","@material/typography":"15.0.0-canary.c43b3438b.0","@material/feature-targeting":"15.0.0-canary.c43b3438b.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.c43b3438b.0_1708719431099_0.11745994281342731","host":"s3://npm-registry-packages"}},"15.0.0-canary.819498d8c.0":{"name":"@material/floating-label","version":"15.0.0-canary.819498d8c.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.819498d8c.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"26d39e1f9705a72f21cc792f8f56ead82378f351","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.819498d8c.0.tgz","fileCount":35,"integrity":"sha512-+V1bJ6eOWuaFf5JK0vrDXTgA5Se6/By0Q1LG44DwxnENOacvcA6q6YKJ9Fcxq6Nl5rLQdQmZ0ttAjG+xa/enXg==","signatures":[{"sig":"MEYCIQCXQuJJRfDYCeugkK0eDmRomUa1ge7lzn8D4h0KRg2j6wIhAKR4/pYpFpaa8plFYt1VZxKM0rOXl+F+SlqRKlgqa9m3","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585893},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(eventType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(eventType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"886876a8252aacefe1942b13ba9251af9204bcdd","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.819498d8c.0","@material/rtl":"15.0.0-canary.819498d8c.0","@material/base":"15.0.0-canary.819498d8c.0","@material/theme":"15.0.0-canary.819498d8c.0","@material/animation":"15.0.0-canary.819498d8c.0","@material/typography":"15.0.0-canary.819498d8c.0","@material/feature-targeting":"15.0.0-canary.819498d8c.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.819498d8c.0_1710515659826_0.990576702207788","host":"s3://npm-registry-packages"}},"15.0.0-canary.453a6248a.0":{"name":"@material/floating-label","version":"15.0.0-canary.453a6248a.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.453a6248a.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"95b19be2dd4bc824922b050e7681a14910b4b2cd","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.453a6248a.0.tgz","fileCount":35,"integrity":"sha512-U8DockcxioqY/+M51krEZFJUASttLYgQd9GFkQE0mr8cVIXxmf99G6Dci7uBMHKyd8Oi3mBV66ACriE0Fs50Bg==","signatures":[{"sig":"MEYCIQC3xvChRAVi4ASI2QyGMox7Beq95eKmXDffze4CreZa5AIhAN9k0BaGXPKATJQYA04bDD433f/BpgPO02KKpJM55vw1","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585893},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(eventType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(eventType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1eea6443d63f2bc64fe8f6f86664b54266c41244","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.453a6248a.0","@material/rtl":"15.0.0-canary.453a6248a.0","@material/base":"15.0.0-canary.453a6248a.0","@material/theme":"15.0.0-canary.453a6248a.0","@material/animation":"15.0.0-canary.453a6248a.0","@material/typography":"15.0.0-canary.453a6248a.0","@material/feature-targeting":"15.0.0-canary.453a6248a.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.453a6248a.0_1711386791235_0.10561837664921492","host":"s3://npm-registry-packages"}},"15.0.0-canary.68edc03c6.0":{"name":"@material/floating-label","version":"15.0.0-canary.68edc03c6.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.68edc03c6.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"7f1ce2f0f02271756b5999fc88bef2b3f454fa4e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.68edc03c6.0.tgz","fileCount":35,"integrity":"sha512-fYGcTctqV/NyhUFQDiF2ET1zpnPBnOEImgqAf2ehGtOq5WM5t/IC5k2w6AisiTaZYEg8GnCFGqNT2kERDd3uEw==","signatures":[{"sig":"MEYCIQDhCcGcyJN7LVZ43oFKP09TzsNDt3U8T5d6JCxNgAbnuQIhAM9jftPG4rIV6BJQQNPCnViYoLLuVLVb1Tzr5rPjv+t1","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585893},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(eventType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(eventType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"04046ad51f4d581f93e797ec929d219422dd0235","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.68edc03c6.0","@material/rtl":"15.0.0-canary.68edc03c6.0","@material/base":"15.0.0-canary.68edc03c6.0","@material/theme":"15.0.0-canary.68edc03c6.0","@material/animation":"15.0.0-canary.68edc03c6.0","@material/typography":"15.0.0-canary.68edc03c6.0","@material/feature-targeting":"15.0.0-canary.68edc03c6.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.68edc03c6.0_1712603129279_0.8587376078010509","host":"s3://npm-registry-packages"}},"15.0.0-canary.5bebc0064.0":{"name":"@material/floating-label","version":"15.0.0-canary.5bebc0064.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.5bebc0064.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"0eafb1ea825b7cf31a3be45733a244d93cb73080","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.5bebc0064.0.tgz","fileCount":35,"integrity":"sha512-QqqJhFHI6WKLxjSYgQyPliboOJovFdjWzsIIatD8m5Rq73PzTfyIdH2wX41XDEvfxlP39dDO0MMuecN6IBdqrw==","signatures":[{"sig":"MEQCIDi4IBfi9nxcRTa/U7VlYfI6ZthxutsETr+g6t/7tM6aAiA3kxscnkeG1AOOUYbnTgdmv0wkq9Uz20g2P9O591yPnA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585893},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(eventType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(eventType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"ff39e65972de013a29dd14429e111139bc616366","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.5bebc0064.0","@material/rtl":"15.0.0-canary.5bebc0064.0","@material/base":"15.0.0-canary.5bebc0064.0","@material/theme":"15.0.0-canary.5bebc0064.0","@material/animation":"15.0.0-canary.5bebc0064.0","@material/typography":"15.0.0-canary.5bebc0064.0","@material/feature-targeting":"15.0.0-canary.5bebc0064.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.5bebc0064.0_1712871608828_0.20604862770276844","host":"s3://npm-registry-packages"}},"15.0.0-canary.311f29a60.0":{"name":"@material/floating-label","version":"15.0.0-canary.311f29a60.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.311f29a60.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"99da24a4e7af7d7c084f6d71cbd3ea830f6c8b96","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.311f29a60.0.tgz","fileCount":35,"integrity":"sha512-EAeKBosI0fFAFFx4wuPE1/K0hH+OXMG1aqkcWTHrg6ChsGGlvEqYC6JsOnZp/KPEKFGlHPIKIuuImbI4yh8FNg==","signatures":[{"sig":"MEQCIF36jmfR4zGe5G/Rhmjo3hxUrIbyMLA4Z0ejv5Ido1HkAiAhu3thSwoxLuLe+vPI3oF0q0FTYaVXPJVAlQB3g/CE6w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585893},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(eventType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(eventType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"7bc0264e163e842f0f96c1dbf7a468c022db1497","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.311f29a60.0","@material/rtl":"15.0.0-canary.311f29a60.0","@material/base":"15.0.0-canary.311f29a60.0","@material/theme":"15.0.0-canary.311f29a60.0","@material/animation":"15.0.0-canary.311f29a60.0","@material/typography":"15.0.0-canary.311f29a60.0","@material/feature-targeting":"15.0.0-canary.311f29a60.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.311f29a60.0_1713895163030_0.5462915466682745","host":"s3://npm-registry-packages"}},"15.0.0-canary.65c10a622.0":{"name":"@material/floating-label","version":"15.0.0-canary.65c10a622.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.65c10a622.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"eaa6a8d3d6e6f7e0d4a663b8e41f37955d9a99af","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.65c10a622.0.tgz","fileCount":35,"integrity":"sha512-0qllJk3K4HUkrSfrId+rr52L7if2PEsyxVog0mNKxM+L4p6kjcmRkwr71NFSaLvyhya6RQrYuLJiuRZeBTdHQw==","signatures":[{"sig":"MEUCIQD+ts4gdMNVhUIoGf9L1bfGuRI88OqvJULKGTrwPhtcaQIgYhbwvdSGLwC8lNllxh/SgSJ7cOtsTeo4tOmkx6fI5O4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585893},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(eventType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(eventType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"1f3126503c812250084b65b6edbb26f25ef4a174","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.65c10a622.0","@material/rtl":"15.0.0-canary.65c10a622.0","@material/base":"15.0.0-canary.65c10a622.0","@material/theme":"15.0.0-canary.65c10a622.0","@material/animation":"15.0.0-canary.65c10a622.0","@material/typography":"15.0.0-canary.65c10a622.0","@material/feature-targeting":"15.0.0-canary.65c10a622.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.65c10a622.0_1714070902983_0.0866463850751582","host":"s3://npm-registry-packages"}},"15.0.0-canary.4b35cb7d0.0":{"name":"@material/floating-label","version":"15.0.0-canary.4b35cb7d0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.4b35cb7d0.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"63ca2c549e9685f6442bfe597ee273f6c1824d4a","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.4b35cb7d0.0.tgz","fileCount":35,"integrity":"sha512-WOe43o0KduLkeqlB9kWeh1IDolj5WYjy8b4plRuL+T7xmFwqPEFF4hv70cQ6XLK0/KdjUcQEZMip+YGbQYkhdw==","signatures":[{"sig":"MEUCIQDzemeymcVlgU6tPrDj/bGUkxo26SaPXMDXmdewWJApKwIgYl4x/x+J+DAWfxYQcZTJUFU8RvDhEUaX29tCrn9SS1E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585893},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(eventType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(eventType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"cba29aaa21c1bc2b1f1a02e5ddfa4a5110d9ef63","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.4b35cb7d0.0","@material/rtl":"15.0.0-canary.4b35cb7d0.0","@material/base":"15.0.0-canary.4b35cb7d0.0","@material/theme":"15.0.0-canary.4b35cb7d0.0","@material/animation":"15.0.0-canary.4b35cb7d0.0","@material/typography":"15.0.0-canary.4b35cb7d0.0","@material/feature-targeting":"15.0.0-canary.4b35cb7d0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.4b35cb7d0.0_1714651348141_0.7557988086928571","host":"s3://npm-registry-packages"}},"15.0.0-canary.f80ac92b0.0":{"name":"@material/floating-label","version":"15.0.0-canary.f80ac92b0.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.f80ac92b0.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"758f0d9e553d25cc9ef1d22ca62ae447d03fa15f","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.f80ac92b0.0.tgz","fileCount":35,"integrity":"sha512-sc5KVgVA+bmw+A5AWuM8S5ln2BupvqRQjE2+Hp/ztfHu6O0B+V8APRZ2n2VO1A9a+uf39hwJG6C+K7n4xQkgXg==","signatures":[{"sig":"MEQCIGPklv/Uu+30eVFfuq+jfkRtRhLCbPc8YlMzimZzw3wbAiBuKrVY+qZp7vuWTu84NQPMgI6MaFxarKBUVFGnnIFOyQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585893},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(eventType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(eventType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"514a3afe9efc5bcebf1ace1e335357184ee1a9e0","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.f80ac92b0.0","@material/rtl":"15.0.0-canary.f80ac92b0.0","@material/base":"15.0.0-canary.f80ac92b0.0","@material/theme":"15.0.0-canary.f80ac92b0.0","@material/animation":"15.0.0-canary.f80ac92b0.0","@material/typography":"15.0.0-canary.f80ac92b0.0","@material/feature-targeting":"15.0.0-canary.f80ac92b0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.f80ac92b0.0_1714651964980_0.4672339950312967","host":"s3://npm-registry-packages"}},"15.0.0-canary.2f5b899bc.0":{"name":"@material/floating-label","version":"15.0.0-canary.2f5b899bc.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.2f5b899bc.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"5f9957723037d922ed32952b6cef887e699754bd","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.2f5b899bc.0.tgz","fileCount":35,"integrity":"sha512-anoMBNNya5YW/p5XQpmcblABjd+esESxQkQQXGg+zG3jWbIx29YPgiCHezHt7vygYoMxTfFdY612jpHMwM5yyA==","signatures":[{"sig":"MEQCICz6KX/puukQjgkWoCY/eSX7pCJ+k7l+j13DRQ4t5g3DAiBG7qvZkjP6FfXWYE2ghIsm8FuNEthnzMoMDbqRxXk/2g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585893},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(eventType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(eventType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"751553ca74ad43074c963487257a8862de87844b","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.2f5b899bc.0","@material/rtl":"15.0.0-canary.2f5b899bc.0","@material/base":"15.0.0-canary.2f5b899bc.0","@material/theme":"15.0.0-canary.2f5b899bc.0","@material/animation":"15.0.0-canary.2f5b899bc.0","@material/typography":"15.0.0-canary.2f5b899bc.0","@material/feature-targeting":"15.0.0-canary.2f5b899bc.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.2f5b899bc.0_1716213276916_0.3330418631592178","host":"s3://npm-registry-packages"}},"15.0.0-canary.cfec83c74.0":{"name":"@material/floating-label","version":"15.0.0-canary.cfec83c74.0","keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","_id":"@material/floating-label@15.0.0-canary.cfec83c74.0","maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"dist":{"shasum":"67b5c716b5a1cf159fa3e19a6358de3f0d8f7436","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.cfec83c74.0.tgz","fileCount":35,"integrity":"sha512-9d9tOkYMlJ9fLBuZB43s9o3v8GrJRQb4UnsCViuCWbVgfTwPVfyD2491KwIRBhcsGaYyR0TNOvEx0VRNmlr9TQ==","signatures":[{"sig":"MEUCIQC8hsMA0yQfI/X3GHi+JGApdyvU3LL5MLiKCSOqi/zNGQIgBEEHrWwZIj7ubvgQilfex7IfAX083jD0P1pQalJXR8o=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":585893},"main":"dist/mdc.floatingLabel.js","module":"index.js","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(eventType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(eventType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","gitHead":"0ec8b129344ebbe45f00b6ad892b682b054ea892","_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","description":"The Material Components for the web floating-label component","directories":{},"sideEffects":false,"_nodeVersion":"14.21.3","dependencies":{"tslib":"^2.1.0","@material/dom":"15.0.0-canary.cfec83c74.0","@material/rtl":"15.0.0-canary.cfec83c74.0","@material/base":"15.0.0-canary.cfec83c74.0","@material/theme":"15.0.0-canary.cfec83c74.0","@material/animation":"15.0.0-canary.cfec83c74.0","@material/typography":"15.0.0-canary.cfec83c74.0","@material/feature-targeting":"15.0.0-canary.cfec83c74.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","_npmOperationalInternal":{"tmp":"tmp/floating-label_15.0.0-canary.cfec83c74.0_1716231380842_0.2689526453945046","host":"s3://npm-registry-packages"}},"15.0.0-canary.423edc3dc.0":{"name":"@material/floating-label","description":"The Material Components for the web floating-label component","version":"15.0.0-canary.423edc3dc.0","license":"MIT","keywords":["material components","material design","floatinglabel","floating label"],"main":"dist/mdc.floatingLabel.js","module":"index.js","sideEffects":false,"repository":{"type":"git","url":"git+https://github.com/material-components/material-components-web.git","directory":"packages/mdc-floating-label"},"publishConfig":{"access":"public"},"dependencies":{"@material/animation":"15.0.0-canary.423edc3dc.0","@material/base":"15.0.0-canary.423edc3dc.0","@material/dom":"15.0.0-canary.423edc3dc.0","@material/feature-targeting":"15.0.0-canary.423edc3dc.0","@material/rtl":"15.0.0-canary.423edc3dc.0","@material/theme":"15.0.0-canary.423edc3dc.0","@material/typography":"15.0.0-canary.423edc3dc.0","tslib":"^2.1.0"},"gitHead":"19b2c5a95782b4928b3aecb29a1075c42aee53e5","readme":"<!--docs:\ntitle: \"Floating Label\"\nlayout: detail\nsection: components\nexcerpt: \"An animated text caption for a Text Field or Select.\"\npath: /catalog/input-controls/floating-label/\n-->\n\n# Floating Label\n\nFloating labels display the type of input a field requires. Every Text Field and Select should have a label, except for full-width text fields, which use the input's `placeholder` attribute instead. Labels are aligned with the input line and always visible. They can be resting (when a field is inactive and empty) or floating. The label is a text caption or description for the Text Field.\n\n## Design & API Documentation\n\n<ul class=\"icon-list\">\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material.io/go/design-text-fields#text-fields-layout\">Material Design guidelines: Text Fields Layout</a>\n  </li>\n  <li class=\"icon-list-item icon-list-item--spec\">\n    <a href=\"https://material-components.github.io/material-components-web-catalog/#/component/text-field\">Demo with Text Field</a>\n  </li>\n</ul>\n\n## Installation\n\n```\nnpm install @material/floating-label\n```\n\n## Basic Usage\n\n### HTML Structure\n\n```html\n<span class=\"mdc-floating-label\" id=\"my-label-id\">Hint text</span>\n```\n\n### Styles\n\n```scss\n@use \"@material/floating-label/mdc-floating-label\";\n```\n\n### JavaScript Instantiation\n\n```js\nimport {MDCFloatingLabel} from '@material/floating-label';\n\nconst floatingLabel = new MDCFloatingLabel(document.querySelector('.mdc-floating-label'));\n```\n\n## Style Customization\n\n### CSS Classes\n\nCSS Class | Description\n--- | ---\n`mdc-floating-label` | Mandatory.\n`mdc-floating-label--float-above` | Indicates the label is floating in the floating position.\n`mdc-floating-label--shake` | Shakes the label.\n`mdc-floating-label--required` | Indicates the label is required and adds an asterisk.\n\n### Sass Mixins\n\nMixin | Description\n--- | ---\n`ink-color($color)` | Customizes the ink color of the label.\n`fill-color($color)` | Customizes the fill color of the label.\n`shake-keyframes($modifier, $positionY, $positionX, $scale)` | Generates a CSS `@keyframes` at-rule for an invalid label shake. Used in conjunction with the `shake-animation` mixin.\n`shake-animation($modifier)` | Applies shake keyframe animation to label.\n`float-position($positionY, $positionX, $scale)` | Sets position of label when floating.\n`max-width($max-width)` | Sets the max width of the label.\n`float-transition($duration-ms, $timing-function)` | Customizes the duration and optional timing function for the \"float\" transition.\n\n## `MDCFloatingLabel` Properties and Methods\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean) => void` | Proxies to the foundation's `shake()` method.\n`float(shouldFloat: boolean) => void` | Proxies to the foundation's `float()` method.\n`setRequired(isRequired: boolean) => void` | Proxies to the foundation's `setRequired()` method.\n`getWidth() => number` | Proxies to the foundation's `getWidth()` method.\n\n## Usage Within Frameworks\n\nIf you are using a JavaScript framework, such as React or Angular, you can create a Floating Label for your framework. Depending on your needs, you can use the _Simple Approach: Wrapping MDC Web Vanilla Components_, or the _Advanced Approach: Using Foundations and Adapters_. Please follow the instructions [here](../../docs/integrating-into-frameworks.md).\n\n### `MDCFloatingLabelAdapter`\n\nMethod Signature | Description\n--- | ---\n`addClass(className: string) => void` | Adds a class to the label element.\n`removeClass(className: string) => void` | Removes a class from the label element.\n`getWidth() => number` | Returns the width of the label element.\n`registerInteractionHandler(eventType: string, handler: EventListener) => void` | Registers an event listener for a given event.\n`deregisterInteractionHandler(eventType: string, handler: EventListener) => void` | Deregisters an event listener for a given event.\n\n### `MDCFloatingLabelFoundation`\n\nMethod Signature | Description\n--- | ---\n`shake(shouldShake: boolean)` | Shakes or stops shaking the label, depending on the value of `shouldShake`.\n`float(shouldFloat: boolean)` | Floats or docks the label, depending on the value of `shouldFloat`.\n`setRequired(isRequired: boolean)` | Styles the label as required, depending on the value of `isRequired`.\n`getWidth() => number` | Returns the width of the label element.\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"homepage":"https://github.com/material-components/material-components-web#readme","_id":"@material/floating-label@15.0.0-canary.423edc3dc.0","_nodeVersion":"14.21.3","_npmVersion":"lerna/3.20.2/node@v14.21.3+x64 (linux)","dist":{"integrity":"sha512-4+9e4EfAonwdhovr8vRIFJdmHBT5UPYZvKr7d42VKVa+6BSPaZNRoaL9IMI+LVDzhdWwbHFtSoJXZ2jZ5UNXZg==","shasum":"ab06c07a4b62657154c33fb3ee6c94efcaa3e04e","tarball":"https://registry.npmjs.org/@material/floating-label/-/floating-label-15.0.0-canary.423edc3dc.0.tgz","fileCount":35,"unpackedSize":585893,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCID76HHRrFiFBKOoRmoPJEDm+xyQ1aE96Jg68GZMU4CwyAiBS9Wi4YdRzyh47JE8bbKxzFcYWv4GN7c3F89GZk5CptA=="}]},"_npmUser":{"name":"abhiomkar","email":"abhiomkar@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/floating-label_15.0.0-canary.423edc3dc.0_1719425507540_0.8269853668634426"},"_hasShrinkwrap":false}},"time":{"created":"2018-03-05T22:08:44.594Z","modified":"2024-06-26T18:11:48.049Z","0.32.0":"2018-03-05T22:08:44.762Z","0.33.0":"2018-03-19T16:40:01.416Z","0.34.0":"2018-04-02T21:51:54.991Z","0.35.0":"2018-04-23T22:40:16.210Z","0.35.2":"2018-05-21T21:54:25.278Z","0.36.0":"2018-06-04T15:37:55.284Z","0.37.1":"2018-07-16T21:19:21.345Z","0.38.0":"2018-07-30T17:06:13.742Z","0.39.0-0":"2018-08-16T15:16:06.918Z","0.39.0":"2018-08-27T17:40:12.195Z","0.39.1":"2018-08-31T21:36:07.041Z","0.40.0":"2018-09-24T20:00:41.921Z","0.40.1":"2018-10-08T20:54:05.338Z","0.41.0":"2018-10-29T20:21:44.245Z","0.42.0":"2018-12-04T22:54:51.249Z","0.43.0":"2019-01-07T19:48:53.963Z","0.44.0":"2019-02-04T18:23:34.637Z","0.44.1":"2019-02-19T23:02:52.118Z","1.0.0-0":"2019-02-27T23:59:15.192Z","1.0.0-1":"2019-03-04T23:33:09.169Z","1.0.0":"2019-03-06T21:07:54.469Z","1.1.0":"2019-03-26T19:25:42.438Z","2.3.0":"2019-05-28T21:23:53.993Z","3.0.0-alpha.0":"2019-06-12T04:06:40.976Z","3.0.0-alpha.1":"2019-06-12T19:02:06.200Z","3.0.0":"2019-06-25T22:27:53.056Z","3.1.0-alpha.0":"2019-07-16T13:29:00.078Z","3.1.0":"2019-07-22T22:02:36.504Z","4.0.0-alpha.0":"2019-08-07T21:09:25.987Z","4.0.0-canary.0":"2019-09-05T04:37:48.463Z","4.0.0-canary.1":"2019-09-09T20:20:42.376Z","3.2.0":"2019-09-12T21:53:38.664Z","4.0.0-canary.79d881baf.0":"2019-09-13T02:21:31.732Z","4.0.0-canary.e851d4f40.0":"2019-09-13T04:07:19.044Z","4.0.0-canary.905884690.0":"2019-09-16T23:48:08.674Z","4.0.0-canary.199534d61.0":"2019-09-27T18:57:41.894Z","4.0.0-canary.22d7ad2fb.0":"2019-10-15T18:57:11.973Z","4.0.0-canary.735147131.0":"2019-10-16T01:23:33.837Z","4.0.0-canary.062ade5c0.0":"2019-10-17T01:01:32.531Z","4.0.0-canary.774ad4f8.0":"2019-10-17T04:04:30.486Z","4.0.0-canary.5916d18c.0":"2019-10-18T20:08:36.941Z","4.0.0-canary.d4141c95.0":"2019-10-24T01:38:13.873Z","4.0.0-canary.2b878b3e.0":"2019-10-25T02:10:40.606Z","4.0.0-canary.b06c0efe.0":"2019-10-26T01:35:08.250Z","4.0.0-canary.01628efa.0":"2019-10-29T00:03:02.004Z","4.0.0-canary.b5c6d66b.0":"2019-10-29T17:56:42.887Z","4.0.0-canary.cdf858ea.0":"2019-11-01T17:58:54.434Z","4.0.0-canary.719b57e1.0":"2019-11-01T20:01:33.812Z","4.0.0-canary.97cbbdc2.0":"2019-11-01T20:29:11.109Z","4.0.0-canary.8e36b3b7.0":"2019-11-01T21:01:14.725Z","4.0.0-canary.62d3a09b.0":"2019-11-01T21:10:47.970Z","4.0.0":"2019-11-02T18:11:42.572Z","5.0.0-canary.b5eb51e94.0":"2019-11-07T18:33:41.901Z","5.0.0-canary.58500806e.0":"2019-11-08T15:35:47.152Z","5.0.0-canary.66299b646.0":"2019-11-08T20:33:43.366Z","5.0.0-canary.821871e04.0":"2019-11-08T21:28:11.790Z","5.0.0-canary.491fddc31.0":"2019-11-08T22:07:14.039Z","5.0.0-canary.b0cecf145.0":"2019-11-09T18:42:24.720Z","5.0.0-canary.afe0dd1bc.0":"2019-11-11T15:37:42.916Z","5.0.0-canary.b4cfdc40b.0":"2019-11-14T15:58:39.344Z","5.0.0-canary.525989b5d.0":"2019-11-14T23:30:50.745Z","5.0.0-canary.7084b403a.0":"2019-11-15T01:05:56.407Z","5.0.0-canary.3cbee6dac.0":"2019-11-15T22:32:49.993Z","5.0.0-canary.591a6ad44.0":"2019-11-18T23:48:31.505Z","5.0.0-canary.5729943ba.0":"2019-11-20T05:19:25.669Z","5.0.0-canary.e89750dc7.0":"2019-11-27T02:09:50.951Z","5.0.0-canary.3e560b33a.0":"2019-11-27T02:10:34.878Z","5.0.0-canary.7fd17ce5e.0":"2019-11-27T02:10:55.496Z","5.0.0-canary.ec729683b.0":"2019-11-27T15:54:58.755Z","5.0.0-canary.b8bc4a26e.0":"2019-11-27T19:16:46.918Z","5.0.0-canary.f978109c3.0":"2019-12-02T17:07:23.704Z","5.0.0-canary.ad9dfe706.0":"2019-12-03T23:18:05.342Z","5.0.0-canary.5e45d77f3.0":"2019-12-03T23:19:15.578Z","5.0.0-canary.d10e8cdf3.0":"2019-12-03T23:20:19.382Z","5.0.0-canary.a5dbd8a2a.0":"2019-12-03T23:55:05.052Z","5.0.0-canary.ba879b68b.0":"2019-12-04T20:22:44.846Z","5.0.0-canary.aa0eba489.0":"2019-12-06T01:59:08.249Z","5.0.0-canary.cb7b71a86.0":"2019-12-06T23:55:53.899Z","5.0.0-canary.50f110a6c.0":"2019-12-10T16:59:36.566Z","5.0.0-canary.878a08b7c.0":"2019-12-11T20:16:21.011Z","5.0.0-canary.397905b4e.0":"2019-12-12T02:47:17.600Z","5.0.0-canary.1fbf5bd1d.0":"2019-12-12T18:59:19.045Z","5.0.0-canary.b723dfa78.0":"2019-12-12T20:09:48.711Z","5.0.0-canary.1c494e567.0":"2019-12-12T23:36:46.291Z","5.0.0-canary.c9e98a125.0":"2019-12-17T18:09:54.947Z","5.0.0-canary.5ffe8f7e3.0":"2019-12-17T22:33:18.794Z","5.0.0-canary.47949b08e.0":"2019-12-18T17:40:38.533Z","5.0.0-canary.b240bcc1b.0":"2019-12-18T19:16:50.827Z","5.0.0-canary.391674a26.0":"2019-12-18T19:17:02.202Z","5.0.0-canary.c4837746c.0":"2019-12-18T19:34:57.231Z","5.0.0-canary.e41a70425.0":"2019-12-18T23:20:12.902Z","5.0.0-canary.bac43eb43.0":"2019-12-18T23:24:04.843Z","5.0.0-canary.2e491de55.0":"2019-12-19T10:49:47.763Z","5.0.0-canary.ae101c144.0":"2019-12-19T16:24:51.532Z","5.0.0-canary.a51c31f26.0":"2019-12-19T17:14:16.028Z","5.0.0-canary.21fc4e13b.0":"2019-12-19T21:27:08.161Z","5.0.0-canary.d2ae6e17d.0":"2019-12-19T22:24:09.476Z","5.0.0-canary.ba30399ad.0":"2019-12-20T01:09:41.607Z","5.0.0-canary.a08ccec35.0":"2019-12-20T23:26:47.315Z","5.0.0-canary.a2f75105e.0":"2019-12-23T19:47:38.280Z","5.0.0-canary.c054a24c7.0":"2019-12-23T21:50:02.311Z","5.0.0-canary.c6808c51c.0":"2019-12-23T21:54:38.671Z","5.0.0-canary.7bce9cf77.0":"2019-12-26T18:45:35.927Z","5.0.0-canary.c92f038c3.0":"2019-12-30T22:03:02.379Z","5.0.0-canary.1f1ac7558.0":"2020-01-02T20:54:08.672Z","5.0.0-canary.ec26e799c.0":"2020-01-02T21:42:22.703Z","5.0.0-canary.0a40ced40.0":"2020-01-03T17:09:25.931Z","5.0.0-canary.3adf84899.0":"2020-01-03T18:22:26.203Z","5.0.0-canary.0d42ee650.0":"2020-01-03T21:37:00.573Z","5.0.0-canary.847dd1ada.0":"2020-01-06T19:26:17.168Z","5.0.0-canary.39df7e5df.0":"2020-01-07T00:55:25.696Z","5.0.0-canary.f1a2581ab.0":"2020-01-07T14:59:31.166Z","5.0.0-canary.7c7ddf347.0":"2020-01-07T15:15:55.421Z","5.0.0-canary.a1c84d4b5.0":"2020-01-07T18:10:07.711Z","5.0.0-canary.ec9f16578.0":"2020-01-07T19:39:29.424Z","5.0.0-canary.b602226ce.0":"2020-01-07T20:15:12.951Z","5.0.0-canary.b2d2dc08c.0":"2020-01-07T21:25:56.368Z","5.0.0-canary.61f2d7580.0":"2020-01-07T21:39:40.018Z","5.0.0-canary.d1be53a2e.0":"2020-01-07T22:16:50.160Z","5.0.0-canary.9b0d06e32.0":"2020-01-07T22:19:16.051Z","5.0.0-canary.730c807a0.0":"2020-01-07T22:20:52.196Z","5.0.0-canary.2213152cd.0":"2020-01-08T17:22:11.407Z","5.0.0-canary.5750f7169.0":"2020-01-08T17:56:48.961Z","5.0.0-canary.f7abc7a43.0":"2020-01-08T18:27:42.353Z","5.0.0-canary.bf7b4a061.0":"2020-01-08T18:41:30.386Z","5.0.0-canary.784fa7903.0":"2020-01-08T19:10:16.701Z","5.0.0-canary.823c050ba.0":"2020-01-08T20:10:41.688Z","5.0.0-canary.70c708dee.0":"2020-01-08T20:21:58.846Z","5.0.0-canary.5ed9d13d0.0":"2020-01-08T21:42:35.984Z","5.0.0-canary.4819cc7e5.0":"2020-01-08T21:58:02.278Z","5.0.0-canary.fe3ffd2c3.0":"2020-01-08T22:16:11.797Z","5.0.0-canary.c0e850090.0":"2020-01-08T22:23:09.912Z","5.0.0-canary.615f86f38.0":"2020-01-08T22:39:56.427Z","5.0.0-canary.1eb032637.0":"2020-01-08T22:59:57.663Z","5.0.0-canary.5bc5ebfea.0":"2020-01-08T23:00:48.448Z","5.0.0-canary.1112b8def.0":"2020-01-09T22:10:11.383Z","5.0.0-canary.aab102017.0":"2020-01-10T00:12:17.099Z","5.0.0-canary.426913342.0":"2020-01-10T01:44:09.728Z","5.0.0-canary.d4ea9a706.0":"2020-01-10T17:25:15.843Z","5.0.0-canary.7d4ee2996.0":"2020-01-10T17:56:46.548Z","5.0.0-canary.981ec9b6f.0":"2020-01-10T19:26:37.550Z","5.0.0-canary.737da83fc.0":"2020-01-10T21:18:46.619Z","5.0.0-canary.aca8e6c18.0":"2020-01-13T19:31:31.705Z","5.0.0-canary.c38d84e21.0":"2020-01-13T22:13:22.395Z","5.0.0-canary.a4db5fbad.0":"2020-01-14T02:15:20.935Z","5.0.0-canary.faa9af310.0":"2020-01-14T16:52:41.035Z","5.0.0-canary.60354c577.0":"2020-01-14T22:45:53.755Z","5.0.0-canary.d07c78daa.0":"2020-01-14T23:38:28.537Z","5.0.0-canary.8ddd5c6dc.0":"2020-01-15T01:42:59.444Z","5.0.0-canary.a9511d870.0":"2020-01-15T19:10:14.093Z","5.0.0-canary.7c8583c4c.0":"2020-01-15T22:47:28.634Z","5.0.0-canary.5d4b82bac.0":"2020-01-15T22:48:17.563Z","5.0.0-canary.57d0186e4.0":"2020-01-16T18:17:28.068Z","5.0.0-canary.071a6ab70.0":"2020-01-16T18:23:52.207Z","5.0.0-canary.22e0cb618.0":"2020-01-16T18:46:57.462Z","5.0.0-canary.f16f15b8f.0":"2020-01-17T00:06:56.178Z","5.0.0-canary.aa8e43e9a.0":"2020-01-17T00:36:38.849Z","5.0.0-canary.fe1f3ca07.0":"2020-01-17T01:00:13.302Z","5.0.0-canary.d405af26b.0":"2020-01-17T18:17:12.363Z","5.0.0-canary.6e857aae2.0":"2020-01-17T18:20:43.265Z","5.0.0-canary.e2e764f7c.0":"2020-01-17T18:35:56.745Z","5.0.0-canary.7ef986a87.0":"2020-01-17T19:30:46.137Z","5.0.0-canary.29402e2d4.0":"2020-01-17T20:39:43.868Z","5.0.0-canary.2b3ec563c.0":"2020-01-17T23:11:28.990Z","5.0.0-canary.e8a993677.0":"2020-01-21T16:49:37.326Z","5.0.0-canary.cd4903304.0":"2020-01-21T21:37:18.828Z","5.0.0-canary.7e4b04b25.0":"2020-01-21T22:45:59.395Z","5.0.0-canary.ebc296937.0":"2020-01-21T23:44:57.799Z","5.0.0-canary.cf33f113d.0":"2020-01-22T01:22:16.041Z","5.0.0-canary.e1d5f1be5.0":"2020-01-22T16:55:22.498Z","5.0.0-canary.6b6a4ff92.0":"2020-01-22T17:57:36.642Z","5.0.0-canary.6092f71ee.0":"2020-01-22T21:16:52.526Z","5.0.0-canary.d8d95020f.0":"2020-01-22T23:09:24.687Z","5.0.0-canary.b7facc628.0":"2020-01-23T18:12:35.108Z","5.0.0-canary.63f357dbf.0":"2020-01-23T21:55:13.549Z","5.0.0-canary.f2426d26e.0":"2020-01-23T23:55:12.886Z","5.0.0-canary.7f5e0c23f.0":"2020-01-24T16:47:32.943Z","5.0.0-canary.3fc3ab520.0":"2020-01-24T17:20:46.579Z","5.0.0-canary.80a4d326f.0":"2020-01-24T20:45:44.375Z","5.0.0-canary.ef7de4def.0":"2020-01-24T21:31:57.863Z","5.0.0-canary.93e2288b6.0":"2020-01-28T16:55:42.760Z","5.0.0-canary.34ef15f67.0":"2020-01-28T17:23:54.202Z","5.0.0-canary.d3d176ba5.0":"2020-01-28T17:29:22.331Z","5.0.0-canary.32c1df133.0":"2020-01-28T19:43:18.486Z","5.0.0-canary.f3adce86f.0":"2020-01-28T21:48:57.500Z","5.0.0-canary.a4423f890.0":"2020-01-29T21:09:28.844Z","5.0.0-canary.9351f167d.0":"2020-01-29T21:55:34.591Z","5.0.0-canary.29b89dbc1.0":"2020-01-29T22:16:44.132Z","5.0.0-canary.45985457b.0":"2020-01-29T23:32:50.692Z","5.0.0-canary.a1a0deb3e.0":"2020-01-30T17:37:24.503Z","5.0.0-canary.181486643.0":"2020-01-30T20:56:05.266Z","5.0.0-canary.3a85313ac.0":"2020-01-31T16:23:05.077Z","5.0.0-canary.b6c7f624b.0":"2020-01-31T17:02:57.157Z","5.0.0-canary.b3f70ebde.0":"2020-01-31T20:10:05.983Z","5.0.0-canary.3e782d8f8.0":"2020-02-02T01:12:37.596Z","5.0.0-canary.535398572.0":"2020-02-03T18:11:41.030Z","5.0.0-canary.5ff33802c.0":"2020-02-04T18:03:43.633Z","5.0.0-canary.1eb29491c.0":"2020-02-04T21:00:20.879Z","5.0.0-canary.4c7154b26.0":"2020-02-05T16:02:45.134Z","5.0.0-canary.ab5f49a2c.0":"2020-02-05T23:33:02.447Z","5.0.0-canary.c541ebe15.0":"2020-02-06T22:29:47.542Z","5.0.0-canary.98f7faa05.0":"2020-02-07T19:21:10.278Z","5.0.0-canary.b4727e43a.0":"2020-02-07T19:55:23.927Z","5.0.0-canary.91d9d5a65.0":"2020-02-07T22:59:18.286Z","5.0.0-canary.d5c006ed1.0":"2020-02-10T16:48:33.505Z","5.0.0-canary.559f1a570.0":"2020-02-10T17:24:44.027Z","5.0.0-canary.ad3bbf782.0":"2020-02-10T19:11:16.593Z","5.0.0-canary.570d8e49c.0":"2020-02-10T20:43:18.965Z","5.0.0-canary.48b06b89a.0":"2020-02-11T18:43:04.836Z","5.0.0-canary.612443dfb.0":"2020-02-11T19:48:35.944Z","5.0.0-canary.8c11ea2a3.0":"2020-02-12T08:51:24.844Z","5.0.0-canary.b2f3d311e.0":"2020-02-13T21:43:42.575Z","5.0.0-canary.4f488d0ee.0":"2020-02-13T23:06:07.092Z","6.0.0-canary.fe79de07d.0":"2020-02-13T23:23:23.171Z","5.0.0":"2020-02-14T00:08:47.533Z","6.0.0-canary.5e313b1f2.0":"2020-02-14T23:48:01.935Z","6.0.0-canary.6a56f387c.0":"2020-02-18T19:43:59.396Z","6.0.0-canary.bdfd52632.0":"2020-02-19T20:22:46.631Z","6.0.0-canary.ad2e4376a.0":"2020-02-20T23:16:24.198Z","6.0.0-canary.765caef18.0":"2020-02-21T17:33:03.942Z","6.0.0-canary.949562303.0":"2020-02-21T20:38:01.613Z","6.0.0-canary.7ec96974e.0":"2020-02-24T18:58:16.987Z","6.0.0-canary.265ecbad5.0":"2020-02-25T21:00:58.485Z","5.1.0":"2020-02-25T21:38:22.165Z","6.0.0-canary.2cf87456f.0":"2020-02-25T21:39:00.825Z","6.0.0-canary.781434a92.0":"2020-02-25T23:28:10.634Z","6.0.0-canary.d6f60c98b.0":"2020-02-28T22:03:43.026Z","6.0.0-canary.69edc6e28.0":"2020-02-28T22:12:23.238Z","6.0.0-canary.9372e4939.0":"2020-03-03T19:10:34.486Z","6.0.0-canary.9cf5e9842.0":"2020-03-03T23:27:16.993Z","6.0.0-canary.3657f8863.0":"2020-03-04T17:44:22.335Z","6.0.0-canary.98b843417.0":"2020-03-05T18:31:13.696Z","6.0.0-canary.17b9699c4.0":"2020-03-05T19:22:29.709Z","6.0.0-canary.6ee035572.0":"2020-03-09T16:47:06.993Z","6.0.0-canary.bd33cb56b.0":"2020-03-09T17:22:23.750Z","6.0.0-canary.26c049afa.0":"2020-03-10T17:02:52.729Z","6.0.0-canary.1db5c9fc8.0":"2020-03-10T20:37:24.611Z","6.0.0-canary.4971637f4.0":"2020-03-10T22:58:48.762Z","6.0.0-canary.1ae8130ce.0":"2020-03-10T23:05:38.191Z","6.0.0-canary.8639c2690.0":"2020-03-11T06:33:31.105Z","6.0.0-canary.d5808057f.0":"2020-03-11T16:25:43.676Z","6.0.0-canary.b3f58203d.0":"2020-03-11T19:38:18.834Z","6.0.0-canary.bec065920.0":"2020-03-12T20:20:22.819Z","6.0.0-canary.776291ef0.0":"2020-03-17T19:20:41.407Z","6.0.0-canary.ece19f3dd.0":"2020-03-17T22:01:27.010Z","6.0.0-canary.4dc45af6c.0":"2020-03-18T01:48:10.171Z","6.0.0-canary.6b48781bf.0":"2020-03-18T15:35:02.370Z","6.0.0-canary.a88c8e4dc.0":"2020-03-19T17:36:06.733Z","6.0.0-canary.cafe18860.0":"2020-03-20T14:53:44.764Z","6.0.0-canary.35a32aaea.0":"2020-03-20T19:59:27.992Z","6.0.0-canary.e75deb854.0":"2020-03-20T22:15:30.935Z","6.0.0-canary.2cc6966f6.0":"2020-03-24T18:43:46.897Z","6.0.0-canary.8707953b6.0":"2020-03-24T18:47:25.454Z","6.0.0-canary.10af6cf39.0":"2020-03-25T18:18:38.018Z","6.0.0-canary.7d8f9c8d7.0":"2020-03-27T18:05:11.177Z","6.0.0-canary.d6315efe2.0":"2020-03-27T19:56:41.723Z","6.0.0-canary.a3016368d.0":"2020-03-27T21:19:49.624Z","6.0.0-canary.4b45b6620.0":"2020-03-31T15:56:36.342Z","6.0.0-canary.e84b9c8.0":"2020-04-01T16:56:13.329Z","6.0.0-canary.e33c49e.0":"2020-04-02T00:09:46.819Z","6.0.0-canary.f1f8e60.0":"2020-04-02T19:14:12.128Z","6.0.0-canary.1e17c49b3.0":"2020-04-03T18:04:22.258Z","6.0.0-canary.6a40ef217.0":"2020-04-03T19:24:57.023Z","6.0.0-canary.5f24faacb.0":"2020-04-08T15:36:59.777Z","6.0.0-canary.82fa986b9.0":"2020-04-08T15:42:00.420Z","6.0.0-canary.9930d9cc5.0":"2020-04-08T19:32:45.883Z","6.0.0-canary.6601d24af.0":"2020-04-09T00:30:11.311Z","6.0.0-canary.05f5e1583.0":"2020-04-09T00:47:36.337Z","6.0.0-canary.bce00e186.0":"2020-04-09T15:23:17.622Z","6.0.0-canary.927fa902c.0":"2020-04-09T18:46:48.198Z","6.0.0-canary.eb28b6ecc.0":"2020-04-10T19:31:18.677Z","6.0.0-canary.816a43b42.0":"2020-04-10T20:53:02.805Z","6.0.0-canary.008c4d319.0":"2020-04-13T16:34:19.039Z","6.0.0-canary.cbb3f28ca.0":"2020-04-14T05:06:16.124Z","6.0.0-canary.f172b0f90.0":"2020-04-14T23:10:42.062Z","6.0.0-canary.c02642273.0":"2020-04-15T16:17:43.633Z","6.0.0-canary.8a299b568.0":"2020-04-15T22:43:36.206Z","6.0.0-canary.490fbdc09.0":"2020-04-16T06:00:01.966Z","6.0.0-canary.f838c6e55.0":"2020-04-16T14:27:03.415Z","6.0.0-canary.ce6cb7024.0":"2020-04-16T17:19:29.848Z","6.0.0-canary.0ab62a65b.0":"2020-04-16T18:54:47.290Z","6.0.0-canary.ca61b656f.0":"2020-04-16T20:00:20.696Z","6.0.0-canary.45a6615e3.0":"2020-04-16T20:33:13.418Z","6.0.0-canary.4b04cdb0f.0":"2020-04-17T17:41:25.176Z","6.0.0-canary.b273afa93.0":"2020-04-17T23:03:14.454Z","6.0.0-canary.b70bc601e.0":"2020-04-17T23:21:49.407Z","6.0.0-canary.c4b4bba96.0":"2020-04-18T00:18:16.928Z","6.0.0-canary.6c1ebc721.0":"2020-04-20T19:58:42.482Z","6.0.0-canary.9cff4318f.0":"2020-04-20T20:56:22.201Z","6.0.0-canary.7b4482402.0":"2020-04-20T22:20:37.773Z","6.0.0-canary.deda86d8c.0":"2020-04-21T01:15:15.705Z","6.0.0-canary.d10412cb2.0":"2020-04-21T18:18:48.908Z","6.0.0-canary.c141801d5.0":"2020-04-21T19:42:20.971Z","6.0.0-canary.28d10a96e.0":"2020-04-22T22:07:35.106Z","7.0.0-canary.8540808be.0":"2020-04-23T17:26:23.781Z","6.0.0":"2020-04-23T17:26:58.855Z","7.0.0-canary.2673adb74.0":"2020-04-23T22:46:02.838Z","7.0.0-canary.b10d0d7f1.0":"2020-04-24T00:21:28.401Z","7.0.0-canary.3bd8c1bac.0":"2020-04-24T21:06:22.599Z","7.0.0-canary.b83c8dc22.0":"2020-04-24T21:19:10.294Z","7.0.0-canary.1b3dd846d.0":"2020-04-25T00:44:15.018Z","7.0.0-canary.29debfea7.0":"2020-04-27T12:32:37.736Z","7.0.0-canary.28d32f8e0.0":"2020-04-27T14:07:30.207Z","7.0.0-canary.af71cfdd6.0":"2020-04-28T23:17:46.559Z","7.0.0-canary.99d2fc961.0":"2020-04-29T10:44:22.818Z","7.0.0-canary.0e052b24f.0":"2020-04-30T01:29:56.174Z","7.0.0-canary.ff4bc632a.0":"2020-04-30T08:28:11.038Z","7.0.0-canary.b0f83d2fd.0":"2020-04-30T14:33:09.391Z","7.0.0-canary.e59906a57.0":"2020-05-01T15:42:23.700Z","7.0.0-canary.c02712b59.0":"2020-05-01T18:26:08.297Z","7.0.0-canary.15d65448e.0":"2020-05-01T19:22:57.935Z","7.0.0-canary.142b1549e.0":"2020-05-01T22:36:10.652Z","7.0.0-canary.524b7b812.0":"2020-05-03T20:47:52.760Z","7.0.0-canary.bd8ca9678.0":"2020-05-04T17:19:24.191Z","7.0.0-canary.2553e86fe.0":"2020-05-04T17:31:15.025Z","7.0.0-canary.03dec929e.0":"2020-05-04T23:34:23.137Z","7.0.0-canary.d92d8c93e.0":"2020-05-05T16:59:35.126Z","7.0.0-canary.09f591967.0":"2020-05-05T21:04:45.509Z","7.0.0-canary.3846ce311.0":"2020-05-06T14:09:48.863Z","7.0.0-canary.ed7f32463.0":"2020-05-06T16:08:15.591Z","7.0.0-canary.8135cc085.0":"2020-05-06T19:55:26.112Z","7.0.0-canary.deb212de4.0":"2020-05-06T22:19:01.898Z","7.0.0-canary.f83e00898.0":"2020-05-07T16:49:47.226Z","7.0.0-canary.047e6b337.0":"2020-05-08T18:38:46.300Z","7.0.0-canary.119e21426.0":"2020-05-08T20:22:28.242Z","7.0.0-canary.2f052d824.0":"2020-05-08T21:07:45.378Z","7.0.0-canary.e84444387.0":"2020-05-08T21:31:53.466Z","7.0.0-canary.893eb1876.0":"2020-05-11T14:13:30.773Z","7.0.0-canary.a5aeb3001.0":"2020-05-11T14:29:32.566Z","7.0.0-canary.610c68d97.0":"2020-05-11T19:32:53.604Z","7.0.0-canary.ed52af767.0":"2020-05-11T20:27:35.753Z","7.0.0-canary.058cfd23c.0":"2020-05-11T21:25:21.731Z","7.0.0-canary.0a371b4fe.0":"2020-05-12T23:18:33.356Z","7.0.0-canary.2139200b3.0":"2020-05-13T14:47:39.112Z","7.0.0-canary.744d751a0.0":"2020-05-14T04:43:07.701Z","7.0.0-canary.ad0c0c103.0":"2020-05-14T14:51:46.705Z","7.0.0-canary.fd8f8f2b7.0":"2020-05-18T17:53:55.288Z","7.0.0-canary.730920fbb.0":"2020-05-18T19:44:27.263Z","7.0.0-canary.bcdad99bb.0":"2020-05-19T03:18:20.745Z","7.0.0-canary.4497b86ed.0":"2020-05-19T03:51:03.950Z","7.0.0-canary.2e60575da.0":"2020-05-19T16:09:42.937Z","7.0.0-canary.e3eacefcc.0":"2020-05-19T17:38:28.410Z","7.0.0-canary.b065a4d2b.0":"2020-05-20T14:37:06.657Z","7.0.0-canary.4ebce8d78.0":"2020-05-20T20:50:49.611Z","7.0.0-canary.b0fdca492.0":"2020-05-20T23:03:08.201Z","7.0.0-canary.c67667e8e.0":"2020-05-21T14:13:07.533Z","7.0.0-canary.62b5f37db.0":"2020-05-21T16:41:29.875Z","7.0.0-canary.2e218dbf8.0":"2020-05-21T17:02:21.856Z","7.0.0-canary.7fd792bb9.0":"2020-05-21T17:14:37.269Z","7.0.0-canary.a66493cd8.0":"2020-05-21T17:18:28.605Z","7.0.0-canary.da05f66e1.0":"2020-05-21T17:20:03.533Z","7.0.0-canary.740860e78.0":"2020-05-21T17:26:57.550Z","7.0.0-canary.5cea2610f.0":"2020-05-21T17:29:01.661Z","7.0.0-canary.cf7747ef7.0":"2020-05-21T17:29:26.655Z","7.0.0-canary.862d0d7bc.0":"2020-05-21T17:32:06.917Z","7.0.0-canary.0008c8a91.0":"2020-05-21T19:33:25.783Z","7.0.0-canary.541638fa2.0":"2020-05-21T19:48:23.826Z","7.0.0-canary.6167cd075.0":"2020-05-21T20:21:21.826Z","7.0.0-canary.863ac1b0f.0":"2020-05-21T20:59:51.990Z","7.0.0-canary.d30a214ac.0":"2020-05-21T21:04:18.954Z","7.0.0-canary.62abbc8d7.0":"2020-05-21T21:28:57.696Z","7.0.0-canary.49bf31d5c.0":"2020-05-21T21:32:20.204Z","7.0.0-canary.8e17857d0.0":"2020-05-21T21:33:14.727Z","7.0.0-canary.c113fc942.0":"2020-05-21T22:46:39.136Z","7.0.0-canary.912d9021d.0":"2020-05-26T18:45:41.460Z","7.0.0-canary.68a2af131.0":"2020-05-26T19:07:51.166Z","7.0.0-canary.01de07011.0":"2020-05-26T19:52:52.053Z","7.0.0-canary.51d4535fe.0":"2020-05-26T21:35:24.992Z","7.0.0-canary.b86d826b7.0":"2020-05-26T22:13:59.558Z","7.0.0-canary.d91794c7e.0":"2020-05-26T23:55:11.481Z","7.0.0-canary.8c6d7e076.0":"2020-05-27T18:59:35.819Z","7.0.0-canary.5b5f62f93.0":"2020-05-27T19:16:24.709Z","7.0.0-canary.d9972abb1.0":"2020-05-27T20:21:06.057Z","7.0.0-canary.6556eda2b.0":"2020-05-27T20:30:16.280Z","7.0.0-canary.32aa23641.0":"2020-05-27T21:38:32.551Z","7.0.0-canary.654934dfa.0":"2020-05-28T00:37:11.667Z","7.0.0-canary.41910b8b8.0":"2020-05-28T00:51:35.371Z","7.0.0-canary.d66d22bf9.0":"2020-05-28T19:55:39.454Z","7.0.0-canary.8904f3cbe.0":"2020-05-29T16:50:38.493Z","7.0.0-canary.51512a4ac.0":"2020-05-29T19:15:27.403Z","7.0.0-canary.0743288fb.0":"2020-05-29T20:05:19.915Z","7.0.0-canary.06ef147b5.0":"2020-05-29T20:40:59.279Z","7.0.0-canary.8073a20a9.0":"2020-05-29T23:25:50.728Z","7.0.0-canary.72ff42330.0":"2020-06-01T16:44:37.127Z","7.0.0-canary.9ea52070f.0":"2020-06-01T16:49:20.378Z","7.0.0-canary.d86ad3b60.0":"2020-06-01T17:49:08.227Z","7.0.0-canary.b9776b1d0.0":"2020-06-01T18:26:23.302Z","7.0.0-canary.ba6f7c294.0":"2020-06-02T17:03:04.189Z","7.0.0-canary.cf3b664ab.0":"2020-06-02T18:23:53.979Z","7.0.0-canary.4ba3c9a31.0":"2020-06-02T23:52:35.012Z","7.0.0-canary.388b042c7.0":"2020-06-03T13:47:00.257Z","7.0.0-canary.cca1ca84d.0":"2020-06-03T16:03:21.478Z","7.0.0-canary.9b0b5f2e0.0":"2020-06-03T18:57:58.117Z","7.0.0-canary.0a7895f4d.0":"2020-06-03T21:09:24.472Z","7.0.0-canary.7461aad68.0":"2020-06-03T22:12:55.610Z","7.0.0-canary.a0dc2b5c4.0":"2020-06-04T21:14:39.914Z","7.0.0-canary.2b420c5b3.0":"2020-06-08T16:14:50.503Z","7.0.0-canary.8fa22aacc.0":"2020-06-08T18:04:54.573Z","7.0.0-canary.21c4e4ed8.0":"2020-06-08T18:44:38.943Z","7.0.0-canary.dfde46516.0":"2020-06-08T19:42:20.339Z","7.0.0-canary.05cc5c206.0":"2020-06-08T20:57:29.042Z","7.0.0-canary.3ee488f1c.0":"2020-06-09T14:54:19.412Z","7.0.0-canary.b83d720ee.0":"2020-06-09T17:26:35.388Z","7.0.0-canary.afb1c11a9.0":"2020-06-09T20:16:37.182Z","7.0.0-canary.39e6f71e2.0":"2020-06-09T23:39:47.404Z","7.0.0-canary.d4c66dc7d.0":"2020-06-11T17:46:43.893Z","7.0.0-canary.be4a19f9f.0":"2020-06-12T06:08:33.995Z","7.0.0-canary.a6ac8f629.0":"2020-06-15T21:30:52.002Z","7.0.0-canary.9833dc287.0":"2020-06-16T19:49:31.955Z","7.0.0-canary.3aa33998e.0":"2020-06-16T20:21:23.903Z","7.0.0-canary.d2b54d183.0":"2020-06-18T01:15:52.956Z","7.0.0-canary.f2a488e95.0":"2020-06-18T15:04:25.999Z","7.0.0-canary.bd8d1aafa.0":"2020-06-18T15:16:29.871Z","7.0.0-canary.1321eb968.0":"2020-06-19T19:21:30.500Z","7.0.0-canary.db5cc0382.0":"2020-06-19T19:27:56.414Z","7.0.0-canary.6ac9bf031.0":"2020-06-19T19:48:26.018Z","7.0.0-canary.c21b5c367.0":"2020-06-19T20:10:45.579Z","7.0.0-canary.bfdd7fd39.0":"2020-06-19T20:20:05.843Z","7.0.0-canary.10b505785.0":"2020-06-19T20:21:32.850Z","7.0.0-canary.6483d3f44.0":"2020-06-19T20:37:45.417Z","7.0.0-canary.30a74e921.0":"2020-06-19T20:40:01.156Z","7.0.0-canary.c20727498.0":"2020-06-19T20:42:53.179Z","7.0.0-canary.4e360ae94.0":"2020-06-19T20:59:37.100Z","7.0.0-canary.8550fa53b.0":"2020-06-19T21:01:54.462Z","7.0.0-canary.93ade142e.0":"2020-06-19T21:03:06.254Z","7.0.0-canary.a0032f5bb.0":"2020-06-19T21:28:11.525Z","7.0.0-canary.3f342e721.0":"2020-06-19T21:30:19.583Z","7.0.0-canary.ff89457cc.0":"2020-06-19T21:31:30.131Z","7.0.0-canary.4a1855cf8.0":"2020-06-19T21:34:12.726Z","7.0.0-canary.8602f1b4d.0":"2020-06-22T17:23:53.699Z","7.0.0-canary.69f9f0982.0":"2020-06-22T21:14:41.863Z","7.0.0-canary.369a293f0.0":"2020-06-22T21:17:09.182Z","7.0.0-canary.f1432b5c6.0":"2020-06-22T21:25:22.849Z","7.0.0-canary.4757a16b4.0":"2020-06-22T21:53:30.726Z","7.0.0-canary.f8f472762.0":"2020-06-22T21:57:35.177Z","7.0.0-canary.7e4d55c34.0":"2020-06-22T22:29:28.149Z","7.0.0-canary.bd1dbc91f.0":"2020-06-23T14:28:19.726Z","7.0.0-canary.31523bc62.0":"2020-06-23T14:33:53.777Z","7.0.0-canary.a96b6d4d6.0":"2020-06-23T14:40:13.354Z","7.0.0-canary.ef3a09533.0":"2020-06-23T14:48:21.359Z","7.0.0-canary.080965f39.0":"2020-06-23T15:17:46.982Z","7.0.0-canary.1bd67b65d.0":"2020-06-23T16:00:10.205Z","7.0.0-canary.18ca31248.0":"2020-06-23T18:25:09.685Z","7.0.0-canary.39cf00836.0":"2020-06-23T18:48:04.804Z","7.0.0-canary.1bfda9e05.0":"2020-06-23T19:00:32.645Z","7.0.0-canary.08731bd95.0":"2020-06-23T19:03:10.110Z","7.0.0":"2020-06-23T19:10:52.586Z","8.0.0-canary.a3212b209.0":"2020-06-23T19:11:47.151Z","8.0.0-canary.15e81fe98.0":"2020-06-23T19:41:14.692Z","8.0.0-canary.004c9d392.0":"2020-06-23T22:56:04.378Z","8.0.0-canary.03bde00f5.0":"2020-06-24T00:31:47.494Z","8.0.0-canary.599b8c319.0":"2020-06-24T14:56:43.869Z","8.0.0-canary.87e3be418.0":"2020-06-24T17:53:22.558Z","8.0.0-canary.035cf2a6f.0":"2020-06-24T18:38:46.358Z","8.0.0-canary.2fed2c12f.0":"2020-06-25T20:01:55.555Z","8.0.0-canary.38197b443.0":"2020-06-25T21:22:38.242Z","8.0.0-canary.69a35e80c.0":"2020-06-26T17:38:54.379Z","8.0.0-canary.df7154fb3.0":"2020-06-26T18:16:53.321Z","8.0.0-canary.d5618602a.0":"2020-06-26T21:48:22.477Z","8.0.0-canary.e590b376b.0":"2020-06-26T23:23:42.258Z","8.0.0-canary.0c9d6bd2d.0":"2020-06-29T17:15:25.755Z","8.0.0-canary.c1fec4246.0":"2020-06-29T17:30:48.203Z","8.0.0-canary.c678a9d34.0":"2020-06-29T17:52:08.683Z","8.0.0-canary.521afaf6e.0":"2020-06-30T15:05:42.830Z","8.0.0-canary.a2ad48839.0":"2020-06-30T19:14:29.658Z","8.0.0-canary.ec2385881.0":"2020-06-30T21:47:09.203Z","8.0.0-canary.610c26c4a.0":"2020-07-01T14:56:19.841Z","8.0.0-canary.e2ea4a99e.0":"2020-07-01T19:27:20.078Z","8.0.0-canary.a78ceb112.0":"2020-07-01T19:39:05.815Z","8.0.0-canary.b0c456d33.0":"2020-07-06T22:41:34.715Z","8.0.0-canary.2e5711e04.0":"2020-07-08T16:48:19.441Z","8.0.0-canary.811fc5d24.0":"2020-07-08T17:16:01.357Z","8.0.0-canary.6ed717ddd.0":"2020-07-08T19:44:17.499Z","8.0.0-canary.d850de590.0":"2020-07-09T18:05:33.866Z","8.0.0-canary.e07a70841.0":"2020-07-09T18:35:22.084Z","8.0.0-canary.37947ed6c.0":"2020-07-09T20:36:37.195Z","8.0.0-canary.5d443afec.0":"2020-07-09T20:51:55.818Z","8.0.0-canary.9ac1ed914.0":"2020-07-09T21:20:46.782Z","8.0.0-canary.1e7cb6198.0":"2020-07-09T22:12:35.367Z","8.0.0-canary.843f636c0.0":"2020-07-10T17:42:49.099Z","8.0.0-canary.b2edaeead.0":"2020-07-10T18:07:22.588Z","8.0.0-canary.5dac1f624.0":"2020-07-13T16:34:26.371Z","8.0.0-canary.4497acef8.0":"2020-07-14T14:20:19.574Z","8.0.0-canary.e6e23019d.0":"2020-07-14T20:10:40.839Z","8.0.0-canary.d548d7a92.0":"2020-07-14T21:13:10.496Z","8.0.0-canary.58ce529cc.0":"2020-07-14T21:15:15.437Z","8.0.0-canary.a0f1202dc.0":"2020-07-14T21:34:28.298Z","8.0.0-canary.ad4df58c1.0":"2020-07-15T00:09:27.115Z","8.0.0-canary.01db89053.0":"2020-07-16T16:39:36.054Z","8.0.0-canary.fb5a4cdeb.0":"2020-07-20T19:20:08.886Z","8.0.0-canary.8df0f517c.0":"2020-07-20T23:55:49.454Z","8.0.0-canary.abcdbcfeb.0":"2020-07-21T00:50:19.107Z","8.0.0-canary.7bd5075de.0":"2020-07-21T18:47:19.117Z","8.0.0-canary.405a29a20.0":"2020-07-22T22:23:21.485Z","8.0.0-canary.f3693ac4c.0":"2020-07-22T22:33:54.570Z","8.0.0-canary.12a109680.0":"2020-07-22T23:03:37.159Z","8.0.0-canary.bbd06696e.0":"2020-07-22T23:53:02.461Z","8.0.0-canary.4951e7651.0":"2020-07-23T01:49:49.240Z","8.0.0-canary.75deebbef.0":"2020-07-23T17:46:47.711Z","8.0.0-canary.95aff33ee.0":"2020-07-23T18:47:31.227Z","8.0.0-canary.9d9f47473.0":"2020-07-23T19:59:00.306Z","8.0.0-canary.00dfbf6be.0":"2020-07-23T20:59:46.344Z","8.0.0-canary.b87e522d2.0":"2020-07-23T21:23:50.882Z","8.0.0-canary.5b3e150e5.0":"2020-07-24T01:24:09.990Z","8.0.0-canary.f0ae11786.0":"2020-07-24T01:43:46.774Z","8.0.0-canary.fb4ee66c0.0":"2020-07-24T02:10:55.684Z","8.0.0-canary.5511e0aeb.0":"2020-07-24T16:56:59.777Z","8.0.0-canary.8388a9bf6.0":"2020-07-24T20:13:24.768Z","8.0.0-canary.ac405eae1.0":"2020-07-27T15:06:45.277Z","8.0.0-canary.75553837c.0":"2020-07-27T15:12:37.174Z","8.0.0-canary.b96fbfc7a.0":"2020-07-27T15:38:16.074Z","8.0.0-canary.61f1a8d85.0":"2020-07-27T15:47:15.878Z","8.0.0-canary.81dc33377.0":"2020-07-27T15:59:23.524Z","8.0.0-canary.ffd9ede58.0":"2020-07-27T16:32:41.702Z","8.0.0-canary.52dc55acf.0":"2020-07-27T17:08:41.975Z","8.0.0-canary.d4274ff05.0":"2020-07-27T19:50:55.282Z","8.0.0-canary.b82d0696d.0":"2020-07-27T19:58:16.605Z","8.0.0-canary.c2852000d.0":"2020-07-27T20:58:29.824Z","8.0.0-canary.f86f83f54.0":"2020-07-27T21:54:15.942Z","8.0.0-canary.41eb1684c.0":"2020-07-28T17:50:29.518Z","8.0.0-canary.9e2f6c450.0":"2020-07-28T22:39:25.920Z","8.0.0-canary.e6950b55a.0":"2020-07-28T22:52:35.056Z","8.0.0-canary.5e51ee38e.0":"2020-07-28T23:16:13.787Z","8.0.0-canary.a3898ffcf.0":"2020-07-29T00:36:34.869Z","8.0.0-canary.bc5cc6c96.0":"2020-07-29T00:49:22.851Z","8.0.0-canary.9bdeaf928.0":"2020-07-29T01:20:49.975Z","8.0.0-canary.fde2c1f9d.0":"2020-07-29T01:35:09.165Z","8.0.0-canary.6b3876d5d.0":"2020-07-29T01:38:56.183Z","8.0.0-canary.30ce17873.0":"2020-07-29T17:14:57.104Z","8.0.0-canary.f6bb43bf0.0":"2020-07-29T18:25:36.298Z","8.0.0-canary.6af75f6ab.0":"2020-07-30T00:01:31.846Z","8.0.0-canary.42d7a65aa.0":"2020-07-30T00:10:32.711Z","8.0.0-canary.85abdabb7.0":"2020-07-30T00:15:29.077Z","8.0.0-canary.49fb20ca3.0":"2020-07-30T01:27:47.456Z","8.0.0-canary.962d4abbb.0":"2020-07-30T16:10:22.311Z","8.0.0-canary.2fcee40cb.0":"2020-07-30T17:21:40.673Z","8.0.0-canary.bd5987f5a.0":"2020-07-30T17:46:18.896Z","8.0.0-canary.005e86a9b.0":"2020-07-30T18:00:05.536Z","8.0.0-canary.e309c7c68.0":"2020-07-30T18:09:13.507Z","8.0.0-canary.935a51cc0.0":"2020-07-30T18:20:34.324Z","8.0.0-canary.74839da7b.0":"2020-07-30T18:31:33.045Z","8.0.0-canary.f041a48c9.0":"2020-07-30T22:59:45.967Z","8.0.0-canary.fbb1381e1.0":"2020-07-31T15:50:37.664Z","8.0.0-canary.7f61d5785.0":"2020-07-31T17:23:11.589Z","8.0.0-canary.e1bc84d10.0":"2020-08-03T17:51:21.197Z","8.0.0-canary.096a7a066.0":"2020-08-03T17:53:49.227Z","8.0.0-canary.aa3a3e5a4.0":"2020-08-03T17:54:19.723Z","8.0.0-canary.5903d39af.0":"2020-08-03T17:54:42.724Z","8.0.0-canary.72258f898.0":"2020-08-04T01:17:30.773Z","8.0.0-canary.1b44b43c8.0":"2020-08-04T16:48:24.901Z","8.0.0-canary.e9d2e2f96.0":"2020-08-04T20:24:22.017Z","8.0.0-canary.b9dff0a19.0":"2020-08-05T03:48:58.837Z","8.0.0-canary.2bd09a706.0":"2020-08-05T03:54:07.932Z","8.0.0-canary.e0560522f.0":"2020-08-05T17:20:06.626Z","8.0.0-canary.08ca4d0ec.0":"2020-08-05T17:39:35.267Z","8.0.0-canary.08090126b.0":"2020-08-06T19:32:48.279Z","8.0.0-canary.e8bf5b2ac.0":"2020-08-06T21:50:06.032Z","8.0.0-canary.e3b746208.0":"2020-08-06T22:26:51.446Z","8.0.0-canary.96a640534.0":"2020-08-06T22:41:36.181Z","8.0.0-canary.9f9aac825.0":"2020-08-07T20:51:31.653Z","8.0.0-canary.fc65fd00b.0":"2020-08-10T15:20:32.753Z","8.0.0-canary.02e372c5f.0":"2020-08-10T15:48:47.154Z","8.0.0-canary.66669e3b6.0":"2020-08-10T15:52:46.204Z","8.0.0-canary.6d1ea9761.0":"2020-08-11T14:31:00.309Z","8.0.0-canary.79414bf9f.0":"2020-08-11T19:01:59.383Z","8.0.0-canary.85a5272df.0":"2020-08-11T20:08:22.745Z","8.0.0-canary.fda053eb8.0":"2020-08-12T20:04:21.157Z","8.0.0-canary.760873445.0":"2020-08-12T21:43:24.229Z","8.0.0-canary.2f4711a30.0":"2020-08-12T21:53:21.248Z","8.0.0-canary.2d72f3659.0":"2020-08-12T22:00:51.762Z","8.0.0-canary.1fee70a5e.0":"2020-08-12T23:28:49.215Z","8.0.0-canary.023f3fa34.0":"2020-08-13T01:12:32.780Z","8.0.0-canary.80f3a9e5d.0":"2020-08-13T01:29:10.207Z","8.0.0-canary.a1dcfe97c.0":"2020-08-13T08:49:59.532Z","8.0.0-canary.af332d5be.0":"2020-08-13T21:17:34.290Z","8.0.0-canary.7dd4567c4.0":"2020-08-14T00:51:12.637Z","8.0.0-canary.ff870005a.0":"2020-08-14T01:16:21.709Z","8.0.0-canary.150f427a0.0":"2020-08-14T13:29:49.354Z","8.0.0-canary.bcc58290a.0":"2020-08-14T23:22:38.758Z","8.0.0-canary.4f55400bb.0":"2020-08-17T16:38:34.111Z","8.0.0-canary.000d64815.0":"2020-08-17T17:04:25.669Z","8.0.0-canary.defa599a8.0":"2020-08-17T20:32:01.602Z","8.0.0-canary.66b8ed7e6.0":"2020-08-18T18:36:56.666Z","8.0.0-canary.e2b1033df.0":"2020-08-19T18:42:07.397Z","8.0.0-canary.2e8c3dd2e.0":"2020-08-19T19:24:03.092Z","8.0.0-canary.b2e80a5d9.0":"2020-08-19T22:21:11.958Z","8.0.0-canary.ff88df637.0":"2020-08-19T22:33:04.304Z","8.0.0-canary.32fb314cd.0":"2020-08-20T10:37:47.716Z","8.0.0-canary.546277d32.0":"2020-08-20T16:43:17.273Z","8.0.0-canary.da72839f4.0":"2020-08-20T18:00:04.075Z","8.0.0-canary.346069ccb.0":"2020-08-20T18:18:32.668Z","8.0.0-canary.e27c5802f.0":"2020-08-20T19:15:18.720Z","8.0.0-canary.f4532b9c8.0":"2020-08-20T19:57:54.154Z","8.0.0-canary.fbf73c2a6.0":"2020-08-20T21:06:36.538Z","8.0.0-canary.cf800124f.0":"2020-08-20T21:52:45.088Z","8.0.0-canary.95e4eeea7.0":"2020-08-20T23:29:01.487Z","8.0.0-canary.91ab1c62a.0":"2020-08-21T15:11:55.197Z","8.0.0-canary.58eaa9f02.0":"2020-08-21T20:00:32.341Z","8.0.0-canary.238216fc4.0":"2020-08-24T15:40:58.437Z","8.0.0-canary.a1c65593d.0":"2020-08-25T03:03:59.412Z","8.0.0-canary.708cc09c4.0":"2020-08-25T15:56:32.326Z","8.0.0-canary.19bea2ad3.0":"2020-08-26T18:49:33.644Z","8.0.0-canary.911014711.0":"2020-08-27T16:08:12.673Z","8.0.0-canary.d3387f54c.0":"2020-09-03T20:55:27.153Z","8.0.0-canary.2ccf996cc.0":"2020-09-03T20:55:56.289Z","8.0.0-canary.744bfe5d8.0":"2020-09-03T20:56:41.353Z","8.0.0-canary.78da96eaf.0":"2020-09-08T19:12:58.393Z","8.0.0-canary.b0ed593cc.0":"2020-09-09T06:16:11.179Z","8.0.0-canary.85a1fa9ea.0":"2020-09-10T21:10:39.430Z","8.0.0-canary.0bc41a9c7.0":"2020-09-11T17:49:57.482Z","8.0.0-canary.fc0eb5013.0":"2020-09-11T19:55:44.733Z","8.0.0-canary.319bf66de.0":"2020-09-11T23:10:22.965Z","8.0.0-canary.5bfc305ec.0":"2020-09-13T23:00:24.101Z","8.0.0-canary.83d83f131.0":"2020-09-14T00:32:52.572Z","8.0.0-canary.40d8e4726.0":"2020-09-14T23:30:10.100Z","8.0.0-canary.c25d70a31.0":"2020-09-15T02:29:11.504Z","8.0.0-canary.d52b165b5.0":"2020-09-15T14:54:34.248Z","8.0.0-canary.a831d4799.0":"2020-09-15T17:52:03.316Z","8.0.0-canary.a306aa488.0":"2020-09-17T00:58:55.397Z","8.0.0-canary.fd608ff66.0":"2020-09-17T14:25:53.704Z","8.0.0-canary.3e435ba57.0":"2020-09-17T14:43:10.517Z","8.0.0-canary.c250ec52a.0":"2020-09-17T20:10:44.273Z","8.0.0-canary.e34e411b1.0":"2020-09-17T20:18:04.764Z","8.0.0-canary.4e9343929.0":"2020-09-17T20:43:21.377Z","8.0.0-canary.4e5c350c2.0":"2020-09-21T21:14:20.396Z","8.0.0-canary.16c563ef7.0":"2020-09-22T19:46:27.026Z","8.0.0-canary.fd8af3d43.0":"2020-09-23T19:32:27.497Z","8.0.0-canary.d4cd83a85.0":"2020-09-25T00:35:46.231Z","8.0.0-canary.199aecdfb.0":"2020-09-25T15:51:31.391Z","8.0.0-canary.38ef4501f.0":"2020-09-30T18:24:47.034Z","8.0.0-canary.774dcfc8e.0":"2020-10-01T09:54:22.297Z","8.0.0-canary.0f60323a8.0":"2020-10-08T21:10:20.425Z","8.0.0-canary.d71622574.0":"2020-10-09T16:32:00.862Z","8.0.0-canary.7a9afaf4b.0":"2020-10-09T22:54:10.533Z","8.0.0-canary.8a39352c8.0":"2020-10-12T17:46:36.917Z","8.0.0-canary.790ca85fd.0":"2020-10-12T21:57:04.249Z","8.0.0-canary.174c0becf.0":"2020-10-14T02:15:58.542Z","8.0.0-canary.c71ebfa02.0":"2020-10-14T04:17:49.835Z","8.0.0-canary.2ab716cbd.0":"2020-10-16T00:04:32.159Z","8.0.0-canary.43c1c5e2f.0":"2020-10-19T14:08:19.363Z","8.0.0-canary.ccc64eea3.0":"2020-10-26T22:51:48.122Z","8.0.0-canary.a79cdd019.0":"2020-10-27T16:31:32.906Z","8.0.0-canary.596e98424.0":"2020-10-28T16:03:52.422Z","8.0.0-canary.05d5facc2.0":"2020-10-28T16:12:18.846Z","8.0.0-canary.291b3553d.0":"2020-10-28T17:45:15.226Z","8.0.0-canary.dbc449b09.0":"2020-10-28T18:13:08.864Z","8.0.0-canary.4794b25da.0":"2020-10-28T18:41:26.346Z","8.0.0-canary.c61db90a5.0":"2020-10-28T19:00:03.862Z","8.0.0-canary.6d9648ab2.0":"2020-10-29T20:32:44.503Z","8.0.0-canary.5511c5254.0":"2020-10-30T18:00:33.994Z","8.0.0-canary.bd6e302a4.0":"2020-11-02T17:05:06.744Z","9.0.0-canary.d6b5cd418.0":"2020-11-02T22:59:22.893Z","8.0.0":"2020-11-02T22:59:47.519Z","9.0.0-canary.fdf9a2634.0":"2020-11-03T23:21:43.929Z","9.0.0-canary.4a86f30a0.0":"2020-11-03T23:28:11.522Z","9.0.0-canary.fc8b045f1.0":"2020-11-03T23:37:23.428Z","9.0.0-canary.a0b2db26b.0":"2020-11-04T00:09:18.949Z","9.0.0-canary.419e03572.0":"2020-11-04T01:33:16.410Z","9.0.0-canary.a432ad542.0":"2020-11-06T01:46:07.698Z","9.0.0-canary.e2e8aef1e.0":"2020-11-06T02:05:33.489Z","9.0.0-canary.ec6b68b34.0":"2020-11-06T18:56:46.592Z","9.0.0-canary.b39094d14.0":"2020-11-06T21:16:19.556Z","9.0.0-canary.8648b8258.0":"2020-11-12T10:44:50.787Z","9.0.0-canary.240c5f74f.0":"2020-11-12T20:20:53.180Z","9.0.0-canary.6cf6ba4f4.0":"2020-11-16T18:50:13.009Z","9.0.0-canary.07f3e01b7.0":"2020-11-16T21:46:02.110Z","9.0.0-canary.23491cf85.0":"2020-11-17T00:17:29.784Z","9.0.0-canary.b659d4fc3.0":"2020-11-17T00:25:23.611Z","9.0.0-canary.d8a3aed67.0":"2020-11-17T15:28:07.712Z","9.0.0-canary.482ff9091.0":"2020-11-17T17:58:19.118Z","9.0.0-canary.99cfb6bd5.0":"2020-11-18T18:44:06.947Z","9.0.0-canary.b98d15d90.0":"2020-11-18T22:35:04.194Z","9.0.0-canary.30c11bfc2.0":"2020-11-19T01:26:12.474Z","9.0.0-canary.1b731d51b.0":"2020-11-19T18:52:37.470Z","9.0.0-canary.4ae94ff78.0":"2020-11-19T18:55:32.187Z","9.0.0-canary.7ad038e1d.0":"2020-11-19T19:18:35.047Z","9.0.0-canary.a41527604.0":"2020-11-19T20:00:23.386Z","9.0.0-canary.7b0e2b377.0":"2020-11-20T22:55:51.939Z","9.0.0-canary.c927a5d05.0":"2020-11-23T19:47:38.930Z","9.0.0-canary.b349b5185.0":"2020-11-24T17:09:06.800Z","9.0.0-canary.9083b7d61.0":"2020-11-24T21:16:10.323Z","9.0.0-canary.eff7b46ac.0":"2020-11-24T23:31:11.479Z","9.0.0-canary.ae27b44b0.0":"2020-11-25T15:33:13.267Z","9.0.0-canary.2fbba2554.0":"2020-11-30T17:40:36.186Z","9.0.0-canary.6d8574fe1.0":"2020-11-30T17:51:34.077Z","9.0.0-canary.fd22355f7.0":"2020-11-30T22:59:47.244Z","9.0.0-canary.c4ab98722.0":"2020-12-02T00:56:51.994Z","9.0.0-canary.977585650.0":"2020-12-02T14:42:15.731Z","9.0.0-canary.c7edfc7b6.0":"2020-12-02T14:49:53.198Z","9.0.0-canary.4f3347306.0":"2020-12-02T15:07:48.157Z","9.0.0-canary.37fbae10d.0":"2020-12-02T18:16:41.750Z","9.0.0-canary.11da3c0db.0":"2020-12-02T20:22:41.810Z","9.0.0-canary.489d4c219.0":"2020-12-03T15:29:52.674Z","9.0.0-canary.6557a69d9.0":"2020-12-03T15:41:43.089Z","9.0.0-canary.4ea1b7c69.0":"2020-12-03T15:58:27.139Z","9.0.0-canary.eaeb78ce3.0":"2020-12-03T17:01:57.886Z","9.0.0-canary.1c156d69d.0":"2020-12-03T20:45:03.920Z","9.0.0-canary.832668d33.0":"2020-12-04T18:06:11.374Z","9.0.0-canary.4321323e4.0":"2020-12-07T11:29:14.821Z","9.0.0-canary.2d5f32d41.0":"2020-12-07T16:42:26.898Z","9.0.0-canary.8239afc64.0":"2020-12-07T19:49:45.640Z","9.0.0-canary.6871336f1.0":"2020-12-08T16:01:41.980Z","9.0.0-canary.9f718da94.0":"2020-12-08T16:13:28.370Z","9.0.0-canary.1fccb1418.0":"2020-12-08T16:28:31.809Z","9.0.0-canary.afb68894e.0":"2020-12-08T16:32:32.822Z","9.0.0-canary.fd88d40c2.0":"2020-12-08T16:45:51.339Z","9.0.0-canary.ba9e3109c.0":"2020-12-08T19:05:29.184Z","9.0.0-canary.1085c3b2d.0":"2020-12-09T19:11:10.323Z","9.0.0-canary.c5dda809d.0":"2020-12-09T20:50:01.158Z","9.0.0-canary.f5f1bd86a.0":"2020-12-09T21:07:51.661Z","9.0.0-canary.00f38200f.0":"2020-12-11T15:45:13.885Z","9.0.0-canary.ac41a5729.0":"2020-12-11T16:28:19.721Z","9.0.0-canary.7fe0e4f05.0":"2020-12-11T17:05:37.372Z","9.0.0-canary.9244508bd.0":"2020-12-11T19:07:35.966Z","9.0.0-canary.384a8eeb1.0":"2020-12-16T17:02:02.734Z","9.0.0-canary.eabf9d5c2.0":"2020-12-16T18:27:44.772Z","9.0.0-canary.30fdfd06e.0":"2020-12-16T19:07:38.747Z","9.0.0-canary.9590a8f90.0":"2020-12-22T17:42:06.270Z","9.0.0-canary.f89d8b8f2.0":"2020-12-22T23:05:12.025Z","9.0.0-canary.fb194dd35.0":"2020-12-28T20:45:48.596Z","9.0.0-canary.64f36e287.0":"2020-12-28T21:08:38.866Z","9.0.0-canary.b7bbe7022.0":"2020-12-29T18:48:09.779Z","9.0.0":"2020-12-29T19:46:13.119Z","10.0.0-canary.776c18681.0":"2020-12-30T00:40:19.259Z","10.0.0-canary.671d72d95.0":"2020-12-30T20:11:59.726Z","10.0.0-canary.b4f5a1c9e.0":"2020-12-30T21:46:38.340Z","10.0.0-canary.a94bd8deb.0":"2020-12-30T22:04:25.977Z","10.0.0-canary.5d128511b.0":"2020-12-30T22:09:52.753Z","10.0.0-canary.365c69360.0":"2021-01-05T17:48:24.444Z","10.0.0-canary.700a8261a.0":"2021-01-05T21:00:44.928Z","10.0.0-canary.766981c15.0":"2021-01-05T22:40:25.897Z","10.0.0-canary.b28c576d9.0":"2021-01-05T22:50:09.555Z","10.0.0-canary.968735356.0":"2021-01-06T15:50:57.927Z","10.0.0-canary.c5e18b020.0":"2021-01-06T19:44:23.345Z","10.0.0-canary.bcff8a66a.0":"2021-01-06T20:26:14.638Z","10.0.0-canary.79328c9ff.0":"2021-01-07T02:34:21.894Z","10.0.0-canary.121e1f303.0":"2021-01-07T23:20:02.156Z","10.0.0-canary.abdd10065.0":"2021-01-08T17:51:41.063Z","10.0.0-canary.089de519c.0":"2021-01-08T22:20:49.819Z","10.0.0-canary.163119837.0":"2021-01-08T23:45:25.512Z","10.0.0-canary.b8a1a58e4.0":"2021-01-11T16:24:51.190Z","10.0.0-canary.7584267ff.0":"2021-01-12T01:12:29.510Z","10.0.0-canary.251ac04c0.0":"2021-01-12T19:55:15.389Z","10.0.0-canary.772cc1068.0":"2021-01-14T00:07:13.567Z","10.0.0-canary.fe13dd130.0":"2021-01-14T01:10:30.061Z","10.0.0-canary.c7c5da28f.0":"2021-01-14T01:34:18.598Z","10.0.0-canary.b2faa116a.0":"2021-01-19T19:26:45.911Z","10.0.0-canary.0c95c9f7b.0":"2021-01-19T22:54:00.008Z","10.0.0-canary.5268222c4.0":"2021-01-20T19:19:14.951Z","10.0.0-canary.2ed2d829b.0":"2021-01-20T23:08:13.485Z","10.0.0-canary.df00c2b30.0":"2021-01-21T19:55:09.156Z","10.0.0-canary.fd61b0476.0":"2021-01-21T20:09:42.776Z","10.0.0-canary.3fb3a0265.0":"2021-01-22T00:04:59.271Z","10.0.0-canary.07deaec27.0":"2021-01-22T16:56:32.325Z","10.0.0-canary.d2959b16c.0":"2021-01-22T18:52:18.606Z","10.0.0-canary.75f3bfe7c.0":"2021-01-22T22:51:40.916Z","10.0.0-canary.b9adb7a0f.0":"2021-01-22T23:35:56.641Z","10.0.0-canary.d29ec2862.0":"2021-01-25T16:24:05.170Z","10.0.0-canary.96be07c68.0":"2021-01-26T00:10:20.963Z","10.0.0-canary.e383944e9.0":"2021-01-26T01:45:08.786Z","10.0.0-canary.623af861e.0":"2021-01-26T03:45:25.093Z","10.0.0-canary.6863fd43a.0":"2021-01-26T21:33:19.748Z","10.0.0-canary.ea55b87ca.0":"2021-01-26T23:46:07.605Z","10.0.0-canary.e902ff05f.0":"2021-01-27T00:04:15.511Z","10.0.0-canary.2c9fc538a.0":"2021-01-27T00:27:21.007Z","10.0.0-canary.6bf56aaa4.0":"2021-01-27T01:20:15.949Z","10.0.0-canary.994873795.0":"2021-01-27T14:51:15.981Z","10.0.0-canary.96878e1d0.0":"2021-01-27T18:02:25.115Z","10.0.0-canary.3c117cdcc.0":"2021-01-27T18:32:32.637Z","10.0.0-canary.b411e7033.0":"2021-01-27T22:03:47.915Z","10.0.0-canary.a9ac16b4a.0":"2021-01-27T23:03:40.953Z","10.0.0-canary.fec7b42ca.0":"2021-01-28T19:14:50.331Z","10.0.0-canary.8e66dbfee.0":"2021-02-01T23:20:36.010Z","10.0.0-canary.637d15da6.0":"2021-02-02T18:49:25.714Z","10.0.0-canary.fb793939e.0":"2021-02-02T23:43:14.145Z","10.0.0-canary.15a4d40dd.0":"2021-02-03T02:18:45.426Z","10.0.0-canary.7a003acf0.0":"2021-02-04T02:34:09.421Z","10.0.0-canary.05f249666.0":"2021-02-04T17:50:23.851Z","10.0.0-canary.1a3a39629.0":"2021-02-04T18:43:19.354Z","10.0.0-canary.8b1cdb1be.0":"2021-02-04T22:35:04.397Z","10.0.0-canary.8271f00f7.0":"2021-02-04T23:00:49.728Z","10.0.0-canary.533092a90.0":"2021-02-05T03:46:54.985Z","11.0.0-canary.633a9fc7a.0":"2021-02-05T16:17:34.204Z","10.0.0":"2021-02-05T16:18:59.245Z","11.0.0-canary.b5227247d.0":"2021-02-05T17:42:14.387Z","11.0.0-canary.95322b11e.0":"2021-02-05T23:31:50.499Z","11.0.0-canary.1f318ff0f.0":"2021-02-06T00:05:01.255Z","11.0.0-canary.ab12cf7a3.0":"2021-02-08T15:03:41.853Z","11.0.0-canary.98db2c5ec.0":"2021-02-08T15:34:24.018Z","11.0.0-canary.1f86b9f6d.0":"2021-02-08T17:17:26.257Z","11.0.0-canary.aac8f5d9a.0":"2021-02-08T18:00:16.311Z","11.0.0-canary.750e18fc7.0":"2021-02-08T21:41:26.127Z","11.0.0-canary.b62b1266d.0":"2021-02-09T21:52:47.962Z","11.0.0-canary.a6b3101fb.0":"2021-02-11T23:16:50.336Z","11.0.0-canary.ed88df700.0":"2021-02-12T00:07:03.691Z","11.0.0-canary.d30efe6b4.0":"2021-02-12T02:42:02.777Z","11.0.0-canary.0393bdc4b.0":"2021-02-12T04:31:05.649Z","11.0.0-canary.7cd26af4d.0":"2021-02-12T15:59:31.451Z","11.0.0-canary.71fe9a067.0":"2021-02-12T16:31:03.423Z","11.0.0-canary.0fd56a86b.0":"2021-02-13T00:11:54.005Z","11.0.0-canary.f19bbc4af.0":"2021-02-16T22:16:21.145Z","11.0.0-canary.f9cac96cc.0":"2021-02-17T16:09:57.799Z","11.0.0-canary.79ce0878b.0":"2021-02-17T19:25:16.339Z","11.0.0-canary.d6e507b5b.0":"2021-02-17T19:58:17.779Z","11.0.0-canary.f2658381b.0":"2021-02-17T22:44:55.403Z","11.0.0-canary.97c4d4035.0":"2021-02-18T02:35:14.353Z","11.0.0-canary.f5bb4648c.0":"2021-02-18T16:05:37.216Z","11.0.0-canary.302c7a960.0":"2021-02-18T18:37:50.535Z","11.0.0-canary.aa0aaf026.0":"2021-02-18T19:23:36.048Z","11.0.0-canary.07ff0c452.0":"2021-02-18T19:42:37.854Z","11.0.0-canary.bed7ecd3e.0":"2021-02-18T23:27:43.001Z","11.0.0-canary.06dead2d6.0":"2021-02-19T00:37:08.052Z","11.0.0-canary.cddb03553.0":"2021-02-19T03:13:22.065Z","11.0.0-canary.d6d8d0476.0":"2021-02-19T05:36:45.450Z","11.0.0-canary.0b4a4b2eb.0":"2021-02-19T15:45:49.679Z","11.0.0-canary.3201cae47.0":"2021-02-19T23:00:48.970Z","11.0.0-canary.f1b1fd5d3.0":"2021-02-22T19:49:37.298Z","11.0.0-canary.7899e0fe0.0":"2021-02-22T22:46:02.776Z","11.0.0-canary.f19c86d13.0":"2021-02-22T23:30:46.168Z","11.0.0-canary.60e892d79.0":"2021-02-23T01:14:03.266Z","11.0.0-canary.c96bfa495.0":"2021-02-23T19:33:01.767Z","11.0.0-canary.fa9b59f67.0":"2021-02-23T19:34:22.080Z","11.0.0-canary.869e3497c.0":"2021-02-23T19:34:41.975Z","11.0.0-canary.8ecd7c9a9.0":"2021-02-23T19:50:46.275Z","11.0.0-canary.9c85d505b.0":"2021-02-23T22:15:43.842Z","11.0.0-canary.9f2e85fb8.0":"2021-02-24T01:48:03.046Z","11.0.0-canary.19c4f29ef.0":"2021-02-25T19:22:31.105Z","11.0.0-canary.63df6e9bf.0":"2021-02-25T19:37:13.956Z","11.0.0-canary.981ad970a.0":"2021-02-26T00:07:29.813Z","11.0.0-canary.f9c9e39d6.0":"2021-02-26T18:38:58.488Z","11.0.0-canary.c97d7d881.0":"2021-03-01T20:53:18.464Z","11.0.0-canary.bf670dad7.0":"2021-03-03T00:21:06.112Z","11.0.0-canary.c7d98fcde.0":"2021-03-03T20:31:56.385Z","11.0.0-canary.4fef8bc1e.0":"2021-03-03T23:24:18.288Z","11.0.0-canary.afae3a3ec.0":"2021-03-03T23:42:19.573Z","11.0.0-canary.0a0b10f22.0":"2021-03-04T00:01:07.977Z","11.0.0-canary.6f678a91a.0":"2021-03-04T18:40:07.934Z","11.0.0-canary.f5f1b613c.0":"2021-03-04T20:49:35.018Z","11.0.0-canary.606e767ef.0":"2021-03-04T21:45:42.637Z","11.0.0-canary.f77a4dd1a.0":"2021-03-06T04:40:00.578Z","11.0.0-canary.2d6ba2c23.0":"2021-03-08T22:44:14.949Z","11.0.0-canary.7522dcaca.0":"2021-03-09T00:27:36.962Z","11.0.0-canary.5c0ab7401.0":"2021-03-09T22:52:26.900Z","11.0.0-canary.59010b6dc.0":"2021-03-10T16:57:18.317Z","11.0.0-canary.9e52f5544.0":"2021-03-10T23:25:00.871Z","11.0.0-canary.a678806f5.0":"2021-03-11T01:49:58.512Z","11.0.0-canary.b2d22df5b.0":"2021-03-11T17:02:49.822Z","11.0.0-canary.81911b707.0":"2021-03-11T18:23:19.395Z","11.0.0-canary.9eeb35c38.0":"2021-03-11T19:36:53.500Z","11.0.0-canary.12be3e95a.0":"2021-03-11T20:01:30.444Z","11.0.0-canary.e683bdf4a.0":"2021-03-11T20:08:48.511Z","11.0.0-canary.a07b6d486.0":"2021-03-11T20:33:12.425Z","11.0.0-canary.1e0653477.0":"2021-03-11T20:40:32.599Z","11.0.0-canary.148e8cfcc.0":"2021-03-11T22:44:15.224Z","11.0.0-canary.73a227194.0":"2021-03-12T00:24:02.732Z","11.0.0-canary.f8579b7ea.0":"2021-03-13T02:03:04.120Z","11.0.0-canary.d2a39d300.0":"2021-03-16T00:34:57.554Z","11.0.0-canary.7cf67823e.0":"2021-03-16T18:20:08.682Z","11.0.0-canary.67d780c79.0":"2021-03-16T19:47:47.654Z","11.0.0-canary.0f358ddae.0":"2021-03-16T22:12:20.494Z","11.0.0-canary.67eb0df80.0":"2021-03-16T22:39:29.665Z","11.0.0-canary.941ca3b3c.0":"2021-03-16T22:41:21.350Z","11.0.0-canary.3344d12ad.0":"2021-03-17T10:01:44.805Z","11.0.0-canary.6072ed604.0":"2021-03-17T22:59:28.370Z","11.0.0-canary.d3a6862af.0":"2021-03-18T16:19:57.005Z","11.0.0-canary.40dd242d5.0":"2021-03-18T21:17:16.037Z","11.0.0-canary.ec8f8465f.0":"2021-03-18T21:44:12.432Z","11.0.0-canary.da38969ec.0":"2021-03-18T22:17:48.296Z","11.0.0-canary.f5246264d.0":"2021-03-19T00:37:56.088Z","11.0.0-canary.03d34bbad.0":"2021-03-19T00:51:10.533Z","11.0.0-canary.cbc57c600.0":"2021-03-19T00:59:41.150Z","11.0.0-canary.d6c5bcf37.0":"2021-03-19T01:12:17.887Z","11.0.0-canary.fefc668d7.0":"2021-03-19T01:33:45.234Z","11.0.0-canary.faa7d3226.0":"2021-03-19T17:43:59.345Z","11.0.0-canary.c60449bc8.0":"2021-03-19T18:05:05.404Z","11.0.0-canary.5f0fc444a.0":"2021-03-19T18:37:39.987Z","11.0.0-canary.4567a750d.0":"2021-03-20T02:07:43.818Z","11.0.0-canary.0cde52f5a.0":"2021-03-23T00:02:47.026Z","11.0.0-canary.48f4b67fb.0":"2021-03-23T19:53:58.937Z","11.0.0-canary.0b8cff734.0":"2021-03-23T20:04:36.083Z","11.0.0-canary.8943b991f.0":"2021-03-23T20:29:36.486Z","11.0.0-canary.3955d8d3d.0":"2021-03-24T19:16:18.426Z","11.0.0-canary.23ea2d85e.0":"2021-03-25T17:32:40.104Z","11.0.0-canary.e3ec22f45.0":"2021-03-25T17:56:32.167Z","11.0.0-canary.4ceb42220.0":"2021-03-26T07:57:25.353Z","11.0.0-canary.dc9c84023.0":"2021-03-30T17:48:38.289Z","11.0.0-canary.56fc26962.0":"2021-03-31T00:20:51.235Z","11.0.0-canary.bc318250e.0":"2021-03-31T01:33:41.052Z","11.0.0-canary.edaee19aa.0":"2021-03-31T02:11:36.475Z","11.0.0-canary.24609b822.0":"2021-03-31T20:57:07.374Z","11.0.0-canary.b6cddc2b7.0":"2021-04-01T15:05:13.158Z","11.0.0-canary.94937c78c.0":"2021-04-01T21:00:52.458Z","11.0.0-canary.e7202cb57.0":"2021-04-01T22:47:20.689Z","11.0.0-canary.1f636b205.0":"2021-04-02T22:23:54.926Z","11.0.0-canary.94f50b260.0":"2021-04-05T15:05:08.868Z","11.0.0-canary.a4009b80a.0":"2021-04-05T22:00:34.876Z","11.0.0-canary.15604bd0d.0":"2021-04-05T22:42:19.651Z","11.0.0-canary.76da7876c.0":"2021-04-07T01:44:44.515Z","11.0.0-canary.6bcb6cbd2.0":"2021-04-07T18:53:53.838Z","11.0.0-canary.c91e8d141.0":"2021-04-07T18:57:49.596Z","11.0.0-canary.f77c50860.0":"2021-04-08T15:35:42.353Z","11.0.0-canary.367d88bdb.0":"2021-04-08T16:38:38.378Z","11.0.0-canary.0ec437d3b.0":"2021-04-08T19:35:24.684Z","11.0.0-canary.b2fa996a1.0":"2021-04-09T15:11:06.575Z","11.0.0-canary.24255c408.0":"2021-04-09T20:12:27.702Z","11.0.0-canary.7d6a4bb72.0":"2021-04-09T22:53:39.430Z","11.0.0-canary.352b295c1.0":"2021-04-12T18:15:37.438Z","11.0.0-canary.ab99b8064.0":"2021-04-13T14:43:31.629Z","11.0.0-canary.8f0a11e32.0":"2021-04-14T20:03:03.009Z","11.0.0-canary.f5c6db8fc.0":"2021-04-15T18:04:11.690Z","11.0.0-canary.3793a3143.0":"2021-04-15T18:31:21.567Z","11.0.0-canary.bc104bae7.0":"2021-04-15T19:46:11.636Z","12.0.0-canary.3f342c3f4.0":"2021-04-15T22:54:19.800Z","11.0.0":"2021-04-15T22:58:24.423Z","12.0.0-canary.2ebfc5374.0":"2021-04-16T20:45:05.097Z","12.0.0-canary.5631828e1.0":"2021-04-17T07:46:54.097Z","12.0.0-canary.bd685395b.0":"2021-04-19T18:41:23.279Z","12.0.0-canary.b52196498.0":"2021-04-19T19:57:53.974Z","12.0.0-canary.8ba3e298c.0":"2021-04-21T14:08:38.773Z","12.0.0-canary.c629eab71.0":"2021-04-21T19:57:16.964Z","12.0.0-canary.8ace3b810.0":"2021-04-21T20:37:53.805Z","12.0.0-canary.70beaf42d.0":"2021-04-21T20:49:30.768Z","12.0.0-canary.cad489689.0":"2021-04-22T16:49:36.723Z","12.0.0-canary.d928692b5.0":"2021-04-23T17:34:29.733Z","12.0.0-canary.8f68de8f3.0":"2021-04-23T18:13:16.914Z","12.0.0-canary.05753cf77.0":"2021-04-23T23:43:12.537Z","12.0.0-canary.ef43e6d96.0":"2021-04-23T23:49:34.595Z","12.0.0-canary.197f64fa2.0":"2021-04-26T17:09:54.479Z","12.0.0-canary.55ad2d7d8.0":"2021-04-27T01:19:56.273Z","12.0.0-canary.ec4ac5234.0":"2021-04-27T07:58:41.556Z","12.0.0-canary.b0579acdb.0":"2021-04-27T08:36:26.718Z","12.0.0-canary.81e2d4ff3.0":"2021-04-27T20:57:48.407Z","12.0.0-canary.c8edee52c.0":"2021-04-27T21:46:16.216Z","12.0.0-canary.f5b6110d6.0":"2021-04-27T22:07:36.429Z","12.0.0-canary.cee9b9e22.0":"2021-04-28T00:12:59.583Z","12.0.0-canary.96e83fca7.0":"2021-04-28T02:47:59.488Z","12.0.0-canary.4c497bd19.0":"2021-04-28T17:53:42.493Z","12.0.0-canary.105b15b96.0":"2021-04-28T21:44:52.996Z","12.0.0-canary.6e20259e3.0":"2021-04-28T21:49:20.855Z","12.0.0-canary.0f79a5d74.0":"2021-04-28T22:43:09.415Z","12.0.0-canary.84f3db9ed.0":"2021-04-29T14:18:05.689Z","12.0.0-canary.8fc29273c.0":"2021-04-29T21:23:52.386Z","12.0.0-canary.c50d20bab.0":"2021-04-29T23:02:08.463Z","12.0.0-canary.474836ad0.0":"2021-05-01T03:37:50.926Z","12.0.0-canary.f5ad92287.0":"2021-05-03T18:22:24.763Z","12.0.0-canary.af453daf8.0":"2021-05-03T18:53:35.047Z","12.0.0-canary.1f1918c24.0":"2021-05-03T19:22:41.583Z","12.0.0-canary.33148231f.0":"2021-05-03T19:38:56.730Z","12.0.0-canary.06b76fa74.0":"2021-05-03T19:45:49.210Z","12.0.0-canary.7c5000473.0":"2021-05-03T22:41:52.764Z","12.0.0-canary.de997644b.0":"2021-05-04T17:28:20.398Z","12.0.0-canary.d4d7f1cc2.0":"2021-05-04T17:55:08.831Z","12.0.0-canary.be999eb08.0":"2021-05-04T18:00:06.805Z","12.0.0-canary.eda1705fc.0":"2021-05-04T19:10:29.402Z","12.0.0-canary.718c90178.0":"2021-05-04T19:27:52.404Z","12.0.0-canary.0e3917299.0":"2021-05-04T19:30:33.072Z","12.0.0-canary.836b3c7db.0":"2021-05-04T20:34:03.149Z","12.0.0-canary.53d4e6d59.0":"2021-05-04T20:49:39.152Z","12.0.0-canary.18d147e27.0":"2021-05-04T20:58:14.490Z","12.0.0-canary.b9984794e.0":"2021-05-04T23:03:17.583Z","12.0.0-canary.b76f5fc9d.0":"2021-05-04T23:06:40.910Z","12.0.0-canary.055d4f10a.0":"2021-05-04T23:21:48.292Z","12.0.0-canary.5b6a46016.0":"2021-05-05T16:16:28.439Z","12.0.0-canary.33c9a737a.0":"2021-05-05T17:27:18.586Z","12.0.0-canary.9bc0effaf.0":"2021-05-05T21:00:12.777Z","12.0.0-canary.a1e0f2af5.0":"2021-05-05T21:41:05.306Z","12.0.0-canary.06930c96b.0":"2021-05-05T23:39:28.294Z","12.0.0-canary.03f525f9f.0":"2021-05-06T00:30:06.415Z","12.0.0-canary.e82ba2a26.0":"2021-05-06T15:56:33.073Z","12.0.0-canary.fc7c4e5ce.0":"2021-05-06T17:29:28.312Z","12.0.0-canary.65c04514d.0":"2021-05-06T18:43:39.238Z","12.0.0-canary.c97779ca6.0":"2021-05-06T21:43:12.333Z","12.0.0-canary.869d890d4.0":"2021-05-07T15:18:58.659Z","12.0.0-canary.ec22e1da9.0":"2021-05-10T18:23:39.528Z","12.0.0-nightly.7427449f0.0":"2021-05-10T18:45:03.775Z","12.0.0-canary.957cc3bf5.0":"2021-05-10T21:56:56.386Z","12.0.0-canary.88a33cd70.0":"2021-05-11T00:09:06.239Z","12.0.0-canary.d20dc6dba.0":"2021-05-11T00:24:52.925Z","12.0.0-canary.0ce2fdb02.0":"2021-05-11T00:58:45.951Z","12.0.0-canary.cb162da37.0":"2021-05-11T01:58:29.726Z","12.0.0-canary.573dc7ffd.0":"2021-05-11T02:17:26.348Z","12.0.0-canary.d5f6ad3fe.0":"2021-05-11T23:22:39.956Z","12.0.0-canary.25751d2ed.0":"2021-05-12T16:19:53.728Z","12.0.0-canary.a23ecb682.0":"2021-05-12T18:23:17.011Z","12.0.0-canary.33a954852.0":"2021-05-13T15:07:45.717Z","12.0.0-canary.a4484849b.0":"2021-05-13T15:31:06.650Z","12.0.0-canary.b4c3f513e.0":"2021-05-13T16:08:08.765Z","12.0.0-canary.1a8d06483.0":"2021-05-13T16:13:46.502Z","12.0.0-canary.8e6081836.0":"2021-05-14T21:40:43.102Z","12.0.0-canary.a2b0f4cee.0":"2021-05-14T21:53:56.122Z","12.0.0-canary.e8e39ad19.0":"2021-05-18T20:13:14.593Z","12.0.0-canary.4bb5eea2b.0":"2021-05-19T15:28:22.802Z","12.0.0-canary.ccce99cd6.0":"2021-05-20T00:56:54.787Z","12.0.0-canary.14767a8db.0":"2021-05-20T20:51:05.180Z","12.0.0-canary.22c6dcff9.0":"2021-05-24T15:18:51.877Z","12.0.0-canary.fadab3372.0":"2021-05-24T16:05:51.927Z","12.0.0-canary.caa73aeee.0":"2021-05-25T14:14:30.807Z","12.0.0-canary.ec31ae1ed.0":"2021-05-25T20:35:31.119Z","12.0.0-canary.8530d3514.0":"2021-05-27T16:04:58.706Z","12.0.0-canary.00b5899dc.0":"2021-06-01T22:45:41.423Z","12.0.0-canary.f1525ea3e.0":"2021-06-03T13:54:30.507Z","12.0.0-canary.464a00286.0":"2021-06-03T14:46:15.731Z","12.0.0-canary.474de7878.0":"2021-06-03T15:14:21.109Z","12.0.0-canary.b87ebf74d.0":"2021-06-03T17:46:25.435Z","12.0.0-canary.2daa49b35.0":"2021-06-04T16:14:13.909Z","12.0.0-canary.08db3d737.0":"2021-06-04T19:41:46.987Z","12.0.0-canary.5823407a7.0":"2021-06-08T00:48:25.874Z","12.0.0-canary.23b0c5e22.0":"2021-06-08T16:22:15.647Z","12.0.0-canary.2952c6a76.0":"2021-06-08T17:40:53.835Z","12.0.0-canary.f12425f88.0":"2021-06-10T01:06:10.147Z","12.0.0-canary.e543628c3.0":"2021-06-10T01:07:15.194Z","12.0.0-canary.e0c346286.0":"2021-06-10T16:35:56.616Z","12.0.0-canary.f43af5633.0":"2021-06-10T20:35:52.334Z","12.0.0-canary.8415ae585.0":"2021-06-11T16:05:54.211Z","12.0.0-canary.598fcccc8.0":"2021-06-11T21:46:29.560Z","12.0.0-canary.5d0605188.0":"2021-06-14T17:39:16.208Z","12.0.0-canary.f147a2271.0":"2021-06-14T19:18:11.189Z","12.0.0-canary.33579e00b.0":"2021-06-15T00:22:04.532Z","12.0.0-canary.a6909c0e6.0":"2021-06-15T18:30:11.450Z","12.0.0-canary.c18b5925b.0":"2021-06-15T21:03:42.863Z","12.0.0-canary.271fff902.0":"2021-06-15T22:51:09.224Z","12.0.0-canary.7ea2e830d.0":"2021-06-15T22:52:37.407Z","12.0.0-canary.d96f0a1e0.0":"2021-06-16T21:06:19.890Z","12.0.0-canary.a6183801a.0":"2021-06-16T22:05:31.964Z","12.0.0-canary.940550232.0":"2021-06-17T19:40:17.763Z","12.0.0-canary.f705e8048.0":"2021-06-18T15:24:31.468Z","12.0.0-canary.08d791f37.0":"2021-06-18T21:11:47.740Z","12.0.0-canary.e38d7440f.0":"2021-06-21T17:40:31.255Z","12.0.0-canary.75900a5a9.0":"2021-06-21T18:37:01.350Z","12.0.0-canary.33e6f50e9.0":"2021-06-23T00:12:07.840Z","12.0.0-canary.8c685301d.0":"2021-06-23T18:24:40.890Z","12.0.0-canary.8c7d994ae.0":"2021-06-23T19:27:28.032Z","12.0.0-canary.4ccd39bdd.0":"2021-06-24T16:14:58.419Z","12.0.0-canary.17553e9f8.0":"2021-06-28T22:52:36.183Z","12.0.0-canary.4c80072fd.0":"2021-06-29T18:40:56.365Z","12.0.0-canary.796811db7.0":"2021-07-01T00:03:28.768Z","12.0.0-canary.70e1efdca.0":"2021-07-01T17:06:37.494Z","12.0.0-canary.435866d32.0":"2021-07-02T18:21:20.642Z","12.0.0-canary.d0f9f3f2e.0":"2021-07-03T00:00:07.044Z","12.0.0-canary.adeac0549.0":"2021-07-08T15:09:20.671Z","12.0.0-canary.068fd5028.0":"2021-07-08T19:03:42.847Z","12.0.0-canary.5dfec7a14.0":"2021-07-12T20:04:17.726Z","12.0.0-canary.07a73750c.0":"2021-07-12T20:25:33.016Z","12.0.0-canary.3e4c6dca1.0":"2021-07-13T01:51:25.010Z","12.0.0-canary.ea77795b1.0":"2021-07-13T15:49:26.757Z","12.0.0-canary.15a179fad.0":"2021-07-13T18:09:29.964Z","12.0.0-canary.c73142a1b.0":"2021-07-13T18:44:19.060Z","12.0.0-canary.d923db73a.0":"2021-07-13T20:54:03.025Z","12.0.0-canary.22d29cbb4.0":"2021-07-13T22:50:36.003Z","12.0.0-canary.2749604bc.0":"2021-07-14T16:22:31.221Z","12.0.0-canary.e1703bed9.0":"2021-07-14T21:48:12.364Z","12.0.0-canary.de48eff0d.0":"2021-07-15T17:08:14.350Z","12.0.0-canary.4f060adc5.0":"2021-07-15T19:22:03.120Z","12.0.0-canary.bd25779b2.0":"2021-07-15T20:42:26.066Z","12.0.0-canary.9f68a932e.0":"2021-07-15T22:07:16.245Z","12.0.0-canary.4eecdeaf0.0":"2021-07-16T14:58:03.195Z","12.0.0-canary.7239684d4.0":"2021-07-16T15:59:15.129Z","12.0.0-canary.d5f1f7c72.0":"2021-07-16T16:14:08.951Z","12.0.0-canary.4d95812f9.0":"2021-07-16T19:43:16.214Z","12.0.0-canary.38d1846cc.0":"2021-07-19T18:42:07.609Z","12.0.0-canary.3f691eccf.0":"2021-07-20T16:08:53.045Z","12.0.0-canary.ebb5c73bb.0":"2021-07-20T16:56:55.991Z","12.0.0-nightly.778a0e8a.0":"2021-07-20T21:05:35.307Z","12.0.0-canary.791311bba.0":"2021-07-20T22:07:40.553Z","12.0.0-canary.85e9a6ac3.0":"2021-07-21T15:36:03.219Z","12.0.0-canary.6b0442278.0":"2021-07-21T18:49:59.201Z","12.0.0-canary.5f00e454a.0":"2021-07-22T17:06:31.688Z","12.0.0-canary.90e08fc6b.0":"2021-07-22T23:38:26.592Z","12.0.0-canary.cf5b9eb86.0":"2021-07-23T18:12:21.593Z","12.0.0-canary.3f36ac75c.0":"2021-07-23T18:32:21.611Z","12.0.0-canary.ea1e1b850.0":"2021-07-24T20:55:54.955Z","12.0.0-canary.22f390c43.0":"2021-07-27T19:00:02.138Z","12.0.0":"2021-07-27T19:49:57.541Z","13.0.0-canary.ae85f7eba.0":"2021-07-27T19:51:38.606Z","13.0.0-canary.5981207f7.0":"2021-07-27T23:18:18.480Z","13.0.0-canary.83bdd0222.0":"2021-07-28T17:25:57.663Z","13.0.0-canary.28656298a.0":"2021-07-29T18:13:12.230Z","13.0.0-canary.9e797daaf.0":"2021-07-29T18:35:28.162Z","13.0.0-canary.adb9f1ad8.0":"2021-07-30T19:05:09.800Z","13.0.0-canary.cc5377458.0":"2021-07-30T21:33:31.556Z","13.0.0-canary.a395972cf.0":"2021-08-03T21:23:28.924Z","13.0.0-canary.7c96e6b98.0":"2021-08-03T22:14:01.907Z","13.0.0-canary.a80c8b2c2.0":"2021-08-04T23:59:54.840Z","13.0.0-canary.3dd611091.0":"2021-08-05T03:56:31.660Z","13.0.0-canary.5dee37ff6.0":"2021-08-05T17:42:24.884Z","13.0.0-canary.bf405d22a.0":"2021-08-05T20:18:15.633Z","13.0.0-canary.b47dd37a6.0":"2021-08-05T20:50:03.193Z","13.0.0-canary.6c82b965b.0":"2021-08-06T16:15:00.614Z","13.0.0-canary.4ca11fe76.0":"2021-08-06T17:07:33.215Z","13.0.0-canary.510cf90f2.0":"2021-08-09T17:17:26.876Z","13.0.0-canary.17580ebf7.0":"2021-08-09T18:17:39.733Z","13.0.0-canary.7249a3060.0":"2021-08-09T18:21:40.137Z","13.0.0-canary.4c405863b.0":"2021-08-10T17:41:01.429Z","13.0.0-canary.f4241a42a.0":"2021-08-11T16:59:41.422Z","13.0.0-canary.0ad12ed3c.0":"2021-08-11T21:28:55.896Z","13.0.0-canary.077dcfcfe.0":"2021-08-12T17:55:29.007Z","13.0.0-canary.e3346766f.0":"2021-08-13T19:45:26.536Z","13.0.0-canary.2fb068fb0.0":"2021-08-13T19:48:38.406Z","13.0.0-canary.fb76c5069.0":"2021-08-16T20:08:17.503Z","13.0.0-canary.457d89aad.0":"2021-08-17T15:22:00.982Z","13.0.0-canary.0de2f2edc.0":"2021-08-17T20:54:23.963Z","13.0.0-canary.1f9259b9d.0":"2021-08-17T22:14:21.289Z","13.0.0-canary.3b9290351.0":"2021-08-18T05:23:45.555Z","13.0.0-canary.43d2eed2a.0":"2021-08-18T16:02:23.886Z","13.0.0-canary.0a9069300.0":"2021-08-19T16:17:47.466Z","13.0.0-canary.7da413ed8.0":"2021-08-20T15:48:52.166Z","13.0.0-canary.e1e69fd8e.0":"2021-08-20T19:32:26.639Z","13.0.0-canary.f5afc16df.0":"2021-08-20T20:26:48.136Z","13.0.0-canary.28d0d75bb.0":"2021-08-20T22:20:31.646Z","13.0.0-canary.21ece5360.0":"2021-08-20T23:44:25.216Z","13.0.0-canary.8de07c02a.0":"2021-08-23T15:26:50.783Z","13.0.0-canary.65aa63b0c.0":"2021-08-24T15:28:45.365Z","13.0.0-canary.15981e9d9.0":"2021-08-24T16:17:17.769Z","13.0.0-canary.fa7520f62.0":"2021-08-24T22:28:02.702Z","13.0.0-canary.ce25bc3ec.0":"2021-08-24T22:48:41.455Z","13.0.0-canary.12f5622e1.0":"2021-08-24T23:18:19.262Z","13.0.0-canary.d97f8f133.0":"2021-08-25T18:33:25.397Z","13.0.0-canary.d86fb6fac.0":"2021-08-25T18:53:57.583Z","13.0.0-canary.e8554dbbf.0":"2021-08-25T21:59:37.170Z","13.0.0-canary.877e3fb0d.0":"2021-08-26T15:38:15.268Z","13.0.0-canary.6236f3576.0":"2021-08-26T16:05:57.918Z","13.0.0-canary.1d19158a1.0":"2021-08-26T17:09:10.310Z","13.0.0-canary.6adc9e83f.0":"2021-08-30T22:44:30.700Z","13.0.0-canary.d082790f0.0":"2021-09-01T21:54:32.001Z","13.0.0-canary.e2c4f0196.0":"2021-09-02T02:11:32.973Z","13.0.0-canary.611db508e.0":"2021-09-02T03:15:14.544Z","13.0.0-canary.d4706933f.0":"2021-09-02T15:37:55.929Z","13.0.0-canary.c16fe03ce.0":"2021-09-02T17:44:58.114Z","13.0.0-canary.9203a958a.0":"2021-09-02T23:46:26.335Z","13.0.0-canary.fddd5ae93.0":"2021-09-03T07:29:55.837Z","13.0.0-canary.117599a8b.0":"2021-09-03T07:31:33.183Z","13.0.0-canary.e4180d07b.0":"2021-09-03T07:32:02.231Z","13.0.0-canary.42d175efc.0":"2021-09-03T15:42:53.288Z","13.0.0-canary.72464476c.0":"2021-09-07T15:34:15.226Z","13.0.0-canary.37d4db866.0":"2021-09-09T14:33:29.480Z","13.0.0-canary.6df682e74.0":"2021-09-09T15:43:13.722Z","13.0.0-canary.b49359c35.0":"2021-09-09T17:35:30.535Z","13.0.0-canary.470bd34e8.0":"2021-09-09T18:01:07.829Z","13.0.0-canary.d48a01771.0":"2021-09-09T18:10:23.533Z","13.0.0-canary.13db34b34.0":"2021-09-09T18:25:22.360Z","13.0.0-canary.864798678.0":"2021-09-09T18:36:46.368Z","13.0.0-canary.d04bda3fb.0":"2021-09-10T15:21:34.138Z","13.0.0-canary.5533f73d3.0":"2021-09-13T23:03:38.383Z","13.0.0-canary.08398f880.0":"2021-09-13T23:34:20.027Z","13.0.0-canary.818f4ee93.0":"2021-09-15T17:50:16.706Z","13.0.0-canary.8355e14dc.0":"2021-09-15T19:12:18.165Z","13.0.0-canary.d4e16a6c4.0":"2021-09-15T21:59:02.684Z","13.0.0-canary.65125b3a6.0":"2021-09-16T21:17:20.008Z","13.0.0-canary.80a583365.0":"2021-09-17T20:35:37.829Z","13.0.0-canary.83900936a.0":"2021-09-17T23:24:10.807Z","13.0.0-canary.860ad06a1.0":"2021-09-17T23:35:50.084Z","13.0.0-canary.3b8d4429e.0":"2021-09-20T17:47:25.997Z","13.0.0-canary.2da3606b9.0":"2021-09-20T19:37:33.632Z","13.0.0-canary.e8c598d1e.0":"2021-09-20T21:11:44.013Z","13.0.0-canary.1340ee9f7.0":"2021-09-22T17:57:44.032Z","13.0.0-canary.65084baff.0":"2021-09-23T21:25:20.662Z","13.0.0-canary.c79aa0cdd.0":"2021-09-24T13:41:44.093Z","13.0.0":"2021-09-24T19:45:41.319Z","14.0.0-canary.198431fcd.0":"2021-09-24T19:46:26.076Z","14.0.0-canary.9a02b6ef8.0":"2021-09-25T13:10:52.170Z","14.0.0-canary.758ce31d9.0":"2021-09-27T17:29:05.863Z","14.0.0-canary.86b50ef74.0":"2021-09-28T17:42:49.382Z","14.0.0-canary.b2fe3528b.0":"2021-09-29T22:56:44.726Z","14.0.0-canary.586e740dd.0":"2021-09-30T16:31:09.131Z","14.0.0-canary.2ac92d766.0":"2021-10-05T19:28:22.616Z","14.0.0-canary.353ca7e9f.0":"2021-10-08T18:46:46.681Z","14.0.0-canary.c78ff0429.0":"2021-10-11T17:21:53.769Z","14.0.0-canary.261f2db59.0":"2021-10-20T16:59:31.942Z","14.0.0-canary.9803d2dc1.0":"2021-10-20T19:21:41.431Z","14.0.0-canary.348665978.0":"2021-10-21T14:50:29.587Z","14.0.0-canary.b2b979a8a.0":"2021-10-28T15:12:05.591Z","14.0.0-canary.1af7c1c4a.0":"2021-10-28T17:52:39.940Z","14.0.0-canary.4afd353cd.0":"2021-10-29T15:01:24.123Z","14.0.0-canary.a986df922.0":"2021-10-29T21:34:53.153Z","14.0.0-canary.c3cdff07b.0":"2021-11-09T19:05:44.907Z","14.0.0-canary.468392606.0":"2021-11-11T19:39:58.223Z","14.0.0-canary.828f9803b.0":"2021-11-11T19:50:41.449Z","14.0.0-canary.8795cba87.0":"2021-11-11T19:56:38.279Z","14.0.0-canary.cd7f8cace.0":"2021-11-11T19:58:18.740Z","14.0.0-canary.207230eb8.0":"2021-11-11T22:24:16.282Z","14.0.0-canary.991fb99f7.0":"2021-11-11T22:36:18.099Z","14.0.0-canary.15db4f164.0":"2021-11-12T17:29:39.170Z","14.0.0-canary.8fcad5a3c.0":"2021-11-12T19:13:40.013Z","14.0.0-canary.f81fb1d23.0":"2021-11-12T22:40:07.782Z","14.0.0-canary.783f6fd5a.0":"2021-11-16T05:49:53.691Z","14.0.0-canary.d57ec74c7.0":"2021-11-16T16:16:19.594Z","14.0.0-canary.554c71829.0":"2021-11-16T16:19:10.596Z","14.0.0-canary.3ef470efe.0":"2021-11-16T16:24:01.392Z","14.0.0-canary.61a28b2b5.0":"2021-11-17T18:59:06.720Z","14.0.0-canary.fae6c652d.0":"2021-11-18T16:24:53.325Z","14.0.0-canary.978a3b5bb.0":"2021-11-19T19:39:07.513Z","14.0.0-canary.e6f43cf44.0":"2021-11-22T17:35:00.944Z","14.0.0-canary.39cf14bc3.0":"2021-11-22T23:04:23.405Z","14.0.0-canary.93134d453.0":"2021-11-23T15:38:57.369Z","14.0.0-canary.bbd11268f.0":"2021-11-23T22:32:09.140Z","14.0.0-canary.3db9c4d3d.0":"2021-11-24T15:37:17.903Z","14.0.0-canary.78305b6d5.0":"2021-11-24T19:50:32.512Z","14.0.0-canary.43d08ba77.0":"2021-11-30T22:55:56.863Z","14.0.0-canary.17a072535.0":"2021-12-02T18:05:07.957Z","14.0.0-canary.5d809696c.0":"2021-12-08T17:44:16.021Z","14.0.0-canary.b6510c8c1.0":"2021-12-08T18:06:19.923Z","14.0.0-canary.f460e23da.0":"2021-12-10T15:25:15.477Z","14.0.0-canary.7d8ea4624.0":"2021-12-10T19:29:07.551Z","14.0.0-canary.8fffcb5dd.0":"2021-12-14T08:54:55.036Z","14.0.0-canary.21e1cb9be.0":"2021-12-14T19:39:42.978Z","14.0.0-canary.ba78e8724.0":"2021-12-15T22:12:52.386Z","14.0.0-canary.e3e073c00.0":"2021-12-20T21:09:35.973Z","14.0.0-canary.3366a71d7.0":"2021-12-22T12:32:20.281Z","14.0.0-canary.c047f7c19.0":"2022-01-05T16:45:44.425Z","14.0.0-canary.05db65ec0.0":"2022-01-06T17:14:08.454Z","14.0.0-canary.6ca8b8f85.0":"2022-01-07T16:01:03.009Z","14.0.0-canary.173ee7a7a.0":"2022-01-10T16:54:07.031Z","14.0.0-canary.b704e4dfc.0":"2022-01-10T18:32:56.524Z","14.0.0-canary.c14e977ee.0":"2022-01-11T15:49:29.863Z","14.0.0-canary.b094eaa4e.0":"2022-01-14T18:42:13.518Z","14.0.0-canary.390220e42.0":"2022-01-17T16:46:03.393Z","14.0.0-canary.4b5391f8b.0":"2022-01-19T23:52:40.189Z","14.0.0-canary.cef6bc623.0":"2022-01-20T00:17:22.832Z","14.0.0-canary.0379179c4.0":"2022-01-20T18:54:17.626Z","14.0.0-canary.e62f3dabf.0":"2022-01-21T23:03:15.222Z","14.0.0-canary.3e20c1de8.0":"2022-01-25T15:31:46.714Z","14.0.0-canary.9f9d928b2.0":"2022-01-27T18:13:07.377Z","14.0.0-canary.a2bcb065c.0":"2022-01-28T19:36:57.943Z","14.0.0-canary.4e66fb2e1.0":"2022-01-28T19:41:21.304Z","14.0.0-canary.9736ddce9.0":"2022-01-29T09:49:48.007Z","14.0.0-canary.cc4ed13cc.0":"2022-02-04T18:22:37.911Z","14.0.0-canary.dcba26fe1.0":"2022-02-04T21:57:04.826Z","14.0.0-canary.ec54d9046.0":"2022-02-07T15:46:30.692Z","14.0.0-canary.ea9b5b463.0":"2022-02-09T17:53:35.478Z","14.0.0-canary.96ea061c1.0":"2022-02-09T18:59:07.175Z","14.0.0-canary.e00181e59.0":"2022-02-10T20:06:25.649Z","14.0.0-canary.037285f9b.0":"2022-02-11T18:29:24.202Z","14.0.0-canary.1aaa68dda.0":"2022-02-16T19:48:53.972Z","14.0.0-canary.ab4aba1af.0":"2022-02-17T18:16:14.646Z","14.0.0-canary.e58552c6e.0":"2022-02-18T18:04:00.422Z","14.0.0-canary.868793776.0":"2022-02-22T19:35:16.324Z","14.0.0-canary.fdc37a445.0":"2022-02-28T18:46:04.391Z","14.0.0-canary.43c7d87dc.0":"2022-03-01T15:33:05.800Z","14.0.0-canary.23043acd0.0":"2022-03-02T20:27:20.687Z","14.0.0-canary.6505e61c5.0":"2022-03-03T20:00:20.358Z","14.0.0-canary.16c166154.0":"2022-03-08T23:22:16.342Z","14.0.0-canary.bdf1d3771.0":"2022-03-14T14:28:22.445Z","14.0.0-canary.cf4292778.0":"2022-03-15T00:29:30.580Z","14.0.0-canary.bbd43e0e0.0":"2022-03-16T20:49:58.799Z","14.0.0-canary.1b6afad86.0":"2022-03-16T21:03:30.015Z","14.0.0-canary.bdf9d4af9.0":"2022-03-16T21:17:45.988Z","14.0.0-canary.32b391398.0":"2022-03-17T17:59:05.707Z","14.0.0-canary.ae8a6a3a3.0":"2022-03-18T16:39:07.725Z","14.0.0-canary.cbd9358a6.0":"2022-03-18T22:51:54.931Z","14.0.0-canary.dcfe49c98.0":"2022-03-21T18:43:57.996Z","14.0.0-canary.f31a833fa.0":"2022-03-23T00:50:38.650Z","14.0.0-canary.4b92e210a.0":"2022-03-24T20:18:28.046Z","14.0.0-canary.a657abb61.0":"2022-03-24T20:39:50.148Z","14.0.0-canary.443f63f50.0":"2022-03-25T23:04:29.164Z","14.0.0-canary.eb382f318.0":"2022-03-29T17:34:49.402Z","14.0.0-canary.344d52823.0":"2022-03-29T18:43:10.345Z","14.0.0-canary.4e372fb49.0":"2022-04-07T20:32:49.244Z","14.0.0-canary.3e30054fb.0":"2022-04-13T22:14:08.976Z","14.0.0-canary.8c4da223a.0":"2022-04-19T15:24:05.153Z","14.0.0-canary.7de8965cc.0":"2022-04-19T20:23:17.235Z","14.0.0-canary.641ed0851.0":"2022-04-20T16:05:35.825Z","14.0.0-canary.e88f83024.0":"2022-04-20T17:47:34.502Z","14.0.0-canary.7321d6254.0":"2022-04-20T20:11:07.638Z","14.0.0-canary.3ab956515.0":"2022-04-25T15:01:46.509Z","14.0.0-canary.53b3cad2f.0":"2022-04-27T12:45:14.375Z","14.0.0":"2022-04-28T16:55:46.100Z","15.0.0-canary.432c815e5.0":"2022-04-28T16:56:53.662Z","15.0.0-canary.a0f01f669.0":"2022-05-06T20:14:33.587Z","15.0.0-canary.276cb39a4.0":"2022-05-06T21:31:23.564Z","15.0.0-canary.4fe98ed70.0":"2022-05-06T21:55:56.204Z","15.0.0-canary.58b130a3d.0":"2022-05-06T21:58:16.047Z","15.0.0-canary.ae278a2fe.0":"2022-05-09T15:24:39.392Z","15.0.0-canary.bebf5bfdf.0":"2022-05-11T02:40:13.383Z","15.0.0-canary.e6072cd6a.0":"2022-05-11T20:18:20.802Z","15.0.0-canary.5b40eb988.0":"2022-05-12T02:44:07.324Z","15.0.0-canary.6a61d62f6.0":"2022-05-12T20:26:44.780Z","15.0.0-canary.05930a453.0":"2022-05-13T18:47:22.832Z","15.0.0-canary.c0a11ef0d.0":"2022-05-18T22:00:56.200Z","15.0.0-canary.2f9b268c0.0":"2022-05-20T19:32:32.369Z","15.0.0-canary.7741345b8.0":"2022-05-20T20:02:40.030Z","15.0.0-canary.f807e793f.0":"2022-05-20T22:21:43.804Z","15.0.0-canary.9f53d4a8a.0":"2022-05-23T14:57:34.314Z","15.0.0-canary.77cf00e37.0":"2022-05-31T17:39:42.940Z","15.0.0-canary.3c7b844c2.0":"2022-06-07T22:20:47.875Z","15.0.0-canary.df47894db.0":"2022-06-13T17:08:32.116Z","15.0.0-canary.b18a873dc.0":"2022-06-14T06:29:45.914Z","15.0.0-canary.ba9c29637.0":"2022-06-14T18:57:24.359Z","15.0.0-canary.9bfd12f01.0":"2022-06-22T19:22:33.312Z","15.0.0-canary.764de225d.0":"2022-06-29T16:27:03.859Z","15.0.0-canary.31e517cea.0":"2022-07-01T18:28:24.247Z","15.0.0-canary.9ea4e8e9c.0":"2022-07-01T22:54:59.677Z","15.0.0-canary.cd5bafabb.0":"2022-07-06T17:54:24.146Z","15.0.0-canary.a02fe49d3.0":"2022-07-06T18:51:04.894Z","15.0.0-canary.826a3d8be.0":"2022-07-06T19:31:03.402Z","15.0.0-canary.ef276aa93.0":"2022-07-07T17:02:39.136Z","15.0.0-canary.59cf61d6b.0":"2022-07-07T17:31:25.397Z","15.0.0-canary.8647092f7.0":"2022-07-07T20:38:40.740Z","15.0.0-canary.02ecd4d85.0":"2022-07-11T16:39:16.679Z","15.0.0-canary.63d3a146e.0":"2022-07-12T11:37:03.692Z","15.0.0-canary.88db01990.0":"2022-07-12T11:40:03.171Z","15.0.0-canary.6432d8fd7.0":"2022-07-14T07:28:57.301Z","15.0.0-canary.085f9b25c.0":"2022-07-14T16:34:59.397Z","15.0.0-canary.39f9424b3.0":"2022-07-14T17:05:16.079Z","15.0.0-canary.ae9fce587.0":"2022-07-14T18:08:13.481Z","15.0.0-canary.1ebddc343.0":"2022-07-15T08:49:23.017Z","15.0.0-canary.c5018840c.0":"2022-07-18T09:43:13.181Z","15.0.0-canary.551b40d18.0":"2022-07-18T10:01:04.548Z","15.0.0-canary.cf9f12371.0":"2022-07-18T10:05:07.582Z","15.0.0-canary.2797ff8b6.0":"2022-07-19T00:24:12.790Z","15.0.0-canary.110fafa17.0":"2022-07-20T07:46:43.790Z","15.0.0-canary.386ef1d2f.0":"2022-07-20T18:19:50.533Z","15.0.0-canary.c3924efef.0":"2022-07-20T18:29:32.701Z","15.0.0-canary.cf5c5907c.0":"2022-07-20T21:21:55.050Z","15.0.0-canary.0617e2319.0":"2022-07-20T21:40:09.849Z","15.0.0-canary.a743b7967.0":"2022-07-20T21:57:12.801Z","15.0.0-canary.69fd619d0.0":"2022-07-20T22:09:19.626Z","15.0.0-canary.2a6ddc1cf.0":"2022-07-29T16:04:39.506Z","15.0.0-canary.86efd56f6.0":"2022-08-02T14:45:39.508Z","15.0.0-canary.ccfc24d19.0":"2022-08-03T18:13:36.613Z","15.0.0-canary.e4570146f.0":"2022-08-03T18:40:42.523Z","15.0.0-canary.6683a36cb.0":"2022-08-03T19:20:44.804Z","15.0.0-canary.10196647d.0":"2022-08-03T21:53:46.929Z","15.0.0-canary.b20d3d73c.0":"2022-08-04T22:42:57.593Z","15.0.0-canary.47c0c6b1e.0":"2022-08-09T15:20:29.003Z","15.0.0-canary.0e3dc8e38.0":"2022-08-11T18:45:59.349Z","15.0.0-canary.d5a11f1c8.0":"2022-08-30T23:01:20.009Z","15.0.0-canary.bac992a95.0":"2022-09-01T07:05:41.716Z","15.0.0-canary.d25f3404c.0":"2022-09-01T09:44:32.952Z","15.0.0-canary.920d8a79e.0":"2022-09-01T20:20:59.774Z","15.0.0-canary.c363f267b.0":"2022-09-01T21:18:18.446Z","15.0.0-canary.a4eb4937a.0":"2022-09-06T18:19:49.717Z","15.0.0-canary.4299717da.0":"2022-09-07T16:15:42.146Z","15.0.0-canary.fa7d8d44b.0":"2022-09-07T19:18:50.894Z","15.0.0-canary.a40e3c768.0":"2022-09-09T20:03:59.020Z","15.0.0-canary.18cdc9a00.0":"2022-09-12T21:02:58.315Z","15.0.0-canary.7ab3cd3c8.0":"2022-09-13T22:39:14.276Z","15.0.0-canary.2860d244d.0":"2022-09-16T22:54:52.662Z","15.0.0-canary.e8726533c.0":"2022-09-20T20:17:44.502Z","15.0.0-canary.00d8de0aa.0":"2022-09-21T15:20:11.411Z","15.0.0-canary.271aedc30.0":"2022-09-21T15:35:58.085Z","15.0.0-canary.9f17ff2cb.0":"2022-09-21T18:08:15.418Z","15.0.0-canary.d3344c16f.0":"2022-09-22T09:24:26.138Z","15.0.0-canary.94f20ccb8.0":"2022-09-22T20:47:45.123Z","15.0.0-canary.81e4cb7b2.0":"2022-09-23T15:08:09.051Z","15.0.0-canary.aa85f9413.0":"2022-09-26T17:56:24.613Z","15.0.0-canary.7134a7752.0":"2022-09-26T21:57:37.405Z","15.0.0-canary.70b8ac16e.0":"2022-09-27T22:44:52.441Z","15.0.0-canary.c20d74405.0":"2022-09-27T23:31:14.075Z","15.0.0-canary.f033fc8d1.0":"2022-09-27T23:57:18.423Z","15.0.0-canary.8d7ae912a.0":"2022-09-28T07:56:04.044Z","15.0.0-canary.db414b864.0":"2022-09-28T14:52:41.352Z","15.0.0-canary.28cc6791f.0":"2022-09-28T18:06:52.092Z","15.0.0-canary.a515a2d18.0":"2022-09-28T18:55:44.035Z","15.0.0-canary.ce9523167.0":"2022-09-29T20:31:08.690Z","15.0.0-canary.b2310f7dc.0":"2022-09-30T00:13:48.866Z","15.0.0-canary.a44241e54.0":"2022-09-30T08:21:05.148Z","15.0.0-canary.0ce81e115.0":"2022-09-30T18:18:08.877Z","15.0.0-canary.3cc30f6ad.0":"2022-10-04T17:19:15.754Z","15.0.0-canary.d9cf98e60.0":"2022-10-04T19:03:41.643Z","15.0.0-canary.d71935c8b.0":"2022-10-06T08:14:49.332Z","15.0.0-canary.49c56a25d.0":"2022-10-06T18:50:53.626Z","15.0.0-canary.07acddef3.0":"2022-10-07T21:37:22.961Z","15.0.0-canary.1c74eb2c0.0":"2022-10-07T21:55:11.712Z","15.0.0-canary.dadfb713e.0":"2022-10-08T05:05:36.470Z","15.0.0-canary.395f1ce61.0":"2022-10-08T05:07:38.921Z","15.0.0-canary.e741b5c82.0":"2022-10-10T17:37:51.196Z","15.0.0-canary.582f3cc1c.0":"2022-10-11T04:48:48.102Z","15.0.0-canary.b1a6e3e88.0":"2022-10-12T12:02:06.991Z","15.0.0-canary.c9b1a31e4.0":"2022-10-12T16:58:12.316Z","15.0.0-canary.13e9b0d1f.0":"2022-10-12T19:20:46.098Z","15.0.0-canary.1dc797e7f.0":"2022-10-14T09:41:13.044Z","15.0.0-canary.ed4009397.0":"2022-10-14T16:51:00.589Z","15.0.0-canary.95ef196bc.0":"2022-10-14T23:13:39.050Z","15.0.0-canary.13eea1b2d.0":"2022-10-17T03:51:18.278Z","15.0.0-canary.ef9b2babb.0":"2022-10-17T09:17:40.824Z","15.0.0-canary.cec7fb987.0":"2022-10-17T10:56:02.980Z","15.0.0-canary.4fff58b08.0":"2022-10-17T15:22:10.554Z","15.0.0-canary.587d8f871.0":"2022-10-17T15:56:52.164Z","15.0.0-canary.edf4b98d0.0":"2022-10-17T16:40:10.539Z","15.0.0-canary.024ac5f16.0":"2022-10-17T22:42:03.547Z","15.0.0-canary.c8bdf6144.0":"2022-10-18T18:23:07.751Z","15.0.0-canary.bacda4885.0":"2022-10-18T18:42:25.523Z","15.0.0-canary.92b2556cf.0":"2022-10-19T01:13:07.378Z","15.0.0-canary.cc804509a.0":"2022-10-19T01:16:54.726Z","15.0.0-canary.982bedae9.0":"2022-10-19T01:36:53.558Z","15.0.0-canary.ee40081f4.0":"2022-10-19T20:11:31.883Z","15.0.0-canary.98f1b54e2.0":"2022-10-20T22:56:26.523Z","15.0.0-canary.e74b7ba7e.0":"2022-10-21T17:05:32.257Z","15.0.0-canary.ab55c07d2.0":"2022-10-22T18:18:54.884Z","15.0.0-canary.fc539db34.0":"2022-10-24T18:58:53.383Z","15.0.0-canary.e340b04c5.0":"2022-10-25T23:44:46.204Z","15.0.0-canary.2c1a8f8fd.0":"2022-10-26T17:30:08.509Z","15.0.0-canary.ecfee946f.0":"2022-10-26T20:14:56.596Z","15.0.0-canary.73ca9dbb0.0":"2022-10-31T17:32:06.723Z","15.0.0-canary.357f2e5f1.0":"2022-10-31T18:49:00.648Z","15.0.0-canary.eb103d4b5.0":"2022-10-31T19:56:06.812Z","15.0.0-canary.af5f01223.0":"2022-11-01T18:36:36.662Z","15.0.0-canary.58733ef41.0":"2022-11-02T18:10:25.562Z","15.0.0-canary.909b48215.0":"2022-11-03T04:07:31.973Z","15.0.0-canary.7f17127d5.0":"2022-11-03T18:18:53.997Z","15.0.0-canary.da95e2a05.0":"2022-11-04T16:58:46.638Z","15.0.0-canary.4832e2750.0":"2022-11-04T20:56:43.822Z","15.0.0-canary.215506426.0":"2022-11-05T01:05:42.810Z","15.0.0-canary.4cf917476.0":"2022-11-05T18:03:47.978Z","15.0.0-canary.eef14bd32.0":"2022-11-06T17:24:18.413Z","15.0.0-canary.6faa29fe9.0":"2022-11-07T03:13:09.588Z","15.0.0-canary.9af09b967.0":"2022-11-07T18:27:28.242Z","15.0.0-canary.0f54fbb93.0":"2022-11-08T21:56:18.867Z","15.0.0-canary.a8d47f9fe.0":"2022-11-09T04:17:25.588Z","15.0.0-canary.66a1e75e6.0":"2022-11-09T09:35:17.455Z","15.0.0-canary.5e5c2afc0.0":"2022-11-09T11:52:58.377Z","15.0.0-canary.3e3f43359.0":"2022-11-09T20:02:34.156Z","15.0.0-canary.3f667fac6.0":"2022-11-09T22:05:44.328Z","15.0.0-canary.faa28c1c5.0":"2022-11-11T16:35:30.494Z","15.0.0-canary.a868c7866.0":"2022-11-11T16:36:14.419Z","15.0.0-canary.602fe8efa.0":"2022-11-11T17:11:31.484Z","15.0.0-canary.558c2be62.0":"2022-11-11T22:45:00.510Z","15.0.0-canary.b5c13a7a8.0":"2022-11-14T15:58:14.969Z","15.0.0-canary.a6e1c0702.0":"2022-11-14T17:26:46.836Z","15.0.0-canary.b6f8a06de.0":"2022-11-15T09:27:58.561Z","15.0.0-canary.0163f3ba5.0":"2022-11-15T18:01:47.777Z","15.0.0-canary.66c5cbb94.0":"2022-11-15T19:29:45.328Z","15.0.0-canary.b01136063.0":"2022-11-16T00:15:29.449Z","15.0.0-canary.01da0cabb.0":"2022-11-16T09:12:56.419Z","15.0.0-canary.4ac393164.0":"2022-11-16T16:15:04.661Z","15.0.0-canary.6048fb563.0":"2022-11-16T16:17:17.829Z","15.0.0-canary.3777b03cb.0":"2022-11-16T18:41:07.635Z","15.0.0-canary.f7f56fff7.0":"2022-11-16T19:55:39.551Z","15.0.0-canary.7c73f6134.0":"2022-11-16T19:59:27.536Z","15.0.0-canary.f1e037150.0":"2022-11-16T20:04:54.337Z","15.0.0-canary.40b18d043.0":"2022-11-16T22:58:33.889Z","15.0.0-canary.86bde5c06.0":"2022-11-16T23:08:38.558Z","15.0.0-canary.bb7751002.0":"2022-11-16T23:59:51.663Z","15.0.0-canary.63aca9af6.0":"2022-11-17T19:01:06.241Z","15.0.0-canary.56482dc2e.0":"2022-11-17T21:54:56.496Z","15.0.0-canary.953e689f3.0":"2022-11-17T22:04:23.626Z","15.0.0-canary.b5606a793.0":"2022-11-18T10:20:52.839Z","15.0.0-canary.8c5675942.0":"2022-11-18T15:15:53.611Z","15.0.0-canary.697fbdebd.0":"2022-11-18T17:00:24.997Z","15.0.0-canary.d58410453.0":"2022-11-18T19:24:47.882Z","15.0.0-canary.7971d6ad5.0":"2022-11-19T08:44:57.360Z","15.0.0-canary.a0ae73b0e.0":"2022-11-21T10:53:25.697Z","15.0.0-canary.96f472604.0":"2022-11-21T12:52:24.124Z","15.0.0-canary.18b8f31e1.0":"2022-11-21T16:02:07.673Z","15.0.0-canary.912f33ce4.0":"2022-11-21T17:53:44.026Z","15.0.0-canary.1e1b1c369.0":"2022-11-23T19:00:17.469Z","15.0.0-canary.a2ec49244.0":"2022-11-23T19:30:40.095Z","15.0.0-canary.a7458ba0b.0":"2022-11-23T20:16:08.945Z","15.0.0-canary.7c35e5036.0":"2022-11-24T08:39:12.678Z","15.0.0-canary.4356e05c5.0":"2022-11-24T09:56:27.995Z","15.0.0-canary.cb605f8af.0":"2022-11-24T10:15:18.987Z","15.0.0-canary.05fb07f9f.0":"2022-11-24T17:13:30.898Z","15.0.0-canary.a911b386b.0":"2022-11-28T16:47:04.194Z","15.0.0-canary.2aa8050b4.0":"2022-11-28T19:11:20.734Z","15.0.0-canary.323904a9f.0":"2022-11-29T15:33:53.074Z","15.0.0-canary.168a629a4.0":"2022-11-29T16:48:30.316Z","15.0.0-canary.65c411674.0":"2022-11-29T17:37:59.279Z","15.0.0-canary.a86d36fd2.0":"2022-11-30T02:13:55.606Z","15.0.0-canary.3a1f46c66.0":"2022-11-30T12:06:49.161Z","15.0.0-canary.32d8a9648.0":"2022-12-01T17:28:54.588Z","15.0.0-canary.03618ab70.0":"2022-12-01T20:54:13.639Z","15.0.0-canary.68aaed940.0":"2022-12-01T21:23:51.506Z","15.0.0-canary.f0a0bbc75.0":"2022-12-02T09:01:30.605Z","15.0.0-canary.dd99c8764.0":"2022-12-02T14:00:44.089Z","15.0.0-canary.fabdcca3a.0":"2022-12-02T15:06:38.849Z","15.0.0-canary.2d26722d2.0":"2022-12-02T16:26:19.272Z","15.0.0-canary.eaa0c3a86.0":"2022-12-02T17:42:21.289Z","15.0.0-canary.79a613bbd.0":"2022-12-06T14:25:27.602Z","15.0.0-canary.c871fe61e.0":"2022-12-07T07:51:41.278Z","15.0.0-canary.9eaee7936.0":"2022-12-07T20:02:41.442Z","15.0.0-canary.1d37bf601.0":"2022-12-07T20:41:04.735Z","15.0.0-canary.a5fe069d5.0":"2022-12-09T18:43:57.063Z","15.0.0-canary.ce8b5326f.0":"2022-12-09T23:30:32.588Z","15.0.0-canary.43f5323bc.0":"2022-12-12T16:46:16.717Z","15.0.0-canary.5490e32e7.0":"2022-12-12T17:01:58.097Z","15.0.0-canary.817002c29.0":"2022-12-13T21:53:47.243Z","15.0.0-canary.313a1326a.0":"2022-12-14T10:28:33.423Z","15.0.0-canary.a69c14e10.0":"2022-12-14T11:18:48.370Z","15.0.0-canary.f43e0ceb5.0":"2022-12-14T16:44:40.523Z","15.0.0-canary.34767110.0":"2022-12-14T17:20:43.439Z","15.0.0-canary.1f99f3c50.0":"2022-12-15T14:25:18.537Z","15.0.0-canary.cfd69490f.0":"2022-12-16T20:08:23.981Z","15.0.0-canary.94ad8d986.0":"2022-12-19T19:26:54.386Z","15.0.0-canary.604264203.0":"2022-12-21T21:40:39.300Z","15.0.0-canary.85bcff6af.0":"2022-12-22T10:24:57.647Z","15.0.0-canary.ece3e8d21.0":"2022-12-22T17:12:00.911Z","15.0.0-canary.278ad53d1.0":"2022-12-27T17:04:51.518Z","15.0.0-canary.a7d8389e1.0":"2022-12-27T19:03:36.091Z","15.0.0-canary.8175d5eff.0":"2022-12-28T01:51:21.526Z","15.0.0-canary.16abb41ed.0":"2022-12-28T19:38:13.775Z","15.0.0-canary.e21dcb86d.0":"2022-12-29T14:02:01.065Z","15.0.0-canary.20ab6f5a8.0":"2022-12-29T19:40:46.276Z","15.0.0-canary.b9806f623.0":"2022-12-29T23:05:40.012Z","15.0.0-canary.50c9f550e.0":"2023-01-03T15:47:32.024Z","15.0.0-canary.af490a848.0":"2023-01-03T15:56:53.180Z","15.0.0-canary.7cf487c98.0":"2023-01-03T17:38:33.628Z","15.0.0-canary.a52be2d5e.0":"2023-01-03T19:13:02.418Z","15.0.0-canary.e38ba17c5.0":"2023-01-03T22:32:23.405Z","15.0.0-canary.49041a6c3.0":"2023-01-04T15:17:31.500Z","15.0.0-canary.c492898c2.0":"2023-01-04T17:36:58.978Z","15.0.0-canary.d7a2277de.0":"2023-01-04T21:35:29.646Z","15.0.0-canary.fd95ca7ef.0":"2023-01-05T01:02:38.394Z","15.0.0-canary.1eb44faf9.0":"2023-01-05T09:09:09.774Z","15.0.0-canary.adcdb7db9.0":"2023-01-05T16:21:24.314Z","15.0.0-canary.067af7eff.0":"2023-01-06T23:15:58.272Z","15.0.0-canary.21d1196a7.0":"2023-01-09T10:42:58.656Z","15.0.0-canary.8d2d8d3c4.0":"2023-01-09T22:23:44.061Z","15.0.0-canary.fc6ee6c32.0":"2023-01-10T16:27:50.261Z","15.0.0-canary.73537ab0f.0":"2023-01-10T18:11:20.744Z","15.0.0-canary.684e33d25.0":"2023-01-10T19:18:22.314Z","15.0.0-canary.0e89aab6b.0":"2023-01-11T16:17:23.074Z","15.0.0-canary.b0103d10a.0":"2023-01-11T19:12:15.880Z","15.0.0-canary.50e7a5312.0":"2023-01-11T20:53:56.585Z","15.0.0-canary.202823f54.0":"2023-01-11T21:35:30.864Z","15.0.0-canary.199fe2a2a.0":"2023-01-11T21:55:29.534Z","15.0.0-canary.8c0786d6f.0":"2023-01-12T14:36:03.210Z","15.0.0-canary.8a74f7c6d.0":"2023-01-17T19:24:18.067Z","15.0.0-canary.b4687fdc1.0":"2023-01-19T19:49:05.809Z","15.0.0-canary.b836b9892.0":"2023-01-24T22:38:58.358Z","15.0.0-canary.e8912fd37.0":"2023-01-26T18:29:31.196Z","15.0.0-canary.16fbd30ff.0":"2023-01-26T18:34:46.088Z","15.0.0-canary.033ae083a.0":"2023-01-26T19:26:36.141Z","15.0.0-canary.3a705fa1d.0":"2023-01-27T22:43:22.381Z","15.0.0-canary.d6bea2ff2.0":"2023-01-31T15:29:49.735Z","15.0.0-canary.0c94182c8.0":"2023-02-01T17:43:53.688Z","15.0.0-canary.15b221540.0":"2023-02-01T17:52:14.930Z","15.0.0-canary.eeebb8bba.0":"2023-02-01T18:21:57.584Z","15.0.0-canary.6a4b3f834.0":"2023-02-01T18:58:05.277Z","15.0.0-canary.b177b40e2.0":"2023-02-02T03:33:44.853Z","15.0.0-canary.d9f821042.0":"2023-02-02T17:37:53.009Z","15.0.0-canary.47c7deb19.0":"2023-02-03T09:08:41.027Z","15.0.0-canary.a16dbd1a6.0":"2023-02-04T06:14:15.931Z","15.0.0-canary.93416f87a.0":"2023-02-07T13:23:57.272Z","15.0.0-canary.49b8e7442.0":"2023-02-07T23:09:10.586Z","15.0.0-canary.de38de758.0":"2023-02-09T15:42:02.418Z","15.0.0-canary.4d62de70c.0":"2023-02-09T22:02:43.792Z","15.0.0-canary.6fcd8d418.0":"2023-02-13T11:49:35.655Z","15.0.0-canary.066d9439b.0":"2023-02-15T19:57:23.039Z","15.0.0-canary.7ab32468c.0":"2023-02-21T18:33:40.659Z","15.0.0-canary.fa27ba61d.0":"2023-02-27T16:19:17.040Z","15.0.0-canary.311ab4d4a.0":"2023-02-27T16:41:00.849Z","15.0.0-canary.901c83e77.0":"2023-02-27T18:05:45.999Z","15.0.0-canary.5cb8e2174.0":"2023-03-01T16:35:24.287Z","15.0.0-canary.f32339937.0":"2023-03-06T15:15:16.587Z","15.0.0-canary.7644d63d5.0":"2023-03-06T22:27:09.897Z","15.0.0-canary.d96330c08.0":"2023-03-08T11:41:27.793Z","15.0.0-canary.c99cae77c.0":"2023-03-08T23:42:33.632Z","15.0.0-canary.6023b1cd3.0":"2023-03-09T14:26:05.480Z","15.0.0-canary.274610c77.0":"2023-03-09T14:58:16.380Z","15.0.0-canary.a274583b9.0":"2023-03-09T19:52:20.866Z","15.0.0-canary.da22ca960.0":"2023-03-09T20:18:03.873Z","15.0.0-canary.304a94e8b.0":"2023-03-09T20:44:39.992Z","15.0.0-canary.6c265915c.0":"2023-03-09T21:46:59.068Z","15.0.0-canary.de5224633.0":"2023-03-09T23:55:25.582Z","15.0.0-canary.8879557e6.0":"2023-03-10T14:07:35.173Z","15.0.0-canary.23073a303.0":"2023-03-10T14:14:28.092Z","15.0.0-canary.51c7d4014.0":"2023-03-10T16:47:03.395Z","15.0.0-canary.1175a5be0.0":"2023-03-10T20:47:42.998Z","15.0.0-canary.7adf3af80.0":"2023-03-11T01:24:36.875Z","15.0.0-canary.82554d770.0":"2023-03-11T01:36:57.840Z","15.0.0-canary.93fc524b7.0":"2023-03-13T08:38:24.313Z","15.0.0-canary.50be0fbae.0":"2023-03-13T17:43:50.722Z","15.0.0-canary.6b5ffccd9.0":"2023-03-13T17:47:08.183Z","15.0.0-canary.1c8013f4e.0":"2023-03-13T18:02:15.637Z","15.0.0-canary.112715df5.0":"2023-03-13T18:38:49.814Z","15.0.0-canary.d250911f2.0":"2023-03-13T19:31:08.036Z","15.0.0-canary.7cd925c12.0":"2023-03-13T19:38:37.559Z","15.0.0-canary.b2ddacf73.0":"2023-03-13T19:43:04.800Z","15.0.0-canary.989ae2ecc.0":"2023-03-13T19:52:16.987Z","15.0.0-canary.89c66483a.0":"2023-03-13T20:16:05.028Z","15.0.0-canary.6a85742c2.0":"2023-03-14T02:47:01.167Z","15.0.0-canary.bb6cd78d5.0":"2023-03-14T18:16:24.063Z","15.0.0-canary.5f94aa37d.0":"2023-03-14T18:19:48.135Z","15.0.0-canary.1bd317240.0":"2023-03-14T18:23:35.410Z","15.0.0-canary.d441d2a2a.0":"2023-03-14T18:26:12.862Z","15.0.0-canary.fff4066c6.0":"2023-03-14T18:26:48.631Z","15.0.0-canary.87809c710.0":"2023-03-14T18:43:03.412Z","15.0.0-canary.48d30012d.0":"2023-03-14T18:47:24.730Z","15.0.0-canary.419b23cc6.0":"2023-03-14T18:58:24.600Z","15.0.0-canary.bf86521f4.0":"2023-03-14T23:13:03.996Z","15.0.0-canary.11f3d280e.0":"2023-03-15T00:10:54.759Z","15.0.0-canary.b281a409a.0":"2023-03-21T15:40:30.630Z","15.0.0-canary.39e473690.0":"2023-03-21T17:50:54.664Z","15.0.0-canary.cedffb44c.0":"2023-03-21T17:57:53.236Z","15.0.0-canary.36a4cba99.0":"2023-03-28T17:49:40.434Z","15.0.0-canary.ed7e82ded.0":"2023-03-28T20:34:13.482Z","15.0.0-canary.55093ee1e.0":"2023-03-29T18:48:04.142Z","15.0.0-canary.0c53abc81.0":"2023-04-07T01:40:46.207Z","15.0.0-canary.51311e69e.0":"2023-04-07T18:07:32.699Z","15.0.0-canary.113b1a38e.0":"2023-04-10T21:53:24.621Z","15.0.0-canary.ea2191426.0":"2023-04-11T21:55:15.153Z","15.0.0-canary.5a5c38538.0":"2023-04-11T22:29:57.370Z","15.0.0-canary.e4b5ea7eb.0":"2023-04-11T23:03:53.153Z","15.0.0-canary.a094dd9c1.0":"2023-04-14T22:42:07.537Z","15.0.0-canary.f771b091c.0":"2023-04-17T15:37:40.577Z","15.0.0-canary.79b1b612b.0":"2023-04-19T23:39:48.412Z","15.0.0-canary.6f50071e5.0":"2023-04-20T18:00:31.529Z","15.0.0-canary.ef754381c.0":"2023-04-24T20:50:33.303Z","15.0.0-canary.69ebf61ea.0":"2023-04-27T17:21:05.852Z","15.0.0-canary.b90be86de.0":"2023-04-29T00:21:13.326Z","15.0.0-canary.51f9c0c28.0":"2023-04-29T00:31:00.872Z","15.0.0-canary.4e840d685.0":"2023-05-02T15:33:08.718Z","15.0.0-canary.10b8563e4.0":"2023-05-02T23:41:29.615Z","15.0.0-canary.736b7fda4.0":"2023-05-03T15:09:01.429Z","15.0.0-canary.0e533c5a1.0":"2023-05-05T16:55:47.089Z","15.0.0-canary.5f01c15a2.0":"2023-05-05T17:25:54.899Z","15.0.0-canary.3b5b55e31.0":"2023-05-05T18:38:35.965Z","15.0.0-canary.d0788120f.0":"2023-05-09T08:22:38.002Z","15.0.0-canary.f52358dd0.0":"2023-05-12T14:30:00.558Z","15.0.0-canary.d3c3fbaa3.0":"2023-05-12T18:00:03.500Z","15.0.0-canary.576d3d2c8.0":"2023-05-16T01:59:37.122Z","15.0.0-canary.19bb36a46.0":"2023-05-16T19:53:37.682Z","15.0.0-canary.aa5ac7fe5.0":"2023-05-22T17:25:04.081Z","15.0.0-canary.90291f2e2.0":"2023-05-23T17:42:14.188Z","15.0.0-canary.446734f27.0":"2023-05-30T21:47:50.675Z","15.0.0-canary.19de312d8.0":"2023-06-06T17:17:53.656Z","15.0.0-canary.6081d829b.0":"2023-06-07T01:13:35.981Z","15.0.0-canary.b26c34a68.0":"2023-06-07T20:17:16.098Z","15.0.0-canary.4fe911371.0":"2023-06-07T23:05:30.923Z","15.0.0-canary.a9ff9866f.0":"2023-06-13T11:37:48.256Z","15.0.0-canary.b994146f6.0":"2023-06-14T21:03:11.069Z","15.0.0-canary.1fb4b1a06.0":"2023-06-27T18:56:45.195Z","15.0.0-canary.c64a2776e.0":"2023-06-27T20:16:00.380Z","15.0.0-canary.b05d9eb7c.0":"2023-06-29T16:23:17.349Z","15.0.0-canary.2a9697dc5.0":"2023-06-30T22:13:31.914Z","15.0.0-canary.0c52adeab.0":"2023-07-05T16:25:21.520Z","15.0.0-canary.83355c322.0":"2023-07-10T15:05:00.495Z","15.0.0-canary.bc9ae6c9c.0":"2023-08-03T21:20:27.829Z","15.0.0-canary.3c44cd956.0":"2023-08-07T17:46:39.433Z","15.0.0-canary.02702296e.0":"2023-08-25T12:04:32.336Z","15.0.0-canary.872b65832.0":"2023-08-30T12:12:53.591Z","15.0.0-canary.89b2e4122.0":"2023-08-31T16:06:17.408Z","15.0.0-canary.7a3942e7a.0":"2023-08-31T18:39:08.035Z","15.0.0-canary.54feb3020.0":"2023-09-11T21:04:39.818Z","15.0.0-canary.6cda3ce8d.0":"2023-09-12T01:44:34.653Z","15.0.0-canary.205b20b36.0":"2023-09-13T17:16:09.511Z","15.0.0-canary.22bf82024.0":"2023-09-18T09:11:27.438Z","15.0.0-canary.a246a4439.0":"2023-09-18T17:45:28.658Z","15.0.0-canary.d153db62b.0":"2023-09-19T19:14:39.060Z","15.0.0-canary.2528c1c3b.0":"2023-09-20T18:05:50.802Z","15.0.0-canary.1728a6dcf.0":"2023-09-26T01:22:42.298Z","15.0.0-canary.ebb636f3d.0":"2023-09-29T19:43:57.832Z","15.0.0-canary.c0d21ecc9.0":"2023-10-09T19:36:18.016Z","15.0.0-canary.127a44b28.0":"2023-10-12T19:59:37.423Z","15.0.0-canary.0ad128337.0":"2023-10-19T18:51:19.888Z","15.0.0-canary.9cec94097.0":"2023-10-19T23:08:52.465Z","15.0.0-canary.c51a0bbcc.0":"2023-11-15T20:58:22.331Z","15.0.0-canary.d76666ad4.0":"2023-11-27T22:12:46.784Z","15.0.0-canary.8656bf0e0.0":"2023-12-12T21:18:18.002Z","15.0.0-canary.7f224ddd4.0":"2023-12-28T06:08:48.412Z","15.0.0-canary.a0b8a90c0.0":"2024-02-07T19:19:08.433Z","15.0.0-canary.e50b478eb.0":"2024-02-08T18:07:38.431Z","15.0.0-canary.c43b3438b.0":"2024-02-23T20:17:11.261Z","15.0.0-canary.819498d8c.0":"2024-03-15T15:14:20.042Z","15.0.0-canary.453a6248a.0":"2024-03-25T17:13:11.453Z","15.0.0-canary.68edc03c6.0":"2024-04-08T19:05:29.425Z","15.0.0-canary.5bebc0064.0":"2024-04-11T21:40:09.077Z","15.0.0-canary.311f29a60.0":"2024-04-23T17:59:23.219Z","15.0.0-canary.65c10a622.0":"2024-04-25T18:48:23.147Z","15.0.0-canary.4b35cb7d0.0":"2024-05-02T12:02:28.296Z","15.0.0-canary.f80ac92b0.0":"2024-05-02T12:12:45.145Z","15.0.0-canary.2f5b899bc.0":"2024-05-20T13:54:37.077Z","15.0.0-canary.cfec83c74.0":"2024-05-20T18:56:21.016Z","15.0.0-canary.423edc3dc.0":"2024-06-26T18:11:47.747Z"},"maintainers":[{"name":"yefim","email":"hi@yef.im"},{"name":"abhiomkar","email":"abhiomkar@gmail.com"},{"name":"azakus","email":"dfreedm2@gmail.com"},{"name":"bicknellr","email":"bicknellr@gmail.com"},{"name":"material-admin","email":"aprigogin+npm@google.com"},{"name":"aprigogin","email":"andrey.prigogin@gmail.com"},{"name":"patrickrodee","email":"prodee@google.com"},{"name":"aomarks","email":"aomarks@gmail.com"},{"name":"emarquez","email":"emarquez@google.com"},{"name":"esgonzalez","email":"esgonzalez@google.com"},{"name":"asyncliz","email":"asyncliz@gmail.com"},{"name":"candysonya","email":"wangchan518@gmail.com"},{"name":"ssuarez","email":"sayrisuarez@google.com"},{"name":"taylorv","email":"brian.t.vann@gmail.com"}],"repository":{"url":"git+https://github.com/material-components/material-components-web.git","type":"git","directory":"packages/mdc-floating-label"},"keywords":["material components","material design","floatinglabel","floating label"],"license":"MIT","homepage":"https://github.com/material-components/material-components-web#readme","bugs":{"url":"https://github.com/material-components/material-components-web/issues"},"readme":"","readmeFilename":""}